MDA with Executable UML


3 days.


To enable the students to apply the principles of the OMG’s Model Driven Architecture to develop, build and test high quality models for a wide range of domains. The scope of the course includes the requirements, analysis and design workflows of the development process.


Technical Managers, Analysts, System Designers, Implementers, Testers




The course content is influenced by the experience we have gained in supporting dozens of projects based on MDA and xUML over the past ten years. It embodies key lessons learned, such as the importance of a coherent partitioning strategy that delivers components with well-defined interfaces early in the project.

The course is completely up to date, and the delegates will spend a large amount of time gaining experience in applying MDA strategies and UML notations through a series of practical exercises.


Course Synopsis


This gives an overall picture of the MDA process and Executable UML notation to provide a context for the rest of the course.

Static Models

This deals with all aspects of modelling classes, associations, generalisations and attributes, using a variety of exercises. The UML Class Diagram is the primary notation used.

Domain Modelling

This explains the principles of partitioning a system into separate domains, and provides proven techniques for finding and defining a coherent set of domains. The UML Package Diagram is introduced as a means of representing the domains and their dependencies.

Dynamic Models

This covers the process of defining operations and state charts for the classes in each domain. It emphasises the importance of establishing the overall interaction pattern using Interaction Diagrams prior to construction of the individual state charts.

xUML Execution Semantics

This section also explains the UML action semantics (the xUML virtual machine) that underpins executable UML. It explains the various levels of concurrency that can be exhibited by an xUML model, and provides guidance on the issues to be addressed by the modellers to ensure a reliable implementation.

The MDA Process

This brings out the benefits of executable modelling using the Model Driven Architecture Strategy. It introduces the MDA terminology, and contrasts this approach with the more traditional elaborative methodologies.

Action Definition

This describes how to specify state actions and operations using the Action Specification Language (ASL). This language is at an appropriate level of abstraction for the object models and enables the execution of the models.

Integrating models

This covers various strategies for integrating a system of domains (or Platform Independent Models). It introduces domain interfaces and bridges within the context of a build set.

System Generation

This provides an overview of the basic principles used for generation of platform-specific implementations from platform independent models. It also illustrates the steps involved in generating a system from a set of platform independent models using the iCCG Code Generator.

Use Case Analysis

This section explains how use case analysis can be used to draw out and organise system requirements. It shows how use cases can then form the basis of an incremental and iterative development process.

This section introduces techniques that can be used to establish the scope of the domains making up a system in order that they may be developed concurrently by a number of teams. This includes the use of UML Sequence Diagrams.


This section provides common techniques to ensure that the PIM, and the generated system, deliver the required runtime performance.

Tool Support

This section provides a guide to the essential features and capabilities of the iUML Modeller and iSIM Simulator, to enable students to quickly gain proficiency with the tools. If desired, students can use these tools during exercises and case study work.

Abstract Solutions is proud to work with the following companies