Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouFelícia Álvaro Franca Alterado mais de 8 anos atrás
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
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.