Advances in assessment of programming skills

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.advisorKorhonen, Ari, D.Sc (Tech)
dc.contributor.authorSeppälä, Otto
dc.contributor.departmentTietotekniikan laitosfi
dc.contributor.departmentDepartment of Computer Science and Engineeringen
dc.contributor.schoolPerustieteiden korkeakoulufi
dc.contributor.schoolSchool of Scienceen
dc.contributor.supervisorMalmi, Lauri, Professor
dc.date.accessioned2012-08-14T10:17:36Z
dc.date.available2012-08-14T10:17:36Z
dc.date.defence2012-08-24
dc.date.issued2012
dc.description.abstractThis thesis concerns assessment techniques used in university level programming education. The motivation is in improving existing assessment methods to yield more detailed or fundamentally different kinds of information which can be used to provide higher quality feedback to the student. One central theme in this thesis is the use of program reading and tracing skills in different aspects of programming. Tracing is a critical skill in reading and writing code and debugging. Simple tracing exercises can be used to test understanding of programming language constructs and program execution. We present results from an international study of student competence in tracing program code in the end of their first programming course. The results highlight that while students are expected to have elementary skills in program construction, some of them lack knowledge of execution of programs of the same difficulty. The effect of students' annotations and solving strategies on tracing performance was analyzed further. Tracing exercises can also be used to test understanding of data structures and algorithms. Visual algorithm simulation is a method in which a student manipulates data structure visualizations with a mouse, trying to simulate the steps of a given algorithm. A successful simulation is evidence of understanding the core concepts of that algorithm. Automatic assessment and delivery of visual algorithm simulation problems is implemented in the tool TRAKLA2. In this thesis we present a technique that improves TRAKLA2's assessment, trying to interpret errors in student simulations using information on known misconceptions and by simulating careless errors. Another topic studied in this thesis is whether mutation testing can be applied to evaluating the adequacy of software tests made by students. In mutation testing the effectiveness of a test suite in discovering errors is evaluated by seeding errors into the program under test. A well constructed test suite should find most such errors quite easily. Code coverage analysis, the method used in available assessment platforms, can yield results that give the students false understanding of the quality of their testing. Feedback from programming exercises assessed by unit tests has traditionally been in the form of text. Explaining more complicated object hierarchies textually can be complicated to understand. The last topic covered is using visualization to convey information either in a domain specific visual format or in a form of a generic visualization. An empirical study of student performance comparing the two types of input against detailed textual feedback is presented as a part of the thesis.en
dc.description.abstractVäitöskirjassa käsitellään ohjelmoinnin opetuksessa käytettäviä arviointimenetelmiä yliopisto-opetuksessa. Motivaationa työlle on kehittää nykyisiä menetelmiä tuottamaan yksityiskohtaisempaa tai olennaisesti uudentyyppistä informaatiota, jonka pohjalta opiskelijoille voitaisiin antaa korkealaatuisempaa palautetta. Yksi keskeisistä teemoista työssa on ohjelmakoodin lukemisen ja mentaalisesti simuloidun koodisuorituksen (jäljitys, tracing) soveltaminen ohjelmoitaessa. Jäljitys on keskeinen taito sekä ohjelmakoodin tuottamisen, ymmärtämisen, että virheiden korjaamisen kannalta. Jäljitystehtäviä voidaan käyttää ohjelmakoodin ja sen suorituksen ymmärtämisen arvioinnissa. Väitöskirjassa esitetään tuloksia kansainvälisestä tutkimuksesta, jossa opiskelijoilla, joiden oletetaan pystyvän rakentamaan toimivia ohjelmia, todettiin olevan vaikeuksia simuloida monimutkaisuudeltaan samankaltaisen koodin suoritusta. Lisäksi tutkittiin opiskelijan käyttämien apumerkintöjen ja ratkaisustrategioiden vaikutusta jäljitykseen. Jäljitystehtäviä voidaan käyttää myös tietorakenne- ja algoritmitietouden mittaukseen. Visuaalinen algoritmisimulaatio on menetelmä, jossa opiskelija manipuloi hiirellä tietorakennevisualisaatioita yrittäen simuloida jonkin algoritmin toimintaa. Onnistunut simulaatio osoittaa ymmärrystä algoritmin toimintaperiaatteista. Algoritmisimulaatiotehtävien jakelu ja automaattinen tarkastus on toteutettu TRAKLA2 työkalussa. Väitöskirjassa esitellään parannus TRAKLA2:n arvostelualgoritmeihin, joka pyrkii tulkitsemaan opiskelijoiden virheitä tunnettujen väärinkäsitysten ja huolimattomuusvirheiden kautta. Väitöskirjassa tutkitaan lisäksi voitaisiinko mutaatiotestausta käyttää opiskelijoiden tuottamien yksikkötestien arviointiin. Mutaatiotestauksessa testien riittävyyttä arvioidaan kylvämällä satunnaisvirheitä ohjelmaan ja kokeilemalla löytääkö testijoukko nämä virheet. Hyvin rakennettu testisetti löytää pääosan tällaisistä virheistä. Koodikattavuusanalyysi, yleisemmin käytetty riittävyyden mitta, voi tuottaa arvostelukäytössä valheellisen positiivisia tuloksia. Yksikkötesteillä tuotettu palaute on perinteisesti annettu opiskelijalle tekstimuotoisena. Monimutkaisempien oliohierarkioiden kuvaaminen sanallisesti johtaa helposti hankalasti ymmärrettävään lopputulokseen. Väitöskirjassa tutkitaan vielä voitaisiinko tämäntyyppistä palautetta antaa visuaalisessa muodossa. Kahden eri visualisaatiotyypin ja sanallisen palautteen vaikutusta tehtävien ratkontaan tutkittiin empiirisessä kokeessa.fi
dc.format.extent221
dc.format.mimetypeapplication/pdf
dc.identifier.isbn978-952-60-4720-1 (electronic)
dc.identifier.isbn978-952-60-4719-5 (printed)
dc.identifier.issn1799-4942 (electronic)
dc.identifier.issn1799-4934 (printed)
dc.identifier.issn1799-4934 (ISSN-L)
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/4446
dc.identifier.urnURN:ISBN:978-952-60-4720-1
dc.language.isoenen
dc.opnJoy, Mike, Associate Professor, University of Warwick, UK
dc.publisherAalto Universityen
dc.publisherAalto-yliopistofi
dc.relation.haspart[Publication 1]: Lauri Malmi, Ville Karavirta, Ari Korhonen, Jussi Nikander, Otto Seppälä, Panu Silvasti. Visual Algorithm Simulation Exercise System with Automatic Assessment: TRAKLA2. Informatics in Education, 3(2) pages 267-289, 2004.
dc.relation.haspart[Publication 2]: Raymond Lister, Elizabeth S. Adams, Sue Fitzgerald, William Fone, John Hamer, Mårten Lindholm, Robert McCartney, Jan Erik Moström, Kate Sanders, Otto Seppälä, Beth Simon, Lynda Thomas. A Multi-National Study of Reading and Tracing Skills in Novice Programmers. SIGCSE Bulletin, 36(4), pages 119-150, 2004.
dc.relation.haspart[Publication 3]: Robert McCartney, Jan Erik Moström, Kate Sanders, Otto Seppälä. Take Note: the Effectiveness of Novice Programmers' Annotations on Examinations. Informatics in Education, 4(1), pages 69-86, 2005.
dc.relation.haspart[Publication 4]: Otto Seppälä, Lauri Malmi, and Ari Korhonen. Observations on Student Misconceptions : A Case Study of the Build-Heap Algorithm. Computer Science Education, 16(3), pages 241-255, September 2006.
dc.relation.haspart[Publication 5]: Otto Seppälä. Modelling Student Behavior in Algorithm Simulation Exercises with Code Mutation. In Proceedings of the 6th Annual Finnish / Baltic Sea Conference on Computer Science Education, pages 109-114, November 2006.
dc.relation.haspart[Publication 6]: Petri Ihantola, Tuukka Ahoniemi, Ville Karavirta and Otto Seppälä. Review of Recent Systems for Automatic Assessment of Programming Assignments. In Proceedings of the 10th Koli Calling International Conference on Computing Education Research, pages 86-93, 2010.
dc.relation.haspart[Publication 7]: Kalle Aaltonen, Petri Ihantola and Otto Seppälä. Mutation Analysis vs. Code Coverage in Automated Assessment of Students' Testing Skills. In Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion (SPLASH '10), pages 153-160, 2010.
dc.relation.haspart[Publication 8]: Petri Ihantola, Ville Karavirta and Otto Seppälä. Automated Visual Feedback from Programming Assignments. In Proceedings of the 6th Program Visualization Workshop (PVW'11), Darmstadt, Germany, pages 87-95, 2011.
dc.relation.ispartofseriesAalto University publication series DOCTORAL DISSERTATIONSen
dc.relation.ispartofseries98/2012
dc.revKölling, Michael, Professor, University of Kent, UK
dc.revEdwards, Stephen H., Associate Professor, Virginia Tech, USA
dc.subject.keywordteaching programmingen
dc.subject.keywordtracing program codeen
dc.subject.keywordvisual algorithm simulationen
dc.subject.keywordautomated assessmenten
dc.subject.keywordvisual feedbacken
dc.subject.keywordtestingen
dc.subject.keywordmutation analysisen
dc.subject.keywordohjelmoinnin opetusfi
dc.subject.keywordohjelmakoodin suorituksen simulointifi
dc.subject.keywordvisuaalinen algoritmisimulaatiofi
dc.subject.keywordautomaattinen arviointifi
dc.subject.keywordvisuaalinen palautefi
dc.subject.keywordtestausfi
dc.subject.keywordmutaatiotestausfi
dc.subject.otherComputer scienceen
dc.titleAdvances in assessment of programming skillsen
dc.titleParannuksia ohjelmointitaidon arviointimenetelmiinfi
dc.typeG5 Artikkeliväitöskirjafi
dc.type.dcmitypetexten
dc.type.ontasotDoctoral dissertation (article-based)en
dc.type.ontasotVäitöskirja (artikkeli)fi
local.aalto.digiauthask
local.aalto.digifolderAalto_64664
Files
Original bundle
Now showing 1 - 5 of 5
No Thumbnail Available
Name:
isbn9789526047201.pdf
Size:
1.08 MB
Format:
Adobe Portable Document Format
No Thumbnail Available
Name:
publication1.pdf
Size:
1.15 MB
Format:
Adobe Portable Document Format
Description:
No Thumbnail Available
Name:
publication3.pdf
Size:
300.86 KB
Format:
Adobe Portable Document Format
Description:
No Thumbnail Available
Name:
publication5.pdf
Size:
202.08 KB
Format:
Adobe Portable Document Format
Description:
No Thumbnail Available
Name:
publication8.pdf
Size:
479.07 KB
Format:
Adobe Portable Document Format
Description: