Model-Driven Development in Practice: From Requirements to Code

A crucial success factor in information systems development is the alignment of the final software product with business goals, business semantics and business processes. Developers should be freed from programming concerns and be able to concentrate on these alignment problems. To assess that the right capabilities are used, sound Conceptual Modeling (CM) techniques within a Model-driven system development (MDD) must be applied in order to provide a structured and systematic approach to systems development, where developers can successfully use model transformation technologies to derive models of a lower abstraction level that can be further refined, even generating software code automatically. From the experience got with the use of advanced MDD platforms, this keynote will show how to use a Capability-driven Development (CDD) strategy in order to integrate business process modelling (BPM), requirements engineering (RE) and object-oriented conceptual modelling with the objective of leveraging MDD capabilities. The current state of the art on modelling methods and code generation tools will be discussed to explore different ways to match an information system with business requirements. Concrete principles, concepts and common practices of MDD will be presented with a special focus on model-driven requirements engineering, meaning by it how BPM and requirements models can be embedded in a complete CM-based software production process.