Language-driven system design
Studies have shown significant benefits of the use of Domain-Specific Languages (DSL) in software engineering. We discuss a software engineering methodology that fully exploits these benefits. The methodology, called the Language-Driven Approach (LDA), is centred around the design of a DSL. It prescribes a staged development of a DSL, which is tailored to the system-under-construction. On the basis of a domain analysis, a formal definition of the problem is obtained. This formal problem definition contains all the relevant ingredients for designing the syntax, the semantics and the pragmatics, which together comprise the DSL. The methodology is illustrated by an elaborate example dealing with the problem of regulating traffic lights at a traffic junction.
domain-specific languages software engineering language-driven approach operational semantics traffic light control