jueves, enero 06, 2005

Modeling Maturity Levels

Siguiendo la orientación del Modelo de Madurez de Capacidades (CMM o CMMI), Anneke Kleppe y Jos Warmer hablan de un Modelo de Madurez de Modelado (MML, por Model Maturity Level) , estableciendo cinco niveles de elaboración de un modelo de un problema, siendo los niveles tratados los siguientes
  • 0, No especificación
  • 1, Especificación textual
  • 2, Texto aclarado o completado con un Modelo Gráfico
  • 3, Modelos visuales completados con texto
  • 4, Modelos Precisos, en los que el modelo visual puede enlazarse en forma precisa al código ejecutable
  • 5, Solo Modelos, es decir, un modelo que puede llevarse a código ejecutable sin intervención manual. Esto es MDA .
Respecto al nivel 5, los autores dicen:

At MML 5 the models are precise and detailed enough to allow complete code generation. The code generators at this level have become as trustworthy as compilers, therefore no developer needs to even look at the generated code. It is as invisible as assembler code is today. In other words, the MML 5 is the modeling Valhalla.

Unfortunately, there are no modeling languages in which we can write MML 5 models. We cannot work at this level—yet. Currently we still need to hand code a lot of nitty gritty details. This is the reason why we do not give an example here. Only within specific and limited application domains there are languages and tools that can achieve this. Most notably different vendors selling their versions of 'Executable UML' provide solutions in the realtime domain.

En este punto, mi experiencia difiere, pero la primera diferencia proviene de qué consideremos un modelo, y qué consideremos "hand coded"
Estoy acostumbrado a utilizar un concepto de modelo que integra aspectos gráficos, en el marco de una descripción narrativa (mejor debiera decirse lógica, en el sentido de los predicados lógicos de la lógica simbólica) que vertebra un repositorio, el que es íntegro casi en un 95 %, dejando para ingresar código manual sólo por medio de fragmentos estrictamente mapeados a "diagramas de acción", los que pudieran ser también considerados "hand coded", pero sólo si usted está dispuesto a conceder que un diagrama de actividades de UML es "código manual".
Pero, bueno, lo aquí interesante es la definición de niveles de madurez en el modelado.
Y usted, en qué nivel de madurez se ubica?...

2 comentarios:

Carlos dijo...

Hola, puedes, por favor, publicar la url de donde has obtenido esta información, pues me ayudaría mucho con un trabajo de investigación que estoy realizando

Saludos.

Carlos Rojas

Jorge Ubeda dijo...

Carlos, como casi en todas las entradas de este blog, el título de la nota enlaza al artículo, en este caso originario de DevX.com (http://www.devx.com/enterprise/Article/26664)
Como verás allí, Anneke Kleppe y Jos Warmer, junto a Wim Bast, escribieron también un libro (MDA Explained: The Model Driven Architecture(TM): Practice and Promise) sobre el tema, que seguramente te resultará de utilidad. Anneke Kleppe es autora de otros materiales de investigación en este campo.