Wodel-EDU: a model-driven engineering solution for exercise generation and evaluation
Wodel-EDU extends Wodel by generating educational exercises automatically. It supports seven exercise types:
- Alternative response: students decide whether a diagram or its textual representation is correct.
- Multiple-diagram choice: students select the correct diagram from several alternatives.
- Multiple-text choice: students select the correct textual representation from several alternatives.
- Multiple emendation choice: students select the textual options that correct the displayed diagram.
- Matching pairs: students match each statement on the left with the correct option in a drop-down list.
- Missing words: students fill the gaps with options from drop-down lists so that the completed text matches the statement.
- Text drag and drop: students fill the gaps by dragging labelled text options from the available categories so that the completed text matches the statement.
Wodel-EDU uses four DSLs in addition to Wodel:
eduTest: configures questionnaires and defines exercises:
navigation=free
MultiChoiceDiagram simple {
retry=no
description for 'exercise4.model' = 'Select which of these automata
accepts only "a*bab*"'
}
MultiChoiceEmendation complex {
retry=no, weighted=no, penalty=0.0,
order=options-descending, mode=checkbox
description for 'exercise5.model' = 'Select the required changes so that
the automaton accepts only "a+b+"'
}
MatchPairs rfs1, mts2, rfs2 {
retry=no
description for 'exercise6.model' = 'Select which of these options modifies
the above automaton to accept only
the language defined by ' %text('reg-exp')
}
MissingWords mtsrfs1 {
retry=no
description for 'exercise7.model' = 'Complete the following text with the
options for each gap that modify this automaton
to accept only the language defined by "ab(ba)*"'
}
modelDraw: configures the graphical visualisation of models. Currently, it supports Graphviz, Circuit Macros and PlantUML to render the models (optional):
metamodel "http://dfaAutomaton/1.0"
Automaton: diagram {
State(isInitial): markednode
State(not isFinal): node shape=circle
State(isFinal): node shape=doublecircle
Transition(src, tar): edge label=symbol.symbol
}
modelText: configures the textual representation of model elements (optional):
metamodel "http://dfaAutomaton/1.0"
>State: State %name
>State(isFinal): final
>State(isInitial): initial
>Transition: Transition %symbol.symbol
>Transition.tar: target
>Transition.src: source
mutaText: configures the text options used in multiple emendation, matching-pairs, missing-words and text drag-and-drop exercises (optional):
metamodel "http://dfaAutomaton/1.0"
>TargetReferenceChanged: Change %object from %fromObject
to %toObject with new %refName %oldToObject /
Change %object from %fromObject to %oldToObject
with new %refName %toObject
>AttributeChanged: Change %object to %oldValue /
Change %object to %value
An example web application containing tests generated with Wodel-EDU is available at www.wodel.eu.
We are also developing support for generating exercises for Moodle. A demonstration Moodle site is available at moodle.wodel.eu (user: demo; password: Wodel-Edu4Moodle).
The following short video demonstrates Wodel and Wodel-EDU:
New feature: Wodel-EDU now supports the automatic generation and correction of diagram-based Moodle exercises:
Download a Wodel-EDU example here.
Wodel-EDU samples (ZIP)
Wodel-EDU samples (TAR.GZ)
New feature: Wodel-EDU and SGAME support the automatic generation and correction of gamified diagram-based Moodle exercises, developed with Daniel López:
Wodel-EDU and SGAME: Learning through Games
Wodel-EDU and SGAME: Aprender jugando (video in Spanish)
Related publications
Gómez-Abajo, P., Almonte, L., Garmendia, A., Guerra, E., Cañizares, P. C., Pérez-Soler, S., López-Fernández, D., Bucchiarone, A., de Lara, J., 2025. Generación y evaluación automática de ejercicios de diagramas de clases UML con Wodel-EDU. In Jornadas de Ingeniería del Software y Bases de Datos (JISBD), Córdoba.
Gómez-Abajo, P., Guerra, E., de Lara, J., 2023. Automated generation and correction of diagram-based exercises for Moodle. In Computer Applications in Engineering Education (Wiley).
Gómez-Abajo, P., Guerra, E., de Lara, J., 2023. Wodel-EDU: A tool for the generation and evaluation of diagram-based exercises. In Science of Computer Programming (Elsevier).
Gómez-Abajo, P., Rico-Fernández, A., Guerra, E., de Lara, J., 2021. Wodel-EDU: An MDE solution for the generation and evaluation of diagram-based exercises. In ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MoDELS), Tokyo, Virtual. Best tool demo award.
Gómez-Abajo, P., Guerra, E., de Lara, J., Merayo, M. G., 2020. Systematic engineering of mutation operators. In Journal of Object Technology, Vol 19 (October). pp.:3:1-16.
Gómez-Abajo, P., 2020. A domain-specific language for model mutation. Thesis document. Doctor of Philosophy (PhD) in Computer Science and Engineering, Universidad Autónoma de Madrid. Excellent cum laude.
Gómez-Abajo, P., Guerra, E., de Lara, J., Merayo, M. G., 2018. A tool for domain-independent model mutation. In Science of Computer Programming (Elsevier), Vol 163 (October). pp.:85-92.
Gómez-Abajo, P., Guerra, E., de Lara, J., 2017. A domain-specific language for model mutation and its application to the automated generation of exercises. In Computer Languages, Systems and Structures (Elsevier), Vol 49 (September). pp.:152-173.
Gómez-Abajo, P. , 2016. A DSL for model mutation and its applications to different domains. In Doctoral Symposium at the International Conference of Model-Driven Engineering Languages and Systems 2016 (MoDELS), Saint-Malo.
Gómez-Abajo, P. , 2016. A framework for the automated generation of exercises via model mutation. Final master's thesis. Master's Program (MSc) in ICT Research and Innovation, Universidad Autónoma de Madrid. Special mention.
Gómez-Abajo, P., Guerra, E., de Lara, J., 2016. Wodel: a domain-specific language for model mutation. In ACM Symposium on Applied Computing 2016 (SAC), pp.:1968-1973, Pisa.
Acknowledgements
This work received funding from the following projects:
PID2021-122270OB-I00, project “FINESSE”, funded by the Spanish Ministry of Science (2022–2025).
TED2021-129381B-C21, project “SATORI-UAM”, funded by the Spanish State Research Agency (2022–2024).
Marie Skłodowska-Curie grant agreement No 813884, project “Lowcomote”, funded by the European Union (2019–2023).
P2018/TCS-4314, project “FORTE”, funded by the R&D programme of the Madrid Region (2019–2023).
RTI2018-095255-B-I00, project “MASSIVE”, funded by the Spanish Ministry of Science (2019–2022).
TIN2014-52129-R, project “Flexor”, funded by the Spanish Ministry of Economy (2015–2018).
S2013/ICE-3006, project “SICOMORo”, funded by the R&D programme of the Madrid Region (2014–2018).
TIN2011-24139, project “Go-Lite”, funded by the Spanish Ministry of Economy (2012–2015).
