DSDM: Desarrollo de Software Dirigido por Modelos. MDA y Aplicaciones

 

 



OBJETIVOS

El objetivo principal de esta página web es el de difundir y compartir recursos relacionados con el desarrollo de software dirigido por modelos (DSDM) y MDA. Esta web trata además de ofrecer un entorno que favorezca el establecimiento de contactos y grupos de trabajo relacionados con estos temas, posibilitando la creación de redes o proyectos de investigación en un futuro cercano. 

Esta página no trata de reemplazar en ninguna forma a la página Web que mantiene OMG sobre MDA (www.omg.org/mda), sino complementarla con otro tipo de información más general sobre MDD, alguna otra que no corresponde a OMG, y otra de interés sólo a la comunidad latina relacionada con estos temas. 

DESARROLLO DE SOFTWARE DIRIGIDO POR MODELOS

El Desarrollo de Software Dirigido por Modelos (DSDM) y más concretamente la propuesta MDA (Model Driven Architecture) de OMG constituyen una aproximación para el desarrollo de sistemas software, basada en la separación entre la especificación de la funcionalidad esencial del sistema y la implementación de dicha funcionalidad usando plataformas de implementación específicas.

La iniciativa MDA cubre un amplio espectro de áreas de investigación (metamodelos basados en MOF, perfiles UML, transformaciones de modelos, definición de lenguajes de transformación (QVT), construcción de modelos PIM y PSM y transformaciones entre ellos, construcción de herramientas de soporte, aplicación en métodos de desarrollo y en dominios específicos, etc.). Algunos de estos aspectos están bien fundamentados y se están empezando a aplicar con éxito, otros sin embargo están todavía en proceso de definición. En este contexto son necesarios esfuerzos que conviertan MDA y sus conceptos y técnicas relacionados en una aproximación coherente, basada en estándares abiertos, y soportada por técnicas y herramientas maduras.

En una sesión plenaria celebrada en Montreal entre los días 23 y 26 de Agosto de 2004, se acordó la siguiente definición de MDA (documento de OMG ormsc/04-08-02):

"MDA is an OMG initiative that proposes to define a set of non-proprietary standards that will specify interoperable technologies with which to realize model-driven development with automated transformations. Not all of these technologies will directly concern the transformations involved in MDA. 

MDA does not necessarily rely on the UML, but, as a specialized kind of MDD (Model Driven Development), MDA necessarily involves the use of model(s) in development, which entails that at least one modeling language must be used. Any modeling language used in MDA must be described in terms of the MOF language, to enable the metadata to be understood in a standard manner, which is a precondition for any ability to perform automated transformations."

Actualmente la Guía de MDA se encuentra en proceso de revisión.

Ir al inicio de la página

MDA Y ESTÁNDARES

Ir al inicio de la página

EVENTOS Y CONFERENCIAS RELACIONADAS

Algunos de los últimos eventos relacionados con MDD y MDA son los siguientes.

Ir al inicio de la página

LISTAS DE DISTRIBUCIÓN

Ir al inicio de la página

PUBLICACIONES

Libros

  • Steven Kelly and Juha-Pekka Tolvanen. Domain-Specific Modeling: Enabling Full Code Generation. Wiley-IEEE Computer Society Press, March 2008

  • Tim Weilkiens. Systems Engineering with SysML/UML: Modeling, Analysis, Design, Morgan Kaufmann, February 2008.

  • Thomas Stahl, Markus Völter. Model-Driven Software Development,  John Wiley, 2006.

  • Bill Moore David Dean Anna Gerber Gunnar Wagenknecht Philippe Vanderheyden. "Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework" IBM Redbooks, Feb 2004.

  • Tony Clark, Andy Evans, Paul Sammut, James Willans. "Applied Metamodelling: A Foundation for Language Driven Development Version", 2004.

  • Chris Raistrick, Paul Francis, John Wright, "Model Driven Architecture with Executable UML", Cambridge University Press, 2004.
  • Jim Arlow, Ila Neustadt, "Enterprise Patterns and MDA: Building Better Software with Archetype Patterns and UML", Pearson Education, 2004.
  • S. Mellor, S. Kendall, A. Uhl, D. Weise, "MDA Distilled", Addison-Wesley, 2004.
  • Jack Greenfield, Keith Short, Steve Cook, Stuart Kent. Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. John Wiley, 2004.
  • D. Frankel. "Model Driven Architecture -- Applying MDA™ to enterprise computing", Wiley, 2003.
  • Jos Warmer, Anneke Kleppe, "The Object Constraint Language: Getting Your Models Ready for MDA", Second Edition, Addision-Wesley, 2003.
  • Anneke Kleppe, Jos Warmer, Wim Bast, "MDA Explained: The Model Driven Architecture: Practice and Promise", Addision-Wesley, 2003. 
  • Marc J. Balcer, Stephen J. Mellor, "Executable UML: A Foundation for Model Driven Architecture" Addison-Wesley, 2002. 
  • Richard Hubert. "Convergent Architecture - Building Model Driven J2EE Systems with UML". J. Wiley, 2002.

  • Leon Starr, "Executable UML How to Build Class Models"

Artículos y white papers

La lista de artículos sobre MDD y MDA crece sin parar, y es imposible mantener actualizada una lista coherente. Sin embargo, hay algunos artículos que han marcado hitos en estos temas, y que merecen una mención especial (desde nuestro humilde punto de vista). Si conoces algún otro, por favor envíanos su referencia y lo incluiremos aquí.

Otros documentos de OMG

Ir al inicio de la página

PRESENTACIONES

Ir al inicio de la página

HERRAMIENTAS Y LENGUAJES

El auge de MDA ha impulsado en los últimos años el desarrollo de tecnología (herramientas, lenguajes, etc. ) tanto de carácter comercial como de propósito general. Algunas de estas herramientas implementan total o parcialmente los conceptos de MDA y DSDM. 

Una lista bastante completa puede encontrarse en la página de OMG sobre MDA. http://www.omg.org/mda/committed-products.htm.  Entre ellas, destacamos las siguientes:

  • UMT -  (UML Model Transformation Tool) - Herramienta para la trasformación de modelos y la generación de código basada en especificaciones UML/XMI .

  • ATLAS Transformation Language (ATL) - Lenguaje de transformación desarrollado por el equipo de INRIA Atlas. 

  • MTL Engine - Una implementación de QVT desarrollada por INRIA Triskel para Netbeans MDR y Eclipse EMF basada en el lenguaje MTL.

  • ModFact. Un repositorio MOF y una máquina QVT para LIP6, Paris basada en el lenguaje TRL.

  • Generative Model Transformer (GMT), un proyecto de eclipse que proporciona tecnología (la herramienta FUUT-je y un generador de código) para la transformación de modelos bajo la plataforma eclipse. 

  • OpenMDX,  un entorno MDA open source que genera código para las plataformas J2EE y .Net 

  • AndroMDA, herramienta open source basada en templates para la generación de código J2EE desde modelos UML/XMI. Usa VTL (Velocity Template Engine) como lenguaje scripting y Netbeans MDR como API de los modelos.

  • XDoclet, herramienta open source basada en atributos para la generación de código J2EE. Aunque realmente no está basada en modelos, puede ser combinada con otras herramientas, como UMT, para lograr resultados basados en modelos.

  • Middlegen, generador de código dirigido por bases de datos basado en JSBC, Velocity, Xdoclet y Ant.

  • OMELET , proyecto de Eclipse que trata de proporcionar un framework de caracter general que integre modelos, metamodelos y transformaciones.

  • Openmodel, un framework basado en MOF/JMI para herramientas MDA. 

  • VisualWADE,  una herramienta desarrollada por el grupo de Ingeniería Web de la Universidad de Alicante. VisualWADE permite el diseño y generación automática de aplicaciones web siguiendo una aproximación MDD. Combina diagramas de dominio UML con nuevos modelos para representar la interacción con el usuario sobre un entorno hipermedia. El código intermedio generado es XML. En la versión actual, se proporciona un compilador de modelos que produce entregables en PHP a partir del código intermedio XML.

  • Kermeta, es un lenguaje específico de dominio que cuenta con un entorno de trabajo integrado en Eclipse. Por ser un lenguaje de metamodelado, Kermeta brinda soporte a la especificación de lenguajes específicos de dominio, capacidades para la simulación y prototipado de modelos y metamodelos, y la transformación de modelos.

Herramientas comerciales:

  • ArcStyler, herramienta comercial de Interactive Objects. Utiliza MOF para soportar estándares como XMI y UML, y además JMI para el acceso al repositorio de modelos. Integra herramientas de modelado (UML) y desarrollo (ingeniería inversa, explorador de modelos basado en MOF, construcción y despliegue) con la arquitectura CARAT que permite la creación, edición y mantenimiento de cartuchos MDA (MDA-Cartridge) que definen transformaciones.

  • MCC (Model Component Compiler), producto comercial orientado a la generación de código para plataformas J2EE 

  • Codagen Architect , producto comercial integrado con varias herramientas comerciales UML.

  • OptimalJ de Compuware, usa notación de patrones para definir las transformaciones PSM y MOF para soportar estándares como UML y XMI. Se trata de un entorno de desarrollo que permite generar aplicaciones J2EE completas a partir de un PIM.

  • SosyInc, proporciona una herramienta de modelado y una máquina de transformación que genera GUI y server-side. Está basada en modelos OASIS/UML y reglas sobre la estructura de la aplicación y la lógica del negocio.

  • MDWorkbench, entorno que permite importar metamodelos en diversos formatos (UML, XML Schema, KM3,...) y realizar transformaciones modelo a modeo, modelo a texto y modelo a documentación (en formato MS Word).

