Abstract
UML profiles offer an intuitive way for developers to build domain-specific modelling languages by reusing and extending UML concepts. Eclipse Papyrus is a powerful open-source UML modelling tool which supports UML profiling. However, with power comes complexity, implementing non-trivial UML profiles and their supporting editors in Papyrus typically requires the developers to handcraft and maintain a number of interconnected models through a loosely guided, labour-intensive and error-prone process. We demonstrate how metamodel annotations and model transformation techniques can help manage the complexity of Papyrus in the creation of UML profiles and their supporting editors. We present Jorvik, an open-source tool that implements the proposed approach. We illustrate its functionality with examples, and we evaluate our approach by comparing it against manual UML profile specification and editor implementation using a non-trivial enterprise modelling language (Archimate) as a case study. We also perform a user study in which developers are asked to produce identical editors using both Papyrus and Jorvik demonstrating the substantial productivity and maintainability benefits that Jorvik delivers.
Highlights
We evaluate the efficiency of Jorvik for the automatic generation of Archimate, a non-trivial enterprise modelling language, and its corresponding Papyrus editor against an equivalent manually created unified modelling language (UML) profile and its Papyrus editor
We motivate the need of automatic generation of these artefacts by highlighting the labour-intensive and error-prone activities involved in creating a UML profile and its supporting Papyrus editor
Both of the participants have no experience in creating distributable editors for UML profiles using Papyrus
Summary
Papyrus supports the creation of profile-specific graphical editors which enables the users to define their own creation palettes, custom styles and related artefacts based on their own UML profiles. We present Jorvik, an approach supported by an Eclipse plug-in, which enables the use of annotated Ecore metamodels to capture the abstract and graphical syntax of UML profiles at a high level of abstraction. These metamodels are automatically transformed to UML profiles and artefacts that contribute to distributable Papyrus graphical editors based on the UML profiles.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have