Dankzij onderwijsinnovatieproject vanaf nu oefeningen op websites en databanken via Dodona

(25-11-2021) “Het innovatieproject had als doel het succesverhaal van Peter Dawyndt uit te breiden en ook het inoefenen en afnemen van testen/examens van SQL-, HTML- en CSS-oefeningen via Dodona te laten verlopen” zegt Brecht Willems, coördinator van het project.

Dodona is een inhouse ontwikkelde online leeromgeving met heel wat troeven voor studenten op het vlak van actief leren, geïndividualiseerd leren, just in time gepersonaliseerde feedback en flexibiliteit in tijd en ruimte. In de Dodona-leeromgeving wordt ingediende programmacode automatisch uitgevoerd met een (door de opsteller van de oefening) vooraf vastgelegde reeks testgevallen. Op basis daarvan wordt persoonlijke feedback gegeven aan de student. Lesgevers kunnen de vorderingen van de studenten efficiënt opvolgen. Het gratis oefenplatform om te leren programmeren laat ook een optimale interactie toe tussen lesgever en student wanneer een student vragen heeft over zijn/haar code. De lesgevers kunnen de code van de studenten ook annoteren. Ze kunnen ook een evaluatie of een examen van een student volledig online verbeteren en de feedback op het examen online beschikbaar stellen aan de studenten op een ogenblik dat ze zelf kiezen.

Momenteel wordt het Dodona-platform (dodona.ugent.be) intensief gebruikt door meer dan 900 onderwijsinstellingen (hoger en secundair onderwijs). Zowel lesgevers als studenten zijn overtuigd van de meerwaarde o.a. door de korte feedbacklus”, vertelt Brecht Willems.

Dat blijkt onder andere uit het feit dat de de teller van het aantal ingediende oplossingen al op meer dan 9 miljoen staat. Sinds kort is het platform verder uitgebreid met ondersteuning voor SQL-, HTML- en CSS-oefeningen.

“Een team van drie jobstudenten heeft een SQL-judge (Tim Ramlot) en een HTML&CSS-judge (Stijn De Clercq en Quinten Vervynck) ontwikkeld voor Dodona”, gaat Brecht verder.

Een judge is een automatische beoordelaar die de uitvoer van de student vergelijkt met de verwachte uitvoer en op basis daarvan persoonlijke feedback geeft.

SQL-judge (bevragen en aanpassen van gegevens in een databank)

Dodona2

“De SQL-judge vergelijkt de oplossing van een student op basis van het resultaat, waardoor de query van de studenten niet dezelfde hoeft te zijn als de query van de modeloplossing, zolang het resultaat maar hetzelfde is”, legt Brecht uit.

De SQL-judge ondersteunt zowel het beoordelen van query's (DML), als het structureel opbouwen van een databank (DDL) zelf. Bovendien analyseert de judge ook de SQL-query zelf en wijst op mogelijke fouten.

De verschillen tussen de twee tabellen van de gegenereerde resultaten en de verwachte resultaten worden met de nodige opmaak getoond in de feedback van Dodona.

Voor elke oefening moet er een databank meegeven worden en bij query's volstaat het om een voorbeeldquery op te geven om daarmee ingediende oplossingen te kunnen testen.

In deze Dodona-cursus staan enkele voorbeeldoefeningen die gebruikt werden bij het ontwikkelen van de SQL-judge:
https://dodona.ugent.be/nl/courses/699/

HTML&CSS-judge (structuur en opmaak van websites)

Dodona3

De HTML-judge heeft twee manieren om de ingediende oplossing van een student te beoordelen. In comparison mode wordt de structuur van de ingediende oplossing vergeleken met een modeloplossing op basis van generieke vergelijkingscriteria.

“De lesgever kan wel instellen hoe strikt die vergelijking moet gebeuren. Checklist mode biedt nog meer mogelijkheden doordat de ingediende oplossing gecontroleerd wordt op de criteria die expliciet voor de oefening door de lesgever opgesteld worden. De studenten krijgen als feedback te zien aan welke criteria wel of niet voldaan is”, verduidelijkt Brecht.

In beide modi wordt gecontroleerd of de ingediende code voldoet aan een aantal voorwaarden voor geldige HTML-code. Bovendien wordt het resultaat van de ingediende HTML- en CSS-code in Dodona ook getoond in een afzonderlijke tab van de feedbackpagina.

In deze Dodona-cursus staan enkele voorbeeldoefeningen die gebruikt werden bij het ontwikkelen van de HTML-judge:
https://dodona.ugent.be/nl/courses/941/

Documentatie

De documentatie van de judges staan in de README van de GitHub-repositories:

Er zijn een aantal voorbeeldoefeningen op de voorbeeldoefeningen-repository van Dodona om het gebruik van de judge te demonstreren:

Voor alle verdere vragen, feedback en suggesties over de judges kan je bij Brecht Willems terecht (Brecht.Willems@UGent.be) of rechtsreeks op GitHub.