Ir al inicio de la página

GRUPOS DE TRABAJO E INICIATIVAS (Nacionales)

Además de compartir referencias bibliográficas, el objetivo de este página es el de favorecer el establecimiento de contactos y grupos de trabajo relacionados con MDA y DSDM. 

En España son muchos ya los grupos que actualmente trabajan en temas relacionados con MDA y DSDM, algunos de sus representantes son: 

Esperanza Marcos Univ. Rey Juan Carlos Esperanza.Marcos(@)urjc.es 
Juan de Lara Univ. Autónoma de Madrid jdelara(@)uam.es
Juan Garbajosa Univ. Politécnica de Madrid jgs(@)eui.upm.es
Manuel Clavel Univ. Complutense de Madrid clavel(@)sip.ucm.es
José Luis Roda García Univ. de La Laguna jlroda(@)ull.es
Isidro Ramos Univ. Politécnica de Valencia iramos(@)dsic.upv.es
Miguel Angel Laguna Univ. de Valladolid malaguna(@)infor.uva.es
Jaime Gómez Univ. de Alicante jgomez(@)dlsi.ua.es
J. Ambrosio Toval Univ. de Murcia atoval(@)um.es
Pedro Clemente Univ. de Extremadura pjclemente(@)unex.es
Ernest Teniente Univ. Politécnica de Catalynya teniente(@)lsi.upc.edu
Jordi Cabot Univ. Oberta de Catalunya jcabot(@)uoc.edu
Antonia Reina Univ. de Sevilla reinaqu(@)lsi
Xavier Franch Univ. Politécnica de Catalunya franch(@)lsi.upc.edu
Vicente Pelechano Univ. Politécnica de Valencia pele(@)dsic.upv.es
Jesús García Molina  Univ. de Murcia jmolina(@)um.es
Juan LLorens Univ. Carlos III de Madrid llorens(@)ie.inf.uc3m.es
Félix García Univ. Castilla La Mancha Felix.García(@)uclm.es
Antonio Ruíz Univ. de Sevilla aruiz(@)us.es
Oscar Díaz Univ. del País Vasco Oscar.Diaz(@)ehu.es
Goiuria Sagardui Univ. de Mondragón gsagardui(@)eps.mondragon.edu
Luis Iribarne Univ. de Almería liribarne(@)ual.es
Cristina Vicente Univ. Politécnica de Cartagena Cristina.Vicente(@)upct.es
Antonio Vallecillo Univ. de Málaga av(@)lcc.uma.es
Francisco José García Peñalvo Univ. de Salamanda fgarcia(@)usal.es
Iván Porres Abo Akademi University Ivan.Porres(@)abo.fi
Fernando Sánchez Figueroa Univ. de Extremadura fernando(@)unex.es
Juan Pedro Silva Gallino Univ. Politécnica de Madrid psilva(@)dit.upm.es
Juan Pavón Mestras Univ. Complutense Madrid jpavon(@)sip.ucm.es
Elisa Gallo European Software Institute MariaElisa.Gallo(@)esi.es

También contamos con la participación de empresas que colaboran activamente con algunos de los grupos de investigación y universidades citadas anteriormente.

Juan Carlos Molina CARE Technologies S.A jcmolina(@)care-t.com
Víctor Sánchez  OPEN CANARIAS, S.L. vsanchez(@)opencanarias.com
Javier Muñoz Ferrara Integranova, S.A. jmuñoz(@)integranova.com
Antonio López-Cerón Push The Button antonio.lopez(@)ptbsi.com
Pascual García Sinergia-IT pascual.garcia(@)sinergiatec.com
Salvador Trujillo Centro de Inv. Tecn. IKERLAN STrujillo(@)ikerfan.es

Ir al inicio de la página

CRÉDITOS

Esta página está siempre en proceso de actualización. Para añadir nuevos enlaces a recursos que creas que falten, basta con mandar un mail a Nathalie (vergara at lcc.uma.es) que es la persona encargada de esta página. 

De igual forma, si tienes cualquier comentario o sugerencia que nos ayude a mejorar la utilidad de esta página, por favor compártelo con nosotros. Gracias!

Disclaimer: MDD and MDA are registered trademarks of OMG in the US and other countries.

   
Última actualización 18/04/2008