Patterns for Constructing Mutation Operators: Limiting the Search Space in a Software Engineering Application
We apply methods of genetic programming to a general problem from software engineering, namely example-based generation of specifications. In particular, we focus on model transformation by example. The definition and implementation of model transformations is a task frequently carried out by domain experts, hence, a (semi-)automatic approach is desirable. This application is challenging because the underlying search space has rich semantics, is high-dimensional, and unstructured. Hence, a computationally brute-force approach would be unscalable and potentially infeasible. To address that problem, we develop a sophisticated approach of designing complex mutation operators. We define ‘patterns’ for constructing mutation operators and report a successful case study. Furthermore, the code of the evolved model transformation is required to have high maintainability and extensibility, that is, the code should be easily readable by domain experts. We report an evaluation of this approach in a software engineering case study.
KeywordsModel transformations Mutation operators Software engineering
This work was partially supported by the German Research Foundation (DFG) within the Collaborative Research Centre ‘On-The-Fly Computing’ (SFB 901).
- 2.Baki, I., Sahraoui, H., Cobbaert, Q., Masson, P., Faunes, M.: Learning implicit and explicit control in model transformations by example. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 636–652. Springer, Heidelberg (2014)Google Scholar
- 4.Bongard, J.: Evolving modular genetic regulatory networks. In: Proceedings of the World on Congress on Computational Intelligence, pp. 1872–1877. IEEE (2002)Google Scholar
- 8.Hornby, G.S.: Generative representations for evolutionary design automation. Ph.D. thesis, Brandeis University (2003)Google Scholar
- 10.Kappel, G., Langer, P., Retschitzegger, W., Schwinger, W., Wimmer, M.: Model transformation by-example: a survey of the first wave. In: Düsterhöft, A., Klettke, M., Schewe, K.-D. (eds.) Conceptual Modelling and Its Theoretical Foundations. LNCS, vol. 7260, pp. 197–215. Springer, Heidelberg (2012)CrossRefGoogle Scholar