TY - GEN
T1 - Simplicity principles for plug-in development
T2 - 2012 2nd International Workshop on Developing Tools as Plug-Ins, TOPI 2012
AU - Naujokat, Stefan
AU - Lamprecht, Anna Lena
AU - Steffen, Bernhard
AU - Jörges, Sven
AU - Margaria, Tiziana
PY - 2012
Y1 - 2012
N2 - In this paper we present our experiences from a decade of plug-in development in the jABC framework, that is characterized by rigorous application of simplicity principles in two dimensions. First, the scope of the plug-in development is clearly defined: The jABC readily provides a sophisticated graphical user interface, which has been tailored to working with all kinds of directed graphs. Within this scope, plug-in development can deliberately focus on the actual functionality, like providing semantics to graphs, without having to deal with tedious but semantically irrelevant issues like user interfaces. Second, plug-in functionality can be itself conveniently modeled as a workflow within the jABC. We illustrate our approach by means of two mature plug-ins: Genesys, a plug-in that adds arbitrary code generator functionality to the jABC, and PROPHETS, a plug-in that eases user-level definition of workflows by completing model sketches by means of synthesis capabilities, so that they become complete and executable. We summarize our experience so far and derive general design principles for "lightweight plug-in development", that we are going to realize in the next generation of the jABC, which will be implemented itself as a collection of Eclipse plug-ins.
AB - In this paper we present our experiences from a decade of plug-in development in the jABC framework, that is characterized by rigorous application of simplicity principles in two dimensions. First, the scope of the plug-in development is clearly defined: The jABC readily provides a sophisticated graphical user interface, which has been tailored to working with all kinds of directed graphs. Within this scope, plug-in development can deliberately focus on the actual functionality, like providing semantics to graphs, without having to deal with tedious but semantically irrelevant issues like user interfaces. Second, plug-in functionality can be itself conveniently modeled as a workflow within the jABC. We illustrate our approach by means of two mature plug-ins: Genesys, a plug-in that adds arbitrary code generator functionality to the jABC, and PROPHETS, a plug-in that eases user-level definition of workflows by completing model sketches by means of synthesis capabilities, so that they become complete and executable. We summarize our experience so far and derive general design principles for "lightweight plug-in development", that we are going to realize in the next generation of the jABC, which will be implemented itself as a collection of Eclipse plug-ins.
UR - http://www.scopus.com/inward/record.url?scp=84864218724&partnerID=8YFLogxK
U2 - 10.1109/TOPI.2012.6229816
DO - 10.1109/TOPI.2012.6229816
M3 - Conference contribution
AN - SCOPUS:84864218724
SN - 9781467318204
T3 - 2012 2nd International Workshop on Developing Tools as Plug-Ins, TOPI 2012 - Proceedings
SP - 7
EP - 12
BT - 2012 2nd International Workshop on Developing Tools as Plug-Ins, TOPI 2012 - Proceedings
Y2 - 3 June 2012 through 3 June 2012
ER -