Part III of the book describes five DSM examples, each targeting different problem domains and generating different kind of code (Assembler, C, C++, Java, Python and XML). While reading the case chapters you can download and try out these examples to experience Domain-Specific Modeling in practice: generating full code from the modeler's perspective. The code produced is fully working and also covers the application logic and behavior, not just the static structures.
The example DSM solutions are available with an evaluation copy of the MetaEdit+ tool for Windows and Linux. (MetaEdit+ is available from www.metacase.com/download)
These examples not only allow you to create models and generate code, but also provide full access to the underlying metamodels for the languages and generator definitions for producing the code, documentation, checking, metrics and autobuild scripts. The example cases are available in the following projects of the evaluation version's demo repository:
Project name | Generates | Chapter |
Call processing | XML | 5 |
Insurance | Java | 6 |
Home automation | Assembler | 7 |
S60 phone [C++] | Python, C++ | 8 |
Digital Watch | Java, C | 9 |