Lab Course - Model-Driven Development of Business Applications with the Data Explorer (DEx)

Room: TBA

Begin: TBA

Lecturer: Prof. Dr. Bernhard Rumpe
Supervising Assistants: Course Type: Laboratory

Subject

Model-driven development (MDD) pursues the vision to create complex software systems from abstract models by transforming these into concrete implementations. The overall goal is improve programmer productivity by reducing the lines of code to be written. Code generation from models is a core activity in model-driven development. The Data Explorer (DEx) is a project aiming at demonstrating the power of the model-driven development. It is based on the generator framework MontiCore [1,4] and the CD4A modeling language. Without writing a single line of code, it demonstrates the easy-to-use generation of ready-to-use business applications.

The generated DEx applications offer a graphical user interface for object management (create, delete, and edit) of the modeled system's instances. In addition, the managed objects can be stored in the cloud and share them among users of the applications. Certainly, a DEx application does not include much application-specific functionality. Consequently, various extension and adaptation mechanisms including handwritten extensions, hook points, template replacements, and even usage of additional code generators are available to add functionality to the generated DEx application.

Overall, the goal of this lab is to give an introduction to modern infrastructures and tools for model-driven development. This includes modeling of real-world systems using the CD4A language and using MontiCore for code generation. Participants should use their gained knowledge to develop a model of a real world system that is used as an input to generate a DEx application. Finally, the generated application is extended with handwritten functionality to add application-specific functionality.


Registration
Central registration: Seminar and Practical Project Seminar (Praktikum) Registration

Preconditions:
  • MBSE Lecture or GSE Lecture
  • Principles of object-oriented design and programming
  • Interest in generative and model based software development
References:
  • [3] S. Völkel. Kompositionale Entwicklung domänenspezifischer Sprachen. Shaker Verlag, ISBN 978-3-8440-0328-4. Aachener Informatik-Berichte, Software Engineering Band 9. 2011.
  • [4] H. Krahn. MontiCore: Agile Entwicklung von domänenspezifischen Sprachen im Software-Engineering. Shaker Verlag, ISBN 978-3-8322-8948-5. Aachener Informatik-Berichte, Software Engineering Band 1. 2010.
  • [5] B. Rumpe, M. Schindler, S. Völkel, I. Weisemöller: Generative Software Development. In: Proceedings of the 32nd International Conference on Software Engineering (ICSE 2010), Volume 2, pp. 473-474 (tutorial summary), Cape Town, South Africa, May 2010. ACM, 2010.
Subscribe to se-teaching: