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

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

MDA na Prática Flávia Durans Pitta Marinho

Apresentações semelhantes


Apresentação em tema: "MDA na Prática Flávia Durans Pitta Marinho"— Transcrição da apresentação:

1 MDA na Prática Flávia Durans Pitta Marinho fdurans@ig.com.br

2 Agenda - MDA Conceitos Processos de Desenvolvimento de Software Framework EDOC Ferramentas

3 MDA na Prática Conceitos MDA

4 Model Driven Architecture é um framework para desenvolvimento de sistemas distribuídos definido pela OMG (Object Management Group) Baseado na importância de modelos nos processos de desenvolvimento de software Minimiza problemas de variedades de plataformas Reduz tempo, custo e complexidade do desenvolvimento e do gerenciamento de aplicações Plataforma independente da tecnologia a ser adotada Domínio específico de 1...n plataformas MDA - Conceitos Modelos? Plataforma Independente? Domínio Específico?

5 O que é um Modelo ? Modelo Sistema Linguagem é escrito em descreve Desenho das informações que descreve o sistema através de uma linguagem Linguagem MDA =

6 PIM – Plataform Independent Model  Primeiro modelo MDA a ser desenvolvido  Modelo dos processos de negócio  Maior nível de abstração  Independente da tecnologia a ser adotada para o sistema

7 PSM – Plataform Specific Model Modelo originado da transformação do PIM Modelo específico baseado em uma plataforma particular

8 MDA - Resumo Requisitos do negócio implementação... PIM PSM...PSM

9 Simples exemplo 2 red modelo em XMI modelo em java public class Car { public colour colour; public int door;}

10 Exemplo de PIM e PSM  Query of price (PriceQuery)  Ordering (Order) Sistema BuySell PSM  Exemplo de mapeamento em EJB PIM

11 Exemplo de PIM

12 Exemplo de PSM PIM mapeando para EJB PSM

13 MDA na Prática Processos de Desenvolvimento de Software

14 Problemas - Software Tradicional Produtividade Portabilidade Interoperabilidade

15 Problemas - Produtividade Grande volume de papel produzido (artefatos e diagramas) Dificuldade de manutenção dos artefatos e diagramas X código Grande parte da produtividade do projeto é direcionada na manutenção de artefatos e diagramas em vez da construção de código Problema na manutenção dos sistemas por outras pessoas na equipe RUP XP, Agile

16 Problemas - Portabilidade Novas tecnologias estão surgindo rapidamente As empresas precisam atualizar suas tecnologias Por demanda dos clientes Para resolver problemas e falhas da tecnologia atual utilizada Por vendedores não prestarem suporte a tecnologias ultrapassadas É necessário que os sistemas sejam atualizados da forma mais rápida e segura

17 Problemas - Interoperabilidade Mais sistemas precisam se comunicar com outros Um mesmo sistema pode utilizar várias tecnologias que precisam se comunicar para que o sistema funcione (Ex.: EJB, banco de dados relacional...)

18 MDA – Ciclo de vida de desenvolvimento programação Processo iterativo requisitos análise projeto codificação testes desenvolvimento textos diagramas e textos diagramas e textos código requisitos PIM PSM código análise projeto codificação testes desenvolvimento textual desenvolvimento tradicional desenvolvimento MDA

19 São sempre executadas por ferramentas O maior ganho está na transformação entre os modelos PIM e PSM MDA - Transformações PIM requisitos do sistema PSM código ferramenta de transformação definições para transformação ferramenta de transformação definições para transformação

20 MDA - Produtividade A produtividade basicamente está na modelagem do PIM Abstração dos detalhes das tecnologias específicas durante a fase de modelagem, uma vez que serão gerados automaticamente na transformação do PIM para PSM No PSM e no código a escrita é mínima, uma vez que a maior parte do código foi gerado na transformação do PSM para código

