Co-Evolution Capabilities in Jjodel, EMF/Sirius, and MetaEdit+
Co-Evolution is one of the most important model management activities in model-driven platforms. Depending on the intrinsic characteristics, design choices, and much more, Jjodel, EMF/Sirius, and MetaEdit+ manage co-evolution in different manners.
Jjodel is a reflective, cloud-based modeling tool designed to reduce accidental complexity and improve usability. It stands out in co-evolution scenarios due to its ability to manage model and metamodel dependencies natively within an integrated environment. This approach ensures that changes to metamodels, concrete syntaxes, and other artifacts are automatically adapted within the system. EMF/Sirius is a component-based, open-source framework that enables graphical modeling based on the Eclipse Modeling Framework (EMF). While it offers extensive features for model-driven engineering, its component-based architecture introduces challenges in co-evolution scenarios since it cannot rely on an enhanced built-in governance. Finally, MetaEdit+ is a mature, commercial tool known for its strong support for co-evolution, including deprecation strategies.
Aspect | Jjodel | EMF/Sirius | MetaEdit+ |
---|---|---|---|
Automation | Reflective architecture ensures automatic updates, but limited for large-scale models. | Requires manual or semi-automated adaptation for co-evolution tasks. | Fully automated, including support for deprecation and seamless model updates. |
Ease of Use | User-friendly interface, modern, cloud-based; ideal for rapid prototyping. | Complex setup; XML-based configurations make adaptation tedious. | Intuitive and highly integrated interface with minimal learning curve. |
Performance | Slower with large models due to overhead from edit-script-based serialization. | Moderate performance; slower for complex models. | Superior performance, optimized for large-scale models and transformations. |
Scalability | Effective for small- to medium-scale models; struggles with large-scale scenarios. | Better scalability than Jjodel but slower than MetaEdit+. | Highly scalable, handles large models and industrial applications efficiently. |
Deprecation | Lacks robust support for managing deprecated elements. | Limited support; manual intervention often required. | Strong support for deprecation; obsolete elements coexist with updated versions seamlessly. |
Integration | Integrated dependency management for metamodels, syntax, and models. | Fragmented component-based architecture introduces challenges in co-evolution. | Highly integrated, ensuring seamless updates across metamodels, constraints, and notations. |
Best Use Case | Academic and small-scale projects; ideal for iterative language development. | Flexible graphical modeling; better suited for mid-size applications. | Industrial applications requiring large-scale modeling, efficient co-evolution, and deprecation. |
An extensive comparison between the three platforms can be found in
Tolvanen, J. P., Kelly, S., Di Rocco, J., Pierantonio, A., & Tinella, G. (2024). A framework for evaluating tool support for co-evolution of modeling languages, tools and models. Software and Systems Modeling, 1-28.

Create a Metamodel for a Simple UML Class Diagram
This video provides a step-by-step guide to creating a simple UML class diagram metamodel. Viewers will learn how to define core elements such as classes, attributes, and relationships, building a foundational structure for UML modeling. With clear explanations and hands-on examples, the tutorial simplifies metamodeling concepts, making it accessible for both beginners and those looking to reinforce their skills