Introduction to Model-Driven Engineering


I. Model Driven Engineering

Modern Software Problems

Problems addressed in SE

Problems addressed in SE

Problems addressed in SE

Problems addressed in SE

OO approach:
Models and Components

Problems addressed in SE

Once upon a time…
 software development looked simple

Collaborations

Design Patterns

Middleware or Middle War?

Aspect Oriented Programming

Why modeling: master complexity

The World and the Model

UML: one model, 4 main dimensions, multiple views

The 9 diagrams of UML

Example

Modeling a (simplified) GPS device

Modeling a (simplified) GPS device

Modeling a (simplified) GPS device

Modeling a (simplified) GPS device

Modeling a (simplified) GPS device

Modeling a (simplified) GPS device

Modeling a (simplified) GPS device

Model and Reality in Software

Modeling and Weaving

Assigning Meaning to Models

Modeling techniques at OMG: 3 steps

Comparing Abstract Syntax Systems

MDA: the OMG new vision

Mappings to multiple and evolving platforms

The core idea of MDA:
PIMs & PSMs

A PSM for our GPS

How to go From PIM to PSM?

Weaving aspects into UML Models?

But many more dimensions in modeling!

How to take these dimensions into account?

Embedding implicit semantics into a model

…and the result we want...

How To: Automatic Model Transformations

Why complex transformations?

The 3 ages of Transformations

Transformations are Assets
=> apply sound SE principles

Principles

Consequences

Challenges

UML & Model Driven
Architecture: Summary