preloader

Teaching Model-Driven Engineering (MDE)

Teaching Model-Driven Engineering (MDE) in an academic setting is a powerful way to introduce students to the principles of abstraction, automation, and model-based design. However, a significant challenge in MDE education lies in the complexity and limitations of the available tools, which can hinder both instructors and students from fully experiencing the benefits of MDE.

The Burden of Accidental Complexity
Many MDE tools, particularly those based on legacy technology stacks, expose users to a high level of accidental complexity—complexity that isn’t inherent to the concepts of MDE but arises from the tools themselves. Students encounter intricate user interfaces, outdated workflows, and cumbersome setup requirements that distract from the core principles of modeling and transformation. This overload of incidental complexity can:
 
  • – Obscure Core Concepts: Instead of focusing on essential MDE skills like metamodeling, model transformation, and validation, students are forced to learn and navigate complex tool mechanics.
  • – Impair Learning Experience: Tool-centric difficulties create steep learning curves that can overwhelm students, dampening enthusiasm and reducing comprehension.
  • – Slow Down Learning Progress: In courses with limited time, navigating complex tools means less time for critical thinking, experimentation, and mastery of key MDE principles.
Legacy Technology and Usability Issues
Many MDE tools available in academia today are based on legacy technology stacks, designed with architectures that may be powerful but are often difficult to adapt for modern learning environments. Especially, in most of the academic courses, the EMF framework is adopted. While EMF is an industrial grade environment that provides the modeler with numerous possibilities, the platform is component-based and as such has limited built-governance capabilities.
Instructors and students face usability challenges such as:
 
  • – Outdated Interfaces: Legacy tools tend to have complex, cluttered user interfaces that make even simple tasks cumbersome.
  • – Incompatibility with Modern Workflows: Legacy systems often struggle to integrate smoothly with modern IDEs, version control systems, and collaborative platforms, making them less conducive to contemporary development practices.
  • – Heavy Setup and Configuration Requirements: Setting up these tools can require specific software environments and configurations, leading to delays, troubleshooting, and potential compatibility issues across different systems.
Eclipse Modeling Framework (EMF)

he Eclipse Modeling Framework (EMF) was first released as part of the Eclipse 2.1 release in March 2003

Meta Programming System (MPS)

The JetBrains Meta Programming System (MPS) was first released in 2009 by JetBrains

MetaEdit+
 

MetaEdit+ was first released by MetaCase in 1995

 
Challenges for Instructors
Instructors also face unique hurdles when trying to teach MDE effectively:
  •  
  • – Steep Learning Curves: Many MDE tools require instructors to invest significant time learning intricate tool-specific details, detracting from time spent on pedagogical content.
  • – Lack of Flexibility: Legacy tools often lack the adaptability needed for varied instructional approaches, making it hard for instructors to customize exercises, assignments, or experiments for different learning levels.
  • – Minimal Support for Collaboration: As collaboration becomes more integral to learning, especially in remote or hybrid classrooms, the lack of real-time collaboration features in many MDE tools limits students’ ability to work together seamlessly.
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

 
The Need for Modern, Streamlined MDE Tools
To make MDE accessible and engaging for students, instructors need tools that minimize accidental complexity and are designed with modern educational needs in mind. A tool that offers a simplified, intuitive interface, easy setup, and support for real-time collaboration would transform MDE education by:
 
  • – Reducing Cognitive Load: By stripping away unnecessary complexity, students can focus on learning core MDE concepts without being distracted by convoluted tool workflows.
  • – Aligning with Current Development Practices: A tool built on a modern stack, with cloud-based access and integration with contemporary development workflows, would allow students to use MDE principles in real-world scenarios.
  • – Supporting Instructors’ Flexibility: Tools designed with educators in mind would allow instructors to tailor content, and introduce concepts at an accessible pace. 
 
Tool transparency goes beyond usability

Tools can seamlessly facilitate our activities and become extensions of ourselves or become objects of focus, disrupting our engagement and highlighting their material properties.

Heidegger, M. (1927). Sein und
Zeit. Max Niemeyer Verlag

 
How jjodel Addresses These Challenges
At jjodel, we are dedicated to developing an MDE platform that meets these educational needs. With a cloud-based infrastructure, intuitive user interface, and real-time collaborative capabilities, jjodel removes unnecessary complexity and focuses on what matters: delivering a clear, streamlined, and adaptable MDE experience. Our mission is to empower instructors and students to explore the depth and potential of Model-Driven Engineering without being constrained by the limitations of legacy tools.