MDA with UML for Embedded Systems
|
Duration |
3 days. |
|
Objective |
To provide students with a good understanding of the principles and process for building Platform-Independent Models using UML, with a focus on modeling techniques and patterns applicable to real-time embedded applications. To allow students to perform large-scale integration of such models to form a coherent set of components to use as the basis for platform-specific design and implementation. This course is tool agnostic, and the techniques presented are applicable to all mainstream UML tools. |
|
Audience |
Systems Engineers, Software Engineers, Testers |
|
Prerequisites |
None. |
|
Benefits |
The course content covers the key elements of UML as a platform-independent modeling formalism, and incorporates examples drawn from real-time embedded systems to illustrate how the various models are constructed. Students will consolidate their understanding through a series of practical exercises and examples, mostly based upon embedded systems. |
Course Synopsis
|
The MDA Process |
This gives an overall picture of the MDA process, and the primary artefacts produced during that process. |
|
Use Case Modelling |
This section explains how use case analysis can be used to draw out and organise system requirements. An embedded system is used to illustrate the principles. This system is used as the basis for exercises in which students build all key UML artifacts. |
|
Static Models |
This deals with all aspects of modeling classes, associations, generalizations and attributes, using a variety of exercises. The UML Class Diagram is the primary notation used. Students gain confidence in static modeling using a variety of exercises, some based upon the engine monitoring system. |
|
Domain Partitioning |
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. This section introduces a number of 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. |
|
Behavioural 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 UML Communication Diagrams prior to construction of the individual state charts. |
|
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. |
|
Interaction Modelling |
This shows how sequence diagrams form the basis for linking use cases to a set of domains making up a system. It illustrates use of communication models to understand and document the interactions between classes within each domain. |
|
Domain Integration |
This explains how to integrate a system of domains. It illustrates specification of domain interfaces (ports) and connectors. |
|
Summary |
Brings together the key aspects of MDA and UML, and provides references to additional information. |

