Knowledge modelling techniques are widely adopted for designing knowledge-based systems (KBS) and these systems are important for knowledge management. This paper argues the need and importance of adopting Unified Modeling Language (UML) for knowledge modelling through the profile extension mechanism. KBS are developed using knowledge engineering (KE)… (More)
Model-Driven Development requires model management languages and tools for supporting model operations such as editing, consistency checking, and transformation. At the core of these model management techniques is a set of facilities for model navigation and modification. A subset of the Object Constraint Language can be used for some of these tasks, but it… (More)
In their recent book, Mens and Demeyer state that Model-Driven Engineering introduces additional challenges for controlling and managing software evolution. Today, tools exist for generating model editors and for managing models with transformation, validation, merging and weaving. There is limited support, however, for model migration-a development… (More)
Model-driven development, using languages such as UML and BON, often makes use of multiple diagrams (e.g., class and sequence diagrams) when modeling systems. These diagrams, presenting different views of a system of interest, may be inconsistent. A metamodel provides a unifying framework in which to ensure and check consistency, while at the same time… (More)
Model-Driven Engineering (MDE) involves the construction and manipulation of many models of different kinds in an engineering process. In principle, models can be used in the product engineering lifecy-cle in an end-to-end manner for representing requirements , designs and implementations, and assisting in deployment and maintenance. The manipulations… (More)
The reductionism behind today's software-engineering methods breaks down in the face of systems complexity.
Calculating differences between models is an important and challenging task in Model Driven Engineering. Model differencing involves a number of steps starting with identifying matching model elements, calculating and representing their differences, and finally visualizing them in an appropriate way. In this paper, we provide an overview of the fundamental… (More)
Metamodel evolution poses a threat to the applicability of Model-Driven Development to large scale projects. The problem is caused by incompatibilities between meta-model revisions. These render models that conform to the older version of the metamodel non-conformant to the newer version. An approach to addressing this problem is co-evolution of models with… (More)