END-USER DEVELOPMENT IN A GRAPHICAL USER INTERFACE SETTING
Martin Auer, Johannes Pölz, Stefan Biffl · 2009
In many areas, software applications must be highly configurable—using a pre-defined set of options or preferences is not flexible enough. One way to improve an application’s flexibility is to allow users to change parts of the source code—and thus the application’s behavior—on-the-fly; modern languages like Java greatly facilitate this by providing reflection features. Such an approach, however, is often limited to user-defined mathematical formulas, e.g., in software like cash flow engines, reporting tools etc. This paper applies the concept to a more generic area: the graphical representation of diagrams in a UML tool. Users can create new types of graphical elements by directly programming how the elements are drawn, all within the UML tool, and at run time. The approach is flexible, and the user-defined extensions are consistent with the tool’s core source code. 1