System configuration through drag-and-drop

Model-driven development using domain specific languages

Ambiguous communication, interpretation problems, lack of information – it all happens in today’s product innovation. They can be caused by using different descriptive languages. For example, the jargon used in developing logistic applications is quite different from that of a software development team.

One technique developed to alleviate these problems is based on the ‘separation-of-concerns’ principle. Right from the start, system specification is simplified and made accessible to the whole project team by using a specific, common descriptive language. Ideally, this is based on reusable, configurable library components.

system configuration through drag-and-drop

Such a Domain Specific Language (DSL) is formal. It supports the construction of graphical tools that facilitate user-friendly system configuration and automatic code generation, based largely on the developed library components. This approach greatly reduces communication ambiguity and engineering mistakes.

Our DSL approach is particularly suited to environments where reference architectures are in place, or where product families drive development. Besides system configuration, implementation, simulation and emulation are very useful applications of our DSL approach.

Method details


Method description

  1. Preparation
    a.  Create a meta-model aligned with the
         system’s (reference) architecture
    b.  Create code generation templates
         from the meta-model
    c.  Generate graphical configuration
         editors from the meta-model
  2. System configuration
    a.  Specify a system using the generated
         configuration editors
    b.  Generate system code and manually
         extend the generated code to
         complete the system

Research projects

Partners

Industrial partners:

  • ASML
  • Océ
  • Philips Healthcare
  • Vanderlande Industries

Contact

Business manager:

Frans Beenker

Telephone:

+31 (0)88-866 5420

Email:

frans.beenker@tno.nl