Skip to main content
Top

2015 | OriginalPaper | Chapter

Composition of Heterogeneous Modeling Languages

Authors : Arne Haber, Markus Look, Pedram Mir Seyed Nazari, Antonio Navarro Perez, Bernhard Rumpe, Steven Völkel, Andreas Wortmann

Published in: Model-Driven Engineering and Software Development

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Model-driven engineering aims at managing the complexity of large software systems by describing their various aspects through dedicated models. This approach requires to employ different modeling languages that are tailored to specific system aspects, yet can be interpreted together to form a coherent description of the total system. Traditionally, implementations of such integrated languages have been monolithic language projects with little modularization and reuse of language parts.
This paper presents a method for engineering reusable language components that can be efficiently combined on the syntax level. The method is based on the concepts of language aggregation, language embedding, and language inheritance. The result is the ability to efficiently develop project-specific combinations of modeling languages in an agile manner.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
Please note that part of the nomenclature introduced in [7] was changed to reflect the refined concepts more precisely.
 
Literature
1.
go back to reference France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: Future of Software Engineering (FOSE 2007) (2007) France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: Future of Software Engineering (FOSE 2007) (2007)
3.
go back to reference Schindler, M.: Eine Werkzeuginfrastruktur zur Agilen Entwicklung mit der UML/P. Aachener Informatik-Berichte, Software Engineering, Band 11. Shaker (2012) Schindler, M.: Eine Werkzeuginfrastruktur zur Agilen Entwicklung mit der UML/P. Aachener Informatik-Berichte, Software Engineering, Band 11. Shaker (2012)
4.
go back to reference Völkel, S.: Kompositionale Entwicklung domänenspezifischer Sprachen. Aachener Informatik-Berichte, Software Engineering Band 9. 2011. Shaker Verlag (2011) Völkel, S.: Kompositionale Entwicklung domänenspezifischer Sprachen. Aachener Informatik-Berichte, Software Engineering Band 9. 2011. Shaker Verlag (2011)
5.
go back to reference Krahn, H., Rumpe, B., Völkel, S.: MontiCore: modular development of textual domain specific languages. In: Paige, R.F., Meyer, B. (eds.) Proceedings of Tools Europe. Lecture Notes in Business Information Processing, vol. 11. Springer, Heidelberg (2008) Krahn, H., Rumpe, B., Völkel, S.: MontiCore: modular development of textual domain specific languages. In: Paige, R.F., Meyer, B. (eds.) Proceedings of Tools Europe. Lecture Notes in Business Information Processing, vol. 11. Springer, Heidelberg (2008)
6.
go back to reference Look, M., Navarro Perez, A., Ringert, J.O., Rumpe, B., Wortmann, A.: Black-box integration of heterogeneous modeling languages for cyber-physical systems. In: Proceedings of the 1st Workshop on the Globalization of Modeling Languages (GEMOC), Miami, Florida, USA (2013) Look, M., Navarro Perez, A., Ringert, J.O., Rumpe, B., Wortmann, A.: Black-box integration of heterogeneous modeling languages for cyber-physical systems. In: Proceedings of the 1st Workshop on the Globalization of Modeling Languages (GEMOC), Miami, Florida, USA (2013)
7.
go back to reference Haber, A., Look, M., Mir Seyed Nazari, P., Navarro Perez, A., Rumpe, B., Voelkel, S., Wortmann, A.: 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, Angers, France, Scitepress (2015) Haber, A., Look, M., Mir Seyed Nazari, P., Navarro Perez, A., Rumpe, B., Voelkel, S., Wortmann, A.: 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, Angers, France, Scitepress (2015)
8.
go back to reference Krahn, H., Rumpe, B., Völkel, S.: MontiCore: a framework for compositional development of domain specific languages. Softw. Tools Technol. Trans. (STTT) 12(5), 353–372 (2010)CrossRef Krahn, H., Rumpe, B., Völkel, S.: MontiCore: a framework for compositional development of domain specific languages. Softw. Tools Technol. Trans. (STTT) 12(5), 353–372 (2010)CrossRef
9.
go back to reference Medvidovic, N., Taylor, R.: A classification and comparison framework for software architecture description languages. IEEE Trans. Softw. Eng. 26(1), 70–93 (2000)CrossRef Medvidovic, N., Taylor, R.: A classification and comparison framework for software architecture description languages. IEEE Trans. Softw. Eng. 26(1), 70–93 (2000)CrossRef
10.
go back to reference Ringert, J.O., Rumpe, B., Wortmann, A.: MontiArcAutomaton: modeling architecture and behavior of robotic systems. In: Workshops and Tutorials Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Karlsruhe, Germany (2013) Ringert, J.O., Rumpe, B., Wortmann, A.: MontiArcAutomaton: modeling architecture and behavior of robotic systems. In: Workshops and Tutorials Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Karlsruhe, Germany (2013)
11.
go back to reference Ringert, J.O., Rumpe, B., Wortmann, A.: Architecture and behavior modeling of cyber-physical systems with MontiArcAutomaton. Number 20 in Aachener Informatik-Berichte, Software Engineering. Shaker Verlag (2014) Ringert, J.O., Rumpe, B., Wortmann, A.: Architecture and behavior modeling of cyber-physical systems with MontiArcAutomaton. Number 20 in Aachener Informatik-Berichte, Software Engineering. Shaker Verlag (2014)
12.
go back to reference Ringert, J.O., Rumpe, B., Wortmann, A.: Multi-platform generative development of component and connector systems using model and code libraries. In: 1st International Workshop on Model-Driven Engineering for Component-Based Systems (ModComp 2014). CEUR Workshop Proceedings, Valencia, Spain, vol. 1281, pp. 26–35 (2014) Ringert, J.O., Rumpe, B., Wortmann, A.: Multi-platform generative development of component and connector systems using model and code libraries. In: 1st International Workshop on Model-Driven Engineering for Component-Based Systems (ModComp 2014). CEUR Workshop Proceedings, Valencia, Spain, vol. 1281, pp. 26–35 (2014)
13.
go back to reference Haber, A., Ringert, J.O., Rumpe, B.: MontiArc - architectural modeling of interactive distributed and cyber-physical systems. Technical report AIB-2012-03, RWTH Aachen (2012) Haber, A., Ringert, J.O., Rumpe, B.: MontiArc - architectural modeling of interactive distributed and cyber-physical systems. Technical report AIB-2012-03, RWTH Aachen (2012)
14.
15.
go back to reference Rumpe, B.: Agile Modellierung mit UML: Codegenerierung, Testfälle, Refactoring, 2nd edn. Springer, Heidelberg (2012)CrossRef Rumpe, B.: Agile Modellierung mit UML: Codegenerierung, Testfälle, Refactoring, 2nd edn. Springer, Heidelberg (2012)CrossRef
16.
go back to reference Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Professional, Boston (1995)MATH Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Professional, Boston (1995)MATH
17.
go back to reference Grönniger, H., Krahn, H., Rumpe, B., Schindler, M., Völkel, S.: MontiCore 1.0 - Ein Framework zur Erstellung und Verarbeitung domänenspezifischer Sprachen. Technical Report Informatik-Bericht 2006–04, Software Systems Engineering Institute, Braunschweig University of Technology (2006) Grönniger, H., Krahn, H., Rumpe, B., Schindler, M., Völkel, S.: MontiCore 1.0 - Ein Framework zur Erstellung und Verarbeitung domänenspezifischer Sprachen. Technical Report Informatik-Bericht 2006–04, Software Systems Engineering Institute, Braunschweig University of Technology (2006)
18.
go back to reference Barja, M.L., Paton, N.W., Fern, A.A.A., Williams, M.H., Dinn, A.: An effective deductive object-oriented database through language integration. In: Proceedings of the 20th International Conference on Very Large Data Bases (VLDB) (1994) Barja, M.L., Paton, N.W., Fern, A.A.A., Williams, M.H., Dinn, A.: An effective deductive object-oriented database through language integration. In: Proceedings of the 20th International Conference on Very Large Data Bases (VLDB) (1994)
19.
go back to reference Groenewegen, D., Visser, E.: Declarative access control for WebDSL: combining language integration and separation of concerns. In: Proceedings of the 8th International Conference on Web Engineering 2008 (ICWE 2008) (2008) Groenewegen, D., Visser, E.: Declarative access control for WebDSL: combining language integration and separation of concerns. In: Proceedings of the 8th International Conference on Web Engineering 2008 (ICWE 2008) (2008)
20.
go back to reference Grönniger, H., Rumpe, B.: Modeling language variability. In: Calinescu, R., Jackson, E. (eds.) Monterey Workshop 2010. LNCS, vol. 6662, pp. 17–32. Springer, Heidelberg (2011) Grönniger, H., Rumpe, B.: Modeling language variability. In: Calinescu, R., Jackson, E. (eds.) Monterey Workshop 2010. LNCS, vol. 6662, pp. 17–32. Springer, Heidelberg (2011)
21.
22.
go back to reference Wende, C., Thieme, N., Zschaler, S.: A role-based approach towards modular language engineering. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 254–273. Springer, Heidelberg (2010) CrossRef Wende, C., Thieme, N., Zschaler, S.: A role-based approach towards modular language engineering. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 254–273. Springer, Heidelberg (2010) CrossRef
23.
go back to reference Wyk, E.V., Bodin, D., Gao, J., Krishnan, L.: Silver: an extensible attribute grammar system. Electron. Notes Theor. Comput. Sci. 203(2), 103–116 (2008)CrossRefMATH Wyk, E.V., Bodin, D., Gao, J., Krishnan, L.: Silver: an extensible attribute grammar system. Electron. Notes Theor. Comput. Sci. 203(2), 103–116 (2008)CrossRefMATH
24.
go back to reference Erdweg, S., Giarrusso, P.G., Rendel, T.: Language composition untangled. In: Proceedings of the 12th Workshop on Language Descriptions, Tools, and Applications (2012) Erdweg, S., Giarrusso, P.G., Rendel, T.: Language composition untangled. In: Proceedings of the 12th Workshop on Language Descriptions, Tools, and Applications (2012)
25.
go back to reference Hudak, P.: Modular domain specific languages and tools. In: Proceedings of the 5th International Conference on Software Reuse 1998 (1998) Hudak, P.: Modular domain specific languages and tools. In: Proceedings of the 5th International Conference on Software Reuse 1998 (1998)
26.
go back to reference Erdweg, S., et al.: The state of the art in language workbenches. In: Erwig, M., Paige, R.F., Van Wyk, E. (eds.) SLE 2013. LNCS, vol. 8225, pp. 197–217. Springer, Heidelberg (2013) CrossRef Erdweg, S., et al.: The state of the art in language workbenches. In: Erwig, M., Paige, R.F., Van Wyk, E. (eds.) SLE 2013. LNCS, vol. 8225, pp. 197–217. Springer, Heidelberg (2013) CrossRef
27.
go back to reference van der Storm, T., Cook, W.R., Loh, A.: The design and implementation of object grammars. Sci. Comput. Program. 96, 460–487 (2014)CrossRef van der Storm, T., Cook, W.R., Loh, A.: The design and implementation of object grammars. Sci. Comput. Program. 96, 460–487 (2014)CrossRef
29.
go back to reference Kelly, S., Lyytinen, K., Rossi, M.: Metaedit+ a fully configurable multi-user and multi-tool case and came environment. In: Constantopoulos, P., Vassiliou, Y., Mylopoulos, J. (eds.) CAiSE 1996. LNCS, vol. 1080. Springer, Heidelberg (1996) CrossRef Kelly, S., Lyytinen, K., Rossi, M.: Metaedit+ a fully configurable multi-user and multi-tool case and came environment. In: Constantopoulos, P., Vassiliou, Y., Mylopoulos, J. (eds.) CAiSE 1996. LNCS, vol. 1080. Springer, Heidelberg (1996) CrossRef
31.
go back to reference Klint, P., van der Storm, T., Vinju, J.: Rascal: a domain specific language for source code analysis and manipulation. In: Proceedings of the 9th IEEE International Working Conference on Source Code Analysis and Manipulation 2009 (SCAM 2009) (2009) Klint, P., van der Storm, T., Vinju, J.: Rascal: a domain specific language for source code analysis and manipulation. In: Proceedings of the 9th IEEE International Working Conference on Source Code Analysis and Manipulation 2009 (SCAM 2009) (2009)
32.
go back to reference Kats, L.C., Visser, E.: The spoofax language workbench: rules for declarative specification of languages and IDEs. SIGPLAN Not. 45(10), 444–463 (2010)CrossRef Kats, L.C., Visser, E.: The spoofax language workbench: rules for declarative specification of languages and IDEs. SIGPLAN Not. 45(10), 444–463 (2010)CrossRef
33.
go back to reference Erdweg, S., Rendel, T., Kästner, C., Ostermann, K.: SugarJ: library-based syntactic language extensibility. ACM SIGPLAN Not. 46(10), 391–406 (2011)CrossRef Erdweg, S., Rendel, T., Kästner, C., Ostermann, K.: SugarJ: library-based syntactic language extensibility. ACM SIGPLAN Not. 46(10), 391–406 (2011)CrossRef
34.
go back to reference Solmi, R.: Whole platform. Ph.D. thesis, University of Bologna (2005) Solmi, R.: Whole platform. Ph.D. thesis, University of Bologna (2005)
35.
go back to reference Eysholdt, M., Behrens, H.: Xtext: implement your language faster than the quick and dirty way. In: Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion (2010) Eysholdt, M., Behrens, H.: Xtext: implement your language faster than the quick and dirty way. In: Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion (2010)
36.
go back to reference Voelter, M.: Language and IDE modularization and composition with MPS. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2011. LNCS, vol. 7680, pp. 383–430. Springer, Heidelberg (2013) CrossRef Voelter, M.: Language and IDE modularization and composition with MPS. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2011. LNCS, vol. 7680, pp. 383–430. Springer, Heidelberg (2013) CrossRef
37.
go back to reference Tomassetti, F., Vetro, A., Torchiano, M., Voelter, M., Kolb, B.: A model-based approach to language integration. In: Proccedings of the 5th International Workshop on Modeling in Software Engineering (MiSE) (2013) Tomassetti, F., Vetro, A., Torchiano, M., Voelter, M., Kolb, B.: A model-based approach to language integration. In: Proccedings of the 5th International Workshop on Modeling in Software Engineering (MiSE) (2013)
38.
go back to reference Hofer, C., Ostermann, K.: Modular domain-specific language components in scala. ACM SIGPLAN Not. 46(2), 83–92 (2010)CrossRef Hofer, C., Ostermann, K.: Modular domain-specific language components in scala. ACM SIGPLAN Not. 46(2), 83–92 (2010)CrossRef
40.
go back to reference Van Wyk, E., de Moor, O., Backhouse, K., Kwiatkowski, P.: Forwarding in attribute grammars for modular language design. In: Nigel Horspool, R. (ed.) CC 2002. LNCS, vol. 2304, pp. 128–142. Springer, Heidelberg (2002) CrossRef Van Wyk, E., de Moor, O., Backhouse, K., Kwiatkowski, P.: Forwarding in attribute grammars for modular language design. In: Nigel Horspool, R. (ed.) CC 2002. LNCS, vol. 2304, pp. 128–142. Springer, Heidelberg (2002) CrossRef
41.
go back to reference Mernik, M.: An object-oriented approach to language compositions for software language engineering. J. Syst. Softw. 86(9), 2451–2464 (2013)CrossRef Mernik, M.: An object-oriented approach to language compositions for software language engineering. J. Syst. Softw. 86(9), 2451–2464 (2013)CrossRef
42.
go back to reference Kappel, G., et al.: Lifting metamodels to ontologies: a step to the semantic integration of modeling languages. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 4199, pp. 528–542. Springer, Heidelberg (2006)CrossRef Kappel, G., et al.: Lifting metamodels to ontologies: a step to the semantic integration of modeling languages. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 4199, pp. 528–542. Springer, Heidelberg (2006)CrossRef
43.
go back to reference Haber, A., Hölldobler, K., Kolassa, C., Look, M., Rumpe, B., Müller, K., Schaefer, I.: Engineering delta modeling languages. In: Proceedings of the 17th International Software Product Line Conference (2013) Haber, A., Hölldobler, K., Kolassa, C., Look, M., Rumpe, B., Müller, K., Schaefer, I.: Engineering delta modeling languages. In: Proceedings of the 17th International Software Product Line Conference (2013)
44.
go back to reference Haber, A., Rendel, H., Rumpe, B., Schaefer, I.: Evolving delta-oriented software product line architectures. In: Calinescu, R., Garlan, D. (eds.) Monterey Workshop 2012. LNCS, vol. 7539, pp. 183–208. Springer, Heidelberg (2012) Haber, A., Rendel, H., Rumpe, B., Schaefer, I.: Evolving delta-oriented software product line architectures. In: Calinescu, R., Garlan, D. (eds.) Monterey Workshop 2012. LNCS, vol. 7539, pp. 183–208. Springer, Heidelberg (2012)
45.
go back to reference Haber, A., Kutz, T., Rendel, H., Rumpe, B., Schaefer, I.: Delta-oriented architectural variability using MontiCore. In: ECSA 2011 5th European Conference on Software Architecture: Companion Volume (2011) Haber, A., Kutz, T., Rendel, H., Rumpe, B., Schaefer, I.: Delta-oriented architectural variability using MontiCore. In: ECSA 2011 5th European Conference on Software Architecture: Companion Volume (2011)
46.
go back to reference Haber, A., Rendel, H., Rumpe, B., Schaefer, I.: Delta modeling for software architectures. In: Tagungsband des Dagstuhl-Workshop MBEES: Modellbasierte Entwicklung eingebetteterSysteme VII (2011) Haber, A., Rendel, H., Rumpe, B., Schaefer, I.: Delta modeling for software architectures. In: Tagungsband des Dagstuhl-Workshop MBEES: Modellbasierte Entwicklung eingebetteterSysteme VII (2011)
47.
go back to reference Haber, A., Rendel, H., Rumpe, B., Schaefer, I., van der Linden, F.: Hierarchical variability modeling for software architectures. In: Proceedings of International Software Product Lines Conference (SPLC 2011) (2011) Haber, A., Rendel, H., Rumpe, B., Schaefer, I., van der Linden, F.: Hierarchical variability modeling for software architectures. In: Proceedings of International Software Product Lines Conference (SPLC 2011) (2011)
48.
go back to reference Navarro Pérez, A., Rumpe, B.: Modeling cloud architectures as interactive systems. In: 2nd International Workshop on Model-Driven Engineering for High Performance and CLoud computing (MDHPCL) (2013) Navarro Pérez, A., Rumpe, B.: Modeling cloud architectures as interactive systems. In: 2nd International Workshop on Model-Driven Engineering for High Performance and CLoud computing (MDHPCL) (2013)
49.
go back to reference Thomas, U., Hirzinger, G., Rumpe, B., Schulze, C., Wortmann, A.: A new skill based robot programming language using UML/P statecharts. In: Proceedings of the 2013 IEEE International Conference on Robotics and Automation (ICRA), Karlsruhe, Germany (2013) Thomas, U., Hirzinger, G., Rumpe, B., Schulze, C., Wortmann, A.: A new skill based robot programming language using UML/P statecharts. In: Proceedings of the 2013 IEEE International Conference on Robotics and Automation (ICRA), Karlsruhe, Germany (2013)
50.
go back to reference Ringert, J.O., Rumpe, B., Wortmann, A.: From software architecture structure and behavior modeling to implementations of cyber-physical systems. In: Wagner, S., Lichter, H. (eds.) Software Engineering 2013 Workshopband. Volume 215 of LNI, GI, Köllen, pp. 155–170. Druck+Verlag GmbH, Bonn (2013) Ringert, J.O., Rumpe, B., Wortmann, A.: From software architecture structure and behavior modeling to implementations of cyber-physical systems. In: Wagner, S., Lichter, H. (eds.) Software Engineering 2013 Workshopband. Volume 215 of LNI, GI, Köllen, pp. 155–170. Druck+Verlag GmbH, Bonn (2013)
Metadata
Title
Composition of Heterogeneous Modeling Languages
Authors
Arne Haber
Markus Look
Pedram Mir Seyed Nazari
Antonio Navarro Perez
Bernhard Rumpe
Steven Völkel
Andreas Wortmann
Copyright Year
2015
DOI
https://doi.org/10.1007/978-3-319-27869-8_3

Premium Partner