Modelos formais em MDA

Documentos relacionados
Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:

Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML

Model Driven Development (MDD)

Sergio Roberto de Mello Canovas Carlos Eduardo Cugnasca WTA 2015

3 Tecnologias Relacionadas

Aumento da complexidade dos sistemas. aumento do nível de abstração

Metamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo

Introdução à Análise e Projeto de Sistemas

Transformações e mapeamentos da MDA e sua implementação em três ferramentas.

Model Driven Architecture. Centro de Informática/UFPE Fernando Trinta

Model-Driven Architecture

Ferramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes

INF1013 MODELAGEM DE SOFTWARE

MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS: MODEL DRIVEN ARCHITETURE COM INTEGRAÇÃO AO PROCESSO UNIFICADO

Desenvolvimento Dirigido por Modelos: Ferramentas

Desenvolvimento de software orientado a características e dirigido por modelos

Usando a abordagem MDA no desenvolvimento de sistemas multi-agentes

Arquitetura Orientado por Modelos aplicada a Linha de Produto de Software. Eduardo Barbosa da Costa

Agenda Atual do Curso. Desenvolvimento Dirigido por Modelos (MDD) Abordagem MDD. Agenda da Aula. Abordagem MDD. Manutenção e Geração

Visões Arquiteturais. Arquitetura de Software Thaís Batista

MDA - resumo (OMG - Model Driven Architecture) Prof. Rossano Pablo Pinto Março/2012 v0.1 Março/2013 v0.2. Rossano Pablo Pinto - março/2013 1

Desenvolvimento de SIG para Web utilizando MDA

Uma Ferramenta baseada em Modelos para Modelagem Conceitual ontologicamente bem fundada

FOMDA ML: uma Linguagem de Modelagem para Especificação de Transformadores de Modelos na MDA

Tópicos da Aula. Desenvolvimento Dirigido por Modelos (MDD) Reusar cada vez mais... Reusar cada vez mais... O que é modelagem? Reuso: Código x Modelos

Uma Abordagem para o Controle da Evolução de Software no Desenvolvimento Orientado a Modelos

Cordel: uma Ferramenta Distribuída para a Geração de

Desenvolvimento de Software Dirigido a Modelos

ODYSSEY-MDA: UMA ABORDAGEM PARA A TRANSFORMAÇÃO DE MODELOS. Natanael Elias Nascimento Maia

Desenvolvimento de software orientado a características e dirigido por modelos

Aplicação da Técnica de Tecelagem de Modelos na Transformação de Modelos na MDA

Desenvolvimento Dirigido por Modelos: Conceitos, Aplicações, e Perspectivas. Prof. Valdemar Neto INF-UFG

Certificação da Utilização de Padrões de Projeto no Desenvolvimento Orientado a Modelos

USANDO ONTOLOGIAS NA CONSTRUÇÃO DE MODELOS MDA (MODEL-DRIVEN ARCHITECTURE)

Um Processo Baseado em MDA para a Especialização de Mecanismos de Persistência

1.1. Declaração do Problema e Limitações dos Trabalhos Relacionados Um Framework Conceitual para SMAs

Edson Cesar Portilho. Modelagem de Plataforma Abstrata na MDA: Um Estudo Sobre a Implementação de Mensagens Assíncronas entre Objetos

Odyssey-MDA: Uma Abordagem para a Transformação de Modelos de Componentes

Plataformas de Distribuição de Objetos

Introdução à Gestão de Processos de Negócios

UML. Adriano J. Holanda 21/3/

1/26/2009. Metamodelo MMA. Metamodelo MMB. Modelo A2. Modelo A. Modelo B. Transformação M2M

JAVA PARA WEB E EJB APLICAÇÕES WEB, SERVIDORES DE APLICAÇÃO, CONTAINERS WEB

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

Revisão de conceitos Tópicos Avançados em TI Prof. Rossano Pablo Pinto Fevereiro/ v0.1

Diagramas de Sequência Exemplo

