Domain-Specific Modeling (DSM) is the latest approach to software development, promising to greatly increase the speed and ease of software creation. Early adopters of DSM have been enjoying productivity increases of 500–1000% in production for over a decade. This book introduces DSM and offers examples from various fields to illustrate to experienced developers how DSM can improve software development in their teams.
Two authorities in the field explain what DSM is, why it works, and how to successfully create and use a DSM solution to improve productivity and quality. Divided into four parts, the book covers: background and motivation; fundamentals; in-depth examples; and creating DSM solutions. There is an emphasis throughout the book on practical guidelines for implementing DSM, including how to identify the necessary language constructs, how to generate full code from models, and how to provide tool support for a new DSM language. The example DSM solutions described in the book are available together with an evaluation copy of the MetaEdit+ tool (for Windows, Mac OS X, and Linux), allowing readers to examine and try out the modeling languages and code generators.
Domain-Specific Modeling is an essential reference for lead developers, software engineers, architects, methodologists, and technical managers who want to learn how to create a DSM solution and successfully put it into practice.
From the Foreword by Dave Thomas, Bedarra Labs:
"Domain Specific Language engineering is increasingly recognized as an important productivity technique, narrowing the communication gap between users and developers"
"Juha-Pekka Tolvanen and Steven Kelly are pioneers in the world of DSLs. Few in our industry have their breadth of knowledge and experience"
[The authors] "developed the process, practices, tooling and most importantly pragmatics for the industrial use of DSLs"
Steven Kelly, Juha-Pekka Tolvanen
March 2008, Wiley-IEEE Computer Society Press