Authors:
Shows methods, design patterns, guidelines, and QA practices for defining high-level languages to build better software
Gives a unified language-independent account, covering object-oriented, functional, model-, and grammar-based paradigms
Includes many examples from industry and from open-source projects along with 277 programming and modeling exercises
Buying options
This is a preview of subscription content, access via your institution.
Table of contents (13 chapters)
-
Front Matter
About this book
The book has been developed based on courses on model-driven software engineering (MDSE) and DSLs held by the authors. It aims at senior undergraduate and junior graduate students in computer science or software engineering. Since it includes examples and lessons from industrial and open-source projects, as well as from industrial research, practitioners will also find it a useful reference. The numerous examples include code in Scala 3, ATL, Alloy, C#, F#, Groovy, Java, JavaScript, Kotlin, OCL, Python, QVT, Ruby, and Xtend. The book contains as many as 277 exercises. The associated code repository facilitates learning and using the examples in a course.
Keywords
- Model-Driven Software Engineering
- Software Language Design
- Domain Analysis
- Conceptual Modeling
- Design Patterns
- Domain Specific Languages
- Software Development Methods
Authors and Affiliations
-
Department of Computer Science, IT University of Copenhagen, Copenhagen, Denmark
Andrzej Wąsowski
-
Faculty of Computer Science, Ruhr University Bochum, Bochum, Germany
Thorsten Berger
About the authors
Andrzej Wąsowski is a Professor of Software Engineering at the IT University of Copenhagen in Denmark. He has previously held visiting positions at Aalborg University (Denmark), INRIA Rennes (France), and University of Waterloo (Canada). His research and teaching concerns building better software in concrete software domains, where raising the level of abstraction is often necessary. He used, designed, and evolved domain specific languages for embedded systems, operating systems, robotics, data analytics, variability management, and safety engineering. He is an editorial board member of the International Journal on Software and Systems Modeling (SoSyM), has been General Chair of the ACM/IEEE International Conference on Model Driven Engineering Languages and System, is a Steering Committee Chair of International Conference on Fundamental Approaches to Software Engineering (FASE), and member of the steering committee of European joint Conferences on Theory and Practice of Software.
Thorsten Berger is a Professor in Computer Science at Ruhr University Bochum in Germany, with previous positions at Chalmers | University of Gothenburg (Sweden), University of Waterloo (Canada), IT University of Copenhagen (Denmark), and Leipzig University (Germany). His research focuses on automating software engineering for the next generation of intelligent, autonomous, and variant-rich software systems. Since automation requires abstraction, and abstraction requires language, he has built many DSLs, as well has he taught building DSLs for model-driven software engineering in graduate courses. His research was supported by highly ranked grants, such as a Starting Grant from the Swedish Research Council and a fellowship from the Royal Swedish Academy of Sciences and the Wallenberg Foundation, one of the highest recognitions for researchers in Sweden. He received two best-paper awards, three distinguished reviewer awards, and two most-influential paper awards, the latter for studies of DSLs.
Bibliographic Information
Book Title: Domain-Specific Languages
Book Subtitle: Effective Modeling, Automation, and Reuse
Authors: Andrzej Wąsowski, Thorsten Berger
DOI: https://doi.org/10.1007/978-3-031-23669-3
Publisher: Springer Cham
eBook Packages: Computer Science, Computer Science (R0)
Copyright Information: Springer Nature Switzerland AG 2023
Softcover ISBN: 978-3-031-23668-6Published: 02 February 2023
eBook ISBN: 978-3-031-23669-3Published: 01 February 2023
Edition Number: 1
Number of Pages: XIX, 485
Number of Illustrations: 1 b/w illustrations
Topics: Software Engineering, IT in Business