Search papers, labs, and topics across Lattice.
This paper presents EMFular, a web-based framework designed for managing EMF models without requiring a backend, shifting graphical model editing from traditional desktop applications to the web. The authors derive design principles that emphasize low-effort generation, extensive customization, and straightforward deployment, leading to editors that maintain EMF consistency and interoperability with existing EMF tools. Evaluation of EMFular demonstrates its effectiveness in terms of editing capabilities, customization mechanisms, and the robustness of the generated editors.
EMFular revolutionizes EMF model editing by enabling fully customizable, backend-free graphical editors that seamlessly integrate with existing tools.
Graphical model editing is shifting from desktop applications to web-based tools. We analyze the characteristics of existing frameworks and, based on this analysis, we derive a set of design principles that imply low-effort generation, extensive customization possibilities, and straightforward deployment of the resulting editors. On these grounds, we introduce EMFular, a purely web-based framework for managing EMF models without any backend. The accompanying EMFular generator maps a given Ecore model (an EMF metamodel) to a ready-to-use and ready-to-customize graphical editor. EMFular editors provide 'EMF consistency', that is, they not only support standard modeling operations such as creation, inspection, navigation, editing, and undo/redo, but they also handle containment and inverse references in close alignment with EMF; they also provide interoperability with existing EMF tooling through compatible de-/serialization. A generated editor is an Angular project with designated extension points, which allows developers to customize and extend all aspects of the editor using the expressive power of Angular and its ecosystem, guided by the extension points of EMFular. We evaluate EMFular in terms of editor adequacy (available editing capabilities), adaptability (customization mechanisms and required effort), and robustness of the generation.