
Un metamodelo es un modelo de un modelo, y el metamodelado es el proceso de generar dichos metamodelos. Por lo tanto, el metamodelado consiste en el análisis, la construcción y el desarrollo de los marcos, reglas, restricciones, modelos y teorías aplicables y útiles para modelar una clase predefinida de problemas. Como su nombre lo indica, este concepto aplica las nociones de meta- y modelado en la ingeniería de software y la ingeniería de sistemas . Existen muchos tipos de metamodelos y tienen diversas aplicaciones. [ 2 ]
Descripción general
Un metamodelo/modelo sustituto es un modelo del modelo, es decir, un modelo simplificado de un modelo real de un circuito, sistema o entidad de software. [ 3 ] [ 4 ] Un metamodelo puede ser una relación matemática o un algoritmo que representa relaciones de entrada y salida. Un modelo es una abstracción de fenómenos del mundo real ; un metamodelo es otra abstracción que resalta las propiedades del modelo en sí. Un modelo se ajusta a su metamodelo de la misma manera que un programa informático se ajusta a la gramática del lenguaje de programación en el que está escrito. Varios tipos de metamodelos incluyen ecuaciones polinómicas, redes neuronales, Kriging , etc. El "metamodelado" es la construcción de una colección de "conceptos" (cosas, términos, etc.) dentro de un dominio determinado. El metamodelado generalmente implica estudiar las relaciones de entrada y salida y luego ajustar los metamodelos adecuados para representar ese comportamiento.
Los usos comunes de los metamodelos son:
- Como esquema para datos semánticos que necesitan ser intercambiados o almacenados
- Como lenguaje que admite un método o proceso en particular
- Como lenguaje para expresar semántica adicional de información existente
- Como mecanismo para crear herramientas que funcionen con una amplia gama de modelos en tiempo de ejecución.
- Como esquema para modelar y explorar automáticamente oraciones de un lenguaje con aplicaciones a la síntesis de pruebas automatizadas.
- Como aproximación de un modelo de mayor fidelidad para su uso cuando sea necesario reducir el tiempo, el costo o el esfuerzo computacional.
Debido al carácter «meta» del metamodelado, tanto la praxis como la teoría de los metamodelos son relevantes para la metaciencia , la metafilosofía , las metateorías , la sistémica y la metaconciencia. El concepto puede ser útil en matemáticas y tiene aplicaciones prácticas en informática e ingeniería informática / ingeniería de software . Estas últimas son el foco principal de este artículo.
Temas




