Abstract
Domain-specific languages (DSLs) capture the domain knowledge through the constructs of the language, but making a good language takes more than combining a set of domain concepts in some random fashion. Creating a good language requires knowledge not only from the domain but also from the domain of language design. Generic abstraction concepts turn out to be useful for many different domains and thus for DSLs. In this chapter we discuss how DSLs can benefit from standardized generic languages to cope with abstraction needs. A successful combination will keep the DSL simple and its implementation maintainable while the generic language will add expressiveness and structuring means. We give examples of DSLs as well as general ones and use the examples to illustrate our advice on how to make a good language. We share experiences of language evolution and finally show an example of combining a generic language for variability with a DSL for train signaling.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
MSC Instance corresponds to UML Lifeline
- 6.
References
Hutchinson, J., Whittle, J., Rouncefield, M., Kristoffersen, S.: Empirical assessment of MDE in industry. In: Proceedings of the 33rd International Conference on Software Engineering, pp. 471–480. ACM, Waikiki, Honolulu (2011)
Conference on Data Systems, L. COBOL – 61: report to Conference on Data Systems Languages, including extended specifications for a common business oriented language (COBOL) for programming electronic digital computers. In: Conference on Data Systems Languages Maintenance Committee. Department of Defense, Washington (1962)
ANSI: USA Standard FORTRAN: Approved March 7, 1966, p. 36. American Standards Association, New York (1966)
Weissman, C.: LISP 1.5 Primer. Dickenson Publishing Company, Inc., Belmont (1967)
Birtwistle, G.M., Dahl, O.-J., Myhrhaug, B., Nygaard, K.: SIMULA BEGIN. Petrocelli/Charter, New York (1975)
Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual, pp. XVII, 550s. Addison-Wesley, Reading (1998)
Kelly, S., Tolvanen, J.-P.: Domain-Specific Modeling: Enabling Full Code Generation, pp. XVI, 427. Wiley, Hoboken (2008)
ITU: Z.100. In: Faergemand, O. (ed.) ITU Specification and Description Language (SDL), p. 237. ITU-T, Geneva (1993)
OMG: Unified Modeling Language 2.0. OMG, Needham (2004)
Greenfield, J., Short, K.: Software Factories, p. 666. Wiley, Indianapolis (2004)
Haugen, Ø., Bræk, R., Melby, G.: The SISU project. In: Proceedings of the Sixth SDL Forum, SDL ‘93 Using Objects. North Holland, Darmstadt (1993)
ITU: Z.120. In: Rudolph, E. (ed.) Message Sequence Charts (MSC), p. 78. ITU-T, Geneva (1996)
Bræk, R., Haugen, Ø.: Engineering Real Time Systems. In: Welland, R. (ed.) BCS Practitioner Series, p. 398. Prentice Hall International, Hemel Hempstead (1993)
Hauge, T., Haugen, Ø.: OST—an object-oriented SDL Tool. In: Forth SDL Forum. Lisbon, Portugal (1989)
Fowler, M.: UML Distilled: A Brief Guide to the Standard Object Modeling Language, pp. XXX, 175. Addison-Wesley, Boston (2004)
Broy, M., Cengarle, M.: UML formal semantics: lessons learned. Softw. Syst. Model. 10(4), 441–446 (2011)
ITU: Z.100 Annex F. In: Olsen, A. (ed.) Specification and Description Language (SDL) Annex F. SDL Formal Definition, pp. (33+437+183). ITU, Geneva (1993)
Gosling, J., Joy, B., Steele, G.: The Java Language Specification. Addison-Wesley, Reading (1996)
Mohagheghi, P., Haugen, Ø.: Evaluating domain-specific modelling solutions. In: Trujillo, J., et al. (eds.) Advances in Conceptual Modeling—Applications and Challenges, pp. 212–221. Springer, Berlin/Heidelberg (2010)
Endresen, J., Carlson, E., Moen, T., Alme, K-J., Haugen, Ø., Olsen, G.K., Svendsen, A.: Train control language—teaching computers interlocking. In: Allan, J., Arias, E., Brebbia, C.A., Goodman, C., Rumsey, A.F., Sciutto, G., Tomii, N. (eds.) Computers in Railways XI (COMPRAIL). WIT, Toledo (2008)
Svendsen, A., Møller-Pedersen, B., Haugen, Ø., Endresen, J., Carlson, E.: Formalizing train control language: automating analysis of train stations. In: Ning, B., Brebbia, C.A., Tomii, N. (eds.) Comprail 2010. WIT, Beijing (2010)
Svendsen, A., Olsen, GK., Endresen, J., Moen, T., Carlson, E., Alme, K-J., Haugen, Ø.: The future of train signaling. In: MODELS2008. Springer, Toulouse (2008)
Eclipse Modeling Framework Project (EMF). http://www.eclipse.org/modeling/emf/. Accessed 25 Apr 2012
Eclipse Graphical Modeling Framework (GMF). http://wiki.eclipse.org/GMF_Documentation (2009). Accessed 25 Apr 2013
Oldevik, J.: MOFScript eclipse plug-in: metamodel-based code generation. In: Eclipse Technology Workshop (EtX) at ECOOP. Nantes (2006)
ITU: Z.120. In: Rudolph, E. (ed.) Message Sequence Charts (MSC), p. 36. ITU-T, Geneva (1993)
ITU: Z.120. In: Haugen, O. (ed.) Message Sequence Charts (MSC), p. 126. ITU-T, Geneva (1999)
Grabowski, J., Rudolph, E.: Putting extended sequence charts to practice. In: SDL ‘89—The Language at Work. SDL Forum 1989. North-Holland, Lisbon (1989)
Haugen, Ø.: MSC-2000 interaction diagrams for the new millennium. Comput. Netw. 35, 721–732 (2001)
Haugen, O.: Comparing UML 2.0 Interactions and MSC-2000. In: SAM 2004: SDL and MSC Fourth International Workshop. Springer, Ottawa (2004)
Zamenhof, L.L.: Tipo-Litographiya H. Keltera. Unua Libro, Warsaw (1887)
Perrouin, G., Vanwormhoudt, G., Morin, B., Lahire, P., Barais, O., Jézéquel, J.-M.: Weaving variability into domain metamodels. Softw. Syst. Model. 11(3), 361–383 (2012)
Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications, p. 864. Addison-Wesley Professional, Reading (2000)
Fleurey, F., Haugen, Ø., Møller-Pedersen, B., Svendsen, A., Zhang, X.: Standardizing variability—challenges and solutions. In: Ober, I., Ober, I. (eds.) SDL 2011: Integrating System and Software Modeling, pp. 233–246. Springer, Berlin/Heidelberg (2012)
OMG: Request for Proposal. Common Variability Language. Object Management Group, Needham (2009)
Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, A.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Software Engineering Institute, Carnegie Mellon University, Pittsburgh (1990)
OMG: SysML-OMG Systems Modeling Language. OMG, Needham (2010)
OMG: Query/View/Transformation, v1.1. OMG, Needham (2011)
Zhang, X., Haugen, O., Moller-Pedersen, B.: Model Comparison to Synthesize a Model-Driven Software Product Line. In: 15th International Conference on Software Product Line Conference (SPLC), Munich, 2011
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Haugen, Ø. (2013). Domain-Specific Languages and Standardization: Friends or Foes?. In: Reinhartz-Berger, I., Sturm, A., Clark, T., Cohen, S., Bettin, J. (eds) Domain Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36654-3_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-36654-3_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-36653-6
Online ISBN: 978-3-642-36654-3
eBook Packages: Computer ScienceComputer Science (R0)