He tenido ocasión de leerme una versión preliminar del nuevo MDA Foundation Model. Este “foundation model” quiere proporcionar una definición “formal” de todos los conceptos utilizados en un proceso de desarrollo dirigido por modelos. Más concretamente, define los conceptos de modelo, metamodelo, transformación, vista,… y las relaciones entre ellos.

Este draft será la base de la nueva revisión del estándard MDA (la MDA Guide actual, tiene ya más de 6 años.

Primero la parte positiva: La verdad es que ya era hora que MDA dejara de ser sólo una descripción superficial de un conjunto de conceptos (CIM, PIM,…) sin ningún tipo de semántica precisa (por ejemplo, todavía seguimos sin ponernos de acuerdo sobre qué es un CIM). Por lo tanto agradezco el intento de formalizar los conceptos de modelo, metamodelo, transformación….

La parte negativa es que no estoy nada convencido con el estado actual de la propuesta. El documento todavía carece de precisión en algunos aspectos. Los dos más importantes:

  • El propio concepto de modelo no está muy claro. Parece claro que un diagrama de clases UML es un modelo. Lo que ya no queda tan claro es si una especificación que incluya un diagrama de secuencia y un diagrama de clases es un solo modelo, son dos modelos o depende de lo que prefiera el diseñador. A lo mejor seria útil clarificar la relación entre modelo y el concepto de diagrama (que ciertamente, no forma parte del metamodelo de UML pero es ampliamente conocido y utilizado tanto por los diseñadores como en la descripción del propio documento UML Superstructure).
  • Un metamodelo (subclase de la clase model se define simplemente como un conjunto de metamodel elements. Esta visión es demasiado simplista (puramente sintáctica) ya que no incorpora la información semántica que nos tiene que permitir interpretar correctamente los modelos que sean instancia de ese metamodelo.

Esperemos que la OMG publique pronto una versión (mejorada) de este draft que nos permita a todos los que no somos miembros dar nuestra opinión sobre este foundation model y ayudar en la preparación del nuevo estándar MDA (2.0?) (hasta entonces podéis acceder libremente a las primeras discusiones y ideas que dieron lugar a este modelo, recogidas en este documento).

Si te ha gustado esta entrada, puedes subscribirte a este Software Modeling blog y/o seguirme en twitter y/o a través de la lista de distribución del portal Y si realmente te ha gustado ayúdame a hacerlo llegar a otros utilizando los bookmarks que tienes a continuación:

Pin It on Pinterest

Share This