Abstract
In this paper we present an empirical study on the use of a domain-specific language(DSL) in industry. This DSL encapsulates the details of services that communicate using Windows Communication Foundation (WCF). From definitions of the data contracts between clients and servers, WCF/C# code for service plumbing is generated. We conducted a survey amongst developers that use this DSL while developing applications for customers. The DSL has been used in about 30 projects all around the world.
We describe the known success factors of the use of DSLs, such as improved maintainability and ease of re-use, and assert how well this DSL scores on all of them. The analysis of the results of this case study also shows which conditions should be fulfilled in order to increase the chances of success in using a DSL in a real life case.
Empirical results category paper.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Mernik, M., Heering, J., Sloane, A.: When and how to develop domain-specific languages. ACM Computing Surveys 37(4), 316–344 (2005)
Wexelblat, R.L. (ed.): History of programming languages I. ACM, New York (1981)
Sammet, J.E.: Programming languages: history and future. Communications of the ACM 15(7), 601–610 (1972)
Bergin Jr., T.J., Gibson Jr., R.G. (eds.): History of programming languages—II. ACM, New York (1996)
Nardi, B.A.: A small matter of programming: perspectives on end user computing. MIT Press, Cambridge (1993)
Herndon, R., Berzins, V.: The realizable benefits of a language prototyping language. IEEE Transactions on Software Engineering 14, 803–809 (1988)
Batory, D., Johnson, C., MacDonald, B., von Heede, D.: Achieving extensibility through product-lines and domain-specific languages: A case study. In: Frakes, W.B. (ed.) ICSR 2000. LNCS, vol. 1844, pp. 117–136. Springer, Heidelberg (2000)
van Deursen, A., Klint, P.: Little languages: little maintenance. Journal of Software Maintenance 10(2), 75–92 (1998)
Kieburtz, R., McKinney, L., Bell, J., Hook, J., Kotov, A., Lewis, J., Oliva, D., Sheard, T., Smith, I., Walton, L.: A software engineering experiment in software component generation. In: International Conference on Software Engineering (ICSE 1996), pp. 542–552. IEEE Computer Society, Los Alamitos (1996)
Christopher, D.L., Ramming, J.: Two application languages in software production. In: USENIX Symposium on Very High Level Languages Proceedings, pp. 169–187. USENIX (1994)
Krueger, C.W.: Software reuse. ACM Computing Surveys 24(2), 131–183 (1992)
Bell, J., Bellegarde, F., Hook, J., Kieburts, R.: Software design for reliability and reuse: a proof-of-concept demonstration. In: Proceedings Conference on TRI-Ada, pp. 396–404. ACM Press, New York (1994)
Spinellis, D., Guruprasad, V.: Lightweight languages as software engineering tools. In: Proceedings of the Conference on Domain-Specific Languages (DSL 1997), pp. 67–76. USENIX (1997)
Spinellis, D.: Notable design patterns for domain-specific languages. Journal of Systems and Software 56, 91–99 (2001)
Weiss, D.: Creating domain-specific languages: the fast process. In: First ACM-SIGPLAN Workshop on Domain-specific Languages: DSL 1997, University of Illinois, Technical Reports (1997)
Bhanot, V., Paniscotti, D., Roman, A., Trask, B.: Using domain-specific modeling to develop software defined radio components and applications. In: Proceedings of the 5th OOPSLA Workshop on Domain-Specific Modeling (DSM 2005), Computer Science and Information System Reports, Technical Reports (2005)
Baker, P., Loh, S., Weil, F.: Model-driven engineering in a large industrial context – motorola case study. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 476–491. Springer, Heidelberg (2005)
White, J., Schmidt, D.C., Gokhale, A.: Simplifying autonomic enterprise java bean applications via model-driven development: A case study. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 601–615. Springer, Heidelberg (2005)
Staron, M.: Adopting model driven software development in industry: A case study at two companies. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 57–72. Springer, Heidelberg (2006)
Cook, S., Jones, G., Kent, S., Wills, A.C.: Domain-Specific Development with Visual Studio DSL Tools. Microsoft.NET Development Series. Addison-Wesley, Reading (2007)
Pfleeger, S., Kitchenham, B.: Principles of survey research. ACM SIGSOFT Software Engineering Notes 26, 16–18 (2001)
Likert, R.: A technique for the measurement of attitudes. Archives of Psychology 22(140) (1932)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
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. https://doi.org/10.1007/978-3-642-04425-0_33
Download citation
DOI: https://doi.org/10.1007/978-3-642-04425-0_33
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-04424-3
Online ISBN: 978-3-642-04425-0
eBook Packages: Computer ScienceComputer Science (R0)