Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3168365.3168368acmotherconferencesArticle/Chapter ViewAbstractPublication PagesvamosConference Proceedingsconference-collections
research-article

Controlled and Extensible Variability of Concrete and Abstract Syntax with Independent Language Features

Published: 07 February 2018 Publication History

Abstract

"Software languages are software too", hence their creation, evolution, and maintenance is subject to the same challenges. Managing multiple stand-alone variants of similar DSLs raises the related maintenance and evolution efforts for the languages and their associated tooling (analyses, transformations, editors, etc.) to a higher power. Software variability management techniques can help to harness this complexity. Research in software language variability focuses on metamodels and consequently mainly supports managing the variability of abstract syntaxes, omitting concrete syntax variability management. We present an approach to manage controlled syntactic variability of extensible software language product lines through identification of dedicated syntax variation points and specification of variants from independently developed features. This fosters software language reuse and reduces creation, maintenance, and evolution efforts. The approach is realized with the MontiCore language workbench and evaluated through a case study on architecture description languages. It facilitates creating, maintaining, and evolving the concrete and abstract syntax of families of languages and, hence, reduces the effort of software language engineering.

References

[1]
Lorenzo Bettini. 2016. Implementing domain-specific languages with Xtext and Xtend. Packt Publishing Ltd.
[2]
Arvid Butting, Arne Haber, Lars Hermerschmidt, Oliver Kautz, Bernhard Rumpe, and Andreas Wortmann. 2017. Systematic Language Extension Mechanisms for the MontiArc Architecture Description Language. In Modelling Foundations and Applications (ECMFA'17), Held as Part of STAF 2017. Springer International Publishing, 53--70.
[3]
María Cengarle, Hans Grönniger, and Bernhard Rumpe. 2009. Variability within modeling language definitions. Model Driven Engineering Languages and Systems (2009), 670--684.
[4]
Tony Clark, Mark den Brand, Benoit Combemale, and Bernhard Rumpe. 2015. Conceptual Model of the Globalization for Domain-Specific Languages. In Globalizing Domain-Specific Languages. Springer, 7--20.
[5]
Thomas Degueule, Benoit Combemale, Arnaud Blouin, Olivier Barais, and Jean-Marc Jézéquel. 2015. Melange: A Meta-language for Modular and Reusable Development of DSLs. In 8th International Conference on Software Language Engineering (SLE). Pittsburgh, United States.
[6]
Sebastian Erdweg, Paolo G. Giarrusso, and Tillmann Rendel. 2012. Language Composition Untangled. In Proceedings of the Twelfth Workshop on Language Descriptions, Tools, and Applications (LDTA '12). ACM, New York, NY, USA.
[7]
Jean-Marie Favre, Dragan Gasevic, Ralf Lämmel, and Ekaterina Pek. 2010. Empirical Language Analysis in Software Linguistics. In SLE. Springer, 316--326.
[8]
Robert France and Bernhard Rumpe. 2007. Model-Driven Development of Complex Software: A Research Roadmap. In Future of Software Engineering 2007 at ICSE.
[9]
Arne Haber, Markus Look, Pedram Mir Seyed Nazari, Antonio Navarro Perez, Bernhard Rumpe, Steven Voelkel, and Andreas Wortmann. 2015. Integration of Heterogeneous Modeling Languages via Extensible and Composable Language Components. In Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development. Scitepress, Angers, France.
[10]
Jean-Marc Jézéquel, Benoit Combemale, Olivier Barais, Martin Monperrus, and François Fouquet. 2015. Mashup of metalanguages and its implementation in the kermeta language workbench. Software & Systems Modeling 14, 2 (2015), 905--920.
[11]
Ted Kaminski and Eric Van Wyk. 2013. Creating and using domain-specific language features. In Proceedings of the First Workshop on the Globalization of Domain Specific Languages. ACM, 18--21.
[12]
Kyo C Kang, Sholom G Cohen, James A Hess, William E Novak, and A Spencer Peterson. 1990. Feature-oriented domain analysis (FODA) feasibility study. Technical Report. Carnegie-Mellon Univ Pittsburgh Pa Software Engineering Inst.
[13]
Anneke Kleppe. 2008. Software Language Engineering: Creating Domain-Specific Languages using Metamodels. Pearson Education.
[14]
Holger Krahn, Bernhard Rumpe, and Steven Völkel. 2008. MontiCore: Modular Development of Textual Domain Specific Languages. In Proceedings of Tools Europe.
[15]
Thomas Kühn and Walter Cazzola. 2016. Apples and oranges: comparing top-down and bottom-up language product lines. In Proceedings of the 20th International Systems and Software Product Line Conference. ACM, 50--59.
[16]
Thomas Kühn, Walter Cazzola, and Diego Mathias Olivares. 2015. Choosy and Picky: Configuration of Language Product Lines. In Proceedings of the 19th International Software Product Line Conference. ACM, 71--80.
[17]
Jörg Liebig, Rolf Daniel, and Sven Apel. 2013. Feature-oriented Language Families: A Case Study. In Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems (VaMoS '13). ACM, New York, NY, USA, Article 11, 8 pages.
[18]
Ivano Malavolta, Patricia Lago, Henry Muccini, Patrizio Pelliccione, and Antony Tang. 2013. What Industry Needs from Architectural Languages: A Survey. IEEE Transactions on Software Engineering (2013).
[19]
Nenad Medvidovic and Richard N Taylor. 2000. A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering (2000).
[20]
David Méndez-Acuña, José A Galindo, Thomas Degueule, Benoît Combemale, and Benoit Baudry. 2016. Leveraging software product lines engineering in the development of external dsls: A systematic literature review. Computer Languages, Systems & Structures 46 (2016), 206--235.
[21]
Marjan Mernik. 2013. An object-oriented approach to language compositions for software language engineering. Journal of Systems and Software 86, 9 (2013).
[22]
Brice Morin, Gilles Perrouin, Philippe Lahire, Olivier Barais, Gilles Vanwormhoudt, and Jean-Marc Jézéquel. 2009. Weaving variability into domain metamodels. Model driven engineering languages and systems (2009), 690--705.
[23]
Luis Pedro, Matteo Risoldi, Didier Buchs, Bruno Barroca, and Vasco Amaral. 2009. Composing visual syntax for domain specific languages. Human-Computer Interaction. Novel Interaction Methods and Techniques (2009), 889--898.
[24]
Dave Steinberg, Frank Budinsky, Marcelo Paternostro, and Ed Merks. 2009. EMF: Eclipse Modeling Framework (2. ed.). Addison-Wesley, Boston, MA.
[25]
Edoardo Vacchi and Walter Cazzola. 2015. Neverlang: A framework for feature-oriented language development. Computer Languages, Systems & Structures 43 (2015), 1--40.
[26]
Edoardo Vacchi, Walter Cazzola, Benoît Combemale, and Mathieu Acher. 2014. Automating Variability Model Inference for Component-Based Language Implementations. In Proceedings of the 18th International Software Product Line Conference. ACM, 167--176.
[27]
Vladimir Viyović, Mirjam Maksimović, and Branko Perisić. 2014. Sirius: A rapid development of DSM graphical editor. In Intelligent Engineering Systems (INES), 2014 18th International Conference on. IEEE, 233--238.
[28]
Markus Völter, Sebastian Benz, Christian Dietrich, Birgit Engelmann, Mats Helander, Lennart C L Kats, Eelco Visser, and Guido Wachsmuth. 2013. {DSL} Engineering - Designing, Implementing and Using Domain-Specific Languages. dslbook.org.
[29]
Jules White, James H Hill, Jeff Gray, Sumant Tambe, Aniruddha S Gokhale, and Douglas C Schmidt. 2009. Improving domain-specific language reuse with software product line techniques. IEEE software 26, 4 (2009).

Cited By

View all
  • (2023)A modular metamodel and refactoring rules to achieve software product line interoperabilityJournal of Systems and Software10.1016/j.jss.2022.111579197:COnline publication date: 1-Mar-2023
  • (2022)A systematic mapping study of security concepts for configurable data storagesProceedings of the 26th ACM International Systems and Software Product Line Conference - Volume A10.1145/3546932.3546994(108-119)Online publication date: 12-Sep-2022
  • (2022)Ontology-Based Development of Domain-Specific Languages via Customizing Base Language2022 IEEE 16th International Conference on Application of Information and Communication Technologies (AICT)10.1109/AICT55583.2022.10013619(1-6)Online publication date: 12-Oct-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
VAMOS '18: Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems
February 2018
128 pages
ISBN:9781450353984
DOI:10.1145/3168365
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].

In-Cooperation

  • Universidad Politécnica de Madrid
  • URJC: Rey Juan Carlos University

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 07 February 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Language Product Lines
  2. Language Variability
  3. Software Language Engineering

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

VAMOS 2018

Acceptance Rates

VAMOS '18 Paper Acceptance Rate 15 of 34 submissions, 44%;
Overall Acceptance Rate 66 of 147 submissions, 45%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2023)A modular metamodel and refactoring rules to achieve software product line interoperabilityJournal of Systems and Software10.1016/j.jss.2022.111579197:COnline publication date: 1-Mar-2023
  • (2022)A systematic mapping study of security concepts for configurable data storagesProceedings of the 26th ACM International Systems and Software Product Line Conference - Volume A10.1145/3546932.3546994(108-119)Online publication date: 12-Sep-2022
  • (2022)Ontology-Based Development of Domain-Specific Languages via Customizing Base Language2022 IEEE 16th International Conference on Application of Information and Communication Technologies (AICT)10.1109/AICT55583.2022.10013619(1-6)Online publication date: 12-Oct-2022
  • (2022)Towards a recipe for language decomposition: quality assessment of language product linesEmpirical Software Engineering10.1007/s10664-021-10074-627:4Online publication date: 1-Jul-2022
  • (2021)Towards the Black-Box Aggregation of Language Components2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C)10.1109/MODELS-C53483.2021.00088(576-585)Online publication date: Oct-2021
  • (2020)Neverlang and FeatureIDE just marriedProceedings of the 24th ACM Conference on Systems and Software Product Line: Volume A - Volume A10.1145/3382025.3414961(1-11)Online publication date: 19-Oct-2020
  • (2020)Extensible and modular abstract syntax for feature modeling based on language constructsProceedings of the 24th ACM Conference on Systems and Software Product Line: Volume A - Volume A10.1145/3382025.3414959(1-7)Online publication date: 19-Oct-2020
  • (2020)A compositional framework for systematic modeling language reuseProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3365438.3410934(35-46)Online publication date: 16-Oct-2020
  • (2020)Systematic mapping study on domain-specific language development toolsEmpirical Software Engineering10.1007/s10664-020-09872-125:5(4205-4249)Online publication date: 1-Sep-2020
  • (2019)Piggyback IDE Support for Language Product LinesProceedings of the 23rd International Systems and Software Product Line Conference - Volume A10.1145/3336294.3336301(131-142)Online publication date: 9-Sep-2019
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media