An Eclipse Framework for Rapid Development of Rich-featured GEF Editors based on EMF Models.
Tony Modica, Enrico Biermann, Claudia Ermel · GI-Jahrestagung · 2009
Model-based development has an increasing importance in modern software engineering and other domains. Visual models such as Petri nets and UML diagrams proved to be an adequate way to illustrate many structural and behavioral system properties. However, while tooling for textual modeling is pretty mature now, visual tool builders are faced with a much higher complexity regarding the representation of model properties, and the interplay of the concrete syntax (the views) with the underlying abstract model representation, e.g. based on Java, XML or the Eclipse Modeling Framework (EMF). In order to ease the development of visual editors, the Graphical Editing Framework (GEF) offers layout and rendering possibilities, as well as an architecture that allows to integrate models based on EMF, Java or XMI with their visual views and editors. Unfortunately, the structure of GEF is quite complex to use if editors are not simply one-to-one representations of model elements, or if more than one view is needed at a time for more complex models. Based on several years of experience in teaching the development of GEF-based visual editors for complex visual models to students, we developed MUVITORKIT (Multi-View Editor Kit), a framework for rich-featured visual editors, which is presented in this paper. MUVITORKIT is based on EMF and GEF, and supports nested models, models needing multiple graphical viewers, and animated simulation of model behavior. The architecture of MUVITORKIT is designed in a way that encapsulates the complex underlying mechanisms in GEF and simplifies the integration in the ECLIPSE workbench.