EMMANUEL DA COSTA GALO MODEL DRIVEN ARCHITECTURE-MDA E UM ESTUDO DE CASO

Barbara Cristina Alves Silveira 1, Thiago Silva-de-Souza 2 INTRODUÇÃO REFERENCIAL TEÓRICO

UML Linguagem Unificada de Modelagem (Visão Geral)

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos

6 Ferramenta de Apoio ao Processo de Desenvolvimento de Sistemas Multi-Agentes

Model Driven Development (MDD)

Sistemas Distribuídos. Visão Geral Expandida

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software

4 Processo de Transformação

Análise de Sistemas. Aula 5

Objetos e Componentes Distribuídos: EJB

Introdução. PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa

Visões Arquiteturais. Visões Arquiteturais

Simulando Funções de Alta Ordem via o Padrão de Projetos Template

WorkCASE Toolkit: Uma Ferramenta de Suporte para Agile Model Driven Architecture

Features Oriented Model Driven Architecture: Uma Abordagem para Geração e Reutilização de PSMs nas Visões da MDA

ARQUITETURA E DESENHO

Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( )

DIAGRAMAS DE CLASSE UML

Geração automática de código fonte para restrições de integridade topológicas utilizando o perfil UML GeoProfile

Aspectos de Sincronização em Modelos UML. Resumo

Nesta seção você encontra artigos voltados para testes, processo, modelos, documentação, entre outros

2. Trabalhos Relacionados

UML. Trabalho Análise e Projeto de Sistemas. Aluna: Luana Alves Businaro

Curso de Sistemas de Informação. Karla Donato Fook DESU / DComp. Modelagem de Dados UML

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Formação de uma Empresa Virtual

Transformando Modelos da MDA com o apoio de Componentes de Software

de teste funcionais utilizando diagramas de sequência em UML

Estudo para Adaptação de um Processo Ágil de Desenvolvimento baseado em Framework para apoiar o Desenvolvimento de Software baseado em Modelos

Model Driven Architecture-MDA e um estudo de caso.

Engenharia de Domínio e Desenvolvimento Baseado em Componentes. Processo DBC-Arch-DE Apoio do Ambiente Odyssey no Processo Considerações Finais

CBSE. Independência e Padronização. Características da CBSE. Fundamentos da CBSE. Middleware e Processo 22/05/2013

