Domain-specific language design requires feature descriptions

By Arie van Deursen, Paul Klint. 2002

356 citations recorded by the source corpus.

A domain-specific language (DSL) provides a notation tailored towards an application domain and is based on the relevant concepts and features of that domain. As such, a DSL is a means to describe and generate members of a family of programs in the domain. A prerequisite for the design of a DSL is a detailed analysis and structuring of the application domain. Graphical feature diagrams have been proposed to organize the dependencies between such features, and to indicate which ones are common to all family members and which ones vary. In this paper, we study feature diagrams in more details, as well as their relationship to domain-specific languages. We propose the Feature Description Language (FDL), a textual language to describe features. We explore automated manipulation of feature descriptions such as normalization, expansion to disjunctive normal form, variability computation and constraint satisfaction. Feature descriptions can be directly mapped to UML diagrams which in their turn can be used for Java code generation. The value of FDL is assessed via a case study in the use and expressiveness of feature descriptions for the area of documentation generators.

Subfields: Artificial Intelligence, Information Systems, Software

View Paper: https://www.semanticscholar.org/paper/75150eef8adbc1ed0bb94b206ba353345a5efcaf

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Artificial Intelligence

  1. Krzysztof Czarnecki
  2. Simon Helsen
  3. Ulrich W. Eisenecker
  4. Patrick Heymans
  5. Pierre-Yves Schobbens
  6. Jean-Christophe Trigaux
  7. Yves Bontemps
  8. Pablo Trinidad Martín-Arroyo

In Information Systems

  1. Krzysztof Czarnecki
  2. Simon Helsen
  3. Ulrich W. Eisenecker
  4. Patrick Heymans
  5. Pierre-Yves Schobbens
  6. Jean-Christophe Trigaux
  7. Yves Bontemps
  8. Pablo Trinidad Martín-Arroyo

In Software

  1. Krzysztof Czarnecki
  2. Simon Helsen
  3. Ulrich W. Eisenecker
  4. Patrick Heymans
  5. Pierre-Yves Schobbens
  6. Jean-Christophe Trigaux
  7. David Benavides
  8. Sergio Segura

Citations in the corpus