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)
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)
In the context of Model Driven Development, Model Transformation and Model Composition are two essential model management tasks. In this paper, we demonstrate how both tasks can benefit, in different ways, from the automation of another fundamental task: Model Comparison. We derive requirements for a model comparison solution incrementally, and demonstrate… (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)
In this paper, we present the Epsilon Wizard Language (EWL), a tool-supported language for specifying and executing automated update transformations in the small based on existing model elements and input from the user. We discuss on the requirements and the design decisions, as well as on the infrastructure on which the language has been developed. We also… (More)