Definición
En ingeniería de software , el uso de modelos es una alternativa a las técnicas de desarrollo basadas en código más comunes. Un modelo siempre se ajusta a un metamodelo único. Una de las ramas más activas de la ingeniería dirigida por modelos es la arquitectura dirigida por modelos propuesta por OMG . Este enfoque se plasma en la especificación Meta Object Facility (MOF).
Las especificaciones típicas de metamodelado propuestas por OMG son UML , SysML , SPEM o CWM. ISO también ha publicado el metamodelo estándar ISO/IEC 24744. [ 6 ] Todos los lenguajes presentados a continuación podrían definirse como metamodelos MOF.
Modelado de metadatos
El modelado de metadatos es un tipo de metamodelado utilizado en la ingeniería de software y la ingeniería de sistemas para el análisis y la construcción de modelos aplicables y útiles a una clase predefinida de problemas. (Véase también: modelado de datos ).
Transformaciones de modelos
Un paso importante en la ingeniería dirigida por modelos es el uso sistemático de lenguajes de transformación de modelos . La OMG ha propuesto un estándar para esto llamado QVT para consultas, vistas y transformaciones. QVT se basa en la facilidad de meta-objetos (MOF). Entre muchos otros lenguajes de transformación de modelos (MTL), algunos ejemplos de implementaciones de este estándar son AndroMDA, VIATRA , Tefkat , MT y ManyDesigns Portofino .
Relación con las ontologías
Los metamodelos están estrechamente relacionados con las ontologías . Ambos se utilizan a menudo para describir y analizar las relaciones entre conceptos: [ 7 ]
- Ontologías: expresan algo significativo dentro de un universo o dominio de discurso específico mediante el uso de una gramática para el vocabulario. La gramática especifica qué significa ser una declaración, aserción, consulta, etc., bien formada (restricciones formales) sobre cómo se pueden usar conjuntamente los términos del vocabulario controlado de la ontología. [ 8 ]
- Metamodelado: puede considerarse como una descripción explícita (construcciones y reglas) de cómo se construye un modelo específico de un dominio. En particular, comprende una especificación formalizada de las notaciones específicas del dominio. Por lo general, los metamodelos son —y siempre deberían seguir— un conjunto estricto de reglas. [ 9 ] "Un metamodelo válido es una ontología, pero no todas las ontologías se modelan explícitamente como metamodelos." [ 8 ]
Tipos de metamodelos
En ingeniería de software, se pueden distinguir varios tipos de modelos (y sus correspondientes actividades de modelado):
- Modelado de metadatos (modelo de metadatos)
- Modelado de metaprocesos (modelo MetaProcess)
- Metamodelado ejecutable (que combina lo anterior y mucho más, como en la herramienta de propósito general Kermeta ).
- Lenguaje de transformación de modelos (véase más abajo)
- Metamodelos polinomiales [ 10 ]
- metamodelos de redes neuronales
- metamodelos de Kriging
- Metamodelos polinómicos por partes (splines)
- Kriging mejorado con gradiente (GEK)
Zoológicos de metamodelos
Una biblioteca de metamodelos similares se ha denominado zoológico de metamodelos. [ 11 ] Existen varios tipos de zoológicos de metamodelos. [ 12 ] Algunos se expresan en ECore. Otros están escritos en MOF 1.4 – XMI 1.2. Los metamodelos expresados en UML - XMI 1.2 pueden cargarse en Poseidon para UML, una herramienta CASE de UML .
Véase también
- Modelo de referencia empresarial
- Gobernanza de datos : capacidad que permite a una organización garantizar una alta calidad de los datos.
- Ingeniería dirigida por modelos ( MDE ) – Metodología de desarrollo de software
- Arquitectura dirigida por modelos (MDA)
- Lenguaje específico de dominio (DSL)
- Modelado específico de dominio (DSM)
- Sistema genérico de modelado de Eclipse (GEMS)
- Kermeta (Metamodelado de núcleo)
- Metadatos
- Herramienta MetaCASE (herramientas para crear herramientas para ingeniería de software asistida por ordenador )
- Ingeniería de métodos
- Metamodelo MODAF
- Consultas/Vistas/Transformaciones MOF (MOF QVT)
- Metodología de procesamiento de objetos
- Análisis de requisitos
- Cartografía espacial
- Modelo sustituto
- Lenguaje de transformación
- VIATRA (Viatra)
- Lenguaje de transformación XML (XML TL)
Referencias
- ↑ David R. Soller et al. (2001) Informe de progreso sobre la base de datos nacional de mapas geológicos, fase 3: una base de datos en línea de información cartográfica Técnicas de cartografía digital '01 -- Actas del taller Informe de archivo abierto del Servicio Geológico de los Estados Unidos 01-223.
- ↑ Saraju Mohanty , Capítulo 12 Metodologías de diseño rápido de AMS-SoC basadas en metamodelos, " Diseño de sistemas nanoelectrónicos de señal mixta ", ISBN 978-0071825719y 0071825711, 1.ª edición, McGraw-Hill, 2015.
- ↑ Oleg Garitselov, Saraju Mohanty y Elias Kougianos, " Un estudio comparativo de metamodelos para la simulación rápida y precisa de circuitos nano-CMOS archivado el 23 de septiembre de 2015 en Wayback Machine ", IEEE Transactions on Semiconductor Manufacturing (TSM), vol. 25, n.º 1, febrero de 2012, págs. 26-36.
- ↑ Saraju Mohanty Exploración de diseño ultrarrápido de circuitos a nanoescala a través de metamodelado Archivado el 23 de septiembre de 2015 en Wayback Machine , Charla invitada, Semiconductor Research Corporation (SRC), Texas Analog Center for Excellence (TxACE), 27 de abril de 2012.
- ↑ FEA (2005) Perfil de gestión de registros de FEA, versión 1.0 . 15 de diciembre de 2005.
- ↑ Organización Internacional de Normalización / Comisión Electrotécnica Internacional, 2007. ISO/IEC 24744. Ingeniería de software: metamodelo para metodologías de desarrollo.
- ↑ E. Söderström, et al. (2001) «Hacia un marco para comparar lenguajes de modelado de procesos», en: Lecture Notes In Computer Science ; Vol. 2348. Actas de la 14.ª Conferencia Internacional sobre Ingeniería Avanzada de Sistemas de Información. Páginas: 600-611, 2001
- 1 2 Pidcock, Woody (2003), ¿Cuáles son las diferencias entre un vocabulario, una taxonomía, un tesauro, una ontología y un metamodelo?, archivado del original el 14 de octubre de 2009 , recuperado el 10 de octubre de 2009
- ↑ Ernst, Johannes (2002), ¿Qué es el metamodelado y para qué sirve?, archivado del original el 9 de octubre de 2011 , recuperado el 9 de octubre de 2009.
- ↑ Saraju Mohanty y Elias Kougianos, " Optimización rápida de circuitos osciladores nano-CMOS basada en metamodelos polinomiales, archivado el 10 de agosto de 2014 en Wayback Machine ", Springer Analog Integrated Circuits and Signal Processing Journal, volumen 79, número 3, junio de 2014, págs. 437–453.
- ↑ Jean-Marie Favre: Hacia una teoría básica para la ingeniería basada en modelos. Archivado el 15 de octubre de 2006 en Wayback Machine .
- ↑ AtlanticZoo Archivado el 29 de abril de 2006 en Wayback Machine .
Lecturas adicionales
- Saraju Mohanty (2015). «Capítulo 12 Metodologías de diseño rápido de AMS-SoC basadas en metamodelos». Diseño de sistemas nanoelectrónicos de señal mixta . McGraw-Hill. ISBN 978-0071825719.
- Booch, G., Rumbaugh, J., Jacobson, I. (1999), Guía del usuario del lenguaje unificado de modelado , Redwood City, CA: Addison Wesley Longman Publishing Co., Inc.
- JP van Gigch , Modelado de diseño de sistemas y metamodelado , Plenum Press, Nueva York, 1991
- Gopi Bulusu, hamara.in, 2004 Transformación basada en modelos
- PC Smolik, Mambo Metamodeling Environment , Tesis doctoral, Universidad Tecnológica de Brno. 2006
- González-Pérez, C. y B. Henderson-Sellers, 2008. Metamodelado para la ingeniería de software. Chichester (Reino Unido): Wiley. 210 p. ISBN 978-0-470-03036-3
- MA Jeusfeld, M. Jarke y J. Mylopoulos , 2009. Metamodelado para la ingeniería de métodos. Cambridge (EE. UU.): The MIT Press. 424 págs. ISBN 978-0-262-10108-0Acceso abierto a través de https://conceptbase.sourceforge.net/2021_Metamodeling_for_Method_Engineering.pdf
- G. Caplat Modèles & Métamodèles , 2008 - ISBN 978-2-88074-749-7(en francés)
- Fill, H.-G., Karagiannis, D., 2013. Sobre la conceptualización de métodos de modelado utilizando la plataforma de metamodelado ADOxx , Enterprise Modelling and Information Systems Architectures, Vol. 8, Issue 1, 4-25.
- Diseño de software
- Modelado científico