Advanced Systems Design with Java, UML and MDA

Chapter 9: Implementing the Model-Driven Architecture

This chapter describes in detail the concepts and terminology of the MDA, and the role of transformations and refactoring. We show how transformations can be formally represented and justified. We conclude with a survey of current MDA tools.

9.1 MDA Terminology

In this section we summarise the key concepts of the MDA.

Computation Independent Model (CIM)

A CIM abstracts completely from implementation details, and uses terminology familiar to practitioners in the domain of the application it is similar to the concept of a domain model, and can be used to assist in establishing requirements and expressing these in detail. It describes the system in terms of the domain in which it must operate.

UML notations such as class diagrams and statecharts can be used to define CIMs. Only declarative constraints should be used to specify functional behaviour.

Model

A model in MDA terms is a representation of a part of the function, structure and/or behaviour of a system [36]. A model must be in a formal representation, ie, a notation with a well-defined syntax and semantics. The subset of UML that we have been using satisfies these requirements (at least for class diagram and statechart notations) and all MDA models that we consider in this book will be expressed in UML, but other formal languages could be used instead, in principle.

Model Transformation

Conversion of one model of a system to another model of the same system. The central model transformation of MDA is the PIM to...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Computational Fluid Dynamics Software (CFD)
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.