Forschungsthemen
[MA] Deep Models@run.time for User-driven Flexible Systems
Model-driven Software Development utilizes meta-models as key constituent throughout the development cycle of software systems. The expressivity of these meta-models is bounded by the meta-modelling language used. Current state of the art languages like MOF and Ecore quickly hit this boundary, when the software system under development shall enable its future users to adjust the system. For example, in enterprise resource planning systems, users specify asset types and instances thereof to be managed. Here, asset types are clabjects, i.e., objects, which play the role of a class for other objects, namely their asset instances. Moreover, a typical requirement in such systems is that they can be adjusted while they are running: new asset types or adjustments to existing asset types, for example. This poses the requirement to manage versions (time) and variants (space) of objects, classes and clabjects in an efficient way.
A well-known family of solutions for the efficient specification and management of clabjects is multi-level modelling. Unknown is, whether these approaches can be used efficiently at runtime and whether they are able to cope with variability in space (variants) and time (versions).
The goal of this master’s thesis is a novel deep modelling approach, which goes beyond the current state of the art by supporting unanticipated runtime changes and variability in space and time.
Concrete Tasks
- Find and compare related work:
- Deep modelling (multi-level modelling, clabject, …)
- Models@run.time
- Role-oriented Programming
- Software Product Lines (Variability in pace and time)
- Conceptual approach for deep modelling at runtime in space and time
- Prototypical implementation of the approach
- Evaluation of the approach using at least one case study, e.g., from enterprise resource planning
Betreuer: Sebastian Götz