Authors:
Hossain Muhammad Muctadir
1
;
Jérôme Pfeiffer
2
;
Judith Houdijk
1
;
Loek Cleophas
1
and
Andreas Wortmann
2
Affiliations:
1
Software Engineering and Technology cluster, Eindhoven University of Technology, Eindhoven, The Netherlands
;
2
Institute for Control Engineering of Machine Tools and Manufacturing Units, University of Stuttgart, Stuttgart, Germany
Keyword(s):
Change Taxonomy, Domain Specific Language, Textual DSL Grammar.
Abstract:
Domain-Specific languages (DSLs) bridge the gap between the domain-specific problem space and the solution space of software engineering. Engineering DSLs is a complex and time-intensive iterative process involving exchanges with stakeholders who amongst others decide on the DSL’s syntax. Since in this process the stakeholder requirements change frequently, so can the corresponding DSL. The subsequent changes to the language specification may produce conflicts that language engineers need to be aware of and resolve. Current research has not adequately answered the question which change operations for grammar-based syntax exist, and which impact they have at meta-model and model level. To answer this question we develop a taxonomy of change types for grammars of textual DSLs that includes the concepts typically found in grammar-based language workbenches such as Xtext, MontiCore, and Neverlang, and lists the possible change operations that can be performed. The taxonomy was built iter
atively based on an Xtext based implementation of the Systems Modeling Language v2 and evaluated in a case study that leverages the taxonomy to perform impact analysis. The taxonomy presented in this paper will help language engineers to analyse the impact of changes to the grammar-based syntax specification of a language and to utilize this analysis, e.g., to perform historical change impact analysis.
(More)