Mini Programming Worlds: Teaching MDSD via the Hamster Simulator
Mario Fuksa, Steffen Becker · 2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C) · 2021
Model-driven software development (MDSD) aims at the total or partial generation of software systems from instances of Domain-specific Languages (DSLs). However, teaching MDSD often suffers from small, comprehensible systems which can be understood easily but are not entirely artificial. In teaching programming, so-called mini programming worlds (MPWs) play the role of small, easy-to-comprehend but still realistic systems. In teaching MDSD, on the contrary, toy examples are often used based on well-known examples like UML2RDBMS. In this paper, we present our approach to transferring the idea of using MPWs to teach MDSD. We have developed a full-fledged MDSD project to model new MPWs and generate code for them in the two supported programming languages C++ and Java. We will use both simulators in our introductory programming courses.