MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

31
MDA – Model Driven Architecture MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Transcript of MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Page 1: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDA – Model Driven ArchitectureMDA – Model Driven Architecture

Jean Elder – RARCS (2013-1)

Page 2: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

AbordaremosAbordaremos

OMGOMG MDAMDA

– Conceitos BásicosConceitos Básicos– Como é usadoComo é usado– TransformaçõesTransformações– PráticaPrática

ONTOLOGIA – possibilidadesONTOLOGIA – possibilidades

Jean Elder – RARCS (2013-1)

Page 3: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

OMG OMG –– Object Management GroupObject Management Group

Jean Elder – RARCS (2013-1)

Page 4: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

OMG OMG – as especificações do grupo– as especificações do grupohttp://www.omg.org/spec/index.htm

•BUSINESS MODELING SPECIFICATIONS•MIDDLEWARE SPECIFICATIONS

oCORBA/IIOP SpecificationsoData Distribution Service (DDS) SpecificationsoSpecialized CORBA Specifications

•IDL LANGUAGE MAPPING SPECIFICATIONS•ISO ADOPTED SPECIFICATIONS•MODELING AND METADATA SPECIFICATIONS

oUML, MOF, CWM, XMI SpecificationsoUML Profile Specifications

•MODERNIZATION SPECIFICATIONS•PLATFORM INDEPENDENT MODEL (PIM), PLATFORM SPECIFIC MODEL (PSM)

oCORBAservices Specifications oCORBAfacilities Specifications

•CORBA EMBEDDED INTELLIGENCE SPECIFICATIONS•CORBA SECURITY SPECIFICATIONS•OMG DOMAIN SPECIFICATIONS•SIGNAL- AND IMAGE-PROCESSING

Especificações OMG

Jean Elder – RARCS (2013-1)

Page 5: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Onde estamos?Onde estamos?

OMGOMG MDAMDA

– Conceitos BásicosConceitos Básicos– Como é usadoComo é usado– TransformaçõesTransformações– PráticaPrática

ONTOLOGIA – possibilidadesONTOLOGIA – possibilidades

Jean Elder – RARCS (2013-1)

Page 6: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Alguns Conceitos:• Sistemas;• Modelo;• Orientado a Modelo;• Arquitetura;• Ponto de Vista;• Visão;• Plataforma;• Aplicação.

Jean Elder – RARCS (2013-1)

Page 7: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Alguns Conceitos:• Sistemas;• Modelo;• Orientado a Modelo;• Arquitetura;• Ponto de Vista;• Visão;• Plataforma;• Aplicação.

Sistemas:

é dependente de contexto, pode compreender: um programa, um sistema de computação único, uma combinação de parte de sistemas diversos ...

Jean Elder – RARCS (2013-1)

Page 8: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Modelo:

é uma descrição ou uma especificação de sistema e seu ambiente para algum propósito.

Jean Elder – RARCS (2013-1)

Page 9: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Orientado a Modelo :

é uma abordagem de desenvolvimento de sistema na qual utiliza o potencial de representação de algum domínio.

Jean Elder – RARCS (2013-1)

Page 10: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Arquitetura :

é uma especificação das partes e conectores de um sistema, bem como as regras das interações entre as partes usando os conectores

Jean Elder – RARCS (2013-1)

Page 11: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Ponto de Vista:

é uma técnica de abstração usando um conjunto de conceitos arquiteturais e regras de estruturação. A abstração é usada para suprimir detalhes e estabilizar a simplificação do modelo.

Jean Elder – RARCS (2013-1)

Page 12: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Visão :

é a representação de determinado sistema na perspectiva do ponto de vista escolhido.

Jean Elder – RARCS (2013-1)

Page 13: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Plataforma :

é um conjunto de subsistemas e tecnologias que provêm um conjunto coerente de funcionalidades através de interfaces e padrões utilizados.

Jean Elder – RARCS (2013-1)

Page 14: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAObjetivos principais:

• Portabilidade;• Interoperabilidade;• Reusabilidade.

Aplicação :

para a especificação MDA, é utilizado para referenciar uma funcionalidade que está sendo desenvolvida.