(ADMINISTRAÇÃO GERAL. Organização, Sistemas e Métodos. Gestão de Processos Parte 4. Prof.ª Karen Estefan Dutra

Padrões. Arquitetura de Software Thaís Batista

Exame de Qualificação para o Doutorado

GERAÇÃO DO MODELO PSM EM UMA FERRAMENTA DE CÓDIGO ABERTO PARA UM SISTEMA HELP DESK PSM MODEL GENERATION USING OPEN SOURCE TOOL FOR HELP DESK SYSTEM

Transformação de modelos em processos de desenvolvimento de software

Acadêmico: Samuel Y. Deschamps Orientador: Prof. Jacques R. Heckmann

A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?

Desenvolvimento de Software Baseado em Componentes. Paulo C. Masiero

Desenvolvimento de um Sistema de Informação Médica com Web Services e MDA

ovastudio: Gerador de código usando a Arquitetura Dirigida pelos Modelos (MDA)

Análise e Projeto de Software Parte II. Marcos Dósea

Visão Geral da UML. SSC Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012

Natan Vinícius Zeferino UMA ABORDAGEM DIRIGIDA A MODELOS PARA GERAÇÃO DE INTERFACES A PARTIR DE DIAGRAMAS DE INTERAÇÃO COM O USUÁRIO

Coordenação Geral de Tecnologia da Informação - CGTI. Diretriz de Arquitetura de Sistemas. Versão 1.0. MAPA/SE/SPOA/CGTI, 2012 Página 1

UTILIZAÇÃO DE MDA INTEGRADO AO PROCESSO UNIFICADO NA MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS

Viabilidade de Construção de Software com MDD e MDA

Modelagem de Processos. Rômulo César

UML - Unified Modeling Language

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST

Transcrição:

Modelos formais em MDA Modelo independente de computação (IM) Modelo independente de plataforma (PIM) Modelo específico de plataforma (PSM) Modelo de definição de plataforma (PDM) 39

IM (omputation Independent Model) Às vezes chamado de modelo de domínio ou modelo de negócio ão apresenta detalhes da estrutura do sistema Foco nos requisitos Mapeamento bastante difícil Serve como ponte entre expert do domínio e analista/projetista Uso de BPM (Business Process Modeling otation) sugerido pelo OMG como parte do IM 40

PIM (Platform Independent Model) Permite descrição do sistema sobre uma máquina virtual, neutra tecnologicamente, que oferece um conjunto de serviços de interesse para esse sistema Extensões que possibilitem o mapeamento para PSM são definidas em UM por meio de perfis Serviços de interesse podem ser definidos em termos de certos estilos arquiteturais Ex.: serviços orientados a objetos, serviços orientados a eventos... 41

PSM (Platform Specific Model) ombina a especificação de um sistema no PIM com outras extensões UM (marcas, metamodelos etc.) que especificam como esse sistema usa um tipo de plataforma específico Ex.: estereótipo <<EntityBean>> para indicar persistência de componentes EJB em um banco de dados 42

PDM (Platform Definition Model) Representa os diferentes tipos de elementos oferecidos ao sistema pela plataforma Ex: Modelo de componentes EJB oferece elementos como Interfaces Home e Object, SessionBeans, EntityBeans etc. 43

Relação entre modelos MDA 44

Transformação entre modelos Transformações podem ser definidas entre (meta)modelos Definidas em termos de mapeamentos do modelo origem para elementos do modelo destino Modelos podem ser de mesmo nível ou não Ex.: modelo UM -> documento XM Person age: integer <uclass name= Person > <uattribute name= age type= integer /> </uclass> 45

Transformação de modelos em MDA usando marcas PIM Mecanismos de marcação UM -Estereótipos -Anotações... Marcas PIM Transformação Mapeamento Mapa Plataforma Plataf. PSM 46

Transformação de modelos usando metamodelos PIM inguagem usada Metamodelo p/ PIM inguagem origem MOF Especificação de transformação Transformação PSM inguagem usada Metamodelo p/ PSM inguagem destino QVT (ou hard-coded na ferramenta) Definição de transformações usando metamodelos permite melhor reuso das especificações de transformações 47

Exemplo: Documentos e esquemas XM Esquema XM (modelo) <element name= uclass content= > <attribute name= name value= cname /> <element name= uattribute content= > <attribute name= name value= aname /> <attribute name= type value= atype /> </element> </element> Documento XM (instância do modelo) <uclass name= Person > <uattribute name= age type= integer /> </uclass> 48

Transformação de metamodelos UM -> XM Especificação de transformação inguagem origem inguagem destino MM UM MM XM lass name : String 1 owner attr * Attribute name : String type : String child * Element name : String content : String 0..1 parent 1 * attr Attribute name : String value : String 49

Exemplo: transformação de metamodelos UM -> XM :XM.Element :UM.lass name= cname attr owner :UM.Attribute name= aname type= atype :XM.Attribute name= name value= aname attr name= uclass content= child :XM.Element name= uattribute content= attr attr :XM.Attribute name= name value= cname :XM.Attribute name= type value= atype Person age: integer <uclass name= Person > <uattribute name= age type= integer /> </uclass> 50

Ainda sobre transformações... Podem ser efetuadas tanto sobre modelos estruturais (diagramas de classe) quanto modelos comportamentais (diagramas de casos de uso, de atividades e de estados) Modelos comportamentais permitem codificar a lógica de negócios do sistema (ou grande parte dela) diretamente no PIM/PSM 51

Demonstração... AndroMDA 3.2 (www.andromda.org) Suporte à modelos de estrutura e de comportamento Suporte a J2EE e.et Baseada em templates de geração de código (não QVT!!!) Versão 4.0 (beta) dá suporte a AT (similar a QVT) 52