The object-oriented software development process is composed of a number of subprocesses, namely analysis, design, implementation and verification. In model driven architecture (MDA) the result of analysis are platform independent models (PIM). Platform specific models (PSM) are derived from the PIMs via transformations, representing the design phase. We observe a lack of expressiveness of the concepts at the higher levels of abstraction (base PIMs), forcing developers to take, or at least suggest, technical decisions too early in the development process. Reification is a technique often used in the analysis phase to hide this flaw, but suggests the use of objects to represent certain artefacts. We propose an extension of the Unified Modeling Language (UML) and the Object Constraint Language (OCL) to prevent the need of reification in base PIMs to model these artefacts. We further show how these base PIMs can be transformed into different, less abstract PIMs.
['Geert Delanote', 'Eric Steegmans']
Concepts for abstracting away object reification at the level of platform independent models (PIMs)