Skip to main content
Erschienen in: Software Quality Journal 2/2020

10.09.2019

A systematic mapping study on best practices for domain-specific modeling

verfasst von: Gerald Czech, Michael Moser, Josef Pichler

Erschienen in: Software Quality Journal | Ausgabe 2/2020

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Model-driven software development comes in different styles. While standard-based approaches leverage existing language standards (e.g., UML), tooling, and development processes, domain-specific modeling (DSM) requires languages and tool support to be created prior to the actual software development. The design, implementation, and testing of languages and tool support require a wide spectrum of methods and techniques which introduce complexity and new challenges. To tackle these DSM-specific challenges, best practices have been collected from various application domains and published in literature to guide the development and application of DSM solutions. It is the goal of this paper to identify studies reporting best practices on domain-specific modeling. Moreover, a systematic and comprehensive compilation of best practices should act as a starting point to identify literature that facilitates industrial adoption of DSM. To search for literature and classify identified studies, we conduct a systematic mapping study (SMS). Furthermore, we perform an in-depth analysis of the identified studies to answer how practices overlap, complement, or contradict each other. The systematic search resulted in 21 studies reporting 321 best practices. From these 321 practices, we compiled 192 unique best practices. We found that the DSM community created a substantial corpus of best practices for DSM. The large majority of practices (75%) are only reported once. The top best practices by number of reports contain only practices that are reported at least four times. However, the frequency of reports does not necessarily imply a high importance of practice, as the application of practices is always context specific.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

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!

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!

