University of Twente Student Theses
An Ontology-Based Metalanguage with Explicit Instantiation
Laarman, A. (2009) An Ontology-Based Metalanguage with Explicit Instantiation.
PDF
2MB |
Abstract: | Model Driven Engineering (MDE) is a promising paradigm for software development. It raises the level of abstraction in software development by treating models as primary artifacts. The practical application of this paradigm is seriously endangered by the current weak modeling foundation of the approach. The objective of this work is to provide a sound foundation to modeling in MDE based on Formal Ontologies. MDE advocates the definition of the abstract syntax of modeling languages, both domain-specific and general-purpose, by means of metamodels. Metamodels are expressed in a specialized metalanguage. The definition of a metamodel is a recurring task in MDE and requires sound and formal support. The lack of such support causes deficiencies such as conceptual anomalies in the modeling languages, limited applicability of crucial MDE operations like model transformation and querying, and limited reuse of model libraries. From philosophical point of view, metamodels can be seen as ontological commitments. Metalanguages have to provide constructs for building ontological theories as a base for modeling languages. In this thesis, we present a new metalanguage derived from the study of Formal Ontology. This metalanguage, called OGML, raises the level of abstraction of metamodels from pure abstract syntax to semantics descriptions based on ontologies. Thus, the language developers can make conscious choices for their modeling concepts and can explicitly define important relations such as instantiation. With this metalanguage, we aim at a precise conceptual and formal foundation for metamodeling. OGML is capable of expressing metamodels and models together with the instantiation semantics of the language. In current tools, these relations are not uniformly treated for different languages. Our metalanguage provides the means to do this. Thereby it makes the concepts that play a role in metamodeling more explicit and lifts some limitations of traditional metalanguages. We have shown the capabilities of the metalanguage by expressing several modeling languages in it. The result is that we are able to handle all languages and their models uniformly. An OCL interpreter has been created to demonstrate that. The OCL interpreter allows the navigation on models both according to the semantics of their different modeling languages and the metalanguage. A model conformance checker is provided to verify correctness of a model according to another model in the same language, but also to verify models and languages against the metalanguage. The architecture of our metalanguage is centered around the concept of modeling languages. Each language defines its own notion of instantiation. The metalanguage is also a modeling language, so it also has a notion of instantiation. In our architecture, we can treat all instantiation mechanisms uniformly, which is not the case in traditional metalanguages like MOF, EMF and KM3 |
Item Type: | Essay (Master) |
Faculty: | EEMCS: Electrical Engineering, Mathematics and Computer Science |
Subject: | 54 computer science |
Programme: | Computer Science MSc (60300) |
Link to this item: | https://purl.utwente.nl/essays/58656 |
Export this item as: | BibTeX EndNote HTML Citation Reference Manager |
Repository Staff Only: item control page