Model Driven
Development - MDD
Toni Esteves - 7º Período
Bacharelado em Sistemas de Informação

quarta-feira, 23 de outubr...
Incrível !!

quarta-feira, 23 de outubro de 13

2
Como desenvolver
software
atualmente ?

quarta-feira, 23 de outubro de 13

3
Tecnologias

Código

Padrões

Plataformas

Semântica

Dispositivos

Processos

Hardware

Time-to-Market

Boas práticas

qu...
{
quarta-feira, 23 de outubro de 13

Entrevistas
Workshops
Brainstorms
StoryBoards
Casos de Uso
Role Playing
Prototipagem
...
quarta-feira, 23 de outubro de 13

6
Abstração

quarta-feira, 23 de outubro de 13

7
s.f.
Operação do espírito, que
isola de uma noção um elemento,
negligenciando os outros. / Resultado desta
operação: a bra...
MDD - Model Driven
Development

quarta-feira, 23 de outubro de 13

9
MDD - Model Driven
Development

quarta-feira, 23 de outubro de 13

10
Abordagem

quarta-feira, 23 de outubro de 13

11
•

Diversas Especificações
•

OMG
•

•

Vanderblit University
•

•

MIC (Model Integrated Computing)

Microsoft
•

•

MDA (...
•

•

OMG - 2001 -(Object Managment Group) define um
conjunto de padronizações - Model Driven
Architeture (MDA);
O MDA intr...
•

•

•

CIM (Computation Independent Model) - Visão sob
um ponto de vista não computacional;
PIM (Plataform Independent M...
CIM

Texto
Texto

quarta-feira, 23 de outubro de 13

15
CIM

PIM

Texto
Texto

quarta-feira, 23 de outubro de 13

16
CIM

quarta-feira, 23 de outubro de 13

PIM

PSM

17
Ciclo de Vida

quarta-feira, 23 de outubro de 13

18
Abordagem
•

MDA embasado no MOF (Meta-objects Facility)

•

Geradores de código baseado em Modelos;

•

Linguagem de Cria...
•

MOF
•

•

•

•

Padrão criado pela OMG para definição dos MetaModelos;
Permitir o mapeamento das transformações entre
di...
quarta-feira, 23 de outubro de 13

21
Geradores de Código
•

Especificam como a informação extraida dos
modelos é transformada em código

•
•
•
•
•

quarta-feira...
Domínio

•

Fator chave;

•

Especialistas do Dominio + Eng. de Software;

•
•

Bom entendimento do Dominio;
Domain Specifi...
Aplicação:

quarta-feira, 23 de outubro de 13

24
“Um Processo MDA para o Desenvolvimento de Componentes
e
Serviços Específicos de Middleware”
Rita Suzana Pitangueira Macie...
Middleware

quarta-feira, 23 de outubro de 13

26
RNP:
Middleware
“Middleware é o neologismo criado para
designar camadas de software que não
constituem diretamente aplicaç...
WSO2 Enterprise Middleware Services

quarta-feira, 23 de outubro de 13

28
Detalhamento do
processo MDA

quarta-feira, 23 de outubro de 13

29
•

Modelo de Domínio - Etapa 1 - Identificação, Objetivos
e Processos de negócio:

quarta-feira, 23 de outubro de 13

30
•

•

Modelo de Domínio - Etapa 2 - Especificação dos
modelos ( Cidade, Aeroporto, Rota, Voo, reserva);
Modelo de Domínio -...
•

•

•

Modelo Projeto - Etapa 4 - Identificação dos serviços
especificos, operações e componentes.

Modelo Operacional - E...
quarta-feira, 23 de outubro de 13

33
That’s MDD !!...

quarta-feira, 23 de outubro de 13

34
Vantagens:

quarta-feira, 23 de outubro de 13

35
Vantagens:
•

Produtividade/Portabilidade/Corretude;

•

Documentação

•

Capacidade de Expansão;

•

Foco no “O que?” ao ...
Desvantagens:

quarta-feira, 23 de outubro de 13

37
Desvantagens:
•

Rigidez

•

Complexidade

•

Perda de desempenho

•

Maior Curva de Aprendizado

•

Alto Investimento Ini...
Desafios:

quarta-feira, 23 de outubro de 13

39
Desafios:

quarta-feira, 23 de outubro de 13

40
Model Driven Development

quarta-feira, 23 de outubro de 13

41
Quer saber mais?

quarta-feira, 23 de outubro de 13

42
Considerações

quarta-feira, 23 de outubro de 13

43
quarta-feira, 23 de outubro de 13

44
Próximos SlideShares
Carregando em…5
×

Model driven development

369 visualizações

Publicada em

0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
369
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
12
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Model driven development

  1. 1. Model Driven Development - MDD Toni Esteves - 7º Período Bacharelado em Sistemas de Informação quarta-feira, 23 de outubro de 13 1
  2. 2. Incrível !! quarta-feira, 23 de outubro de 13 2
  3. 3. Como desenvolver software atualmente ? quarta-feira, 23 de outubro de 13 3
  4. 4. Tecnologias Código Padrões Plataformas Semântica Dispositivos Processos Hardware Time-to-Market Boas práticas quarta-feira, 23 de outubro de 13 4
  5. 5. { quarta-feira, 23 de outubro de 13 Entrevistas Workshops Brainstorms StoryBoards Casos de Uso Role Playing Prototipagem 5
  6. 6. quarta-feira, 23 de outubro de 13 6
  7. 7. Abstração quarta-feira, 23 de outubro de 13 7
  8. 8. s.f. Operação do espírito, que isola de uma noção um elemento, negligenciando os outros. / Resultado desta operação: a brancura considerada em geral, sem ser aplicada a um objeto, é uma abstração. // Fazer abstração de uma coisa, não levá-la em consideração; S.f.pl. Idéias quiméricas, desvinculadas da realidade • quarta-feira, 23 de outubro de 13 8
  9. 9. MDD - Model Driven Development quarta-feira, 23 de outubro de 13 9
  10. 10. MDD - Model Driven Development quarta-feira, 23 de outubro de 13 10
  11. 11. Abordagem quarta-feira, 23 de outubro de 13 11
  12. 12. • Diversas Especificações • OMG • • Vanderblit University • • MIC (Model Integrated Computing) Microsoft • • MDA (Model Driven Architeture) Software Factories Eclipse • Modeling quarta-feira, 23 de outubro de 13 12
  13. 13. • • OMG - 2001 -(Object Managment Group) define um conjunto de padronizações - Model Driven Architeture (MDA); O MDA introduz os conceitos de: • • • CIM (Computation Independent Model) - Visão sob um ponto de vista não computacional; PIM (Plataform Independent Model) - Visão sob um ponto de vista independente da plataforma de implementação; PSM (Plataform Independent Model) - Visão sob um ponto de vista de uma plataforma especifica; quarta-feira, 23 de outubro de 13 13
  14. 14. • • • CIM (Computation Independent Model) - Visão sob um ponto de vista não computacional; PIM (Plataform Independent Model) - Visão sob um ponto de vista independente da plataforma de implementação; PSM (Plataform Independent Model) - Visão sob um ponto de vista de uma plataforma especifica; quarta-feira, 23 de outubro de 13 14
  15. 15. CIM Texto Texto quarta-feira, 23 de outubro de 13 15
  16. 16. CIM PIM Texto Texto quarta-feira, 23 de outubro de 13 16
  17. 17. CIM quarta-feira, 23 de outubro de 13 PIM PSM 17
  18. 18. Ciclo de Vida quarta-feira, 23 de outubro de 13 18
  19. 19. Abordagem • MDA embasado no MOF (Meta-objects Facility) • Geradores de código baseado em Modelos; • Linguagem de Criação (DSML); • Domínio Especifico; • Foco na UML; • Papel da Plataforma; quarta-feira, 23 de outubro de 13 19
  20. 20. • MOF • • • • Padrão criado pela OMG para definição dos MetaModelos; Permitir o mapeamento das transformações entre diferentes modelos de diferentes meta-modelos; Linguagem utilizada para descrever uma estrutura de objetos (especificar uma linguagem); Meta-Modelos • • Provém: Estrutura, Semântica e Constantes para um modelo; Meta-modelagem não está vinculada a nenhum modelo específico; quarta-feira, 23 de outubro de 13 20
  21. 21. quarta-feira, 23 de outubro de 13 21
  22. 22. Geradores de Código • Especificam como a informação extraida dos modelos é transformada em código • • • • • quarta-feira, 23 de outubro de 13 Improved communication of the design(including to the customer) Increased understanding of design elements Enhancing the consistency between design and code Traceability within the software design Increased productivity through efficiency 22
  23. 23. Domínio • Fator chave; • Especialistas do Dominio + Eng. de Software; • • Bom entendimento do Dominio; Domain Specific Language (DSL) • • Visuais ou Textuais; • Ex: SQL, HTML, XML; • Focam sob o aspecto particular de um software; • • Variam na Sintaxe,Semântica e Forma; Martin Fowler; General Purpose Languges (GPL) quarta-feira, 23 de outubro de 13 23
  24. 24. Aplicação: quarta-feira, 23 de outubro de 13 24
  25. 25. “Um Processo MDA para o Desenvolvimento de Componentes e Serviços Específicos de Middleware” Rita Suzana Pitangueira Maciel, Nelson Souto Rosa, Carlos Guimarães Ferraz, Bruno Carreiro da Silva Universidade Federal de Pernambuco – Centro de Informática quarta-feira, 23 de outubro de 13 25
  26. 26. Middleware quarta-feira, 23 de outubro de 13 26
  27. 27. RNP: Middleware “Middleware é o neologismo criado para designar camadas de software que não constituem diretamente aplicações, mas que facilitam o uso de ambientes ricos em tecnologia da informação. A camada de middleware concentra serviços como identificação, autenticação, autorização, diretórios, certificados digitais e outras ferramentas para segurança.” http://www.rnp.br/noticias/2006/not-060926.html quarta-feira, 23 de outubro de 13 27
  28. 28. WSO2 Enterprise Middleware Services quarta-feira, 23 de outubro de 13 28
  29. 29. Detalhamento do processo MDA quarta-feira, 23 de outubro de 13 29
  30. 30. • Modelo de Domínio - Etapa 1 - Identificação, Objetivos e Processos de negócio: quarta-feira, 23 de outubro de 13 30
  31. 31. • • Modelo de Domínio - Etapa 2 - Especificação dos modelos ( Cidade, Aeroporto, Rota, Voo, reserva); Modelo de Domínio - Etapa 3 - Mapeamento dos conceitos; quarta-feira, 23 de outubro de 13 31
  32. 32. • • • Modelo Projeto - Etapa 4 - Identificação dos serviços especificos, operações e componentes. Modelo Operacional - Etapa 5 - Mapeamento para a plataforma específica(CCM - CORBA 3.0). Modelo Operacional - Etapa 6 -Geração de código. quarta-feira, 23 de outubro de 13 32
  33. 33. quarta-feira, 23 de outubro de 13 33
  34. 34. That’s MDD !!... quarta-feira, 23 de outubro de 13 34
  35. 35. Vantagens: quarta-feira, 23 de outubro de 13 35
  36. 36. Vantagens: • Produtividade/Portabilidade/Corretude; • Documentação • Capacidade de Expansão; • Foco no “O que?” ao invés do “Como?”; • Independencia da evolução tecnológica; • Aprimorar o entendimento e design dos elementos; • Reforçar a coerência entre o projeto e o código; • Rastreabilidade dentro do projeto de software; • Aumento da produtividade através da eficiencia quarta-feira, 23 de outubro de 13 36
  37. 37. Desvantagens: quarta-feira, 23 de outubro de 13 37
  38. 38. Desvantagens: • Rigidez • Complexidade • Perda de desempenho • Maior Curva de Aprendizado • Alto Investimento Inicial quarta-feira, 23 de outubro de 13 38
  39. 39. Desafios: quarta-feira, 23 de outubro de 13 39
  40. 40. Desafios: quarta-feira, 23 de outubro de 13 40
  41. 41. Model Driven Development quarta-feira, 23 de outubro de 13 41
  42. 42. Quer saber mais? quarta-feira, 23 de outubro de 13 42
  43. 43. Considerações quarta-feira, 23 de outubro de 13 43
  44. 44. quarta-feira, 23 de outubro de 13 44

×