skip to main content
10.1145/3640310.3674082acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

Product Lines of Graphical Modelling Languages

Published: 22 September 2024 Publication History

Abstract

Modelling languages are essential in many disciplines to express knowledge in a precise way. Furthermore, some domains require families of notations (rather than individual languages) that account for variations of a language. Some examples of language families include those to define automata, Petri nets, process models or software architectures. Several techniques have been proposed to engineer families of languages, but they often neglect the language's concrete syntax, especially if it is graphical.
To fill this gap, we propose a modular method to build product lines of graphical modelling languages. Language features are defined in modules, which comprise both the abstract and graphical concrete syntax of the feature. A language variant is selected by choosing a valid configuration of modules, from which the abstract and concrete syntax of the variant is synthesised. Our approach permits composition and overriding of graphical elements (e.g., symbol styles, visualisation layers), the injection of pre-defined graphical styles into language families (e.g., to obtain a high-intensity contrast variant for accessibility), and the analysis of graphical conflicts at the product line level. We report on an implementation atop Eclipse/Sirius, and demonstrate its benefits by an evaluation which shows a substantial specification size reduction of our product line method with respect to a case-by-case specification approach.

References

[1]
Marco Brambilla, Jordi Cabot, and Manuel Wimmer. 2017. Model-driven software engineering in practice, Second edition. Morgan & Claypool Publishers.
[2]
Arvid Butting, Robert Eikermann, Oliver Kautz, Bernhard Rumpe, and Andreas Wortmann. 2018. Controlled and extensible variability of concrete and abstract syntax with independent language features. In VaMoS. ACM, New York, NY, USA, 75--82.
[3]
Arvid Butting, Katrin Hölldobler, Bernhard Rumpe, and Andreas Wortmann. 2021. Compositional modelling languages with analytics and construction infrastructures based on object-oriented techniques---The MontiCore approach. Springer International Publishing, Cham, 217--234.
[4]
Arvid Butting, Jerome Pfeiffer, Bernhard Rumpe, and Andreas Wortmann. 2020. A compositional framework for systematic modeling language reuse. In MoDELS. ACM, 35--46.
[5]
Jordi Cabot, Robert Clarisó, Esther Guerra, and Juan de Lara. 2010. A UML/OCL framework for the analysis of graph transformation rules. Softw. Syst. Model. 9, 3 (2010), 335--357.
[6]
Walter Cazzola and Luca Favalli. 2022. Towards a recipe for language decomposition: Quality assessment of language product lines. Empir. Softw. Eng. 27, 4 (2022), 82.
[7]
Benoît Combemale, Jörg Kienzle, Gunter Mussbacher, Olivier Barais, Erwan Bousse, Walter Cazzola, Philippe Collet, Thomas Degueule, Robert Heinrich, Jean-Marc Jézéquel, Manuel Leduc, Tanja Mayerhofer, Sébastien Mosser, Matthias Schöttle, Misha Strittmatter, and Andreas Wortmann. 2018. Concern-oriented language development (COLD): Fostering reuse in language engineering. Comput. Lang. Syst. Struct. 54 (2018), 139--155.
[8]
Loris D'Antoni and Margus Veanes. 2021. Automata modulo theories. Commun. ACM 64, 5 (2021), 86--95.
[9]
Juan de Lara, Esther Guerra, and Paolo Bottoni. 2022. Modular language product lines: A graph transformation approach. In MoDELS. ACM, 334--344.
[10]
Juan de Lara, Esther Guerra, and Paolo Bottoni. 2024. Modular language product lines: Concept, tool and analysis. Software and Systems Modeling to appear (2024), 29 pp. https://doi.org/10.1007/s10270-024-01179-9
[11]
Juan de Lara and Hans Vangheluwe. 2008. Translating model simulators to analysis models. In FASE (LNCS, Vol. 4961). Springer, 77--92.
[12]
Juan de Lara and Hans Vangheluwe. 2010. Automating the transformation-based analysis of visual languages. Form. Asp. Comput. 22, 3 (may 2010), 297--326.
[13]
Francisco Durán, Steffen Zschaler, and Javier Troya. 2012. On the reusable specification of non-functional properties in DSLs. In SLE (LNCS, Vol. 7745). Springer, 332--351.
[14]
Hartmut Ehrig, Karsten Ehrig, Ulrike Prange, and Gabriele Taentzer. 2006. Fundamentals of algebraic graph transformation. Springer.
[15]
Hartmut Ehrig and Claudia Ermel. 2008. Semantical correctness and completeness of model transformations using graph and rule transformation. In ICGT (LNCS, Vol. 5214), Hartmut Ehrig, Reiko Heckel, Grzegorz Rozenberg, and Gabriele Taentzer (Eds.). Springer, 194--210.
[16]
Antonio Garmendia, Manuel Wimmer, Esther Guerra, Elena Gómez-Martínez, and Juan de Lara. 2020. Automated variability injection for graphical modelling languages. In GPCE. ACM, New York, NY, USA, 15--21.
[17]
GMF. (last accessed in March 2024). https://eclipse.dev/modeling/gmp/.
[18]
Esther Guerra and Juan de Lara. 2018. On the quest for flexible modelling. In MoDELS. ACM, 23--33.
[19]
Esther Guerra, Juan de Lara, Marsha Chechik, and Rick Salay. 2022. Property satisfiability analysis for product lines of modelling languages. IEEE Trans. Softw. Eng. 48, 2 (2022), 397--416.
[20]
Felienne Hermans. 2020. Hedy: A gradual language for programming education. In ICER. ACM, 259--270.
[21]
ISO/IEC/IEEE 42010 2022. Systems and software engineering - Architecture description. https://www.iso.org/standard/74393.html.
[22]
Kyo Kang, Sholom Cohen, James Hess, William Novak, and A. Peterson. 1990. Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-021. Carnegie Mellon University.
[23]
Nadine Kashmar, Mehdi Adda, and Mirna Atieh. 2020. From access control models to access control metamodels: A survey. In FICC (LNNS, Vol. 70). Springer, 892--911.
[24]
Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Videira Lopes, Jean-Marc Loingtier, and John Irwin. 1997. Aspect-oriented programming. In ECOOP'97 (LNCS, Vol. 1241). Springer, 220--242.
[25]
Dimitrios S. Kolovos, Louis M. Rose, Saad bin Abid, Richard F. Paige, Fiona A. C. Polack, and Goetz Botterweck. 2010. Taming EMF and GMF using model transformation. In MoDELS (LNCS, Vol. 6394). Springer, 211--225.
[26]
Saunders Mac Lane. 1971. Categories for the working mathematician. Springer.
[27]
Ivano Malavolta, Patricia Lago, Henry Muccini, Patrizio Pelliccione, and Antony Tang. 2013. What industry needs from architectural languages: A survey. IEEE Trans. Soft. Eng. 39, 6 (2013), 869--891.
[28]
Jens Meinicke, Thomas Thüm, Reimar Schröter, Fabian Benduhn, Thomas Leich, and Gunter Saake. 2017. Mastering software variability with FeatureIDE. Springer.
[29]
Ivan Melo, Mario E. Sánchez, and Jorge Villalobos. 2013. Composing graphical languages. In GlobalDSL@ECOOP. ACM, 12--17.
[30]
David Méndez-Acuña, José Angel Galindo, Benoît Combemale, Arnaud Blouin, and Benoit Baudry. 2017. Reverse engineering language product lines from existing DSL variants. J. Syst. Softw. 133 (2017), 145--158.
[31]
Bart Meyers, Antonio Cicchetti, Esther Guerra, and Juan de Lara. 2012. Composing textual modelling languages in practice. In MPM@MoDELS. ACM, New York, NY, USA, 31--36.
[32]
Hafedh Mili, Guy Tremblay, Guitta Bou Jaoude, Eric Lefebvre, Lamia Elabed, and Ghizlane El-Boussaidi. 2010. Business process modeling languages: Sorting through the alphabet soup. ACM Comput. Surv. 43, 1 (2010), 4:1--4:56.
[33]
Daniel L. Moody. 2009. The "physics" of notations: Toward a scientific basis for constructing visual notations in Software Engineering. IEEE Trans. Software Eng. 35, 6 (2009), 756--779.
[34]
T. Murata. 1989. Petri nets: Properties, analysis and applications. Proc. IEEE 77, 4 (1989), 541--580.
[35]
L. Northrop and P. Clements. 2002. Software product lines: Practices and patterns. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
[36]
Luis Pedro, Matteo Risoldi, Didier Buchs, Bruno Barroca, and Vasco Amaral. 2009. Composing visual syntax for domain specific languages. In HCI (LNCS, Vol. 5611). Springer, 889--898.
[37]
Gilles Perrouin, Moussa Amrani, Mathieu Acher, Benoît Combemale, Axel Legay, and Pierre-Yves Schobbens. 2016. Featured model types: Towards systematic reuse in modelling language engineering. In MiSE@ICSE. ACM, New York, NY, USA, 1--7.
[38]
José Eduardo Rivera, Esther Guerra, Juan de Lara, and Antonio Vallecillo. 2008. Analyzing rule-based behavioral semantics of visual modeling languages with Maude. In SLE (LNCS, Vol. 5452). Springer, 54--73.
[39]
Alessio Di Sandro, Ramy Shahin, and Marsha Chechik. 2023. Adding product-line capabilities to your favourite modeling language. In VaMoS. ACM, 3--12.
[40]
Sirius. (last accessed in March 2024). https://www.eclipse.org/sirius/.
[41]
Harald Störrle. 2019. Modeling moods. In MoDELS Companion. IEEE, 468--477.
[42]
Javier Troya, Antonio Vallecillo, Francisco Durán, and Steffen Zschaler. 2013. Model-driven performance analysis of rule-based domain specific visual models. Inf. Softw. Technol. 55, 1 (2013), 88--110.
[43]
Edoardo Vacchi and Walter Cazzola. 2015. Neverlang: A framework for feature-oriented language development. Comput. Lang. Syst. Struct. 43 (2015), 1--40.
[44]
Andrzej Wasowski and Thorsten Berger. 2023. Domain-specific languages - Effective modeling, automation, and reuse. Springer.
[45]
Xtext. 2022. https://www.eclipse.org/Xtext/.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
MODELS '24: Proceedings of the ACM/IEEE 27th International Conference on Model Driven Engineering Languages and Systems
September 2024
311 pages
ISBN:9798400705045
DOI:10.1145/3640310
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 September 2024

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Graphical Concrete Syntax
  2. Model-driven Engineering
  3. Product Lines
  4. Software Language Engineering

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

  • Spanish MICINN
  • Spanish MICINN

Conference

MODELS '24
Sponsor:

Acceptance Rates

MODELS '24 Paper Acceptance Rate 26 of 124 submissions, 21%;
Overall Acceptance Rate 144 of 506 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 80
    Total Downloads
  • Downloads (Last 12 months)80
  • Downloads (Last 6 weeks)3
Reflects downloads up to 10 Feb 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media