Bachelor and Master Theses

To apply for conducting this thesis, please contact the thesis supervisor(s).
Title: Enhancing domain expert participation in domain-specific modeling language evolution
Subject: Computer science, Software engineering
Level: Advanced
Description:

The abstract syntax or metamodel of Domain-Specific Modeling Languages (DSMLs) needs constant evolution to stay relevant and effective. Traditionally, this evolution relies on collaboration between domain experts, who understand the domain, and technical developers, who modify the metamodel. This method can be error-prone and time-consuming due to misunderstandings and long iterative cycles. Additionally, evolving the metamodel also requires mechanisms for co-evolving the models that conform to it, which can be a complex task.

 

The problem: Domain experts often identify the need for metamodel changes through their use of models. However, they cannot implement these changes on the metamodels themselves because they lack the technical metamodeling skills. Furthermore, generating model co-evolution mechanisms, especially for breakable and unresolvable changes, adds another layer of complexity, since while these mechanisms are implemented manually by developers, or generated automatically, they require human input to be resolved.

 

The goal: To increase domain experts' participation in language evolution by providing them with tools to specify changes directly at the model level, which can then be automatically propagated to the metamodel. This way, we can streamline the process, reduce errors, and enhance efficiency.

 

Your mission: As part of this thesis, you will dive into a crucial aspect of this research. Your focus will be on the following tasks:

  1. Literature Review: Investigate existing methodologies for model-to-metamodel translation, metamodel inference, metamodel evolution, and model co-evolution. Identify gaps and best practices in current approaches.
  2. Propose Specification Methods: Develop methods for specifying changes at the model level that can be translated to the metamodel level. Explore how to specify resolution techniques at the model level for breakable and unresolvable changes.
  3. Propose Mapping Techniques: Create deterministic techniques to map these model-level changes to corresponding metamodel-level modifications.
  4. Evaluation: Assess the proposed specification methods and mapping techniques to ensure their effectiveness and reliability.

Tools and Technologies: The specification methods and mapping techniques you develop will depend on the tool and meta-metamodeling language chosen. Our initial suggestion is to use Eclipse EMF and Ecore, but we are open to suggestions if you have experience or preferences for other tools (e.g., web-based solutions).

 

Collaboration: Depending on the number of students involved, we also expect the implementation of the approach, creating a practical and functional tool for domain experts. The thesis scope can be discussed and adjusted based on the number of students and credits involved.

 

Please contact the thesis supervisor Malvina Latifaj at malvina.latifaj@mdu.se if you are interested in this thesis.

Start date:
End date:
Prerequisites:
  • Proficiency in English
  • Experience in modeling and metamodeling (e.g., having taken an MDE course or similar)
  • Strong programming skill
IDT supervisors: Malvina Latifaj
Examiner: Antonio Cicchetti
Comments:
Company contact: