A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

[MDA] Raphael Gatti Thomás Bryan. 2 Meta Introdução Introdução Desenvolvimento Tradicional Modelo MDA Benefícios Exemplos Conclusão.

Apresentações semelhantes


Apresentação em tema: "[MDA] Raphael Gatti Thomás Bryan. 2 Meta Introdução Introdução Desenvolvimento Tradicional Modelo MDA Benefícios Exemplos Conclusão."— Transcrição da apresentação:

1 [MDA] Raphael Gatti Thomás Bryan

2 2 Meta Introdução Introdução Desenvolvimento Tradicional Modelo MDA Benefícios Exemplos Conclusão

3 3 Melhoria no desenvolvimento de software Evoluções tecnológicas Artefatos e Arquitetura Documentação OMG (Object Management Group) Introdução

4 4 Desenvolvimento Tradicional Foco no design de baixo nível Definidos recursos para aplicação Diagramas e textos especificados de acordo com a arquitetura.

5 5 Produtividade Nos processos Interativos e Incremental ou no Processo Cascata, diagramas e documentos são produzidos na fase 1 até 3. Documentos e diagramas perdem valor quando começa codificação. Desenvolvimento Tradicional

6 6 Portabilidade Industria de software possui característica especial. Inovações tecnológicas a cada ano e mudanças nas próprias tecnologias, com novas versões e incompatibilidade. Desenvolvimento Tradicional

7 7 Interoperabilidade Comunicação entre os sistemas Divisão do sistema em componentes Desenvolvimento Tradicional

8 8 Manutenção e Problemas na Documentação Documentação é ponto fraco no desenvolvimento. Problema de manutenção da documentação. Boa parte dos desenvolvedores acredita que a tarefa principal é produzir código. Desenvolvimento Tradicional

9 9 O nome Model Driven Architecutre deixa claro que os modelos são o principal foco da MDA. O dicionário de língua portuguesa michaelis define modelo como: - Desenho ou imagem que representa o que se pretende reproduzir, desenhando, pintando ou esculpindo. - Tudo o que serve para ser imitado. - Representação, em pequena escala, de um objeto que se pretende executar em ponto grande. A OMG define um modelo como uma especificação formal de uma função, estrutura e/ou comportamento de um sistema. Modelo

10 10 MDA MDA e Ciclo de Vida Abordagem baseada em Modelos UML. Permite que os desenvolvedores se preocupem com a plataforma que esses requisitos serão implementados. Fases idênticas as do ciclo de desenvolvimento tradicional, diferença dos artefatos produzidos.

11 11 MDA Desenvolvimento Tradicional MDA

12 12 MDA Modelos MDA Modelo de alto nível de abstração (PIM) Modelo específico para plataforma (PSM)

13 13 MDA Modelos MDA PIM (Plataform Independent Model) Descreve como as regras de negócio devem ser implementadas. Não existe distinção de plataforma se é mainframe ou um servidor de aplicação EJB.

14 14 MDA Modelos MDA PSM (Plataform Specific Model) Transformação do PIM em um ou mais modelos. Gerado um PSM para cada plataforma específica.

15 15 MDA Modelos MDA As três maiores transformações no processo de desenvolvimento MDA.

16 16 MDA Modelos MDA

17 17 MDA Modelos MDA Transformação feita utilizando mapeamentos.

18 18 Benefícios da MDA Produtividade Foco em desenvolver o PIM Definir transformação dos modelos é uma tarefa difícil mas é feita uma única vez.

19 19 Benefícios da MDA Portabilidade É alcançada utilizando o PIM. Uma vez definido o modelo pode facilmente ser portado para vários PSM.

20 20 Benefícios da MDA Interoperabilidade Relacionamento entre PSMs, também chamados de pontes.

21 21 Benefícios da MDA Manutenção e Documentação Modelo é a representação exata do código. Mudança basta fazer manutenção no PIM, gerar o PSM e consequentemente o código. Documentação está sempre atualizada.

22 22 Exemplos androMDA Ferramenta de geração de código, a partir de um modelo UML. Pode produzir código fonte em qualquer linguagem de programação. Trabalha com cartuchos (plugins), implementação da transformação que vai ser realizada. Maven para automatizar o processo de geração.

23 23 Exemplos androMDA

24 24 Exemplos androMDA

25 25 Exemplos androMDA Gera 6 classes como resultado da transformação. Person.java (classe abstrata) PersonImpl.java (implementa classe Person) PersonDao.java (interface especifica metodos CRUD) PersonDaoBase.java (implementa PersonDao) PersonDaoImpl.java (customização de consultas) Person.hbm.xml (arquivo hibernate)

26 26 Exemplos androMDA Person.java

27 27 Ferramentas estão evoluindo e ganhando maturidade. Permite que o desenvolvedor se preocupe mais com as regras de negócio. MDA é nova e mostra grande potencial. Conclusão

28 28 Perguntas

29 29 Modelos MDA Objeto Modelo de Carro Modelo UML MOF (Meta Object Facility)

30 30 Transformação Transformation SimpleAssociationToAttribute (UML, UML) { params -- none source ae : UML::AssociationEnd; target att : UML::Attribute; source condition ae.upper <= 1; target condition att.visibility = VisibilityKind::public and att.type.isTypeOf(Class); unidirectional; mapping ae.name att.name; ae.type att.type; }


Carregar ppt "[MDA] Raphael Gatti Thomás Bryan. 2 Meta Introdução Introdução Desenvolvimento Tradicional Modelo MDA Benefícios Exemplos Conclusão."

Apresentações semelhantes


Anúncios Google