Language-Driven Engineering

The paradigm of Language-Driven Engineering (LDE) is characterised by its unique support for division of labour on the basis of Domain-Specific Languages (DSLs) targeting different stakeholders. LDE allows the involved stakeholders, including the application experts, to participate in the system development and evolution process using dedicated DSLs, while at the same time establishing new levels of reuse that are enabled by powerful model transformations and code generation. Technically, the interplay between the involved DSLs is realised in a service-oriented fashion. This eases a product line approach and system evolution by allowing to introduce and exchange entire DSLs within corresponding Mindset-Supporting Integrated Development Environments (mIDEs). In our paper, the impact of this approach is illustrated along the development and evolution of a profile-based email distribution system. We do not want to emphasise the precise choice of DSLs, but rather the flexible DSL-based modularisation of the development process, which allows one to freely introduce and exchange DSLs as needed to optimally capture the mindsets of the involved stakeholders. Work through our tangible Tutorial Introduction to Language-Driven Engineering to reproduce the case study of our papers.

Publication: B. Steffen, F. Gossen, S. Naujokat, T. Margaria, “Language-Driven Engineering: From General Purpose to Purpose-Specific Languages”, LNCS 10000, to appear.

Download Paper (PDF)