21 MDA - Portabilidade A portabilidade é obtida a partir da modelagem do PIM Tudo o que foi modelado no PIM é completamente portável para qualquer tecnologia A dimensão da portabilidade a ser obtida depende da automação das ferramentas de transformação avaliadas

22 MDA - Interoperabilidade Através de bridges entre os PSM´s gerados a partir do mesmo PIM Bridges são geradas através dos relacionamentos dos conceitos entre plataformas. PIM PSM (relational database) PSM (Java Code) Código PSM Bridge Code Bridge

23 MDA na Prática Framework

24 MDA Framework Modelo é a descrição do sistema. PIM (Plataform Independent Model) é o modelo mais abstrato do sistema PSM (Plataform Specific Model) é o modelo mais específico sobre a tecnologia utilizada Linguagem descreve o |modelo Definição da transformação determina como o modelo original pode ser transformado no modelo alvo Ferramenta de transformação executa a transformação de um modelo específico a partir da definição da transformação.

25 MDA na Prática EDOC - Enterprise Distributed Object Computing

26 EDOC Consiste de um perfil público de desenvolvimento, inicialmente voltado para componentes distribuídos Modela objetos de acordo com as especificações MDA. Possui perfil independente de tecnologia - a arquitetura ECA (Enterprise Collaboration Architecture)- que permite a definição do PIM no MDA Possui um conjunto de modelos para tecnologias específicas sendo mapeadas a partir do PIM

27 A arquitetura ECA compreende 5 perfis: CCA (Component Collaboration Architecture) – Modela a estrutura e o comportamento dos componentes do sistema Entidade – Modelo que define uma representação do domínio da aplicação Evento – Modela sistemas dirigidos a eventos (mudança de estados de uma entidade) Processo de Negócio – Modela o comportamento do sistema no contexto do negócio que o suporta Relacionamento – Modela os relacionamentos entre as entidades de negócio e de sistema PIM – Arquitetura ECA Ferramenta CCA (Component X) Ferramentas UML (Rational Rose, Poseidon, Visual Paradigm)

28 PIM – Pontos de vista

29 MDA na Prática Ferramentas

30 Ferramentas de modelagem Modelagem de componentes na notação CCA Modelagem de componentes através de estereótipos em UML Ferramentas de transformação PIM para PSM PSM para código PIM para código

31 Ferramentas de modelagem – Notação CCA ComponentX Studio – Data Access Technologies cujos componentes possuem as seguintes características: Possuem portas que enviam ou recebem arquivos XML transportados por eventos Java Possuem propriedades que podem ser configuradas e armazenadas em arquivos de configuração XML Possuem implementação baseada em Java São executáveis

32 ComponentX Exemplo de comunicação entre componentes Componente 1 = Pete Componente 2 = Pam

33 Ferramentas de modelagem – UML Várias ferramentas podem ser citadas: Poseidon – Gentleware – Hamburg - Germany Visual Paradigm – Visual Paradigm – Hong Kong - China Rational Rose – IBM – United States Magic Draw – No Magic – Colorado - USA Argo UML – Trigis.com

34 UML - EDOC Demonstração da utilização da UML segundo o perfil EDOC (público)

35 UML - EDOC

36

37 Ferramentas de transformação UMT (UML Model Transformation Tool) – ferramenta free para transformação de modelo e geração de código AndroMDA – ferramenta open source de geração de código J2EE a partir de UML/XMI ArcStyler – ferramenta MDA comercializada pelo Interactive Objects Softwares - Germany Codagen Architect – ferramenta MDA de comercialização pela Codagen Technologies Corp. – Montreal - Canada

38 Ferramentas de transformação OptmalJ – produto comercial do Compuware que utiliza padrões para obter transformação para PSM – Detroit – Michigan - USA BridgePoint – produto comercial da Project Technology que suporta geração automática de código a partir de modelos – Tucson – Arizona - USA

39 Exemplo - Rosa´s breakfast service


Carregar ppt "MDA na Prática Flávia Durans Pitta Marinho"

Apresentações semelhantes


Anúncios Google