In Proc. of 7th Nordic Workshop on Model Driven Software Engineering (NW-MODE’09)
In Model-Driven Software Development (MDSD) all artifacts that are created during development can be regarded as parts of the final system. Thus, these artifacts can be seen as components of the system in the sense of Component-Based Software Engineering (CBSE). There, software is split into units such that different concerns are separated. Each functionality of the system can be tracked to the component it is implemented by and therefore fixed, exchanged, extended or individually reused. While in traditional composition systems the components operate independently at run-time, MDSD models are integrated at different points during development time by model transformations. Through this, the advantages mentioned are often lost; and problems occur when one of the components is changed either directly or indirectly during development of a system. This paper proposes an approach that integrates advantages from CBSE into MDSD. In particular the refinements performed during modeldriven development are regarded as compositions supported by composition systems. The approach is based on our Reuseware formalism and exemplified on a concrete MDSD process.