Subweb Home
Aims and Objectives
MDA Introduction
MDA Benefits
MDA History
OMG Introduction
UML Introduction
MDA Explained
MDA User Guide
MDA Tool Support
Management Stuff
MDA Links
Acronyms
Model Driven Architectures Overview
MDA Logo Introduction

A complete MDA specification consists of a single Platform Independent Model (PIM), a number of lower level Platform Specific Models (PSM) and their corresponding interface definition sets.

The Platform Independent Model

Every application is based on a normative PIM, undistorted by the idiosyncrasies of the technologies in which it will be implemented. This is achieved by creating a UML model that focuses on the functionality and behavior of the system.

Models at this level are more abstract, that is, closer to the client's own problem space. The client and other Subject Matter experts should be able to recognize the objects in the model. For example, objects in a financial application PIM model could be Account, Loan or Customer.

Platform Specific Models

Various assumptions are made by a PIM about where and how the facilities it requires are going to exist and operate. These assumptions translate to requirements on PSMs, either directly or indirectly through other higher level PSMs. For example, a Train Management application PIM would have objects such as Train, Track and Signal. The PIM assumes there is a way to show its information to a Train Controller, but does not specify how it is to be done. This is the job of the User Interface PSM.

Beware Domain Confusion

It is important to remember that a User Interface PSM does not know about Trains or Tracks. It just knows about screen objects like Icon, Line and Window. The terminology used in a PSM is completely different to that used in the PIM. For example, when looking at a Train Controller's display, if someone says "The Train is in the Window" it may sound reasonable but it betrays confusion about what objects belong to what subject matter domains. The Analyst should only talk about "Icon in a Window" in the PSM and "Train on the Track" in the PIM.

Connecting Models

Architects specify interface definition sets that form mappings from the application PIM to needed services and facilities implemented by PSMs. In the Train Management example, a link would be specified between a PIM Train object and a User Interface PSM Icon object.

MON-10-NOV-2003