Abstract. This paper discusses the difference and union of models in the context of a version control system. We show three metamodelindependent algorithms that calculate the difference between two models, merge a model with the difference of two models and calculate the union of two models. We show how to detect union conflicts and how they can be resolved either automatically or manually. We present an application of these algorithms in a version control system for MOF-based models.
In this article, we describe successive versions of a metamodeling language using a set-theoretic formalization. We focus on language extension mechanisms, particularly on the relatively new subset and union properties of MOF 2.0 and the UML 2.0 Infrastructure. We use Liskov substitutability as the rationale for our formalization. We also show that property redefinitions are not a safe language extension mechanism. Each language version provides new features, and we note how such features cannot be mixed arbitrarily. Instead, constraints over the metamodel and model structures must be established. We expect that this article provides a better understanding of the foundations of MOF 2.0, which is necessary to define new extensions, model transformation languages and tools.
We employ the principles of model-driven engineering to assist the design of system-on-chip (SoC) architectures. As a concrete example, we look at the MICAS architecture, for which we propose a graphical specification language, defined via metamodeling techniques, that models the architecture at different abstraction levels. Model transformations are defined to support the refinement of MICAS specification towards implementation. In addition, several libraries are put in place, to enable reuse and automation throughout the design process. Tool support for editing the specifications, enforcing their consistency, and for running the transformations is provided via the Coral modeling framework. The approach shows that model-driven engineering can be seen as an enabler in providing computer-aided software engineering (CASE) tool support and automation for the development of SoC architectures.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.