Engenharia de software orientada a modelos

Origem: Wikipédia, a enciclopédia livre.

A engenharia de software orientada a modelos (do inglês Model-Driven Engineering (MDE) ou Model-Driven Software Engineering (MDSE)) é uma metodologia de desenvolvimento de software que se concentra na criação e exploração de modelos de domínio, ou seja, de modelos conceituais representando todos os tópicos relacionados a um problema específico. Assim, destaca e visa representações abstratas do conhecimento e atividades que governam um domínio de aplicação particular, em vez dos conceitos de computação (isto é, descrição algorítmica).

Visão geral[editar | editar código-fonte]

A abordagem orientada a modelos tem como objetivo aumentar a produtividade, maximizando a compatibilidade entre sistemas (via reutilização de modelos padronizados), simplificando o processo de design (por meio de modelos de padrões de design recorrentes no domínio da aplicação) e promovendo a comunicação entre indivíduos e equipes trabalhando no sistema (através de uma padronização da terminologia e das boas práticas utilizadas).

Algumas das iniciativas mais conhecidas de MDE são:

  • A iniciativa Model-Driven Architecture (MDA) da Object Management Group (OMG), que é alavancada por vários de seus padrões, como Meta-Object Facility, XMI, CWM, CORBA, Unified Modeling Language (UML) e QVT .[1]
  • O "ecossistema" de ferramentas de programação e modelagem do Eclipse, representado pelo Eclipse Modeling Framework. Este framework permite a criação de ferramentas implementando os padrões MDA da OMG, além de ser possível usá-lo para implementar outras ferramentas relacionadas à modelagem.

História[editar | editar código-fonte]

A primeira ferramenta de Engenhara de Software Orientada a Modelos foram as Ferramentas de Engenharia de Software Assistido por Computador (Ferramentas Case) desenvolvidas na década de 80. Companhias como Integrated Development Environments (IDE - StP), Higher Order Software (atualmente Hamilton Technologies, Inc., HTI) Cadre Technologies, Bachman Information Systems e Logic Works (BP-Win e ER-Win) foram pioneiros na área.

O Governo Estadunidense se envolveu em definições de modelagem, criando o IDEF. Com múltiplas variações de definições de modelagem (veja Booch, Rumbaugh, Jacobson, Gane e Searson, Harel, Método de Shlaer-Mellor, e outros) eles acabaram se juntando criando Linguagem de Modelagem Unificada (UML). Rational_Rose, um produto para implementação de UML, foi feito por Rational Corporation (Booch) a automação correspondente elevou os níveis de abstração no desenvolvimento de software. Essa abstração promove modelos mais simples com um foco maior no espaço do problema. Combinado com semânticas executáveis isso aumentou o nível total de automação possível. O Object Management Group (OMG) tem desenvolvido um conjunto de padrões chamado Model Driven Architecture (MDA), construindo a fundação para esta abordagem avançada centrada na arquitetura.

Referências

Leituras complementares[editar | editar código-fonte]

  • David S. Frankel, Model Driven Architecture: Applying MDA to Enterprise Computing, John Wiley & Sons, ISBN 0-471-31920-1
  • Marco Brambilla, Jordi Cabot, Manuel Wimmer, Model Driven Software Engineering in Practice, foreword by Richard Soley (OMG Chairman), Morgan & Claypool, USA, 2012, Synthesis Lectures on Software Engineering #1. 182 pages. ISBN 9781608458820 (paperback), ISBN 9781608458837 (ebook). http://www.mdse-book.com
  • «Model-Driven Engineering: A Survey Supported by a Unified Conceptual Model». Computer Languages, Systems & Structures. 43. doi:10.1016/j.cl.2015.06.001 

Ligações externas[editar | editar código-fonte]

Ícone de esboço Este artigo sobre engenharia de software é um esboço. Você pode ajudar a Wikipédia expandindo-o.