Model-driven Architecture

Model-driven Architecture

La arquitectura dirigida por modelos (Model-Driven Architecture o MDA) es un acercamiento al diseño de software, propuesto y patrocinado por el Object Management Group. MDA se ha concebido para dar soporte a la ingeniería dirigida a modelos de los sistemas de software. MDA es una arquitectura que proporciona un conjunto de guías para estructurar especificaciones expresadas como modelos.

Contenido

Introducción

Usando la metodología MDA, la funcionalidad del sistema será definida en primer lugar como un modelo independiente de la plataforma (Platform-Independent Model o PIM) a través de un lenguaje específico para el dominio del que se trate. Dado un modelo de definición de la plataforma (Platform Definition Model o PDM) correspondiente a CORBA, .NET, web, etc., el modelo PIM puede traducirse entonces a uno o más modelos específicos de la plataforma (Platform-specific models o PSMs) para la implementación correspondiente, usando diferentes lenguajes específicos del dominio, o lenguajes de propósito general como Java, C#, Python, etc. La traducción entre el PIM y los PSMs se realizan normalmente utilizando herramientas automatizadas, como herramientas de transformación de modelos (por ejemplo aquellas herramientas que cumplen con el nuevo estándar de OMG denominado QVT). El proceso completo se encuentra documentado en un documento que actualiza y mantiene OMG denominado Guía MDA. Martin Sullon.

Los principios de MDA pueden aplicarse a otras áreas como el modelado de procesos de negocios donde el PIM, independiente de la tecnología y de la arquitectura es adaptado tanto a los sistemas como a los procesos manuales. El modelo MDA está relacionado con múltiples normas, incluyendo el lenguaje de modelado unificado (Unified Modeling Language o UML), Meta-Object Facility (MOF), XML Metadata Interchange (XMI), Enterprise Distributed Object Computing (EDOC), el Software Process Engineering Metamodel (SPEM) y el Common Warehouse Metamodel (CWM). Fijese que el término "arquitectura" en los metamodelos no se refiere a la arquitectura del sistema modelizado sino más bien a la arquitectura de los distintos estándares y formas del modelo que sirven de base tecnológica al MDA.

El Object Management Group mantiene la marca registrada sobre MDA, así como sobre varios términos similares incluyendo MDD (Model Driven Development), Model Driven Application Development, Model Based Application Developtment, Model Based Programming y otros similares. El acrónimo principal que aún no ha sido depositado por OMG hasta ahora es MDE. A consecuencia de esto, el acrónimo MDE es usado actualmente por la comunidad investigadora internacional cuando se refieren a ideas relacionadas con la ingeniería de modelos sin centrarse exclusivamente en los estándares OMG.

Acercamiento MDA

Uno de los principales objetivos de MDA es separar el diseño de la arquitectura y de las tecnologías de construcción, facilitando que el diseño y la arquitectura puedan ser alterados independientemente. El diseño alberga los requerimientos funcionales (casos de uso) mientras que la arquitectura proporciona la infraestructura a través de la cual se hacen efectivos requerimientos no funcionales como la escalabilidad, fiabilidad o rendimiento. MDA se asegura de que el modelo independiente de la plataforma (PIM), el cual representa un diseño conceptual que concreta los requerimientos funcionales, sobrevive a los cambios que se produzcan en las tecnologías de fabricación y en las arquitecturas software. De particular importancia en MDA es la noción de transformación de modelos. Uno de los estándares definidos para la transformación de modelos se denomina QVT.

Herramientas MDA

Un amplio conjunto de herramientas con soporte para MDA se están desarrollando por los principales fabricantes y proyectos Open Source. Estas herramientas permiten comúnmente la especificación rudimentaria de arquitecturas. Algunos ejemplos simples de estas especificaciones de arquitecturas incluyen:

  • Seleccionar una de las arquitecturas de referencia tales como Java EE o Microsoft .NET.
  • Especificar la arquitectura a un nivel de mayor detalle incluyendo tecnologías de la capa de presentación, de la capa de negocio, de persistencia o tecnología de mapeo de persistencia (como p.e. mapeo relacional a objeto).

