Arquitetura Orientada Ao Modelo
- Foi um paradigma criado pelo OMG em 2000
- Ciclo de vida é semelhante ao tradicional, cria-se os mesmos modelos das abordagens tradicionais.
A ideia é iniciar um projeto de modelagem que vai ser num primeiro momento independente de plataforma, chamado:
PIM - Platform Independent Model
- Logo depois,
- PSM - Platform Specific Model
- E depois será convertido em código fonte.
Dentro do conceito de MDA, surge também o MOF - Meta Object Facility, que é uma instância do conceito de MDA.
MOF define uma linguagem abstrata e um framework para especificação, construção e gerenciamento de metamodelo. A UML implementa o MOF.
Tabela do MOF
- M3 - Nível mais alto de abstração. É a especificação de conceitos do modelo MOF
- M2 - Nível de implementação de linguagens como UML
- M1 - Mais comum. Onde os modelos são criados.
- M0 - Nível das instancias que são criadas a partir desse modelo. Se temos uma tabela Produto, o nível M0 seria os registros dessa tabela.
XMI é uma especificação genérica que é possível exportar diagramas entre softwares diferentes (Argo e Rational)
EMF - Eclipse Modeling Framework
- É um framework que é utilizado para geração de aplicações dentro do conceito de MDA.
- Base para trabalhar com EMF é um doc XMI, Rational, java anotado, etc.
- É semelhante ao MOF mas definição é chamada “EMOF”.
Constituído de dois frameworks fundamentais:
- Core Framework: suporte para criação de classes de implementação
- EMF.edit: suporte para edição do modelo