A Model-Driven Approach to Business Software Engineering
Axel Korthaus, Tobias Hildenbrand · 2004
Concurrent Engineering is a principle often implemented in product development processes in traditional engineering disciplines, e.g. the automotive industry. The advent of professional tools and standards supporting model-driven development (MDD) enables the creation of a similar scenario in the software industry. MDD tools can in a way be compared to Computer Aided Design (CAD) tools, and standardizing the output formats of such tools facilitates the comparison and consolidation of individual engineering artifacts in a parallel development process with one common architecture. In software engineering, performing frequently recurring consistency checks of the modeled architecture and individual components, respectively, can help prevent mismatches and inconsistencies in early stages of the software development cycle irrespective of the target platform, i.e. on a very high level of abstraction, when still not a single line of code has yet been written and adaptation is still cheap. This paper adumbrates a software development process suitable for creating business application software and domain-specific software assets. The process is embedded into a concurrent, collaborative and component-based methodology enabled by advanced MDD techniques.