Language-driven engineering: From general-purpose to purpose-specific languages

Bernhard Steffen, Frederik Gossen, Stefan Naujokat, Tiziana Margaria

Research output: Chapter in Book/Report/Conference proceedingChapterpeer-review

Abstract

In this paper, we present the paradigm of Language-Driven Engineering (LDE), which is characterized 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 realized 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). The impact of this approach is illustrated along the development and evolution of a profile-based email distribution system. Here we do not want to emphasize the precise choice of DSLs, but rather the flexible DSL-based modulariza-tion of the development process, which allows one to freely introduce and exchange DSLs as needed to optimally capture the mindsets of the involved stakeholders.

Original languageEnglish
Title of host publicationLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
PublisherSpringer
Pages311-344
Number of pages34
DOIs
Publication statusPublished - 2019

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10000
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Keywords

  • Code generation Decision diagrams
  • Domain-specific languages Mindset
  • DSLs as a service
  • Product lines
  • Service orientation
  • Software development environments Software evolution

Fingerprint

Dive into the research topics of 'Language-driven engineering: From general-purpose to purpose-specific languages'. Together they form a unique fingerprint.

Cite this