140 likes | 276 Views
CONCEPTOS BÁSICOS DE METAMODELADO. Carlos Mario Zapata J. DEFINICIONES. Modelo: Descripción de un sistema escrita en un lenguaje bien definido (interpretable por un computador).
E N D
CONCEPTOS BÁSICOS DE METAMODELADO Carlos Mario Zapata J. Metamodelado
DEFINICIONES • Modelo: Descripción de un sistema escrita en un lenguaje bien definido (interpretable por un computador). • Los lenguajes bien definidos se suelen expresar en BNF (Backus Naur Form), pero esto restringe los modelos a lenguajes basados en texto. • Metamodelo: Descripción de los elementos que se pueden usar en un modelo. • Metalenguaje: Describe un metamodelo. Para efectos prácticos se asume igual al metamodelo. Metamodelado
ESCRITO EN ESCRITO EN METALENGUAJE LENGUAJE MODELO DEFINICIONES Metamodelado
CAPAS DE MODELADO • Propuestas por el OMG. • Son estratificaciones. • Existen correspondencias de un elemento en las diferentes capas. • En cada nivel una capa es un modelo y el nivel inferior es una instancia del modelo. • Todos los elementos en un nivel se instancian a partir del nivel inmediatamente superior. Metamodelado
CAPAS DE MODELADO • Capa M0: Las instancias: • Sistema en funcionamiento con instancias actuales (o “reales”). • Nivel inferior del modelamiento. • Ejemplos: “Carlos Mario Zapata”, “4255374”, “M8-112” • Pueden tener varios usos en el sistema: en la base de datos o en un objeto que está activo. • En negocios son los ítemes del negocio. • En software son las representaciones de esos ítemes. Metamodelado
CAPAS DE MODELADO • Capa M1: El Modelo del Sistema: • Corresponde a los “modelos de usuario”. • Ejemplos: Clase “Profesor” con propiedades “nombre”, “teléfono” y “oficina”. • Se relaciona con la capa M0 • Los conceptos en M1 son categorizaciones o clasificaciones de instancias de M0. • Cada elemento en M0 es una instancia (ejemplo) de un elemento en M1. • Los elementos de M1 definen cómo se verán los elementos de M0. • No es posible una instancia en M0 que no se ajuste a M1. Metamodelado
CAPAS DE MODELADO Metamodelado
CAPAS DE MODELADO • Capa M2: El Modelo del Modelo: • Desde el punto de vista del modelador y la herramienta de modelado, los elementos de modelado son las instancias con las cuales trabajan. • Son clasificaciones de los elementos del modelo. • Entre M2 y M1 existen las mismas relaciones que entre M1 y M0: • Un elemento en M2 especifica los elementos en M1. • Un elemento en M1 es instancia de un elemento en M2. • El modelo en M2 se suele llamar Metamodelo. Metamodelado
CAPAS DE MODELADO Metamodelado
CAPAS DE MODELADO • Capa M3: El Modelo del MetaModelo: • Se suele llamar la capa MetaMeta. • Entre M3 y M2 existen las mismas relaciones que entre M2 y M1 y entre M1 y M0. • Define los conceptos necesarios para razonar sobre los conceptos pertenecientes a M2. • Para establecer las relaciones, se usan las mismas convenciones de notación que entre las demás capas. Metamodelado
CAPAS DE MODELADO Metamodelado
CAPAS DE MODELADO • Esto se puede ir hasta el infinito? • En la práctica NO, porque los elementos en M3 se pueden definir en M3 mismo. • La separación entre capas es meramente superficial y sólo con motivo de comprensión. • Lo que es vital es la relación instancia-de. • Muchos sistemas contienen sus propios metadatos, lo que significa que el modelo M1 se almacena físicamente al mismo nivel que el modelo M0. • Las herramientas avanzadas de modelado incluyen el metamodelo también, lo que implica que la capa M2 se guarda en M1. Metamodelado
M0 M1 M2 M3 CAPAS DE MODELADO Metamodelado
CAPAS DE MODELADO UML Metamodelado