The Unified Modeling Language (UML) has been designed to be a full standard notation for Object-Oriented Modelling. UML is a rather complete set of notations, but it lacks of form...
It is widely recognised that software development is a complex process. Among the factors that contribute to its inherent complexity is the gap between the design and the formal a...
Distributed System design is a highly complicated and non-trivial task. The problem is characterised by the need to design multi-threaded, multi-processor, and multimedia systems....
The need for querying software artifacts is a new emerging design issue in modern software development. Novel techniques such as Model-Driven Architecture or Aspect-Oriented Softwa...
Modeling languages have been evolving at a high pace, encouraging the use of automatic code generators for transforming models to programs. Automatic code generators should enable ...