Perspectives to promote modularity, reusability, and consistency in multi-language systems

被引:3
作者
Ali, Hyacinth [1 ]
Mussbacher, Gunter [1 ]
Kienzle, Jorg [1 ]
机构
[1] McGill Univ, 845 Sherbrooke St W, Montreal, PQ H3A 0G4, Canada
关键词
Multi-view modelling; Co-evolution; Consistency; Perspective; Language action; Coordination; Reuse;
D O I
10.1007/s11334-021-00425-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In modern software systems, software modellers often use different modelling languages and multiple views to describe the characteristics of a complex system. This multi-language system allows modellers to express a specific system characteristic with the most appropriate modelling languages and notations. With the proliferation of independently developed and continually evolving modelling languages, it becomes more challenging to reuse or combine multiple languages in a multi-language modelling environment. In this paper, we present a framework for the specification and development of multi-language systems based on perspectives to promote modularity in language reuse, inter-language consistency, and combination of languages. A perspective groups different languages for a modelling purpose and defines the role of each participating language. Furthermore, a perspective defines composite actions for building a consistent multi-model system and maintaining the links between different model elements. These actions are specified by re-exposing, combining, or redefining existing language actions (e.g. create an operation in a class diagram model) offered by the languages that the perspective reuses. The aim of this framework is to streamline the combination of multiple languages in a system and allow the perspective designer to focus only on specifying relationships between different languages. A generative approach then ensures appropriate language registration and model consistencies, hence freeing the perspective designer from the error-prone implementation of the consistency mechanism and simplifying the modular combination of different languages. We illustrate our approach with a perspective aimed at requirement elicitation and specification that combines five different languages, i.e. class diagrams, use case diagrams, collaboration diagrams, use case maps, and a domain-specific modelling language.
引用
收藏
页码:5 / 37
页数:33
相关论文
共 24 条
[1]  
Ali Hyacinth, 2020, SAM '20: Proceedings of the 12th System Analysis and Modelling Conference, P95, DOI 10.1145/3419804.3420270
[2]  
Ali H, 2020, MODELS 2020 DOCT S P, P1
[3]   Towards Modular Combination and Reuse of Languages with Perspectives [J].
Ali, Hyacinth ;
Mussbacher, Gunter ;
Kienzle, Jorg .
2019 ACM/IEEE 22ND INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS COMPANION (MODELS-C 2019), 2019, :387-394
[4]  
[Anonymous], 2019, WORKSH MOD SOFTW ENG
[5]  
Atkinson C, 2010, COMM COM INF SC, V69, P206
[6]  
Burger E.J., 2013, 18 INT DOCT S COMP A, P25, DOI [10.1145/2465498.2465501, DOI 10.1145/2465498.2465501]
[7]  
Cicchetti A, 2011, LECT NOTES COMPUT SC, V6563, P183, DOI 10.1007/978-3-642-19440-5_11
[8]  
Coleman Derek., 1994, OBJECT ORIENTED DEV
[9]   Concern-oriented language development (COLD): Fostering reuse in language engineering [J].
Combemale, Benoit ;
Kienzle, Jorg ;
Mussbacher, Gunter ;
Barais, Olivier ;
Bousse, Erwan ;
Cazzola, Walter ;
Collet, Philippe ;
Degueule, Thomas ;
Heinrich, Robert ;
Jezequel, Jean-Marc ;
Leduc, Manuel ;
Mayerhofer, Tanja ;
Mosser, Sebastien ;
Schottle, Matthias ;
Strittmatter, Misha ;
Wortmann, Andreas .
COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2018, 54 :139-155
[10]   Globalizing Modeling Languages [J].
Combemale, Benoit ;
DeAntoni, Julien ;
Baudry, Benoit ;
France, Robert B. ;
Jezequel, Jean-Marc ;
Gray, Jeff .
COMPUTER, 2014, 47 (06) :68-71