Simplicity-first model-based plug-in development

Stefan Naujokat, Johannes Neubauer, Anna Lena Lamprecht, Bernhard Steffen, Sven Jörges, Tiziana Margaria

Research output: Contribution to journalArticlepeer-review

Abstract

In this article, we present our experience with over a decade of strict simplicity orientation in the development and evolution of plug-ins. The point of our approach is to enable our graphical modeling framework jABC to capture plug-in development in a domain-specific setting. The typically quite tedious and technical plug-in development is shifted this way from a programming task to the modeling level, where it can be mastered also by application experts without programming expertise. We show how the classical plug-in development profits from a systematic domain-specific API design and how the level of abstraction achieved this way can be further enhanced by defining adequate building blocks for high-level plug-in modeling. As the resulting plug-in models can be compiled and deployed automatically, our approach decomposes plug-in development into three phases where only the realization phase requires plug-in-specific effort. By using our modeling framework jABC, this effort boils down to graphical, tool-supported process modeling. Furthermore, we support the automatic completion of process sketches for executability. All this will be illustrated along the most recent plug-in-based evolution of the jABC framework, which witnessed quite some bootstrapping effects.

Original languageEnglish
Pages (from-to)277-297
Number of pages21
JournalSoftware - Practice and Experience
Volume44
Issue number3
DOIs
Publication statusPublished - Mar 2014
Externally publishedYes

Keywords

  • bootstrapping
  • code generation
  • domain-specific APIs
  • dynamic service binding
  • evolution
  • loose programming
  • plug-ins
  • process modeling
  • simplicity

Fingerprint

Dive into the research topics of 'Simplicity-first model-based plug-in development'. Together they form a unique fingerprint.

Cite this