Files in this item



application/pdfAlgebraic Semantics of EMOF-OCL Metamodels.pdf (3MB)
(no description provided)PDF


Title:Algebraic Semantics of EMOF/OCL Metamodels
Author(s):Boronat, Artur; Meseguer, José
Subject(s):software engineering
Abstract:Model-Driven Development is a field in Software Engineering that, for several years, has represented software artifacts as models in order to improve productivity, quality, and cost effectiveness. Models provide a more abstract description of a software artifact than the final code of the application. In this field, Model-Driven Architecture (MDA) is an initiative, sponsored by the OMG, that is constituted by a family of industry standards including: Meta-Object Facility (MOF), Unified Modeling Language (UML), Object Constraint Language (OCL), XML Metadata Interchange (XMI), and Query/Views/Transformations (QVT). These standards provide common guidelines for model-based tools and processes in order to improve interoperability among executable frameworks, automation in the software development process, and analysis techniques to avoid errors during this process. The MOF standard describes a generic framework where the abstract syntax of modeling languages can be defined. This standard aims at offering a good basis for Model-Driven Development processes, providing some of the building blocks that are needed to support a Model-Driven Development approach: what is a model, what is a metamodel, what is reflection in a MOF framework, etc. However, most of these concepts lack at present a formal semantics in the current MOF standard. Furthermore, OCL is a constraint definition language that permits adding semantics to a MOF metamodel. Unfortunately, the relation between a metamodel and its OCL constraints also lacks a formal semantics. This is, in part, due to the fact that metamodels can only be defined as data in the MOF framework. The MOF standard also provides the so-called MOF-Reflection facilities, by means of a generic API, to manipulate software artifacts that are made up out of objects. Broadly speaking, reflection is the capacity to represent entities that have a formal semantics at a base level, such as types, as data at a metalevel. Metalevel entities, once metarepresented, can be computationally manipulated and transformed. This notion of reflection is still not supported in the MOF standard. In this dissertation, we define a reflective, algebraic, executable framework for precise metamodeling that provides support for the MOF and the OCL standards. On the one hand, our formal framework provides a formal semantics for the building blocks that are usually involved in a Model-Driven Development process. On the other hand, our framework provides an executable environment that is plugged into the Eclipse Modeling Framework (EMF) and that constitutes the kernel of a model management framework, supporting model transformations and formal verification techniques.
Issue Date:2007-10
Genre:Technical Report
Other Identifier(s):UIUCDCS-R-2007-2904
Rights Information:You are granted permission for the non-commercial reproduction, distribution, display, and performance of this technical report in any format, BUT this permission is only for a period of 45 (forty-five) days from the most recent time that you verified that this technical report is still available from the University of Illinois at Urbana-Champaign Computer Science Department under terms that include this permission. All other rights are reserved by the author(s).
Date Available in IDEALS:2009-04-22

This item appears in the following Collection(s)

Item Statistics