@article{NaujokatNeubauerLamprechtetal.2014, author = {Naujokat, Stefan and Neubauer, Johannes and Lamprecht, Anna-Lena and Steffen, Bernhard and Joerges, Sven and Margaria, Tiziana}, title = {Simplicity-first model-based plug-in development}, series = {Software : practice \& experience}, volume = {44}, journal = {Software : practice \& experience}, number = {3}, publisher = {Wiley-Blackwell}, address = {Hoboken}, issn = {0038-0644}, doi = {10.1002/spe.2243}, pages = {277 -- 297}, year = {2014}, 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.}, language = {en} }