Rearchitecting the UML infrastructure

Metamodeling is one of the core foundations of computer-automated multiparadigm modeling. However, there is currently little agreement about what form the required metamodeling approach should take and precisely what role metamodels should play. This article addresses the problem by first describing some fundamental problems in the industry's leading metamodeling technology, the UML framework, and then explaining how this framework could be rearchitected to overcome these problems. Three main issues are identified in the current framework: the dual classification problem arising from the need to capture both the logical and physical classification of model elements, the class/object duality problem arising from the need to capture both the classlike and objectlike facets of some model elements, and the replication of concepts problem arising from the need to define certain concepts multiple times. Three main proposals for rearchitecting the UML framework to overcome these problems are then presented: the separation of logical and physical classification dimensions, the unification of the class and object facets of model elements, and the enhancement of the instantiation mechanism to allow definitions to transcend multiple levels. The article concludes with a discussion of other practical issues involved in rearchitecting the UML modeling framework in the proposed way.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  A Standardization Odyssey , 1999 .

[3]  Andy Evans,et al.  Core Meta-Modelling Semantics of UML: The pUML Approach , 1999, UML.

[4]  Claudia Pons,et al.  Dimensions and dichotomy in metamodeling , 1998, FM-Trends 1998.

[5]  James Odell,et al.  Power Types , 1994, J. Object Oriented Program..

[6]  Jean Bézivin,et al.  Towards a precise definition of the OMG/MDA framework , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[7]  Cris Kobryn UML 2001: a standardization odyssey , 1999, CACM.

[8]  Colin Atkinson,et al.  Processes and Products in a Multi-Level Metamodeling Architecture , 2001, Int. J. Softw. Eng. Knowl. Eng..

[9]  Ralph Johnson,et al.  Type object , 1997 .

[10]  Bernhard Rumpe,et al.  Modeling Languages: Syntax, Semantics and All That Stuff, Part I: The Basic Stuff , 2000 .

[11]  Colin Atkinson,et al.  The Essence of Multilevel Metamodeling , 2001, UML.

[12]  Dirk Riehle,et al.  Pattern Languages of Program Design 3 , 1997 .

[13]  Zhongmin Su,et al.  Cdif framework for modeling and extensibility , 1994 .

[14]  Colin Atkinson,et al.  Strict Profiles: Why and How , 2000, UML.

[15]  Dirk Riehle,et al.  The architecture of a UML virtual machine , 2001, OOPSLA '01.

[16]  Brian Henderson-Sellers,et al.  Object-Oriented Metamethods , 1997 .

[17]  Brian Henderson-Sellers,et al.  The Use of Subtypes and Stereotypes in the UML Model , 2002, J. Database Manag..

[18]  Andy Evans,et al.  Mapping between Levels in the Metamodel Architecture , 2001, UML.