2 Architectural Context

Return to Structured Information Processing Reference Architecture (SIP-RA) Request for Proposal

Model Driven Architecture (MDA) provides a set of guidelines for structuring specifications as models and their mappings. The MDA initiative and the standards that support it allow the same model, specifying business-system or application functionality and behavior, to be realized on multiple platforms. MDA enables different applications to be integrated by explicitly relating their models. This facilitates integration and interoperability, and supports system evolution and deployment choices as platform technologies change. The three primary goals of MDA are portability, interoperability, and reusability.

Portability of any subsystem is relative to the subsystems on which it depends. The collection of subsystems that a given subsystem depends on is often loosely called the platform that supports it. Portability and reusability of such a subsystem are enabled when all the subsystems it depends on use standardized interfaces, application programming interfaces (APIs), and consistent usage patterns.

MDA provides a pattern comprising a portable subsystem that can use any one of multiple specific platform implementations. This pattern is repeatedly usable in the specification of systems. The five important concepts related to this pattern are:

Model

A model is a representation of a part of the function, structure, and/or behavior of an application or system. A representation is formal when it is based on a language that has a well-defined form, or syntax, meaning, or semantics, and possibly rules of analysis, inference, or proof for its constructs. The syntax may be graphical or textual. The semantics might be defined, more or less formally, in terms of things observed in the world being described, such as message sends and replies, object states, and state changes, or by translating higher-level language constructs into other constructs with well-defined meanings.

The non-mandatory rules of inference specify which unstated properties can be deduced from the explicit statements in the model. In MDA, a representation that is not formal in this sense is not a model. Thus, a diagram with boxes, lines, and arrows that is not supported by a definition of the meaning of a box, the meaning of a line, and the meaning of an arrow, is not a model. It is an informal diagram.

Platform

A platform is a set of subsystems or technologies that provide a coherent set of functionality through interfaces and specified usage patterns that any subsystem that depends on the platform can use without concern for the details of how the functionality provided by the platform is implemented.

Platform Independent Model (PIM)

A Platform Independent Model (PIM) is a model of a subsystem that contains no information specific to the platform or the technology that is used to realize it.

Platform Specific Model (PSM)

A Platform Specific Model (PSM) is a model of a subsystem that includes information about the specific technology that is used in the realization of that subsystem on a specific platform, and hence possibly contains elements that are specific to the platform.

Mapping

A mapping is a specification of a mechanism for transforming the elements of a model conforming to a particular metamodel into elements of another model that conforms to another, possibly the same, metamodel. A mapping may be expressed as associations, constraints, rules, templates with parameters that are assigned during the mapping, or other forms yet to be determined.

OMG adopts standard specifications of models that exploit the MDA pattern to facilitate portability, interoperability, and reusability, either through ab initio development of standards or by reference to existing standards. Some examples of OMG adopted specifications are:

Languages

Examples include IDL for interface specification [IDL], UML for model specification [UML], BPMN for business-process specification [BPMN], and other specification languages.

Mappings

Examples include mapping of OMG IDL to specific implementation languages, CORBA PIM to implementation-language PSMs, UML Profile for EDOC (PIM) to CCM (CORBA PSM) and EJB (Java PSM), CORBA (PSM) to COM (PSM), and other model mappings.

Services

Examples include Naming Service [NS], Transaction Service [OTS], Security Service [SEC], Trading Object Service [TOS], and other OMG services.

Platforms

Examples include CORBA [CORBA] and DDS [DDS].

Protocols

Examples include GIOP/IIOP [CORBA], both the structure and the exchange protocol, and the DDS Interoperability Protocol [DDSI].

Domain Specific Standards

Examples include the Model for Performance-Driven Government [MPG], the Single Nucleotide Polymorphisms specification [SNP], the TACSIT Controller Interface specification [TACSIT], and other domain-specific standards.

For an introduction to MDA, see [MDAa]. For a discourse on the details of MDA, see [MDAc]. For an example of MDA's application, see [MDAb]. For general information on MDA, see [MDAd].

—

© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.