Literatur
Zurück zum Zitat Aho, A. V., Sethi, R., & Ullman, J. D. (1986). Compilers principles, techniques, and tools. Reading, MA: Addison-Wesley.MATH Aho, A. V., Sethi, R., & Ullman, J. D. (1986). Compilers principles, techniques, and tools. Reading, MA: Addison-Wesley.MATH
Zurück zum Zitat Budgen, D., Turner, M., Brereton, P., Kitchenham, B.A. (2008) Using mapping studies in software engineering. In: Proceedings of the 20th Annual Workshop of the Psychology of Programming Interest Group, PPIG 2008, Lancaster, UK, September 10-12, 2008. Budgen, D., Turner, M., Brereton, P., Kitchenham, B.A. (2008) Using mapping studies in software engineering. In: Proceedings of the 20th Annual Workshop of the Psychology of Programming Interest Group, PPIG 2008, Lancaster, UK, September 10-12, 2008.
Zurück zum Zitat Czech, G., Moser, M., Pichler, P. (2018) Best practices for domain-specific modeling. A systematic mapping study. In: Proceedings of the 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2018), IEEE Computer Society Press, SEAA 2018, (pp. 137–145). Czech, G., Moser, M., Pichler, P. (2018) Best practices for domain-specific modeling. A systematic mapping study. In: Proceedings of the 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2018), IEEE Computer Society Press, SEAA 2018, (pp. 137–145).
Zurück zum Zitat Evans, E. (2003). Domain-driven design: tacking complexity in the heart of software. Boston: Addison-Wesley Longman Publishing Co., Inc. Evans, E. (2003). Domain-driven design: tacking complexity in the heart of software. Boston: Addison-Wesley Longman Publishing Co., Inc.
Zurück zum Zitat Fowler, M. (2010). Domain specific languages (1st ed.). Addison-Wesley Professional. Fowler, M. (2010). Domain specific languages (1st ed.). Addison-Wesley Professional.
Zurück zum Zitat Hermans, F., Pinzger, M., van Deursen, A. (2009) Domain-specific languages in practice: a user study on the success factors. In: Schürr, A., Selic, B. (eds.) Model driven engineering languages and systems. MODELS 2009. Lecture Notes in Computer Science, vol. 5795. Springer, Berlin, Heidelberg. Hermans, F., Pinzger, M., van Deursen, A. (2009) Domain-specific languages in practice: a user study on the success factors. In: Schürr, A., Selic, B. (eds.) Model driven engineering languages and systems. MODELS 2009. Lecture Notes in Computer Science, vol. 5795. Springer, Berlin, Heidelberg.
Zurück zum Zitat Kahraman, G., Bilgen, S. (2015) A framework for qualitative assessment of domain-specific languages. Softw. Syst. Model. 14, 4 (October 2015), 1505–1526. Kahraman, G., Bilgen, S. (2015) A framework for qualitative assessment of domain-specific languages. Softw. Syst. Model. 14, 4 (October 2015), 1505–1526.
Zurück zum Zitat Kelly, S., & Tolvanen, J. P. (2008a). Domain-specific modeling: enabling full code generation. Wiley. Kelly, S., & Tolvanen, J. P. (2008a). Domain-specific modeling: enabling full code generation. Wiley.
Zurück zum Zitat Ladd, D.A., Ramming, J.C. (1994) Two application languages in software production. In: Proceedings of the USENIX Symposium on Very High Level Languages, USENIX, (pp. 169–187). Ladd, D.A., Ramming, J.C. (1994) Two application languages in software production. In: Proceedings of the USENIX Symposium on Very High Level Languages, USENIX, (pp. 169–187).
Zurück zum Zitat Olajubu, O. (2015) A textual domain specific language for requirement modelling. In: Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ACM, New York, NY, USA, ESEC/FSE 2015, (pp. 1060–1062), DOI https://doi.org/10.1145/2786805.2807562. Olajubu, O. (2015) A textual domain specific language for requirement modelling. In: Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ACM, New York, NY, USA, ESEC/FSE 2015, (pp. 1060–1062), DOI https://​doi.​org/​10.​1145/​2786805.​2807562.
Zurück zum Zitat Petersen, K., Feldt, R., Mujtaba, S., Mattsson, M. (2008) Systematic mapping studies in software engineering. In: Proceedings of the 12th International Conference on Evaluation and Assessment in Software Engineering, BCS Learning & Development Ltd., Swindon, UK, EASE‘08, (pp. 68–77). Petersen, K., Feldt, R., Mujtaba, S., Mattsson, M. (2008) Systematic mapping studies in software engineering. In: Proceedings of the 12th International Conference on Evaluation and Assessment in Software Engineering, BCS Learning & Development Ltd., Swindon, UK, EASE‘08, (pp. 68–77).
Zurück zum Zitat Royce, W.W. (1987) Managing the development of large software systems: concepts and techniques. In: Proceedings of the 9th International Conference on Software Engineering, IEEE Computer Society Press, Los Alamitos ICSE ‘87, (pp. 328–338). Royce, W.W. (1987) Managing the development of large software systems: concepts and techniques. In: Proceedings of the 9th International Conference on Software Engineering, IEEE Computer Society Press, Los Alamitos ICSE ‘87, (pp. 328–338).
Zurück zum Zitat van Deursen, A., & Klint, P. (1998). Little languages: little maintenance. Journal of Software Maintenance, 10(2), 75–92.CrossRef van Deursen, A., & Klint, P. (1998). Little languages: little maintenance. Journal of Software Maintenance, 10(2), 75–92.CrossRef
Zurück zum Zitat Wieringa, R., Maiden, N. A. M., Mead, N., & Rolland, C. (2006). Requirements engineering paper classification and evaluation criteria: a proposal and a discussion. Requirements Engineering, 11, 102–107.CrossRef Wieringa, R., Maiden, N. A. M., Mead, N., & Rolland, C. (2006). Requirements engineering paper classification and evaluation criteria: a proposal and a discussion. Requirements Engineering, 11, 102–107.CrossRef
Zurück zum Zitat Frank, U. (2011) Some guidelines for the conception of domain-specific modelling languages. In: EMISA proceedings (pp. 93–106). Frank, U. (2011) Some guidelines for the conception of domain-specific modelling languages. In: EMISA proceedings (pp. 93–106).
Zurück zum Zitat Iber, J., Höller, A., Rauter, T., Kreiner, C. (2016) Patterns for designing configurability into domain-specific language elements. In: Proceedings of the 21st European Conference on Pattern Languages of Programs, ACM, New York, NY, USA, EuroPlop ‘16, pp 1:1–1:14, DOI https://doi.org/10.1145/3011784.3011785. Iber, J., Höller, A., Rauter, T., Kreiner, C. (2016) Patterns for designing configurability into domain-specific language elements. In: Proceedings of the 21st European Conference on Pattern Languages of Programs, ACM, New York, NY, USA, EuroPlop ‘16, pp 1:1–1:14, DOI https://​doi.​org/​10.​1145/​3011784.​3011785.
Zurück zum Zitat Kahlaou,i A., Abran, A., Lefebvre, E. (2008). Dsml success factors and their assessment criteria. Metrics News, 13(1), 43–51. Kahlaou,i A., Abran, A., Lefebvre, E. (2008). Dsml success factors and their assessment criteria. Metrics News, 13(1), 43–51.
Zurück zum Zitat Karsai, G., Krahn, H., Pinkernell, C., Rumpe, B., Schneider, M., & Völkel, S. (2009). Design guidelines for domain specific languages. In M. Rossi, J. Sprinkle, J. Gray, & J. P. Tolvanen (Eds.), Proceedings of the 9th OOPSLA Workshop on Domain-Specific Modeling (DSM ‘09) (pp. 7–13). Karsai, G., Krahn, H., Pinkernell, C., Rumpe, B., Schneider, M., & Völkel, S. (2009). Design guidelines for domain specific languages. In M. Rossi, J. Sprinkle, J. Gray, & J. P. Tolvanen (Eds.), Proceedings of the 9th OOPSLA Workshop on Domain-Specific Modeling (DSM ‘09) (pp. 7–13).
Zurück zum Zitat Kelly, S., & Pohjonen, R. (2009). Worst practices for domain-specific modeling. IEEE Software, 26(4). Kelly, S., & Pohjonen, R. (2009). Worst practices for domain-specific modeling. IEEE Software, 26(4).
Zurück zum Zitat Kelly, S., & Tolvanen, J. P. (2008b). Domain-specific modeling: enabling full code generation. Wiley. Kelly, S., & Tolvanen, J. P. (2008b). Domain-specific modeling: enabling full code generation. Wiley.
Zurück zum Zitat Kolovos, D.S., Paige, R.F., Kelly, T., Polack, F.A. (2006) Requirements for domain specific languages. In: Proc. of ECOOP Workshop on Domain-Specific Program Development (DSPD), vol 2006. Kolovos, D.S., Paige, R.F., Kelly, T., Polack, F.A. (2006) Requirements for domain specific languages. In: Proc. of ECOOP Workshop on Domain-Specific Program Development (DSPD), vol 2006.
Zurück zum Zitat Livengood, S. (2012) Experiences in domain-specific modeling for interface specification and development. In: Proceedings of the 2Nd International Master Class on Model-Driven Engineering: Modeling Wizards, ACM, New York, NY, USA, MW ‘12, pp 4:1–4:2, DOI https://doi.org/10.1145/2448076.2448080. Livengood, S. (2012) Experiences in domain-specific modeling for interface specification and development. In: Proceedings of the 2Nd International Master Class on Model-Driven Engineering: Modeling Wizards, ACM, New York, NY, USA, MW ‘12, pp 4:1–4:2, DOI https://​doi.​org/​10.​1145/​2448076.​2448080.
Zurück zum Zitat Mernik, M., Heering, J., & Sloane, A. M. (2005). When and how to develop domain-specific languages. ACM Computing Surveys, 37(4), 316–344.CrossRef Mernik, M., Heering, J., & Sloane, A. M. (2005). When and how to develop domain-specific languages. ACM Computing Surveys, 37(4), 316–344.CrossRef
Zurück zum Zitat Moser, M., Pfeiffer, M., Pichler, J. (2014) Domain-specific modeling in industrial automation: challenges and experiences. In: Proceedings of the 1st International Workshop on Modern Software Engineering Methods for Industrial Automation, ACM, New York, NY, USA, MoSEMInA 2014, (pp. 42–51), DOI https://doi.org/10.1145/2593783.2593787. Moser, M., Pfeiffer, M., Pichler, J. (2014) Domain-specific modeling in industrial automation: challenges and experiences. In: Proceedings of the 1st International Workshop on Modern Software Engineering Methods for Industrial Automation, ACM, New York, NY, USA, MoSEMInA 2014, (pp. 42–51), DOI https://​doi.​org/​10.​1145/​2593783.​2593787.
Zurück zum Zitat Parr, T. (2009) Language implementation patterns: create your own domain-specific and general programming languages, 1st ed. Pragmatic Bookshelf. Parr, T. (2009) Language implementation patterns: create your own domain-specific and general programming languages, 1st ed. Pragmatic Bookshelf.
Zurück zum Zitat Ratiu, D., Völter, M. (2016) Automated testing of DSL implementations: experiences from building mbeddr. In: Proceedings of the 11th International Workshop on Automation of Software Test, ACM, New York, NY, USA, AST ‘16, (pp. 15–21), DOI https://doi.org/10.1145/2896921.2896922. Ratiu, D., Völter, M. (2016) Automated testing of DSL implementations: experiences from building mbeddr. In: Proceedings of the 11th International Workshop on Automation of Software Test, ACM, New York, NY, USA, AST ‘16, (pp. 15–21), DOI https://​doi.​org/​10.​1145/​2896921.​2896922.
Zurück zum Zitat Vierhauser, M., Rabiser, R., Grünbacher, P., & Egyed, A. (2015). Developing a DSL-based approach for event-based monitoring of systems of systems: experiences and lessons learned (e). In 30th IEEE/ACM International Conference on Automated Software Engineering, Lincoln, USA (pp. 715–725). https://doi.org/10.1109/ASE.2015.25.CrossRef Vierhauser, M., Rabiser, R., Grünbacher, P., & Egyed, A. (2015). Developing a DSL-based approach for event-based monitoring of systems of systems: experiences and lessons learned (e). In 30th IEEE/ACM International Conference on Automated Software Engineering, Lincoln, USA (pp. 715–725). https://​doi.​org/​10.​1109/​ASE.​2015.​25.CrossRef
Zurück zum Zitat Vokáč, M., & Glattetre, J. M. (2005). Using a domain-specific language and custom tools to model a multitier service-oriented application - experiences and challenges. In L. Briand & C. Williams (Eds.), Model driven engineering languages and systems (pp. 492–506). Berlin, Heidelberg: Springer Berlin Heidelberg.CrossRef Vokáč, M., & Glattetre, J. M. (2005). Using a domain-specific language and custom tools to model a multitier service-oriented application - experiences and challenges. In L. Briand & C. Williams (Eds.), Model driven engineering languages and systems (pp. 492–506). Berlin, Heidelberg: Springer Berlin Heidelberg.CrossRef
Zurück zum Zitat Völter, M. (2009). Best practices for DSLs and model-driven development. Journal of Object Technology, 8(6), 79–102.CrossRef Völter, M. (2009). Best practices for DSLs and model-driven development. Journal of Object Technology, 8(6), 79–102.CrossRef
Zurück zum Zitat Wile, D. (2003) Lessons learned from real DSL experiments. In: System sciences, 2003. Proceedings of the 36th Annual Hawaii International Conference on, IEEE. Wile, D. (2003) Lessons learned from real DSL experiments. In: System sciences, 2003. Proceedings of the 36th Annual Hawaii International Conference on, IEEE.
Metadaten
Titel
A systematic mapping study on best practices for domain-specific modeling
verfasst von
Gerald Czech
Michael Moser
Josef Pichler
Publikationsdatum
10.09.2019
Verlag
Springer US
Erschienen in
Software Quality Journal / Ausgabe 2/2020
Print ISSN: 0963-9314
Elektronische ISSN: 1573-1367
DOI
https://doi.org/10.1007/s11219-019-09466-1

Weitere Artikel der Ausgabe 2/2020

Software Quality Journal 2/2020 Zur Ausgabe

EditorialNotes

In this issue

Premium Partner