A specification is a precise, formal description of domain knowledge, requirements, and behavior written as DSL content. Domain experts maintain it in the Domain IDE, while the build system derives working Runtime code from it. section 1.3.1 section 1.2
The specification becomes a shared language between domain experts and software developers. Because it is machine processable, it can be checked for completeness and ambiguity, extended with tests, and changed with rapid feedback. section 1.3.2 section 1.3.3
A DSL specification enables teams to:
- Let domain experts add or change Runtime features without manually translating every detail into code. section 1.3.1
- Reduce repetitive implementation work when a specification change affects forms, database structures, classes, and related handling. section 1.3.2
- Reuse precise business knowledge across Runtime architectures, technology stacks, or other purposes. section 1.3.3
Car-rental Runtime
A car-rental specification can drive a Runtime containing both the customer application for arranging rentals and the point-of-sale systems employees use to execute business processes. section 1.2
Figure 1.2 Using a DSL-based approach to develop a Runtime using a Domain IDE
Trace how domain experts write DSL content in the Domain IDE and how that content produces a working Runtime. section 1.2



