Main Content
DFG Project on "Model-Driven Optimization in Software Engineering" Funded
Many problems in software engineering can be viewed as optimization problems, such as software modularization, testing software, and planning new releases. In search-based software engineering, metaheuristic techniques are used to solve optimization problems in software engineering. One of the widely used approaches to iteratively explore a search space is evolutionary algorithms. If the quality of optimization results is not as high as expected, one explanation for this effect may be that domain-specific knowledge is not sufficiently captured in the exploratory search.
Model-Driven Engineering (MDE) provides concepts, methods, and techniques to process domain-specific models in a consistent manner. The use of MDE in search-based software engineering is called Model-Driven Optimization (MDO); it has been demonstrated on well-known optimization problems in the literature. MDO is promising because domain-specific knowledge can be systematically incorporated into SBSE.
To strengthen the MDO vision, this project aims to consolidate MDO, i.e., to gain a deeper understanding of when and how MDO should be used to solve optimization problems in software engineering. For this goal, we aim to develop a formal framework for MDO that defines a unified approach to the specification of optimization problems and evolutionary algorithms using domain-specific knowledge. This framework will be used to clarify concepts and improve the quality of evolutionary algorithms. We will investigate the framework for its practical relevance by conducting empirical evaluations of MDO in two current topics of SBSE, mutation testing and genetic improvement of programs.
The DFG is funding the project from 2021 to 2024.