Uitbreiding practicum ondersteunend systeem: CPM code checker
Korte omschrijving van het project:
Bij het practicum willen we graag automatisch ingestuurde code draaien op verschillende probleem instanties en daarbij:
- De efficiëntie controleren (tijd meten) en daar feedback over teruggeven.
- De correctheid (evt per deelvraag) controleren en daar feedback over
teruggeven; hierbij ook ondersteuning bieden voor verschillende categorieën probleeminstanties (bv randgevallen, grote instanties, ...). - Eventuele foutmeldingen teruggeven.
- Een (of meerdere) standaardmails met tips kunnen terugsturen.
We zien dit als uitbreiding op het bestaande practicumondersteunend systeem (CPM, http://cpm.ewi.tudelft.nl/ ) en hebben al een proof-of-concept, maar er is een extra investering nodig om dit robuust genoeg te krijgen.
Vak
Dit gereedschap is bedoeld als ondersteuning voor het programmeerpracticum bij Algoritmiek, een tweedejaarsvak in de Informatica bacheloropleiding. Het zou ook gebruikt kunnen worden voor andere vakken met een programmeerpracticum.
User interface voor de assistenten
Hier ziet u wat de assistenten zien tijdens het nakijken: de resultaten van de tests in de tabbladen bovenaan en de ingeleverde broncode van de student.
In het scherm afgebeeld in het tweede figuur kunnen de assistenten de tests instellen.
Aantal studenten
Ongeveer 80 studenten doen mee aan het practicum. Er zijn 3 assistenten.
Geplande startdatum
De ontwikkeling vind plaats eind 2007/begin 2008. Het vak loopt in februari en maart 2008.
Doelstellingen
De doelstellingen zijn:
- ten eerste, het snel feedback kunnen geven aan studenten omtrent de functionaliteit van het door hen ingeleverde programma, en
- ten tweede, het ondersteunen van assistenten bij het nakijken van de ingeleverde programma's..
Wat is het vernieuwende karakter van het project voor uw eigen onderwijs en hoe wordt ICT daarbij ingezet?
Het vernieuwende is:
- een automatische controle en directe feedback op verschillende mogelijke invoerbestanden; hierdoor kunnen studenten bijvoorbeeld thuis en buiten practicumuren hun programma inleveren en vrijwel direct horen of het in grote lijnen goed is.
- Bovendien neemt deze tool voor de assistenten een aantal administratieve handelingen uit handen bij het nakijken: zoals het uitpakken en draaien van de code op voorbeeldinstanties.
Beschrijving uiteindelijke product
Het product is een website met daar achter een database en een raamwerk om automatisch geprogrammeerde antwoorden op de opgaves in te testen en een rapport daarover aan zowel de studenten als de assistenten op te leveren.
Status project
Het project is afgerond in april 2008.
Attachments
Contact gegevens
Voor meer informatie kunt u contact opnemen met Mathijs de Weerdt aan de TU Delft: www.st.ewi.tudelft.nl/~mathijs/
Eind evaluatie
- Wat vindt u zelf een succesfactor in de uitgevoerde Grassroots?
Het grote voordeel is dat studenten direct feedback krijgen op ingeleverde opgaven. Zij worden hierdoor gemotiveerd om eerst nog beter naar hun uitwerking te kijken voordat de assistent hen beoordeel
- Wat kan nog worden verbeterd?
De basisfunctionaliteit is voltooid en voldoet prima, maar zoals bij elk ICT project zijn er altijd een aantal wensen. Bijvoorbeeld:
- De interface voor de assistenten kan uitgebreid worden zodat het nakijken nog eenvoudiger gaat. Denk hierbij aan functionaliteit zoals bij ontwikkelomgevingen: het doorlopen van de klasses, maar ook bijvoorbeeld de synchronisatie van de cijfers en opmerkingen met CPM.
- Het automatisch controleren op opvallende overeenkomsten tussen de ingeleverde opgaves.
- In hoeverre heeft ICT toegevoegde waarde gehad waarvoor u het ingezet heeft?
Dit product heeft de assistenten tijd gescheeld (zij vonden het erg handig) en had voor de studenten een aantal grote voordelen (zie hieronder).
- Wat vinden studenten van het product?
Aan een enquete via Blackboard hebben 36 van de 75 studenten meegedaan. De belangrijkste conclusies hieruit zijn (percentage "Agree" and "Strongly Agree").
- The automatic test and feedback encouraged me to reconsider my code. (80%)
- The automatic test and feedback made it easier to fix bugs in my code. (78%)
- The automatic test and feedback made it easier to improve the run-time of my code. (56%)
- The automatic test and feedback made it more fun to improve my code further (eg make it faster). (53%)
- Because of the automatic test and feedback my final submission was better than it would have been without. (75%)
- The automatic test and feedback assisted me in a better understanding of the course content.
(36%) - The automatic test and feedback made it easier to work outside the scheduled hours (eg at home). (89%)
- This kind of testing and feedback could also be useful for some other course(s) in my education program. (81%)
Verder waren er nog een aantal opmerkingen in de trant van: erg fijn om meteen te weten of je opgave goed werkt.
De volledige enquete resultaten zijn op aanvraag bij Mathijs de Weerdt verkrijgbaar.
- Welke twee tips kunt u geven?
- Houd er rekening mee dat het bouwen van een dergelijk systeem meer tijd kost dan in een Grassroot past.
- Probeer een meerjarenplan te bedenken, omdat er na een eerste try-out altijd suggesties voor verbetering zijn.
- Bijzonderheden (algemene bijzonderheden die u niet in een ander veld kwijt kunt).
Het systeem vereist wel dat de assistenten (of docent) eerst een eigen uitwerking van de opgave maken, een aantal voorbeeld invoerbestanden maken en de tekst voor de feedback invoeren.


Actueel
ICT in het onderwijs
Etalage