Jean Elder – RARCS (2013-1)

Page 15: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDA

Tipos –Plataforma:

• Genéricas; • Especificas por Tecnologias;• Proprietárias.

• Genéricas: Objeto | Lote | Fluxo de Dados;

• Tecnologia: CORBA | Java 2 Enterprise Edition

• Proprietário: CORBA: Iona Orbix | J2EE: IBMWebSphere

Jean Elder – RARCS (2013-1)

Page 16: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAAbstração

•Possui uma visão de alto nível, mais abrangente, mais ampla!

•Níveis de abstração:

ESW: Linguagens de alto nível versus Assembly BD: Modelagem Conceitual / Lógica / Física

Jean Elder – RARCS (2013-1)

Page 17: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Onde estamos?Onde estamos?

OMGOMG MDAMDA

– Conceitos BásicosConceitos Básicos– Como é usadoComo é usado– TransformaçõesTransformações– PráticaPrática

ONTOLOGIA – possibilidadesONTOLOGIA – possibilidades

Jean Elder – RARCS (2013-1)

Page 18: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDA - MDA - Pontos de Vista Pontos de Vista

CIMCIM

PIMPIM

PSMPSMJean Elder – RARCS (2013-1)

Page 19: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDACamadas

CIM: Vinculada a domínio: Saúde / Educação / TI Sem qualquer vinculo a tecnologia, seja hard || soft

PIM: Independente de plataforma em latus senso Possibilidade de Mapeamentos para diversas plataformas em stricto senso

PSM: Incrementa detalhes acima da PIM vinculando a tecnologia especifica.

Jean Elder – RARCS (2013-1)

Page 20: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Onde estamos?Onde estamos?

OMGOMG MDAMDA

– Conceitos BásicosConceitos Básicos– Como é usadoComo é usado– TransformaçõesTransformações– PráticaPrática

ONTOLOGIA – possibilidadesONTOLOGIA – possibilidades

Jean Elder – RARCS (2013-1)

Page 21: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDATransformação de ModelosTransformação de Modelos

Jean Elder – RARCS (2013-1)

Page 22: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDATransformações sucessivasTransformações sucessivas

Jean Elder – RARCS (2013-1)

Page 23: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAAdicionando Marcas(MARKS)Adicionando Marcas(MARKS)

Jean Elder – RARCS (2013-1)

Page 24: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAtransformação PIM >> PSMtransformação PIM >> PSM

Jean Elder – RARCS (2013-1)

Page 25: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDAComo são feitas as “marcas”Como são feitas as “marcas” Na UML:

Utilizando o recurso de estereótipos disponibilizado na linguagem.

Jean Elder – RARCS (2013-1)

Page 26: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDA

Jean Elder – RARCS (2013-1)

Page 27: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Onde estamos?Onde estamos?

OMGOMG MDAMDA

– Conceitos BásicosConceitos Básicos– Como é usadoComo é usado– TransformaçõesTransformações– PráticaPrática

ONTOLOGIA – possibilidadesONTOLOGIA – possibilidades

Jean Elder – RARCS (2013-1)

Page 28: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDAMDA Prática Prática

Em linhas gerais, iremos trabalhar nas camadas PIM e PSM

http://www.acceleo.org

Jean Elder – RARCS (2013-1)

Page 29: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Acceleo:Acceleo:is a code generator transforming models into code (MDA approach).

Gerador de código baseado na linguagem: MOF Model To Text Transformation Language

http://www.omg.org/spec/MOFM2T/1.0/Jean Elder – RARCS (2013-1)

Page 30: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

Onde estamos?Onde estamos?

OMGOMG MDAMDA

– Conceitos BásicosConceitos Básicos– Como é usadoComo é usado– TransformaçõesTransformações– PráticaPrática

ONTOLOGIA – possibilidadesONTOLOGIA – possibilidades

Jean Elder – RARCS (2013-1)

Page 31: MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)

MDA & ONTOLOGIAMDA & ONTOLOGIA

Casamento ?Casamento ?

Jean Elder – RARCS (2013-1)

SIMSIM

NÃONÃOOUOU