Conferencias

Entre las distintas conferencias sobre el tema podemos citar la ECMDA, Conferencia Europea sobre MDA, o incluso MoDELS, anteriormente llamadas conferencias <<UML>>. También hay distintas conferencias y seminarios de trabajo (en OOPSLA, ECOOP y demás) orientadas en aspectos más específicos de MDA como la transformación de modelos, la composición o su generación.

Referencias

  • Model-Driven Architecture in Practice. A Software Production Environment Based on Conceptual Modeling, Oscar Pastor, Juan Carlos Molina, 2007, ISBN: 978-3-540-71867-3
  • MDA Distilled, Principles of Model Driven Architecture, Stephen Mellor, Kendall Scott, Axel Uhl, Dirk Weise, Addison-Wesley Professional, 2004, ISBN 0-201-78891-8
  • The MDA Journal: Model Driven Architecture Straight From The Masters, Meghan Kiffer, ISBN 0-929652-25-8
  • Model Driven Architecture, Springer-Verlag, ISBN 3-540-28240-8
  • Model Driven Architecture: Applying MDA to Enterprise Computing, David S. Frankel, John Wiley & Sons, ISBN 0-471-31920-1
  • Model Driven Architecture With Executable UML, Chris Raistrick, Paul Francis, John Wright, Colin Carter, Ian Wilkie Cambridge University Press, ISBN 0-521-53771-1

Enlaces externos

Véase también


Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • Model-driven architecture — (MDA) is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model driven architecture is a kind of domain engineering, and… …   Wikipedia

  • Model Driven Architecture — Saltar a navegación, búsqueda La arquitectura dirigida por modelos (Model Driven Architecture o MDA) es un acercamiento al diseño de software, propuesto y patrocinado por el Object Management Group. MDA se ha concebido para dar soporte a la… …   Wikipedia Español

  • Model Driven Architecture — L architecture dirigée par les modèles ou MDA (pour l Anglais Model Driven Architecture) est une démarche de réalisation de logiciel, proposée et soutenue par l OMG. C est une variante particulière de l ingénierie dirigée par les modèles (IDM, ou …   Wikipédia en Français

  • Model Driven Architecture — (MDA)  создаваемая консорциумом OMG концепция модельно ориентированного подхода к разработке программного обеспечения. Его суть состоит в построении абстрактной метамодели управления и обмена метаданными (моделями) и задании способов ее… …   Википедия

  • Model driven architecture — L’architecture dirigée par les modèles ou MDA (pour l Anglais Model Driven Architecture) est une démarche de réalisation de logiciels, proposée et soutenue par l OMG. C est une variante particulière de l ingénierie dirigée par les modèles (IDM,… …   Wikipédia en Français

  • Model Driven Architecture — Modellgetriebene Architektur (MDA; engl. Model Driven Architecture, MDA) bezeichnet einen modellgetriebenen Softwareentwicklungsansatz, der auf einer klaren Trennung von Funktionalität und Technik beruht. Inhaltsverzeichnis 1 Abgrenzung zu CASE… …   Deutsch Wikipedia

  • Model-driven engineering — (MDE) is a software development methodology which focuses on creating and exploiting domain models (that is, abstract representations of the knowledge and activities that govern a particular application domain), rather than on the computing (or… …   Wikipedia

  • Model-Driven Engineering — Ingénierie dirigée par les modèles L Ingénierie dirigée par les modèles (IDM) est le domaine de l informatique mettant à disposition des outils, concepts et langages pour créer et transformer des modèles. Langages : UML, MOF, QVT Mots… …   Wikipédia en Français

  • Model-driven integration — In software design, model driven integration is a subset of model driven architecture (MDA) which focuses purely on solving Application Integration problems using executable Unified Modeling Language (UML). External links Model Driven Integration …   Wikipedia

  • Model Driven Software Development — Modellgetriebene Softwareentwicklung (englisch Model Driven Software Development, MDSD) ist ein Oberbegriff für Techniken, die aus formalen Modellen automatisiert lauffähige Software erzeugen.[1] Dabei werden domänenspezifische Sprachen (englisch …   Deutsch Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”