Learning Centre

Visual program simulation in introductory programming education

 |  Login

Show simple item record

dc.contributor Aalto-yliopisto fi
dc.contributor Aalto University en
dc.contributor.author Sorva, Juha
dc.date.accessioned 2012-05-31T07:29:53Z
dc.date.available 2012-05-31T07:29:53Z
dc.date.issued 2012
dc.identifier.isbn 978-952-60-4626-6 (electronic)
dc.identifier.isbn 978-952-60-4625-9 (printed)
dc.identifier.issn 1799-4942 (electronic)
dc.identifier.issn 1799-4934 (printed)
dc.identifier.issn 1799-4934 (ISSN-L)
dc.identifier.uri https://aaltodoc.aalto.fi/handle/123456789/3534
dc.description.abstract This thesis formulates and evaluates a pedagogical technique whose goal is to help beginners learn the basics of computer programming. The technique, visual program simulation (VPS), involves the learner in interactive simulations in which the learner takes on the role of the computer as the executor of a program. The student uses a given visualization of a so-called notional machine, an abstract computer, to illustrate what happens in memory as the computer processes the program. The purpose of these simulations is to help the beginner learn to reason about program execution, a skill whose development has been identified as a major challenge in introductory programming education. VPS promotes effective learning by seeking to cognitively engage the learner with a visualization. It can be made practical through visualization software. VPS software may also automatically assess students' simulations and provide personal feedback, which is a valuable asset especially in the large classes that are typical of introductory courses. The thesis contributes to VPS in four ways. First, it formulates the concept of visual program simulation and outlines its underpinnings in terms of learning theory. Second, it presents a new software prototype that facilitates the use of VPS in practice. Third, it reports on a preliminary empirical evaluation of VPS and the software in the context of an introductory programming course. Fourth, it makes recommendations on the use of VPS in teaching and the further development of VPS tools, which arise from the empirical work. The findings from a mixed-methods evaluation of VPS suggest that it is a promising pedagogical approach that helps many students learn programming. At the same time, the evaluation highlights certain important weaknesses. The purpose of VPS is not obvious to many students. Care must be taken to ensure that students develop a rich understanding of what VPS is and what they stand to gain from it. For best results, it is recommended that VPS be tightly integrated into the teaching and learning environment. The results from a controlled experiment further indicate that the short-term learning benefits of a VPS assignment are heavily dependent on which interactions the assignment demands from students. This implies that extreme care must be taken in the design of VPS systems and specific assignments so that required user interactions are aligned with intended learning goals. On a more general level, the thesis serves as an example of educational tool development that is grounded in learning theory and informed by empirical evaluations. A fairly broad review of the literature on learning and teaching introductory programming is also contributed. en
dc.description.abstract Visuaalinen ohjelmasimulaatio (engl. visual program simulation, VPS) on tekniikka, jolla pyritään tukemaan aloittelijoita tietokoneohjelmoinnin oppimisessa. Siinä ohjelmoinnin oppija ottaa tietokoneen roolin ohjelman suorittajana. Hän käyttää vuorovaikutteista visualisaatiota abstraktista tietokoneesta kuvatakseen, mitä tietokone tekee, kun se käsittelee ohjelman askel askelelta. Tällaiset simulaatiot voivat opettaa aloittelijaa järkeilemään ohjelmien suoritusvaiheista ja näin selviytymään eräästä ohjelmoinnin opintojen varhaisvaiheen keskeisestä haasteesta. VPS pyrkii tehostamaan oppimista edellyttämällä opiskelijalta aktiivista visualisaation käyttöä sen sijaan, että tämä vain katselisi annettua kuvamateriaalia. Toimiakseen käytännössä VPS tarvitsee tuekseen tarkoitukseen laaditun apuohjelman. VPS-järjestelmän avulla voidaan myös automaattisesti arvioida opiskelijoiden suoriutumista ja tarjota henkilökohtaista palautetta. Tämä on arvokas etu erityisesti suurilla massakursseilla, jollaisia ohjelmoinnin johdantokurssit usein ovat. Väitöskirja edistää VPS:ää neljällä tavalla. 1) Väitöskirjassa muotoillaan visuaalisen ohjelmasimulaation käsite ja sen oppimisteoreettinen pohja. 2) Väitöskirja esittelee uuden järjestelmäprototyypin, joka mahdollistaa VPS:n käytännön opetuksessa. 3) Väitöskirjassa raportoidaan tuloksia alustavista empiirisistä tutkimuksista, joissa arvioidaan VPS:ää ja mainittua järjestelmää erään ohjelmoinnin peruskurssin yhteydessä. 4) Näihin tuloksiin nojaten väitöskirjassa esitetään suosituksia siitä, miten VPS:ää kannattaa käyttää opetuksessa sekä siitä, millaisiksi VPS-järjestelmiä tulisi jatkossa kehittää. Tutkimustapoja yhdistelevän arvioinnin tulokset viittaavat siihen, että VPS on lupaava opetustekniikka, joka auttaa monia opiskelijoita oppimaan ohjelmointia. Toisaalta arviointi nostaa esille myös tärkeitä heikkouksia. VPS:n merkitys ei ole opiskelijoille itsestäänselvää. Opetuksessa on pidettävä huoli siitä, että opiskelijoille muodostuu rikas ymmärrys siitä, mitä VPS on ja miten he voivat siitä hyötyä. Parhaat oppimistulokset saavutettaneen integroimalla VPS tiukasti muuhun oppimiskontekstiin. Esitetyt tutkimustulokset puoltavat näkemystä, jonka mukaan VPS:n lyhyen aikavälin oppimisvaikutukset riippuvat vahvasti siitä, mitkä asiat korostuvat tehtävän opiskelijalta vaatimassa vuorovaikutuksessa. Näinollen simulointitehtäviä ja -järjestelmiä suunniteltaessa on erinomaisen huolellisesti sovitettava yhteen tehtävien oppimistavoitteet ja simulaation vaatimat toimenpiteet. Yleisemmällä tasolla väitöskirja toimii esimerkkinä oppimistyökalun kehittämishankkeesta, joka pohjautuu oppimisteoriaan ja kokemusperäiseen tutkimukseen. Väitöskirja sisältää laajan kirjallisuuskatsauksen ohjelmoinnin alkeiden oppimisesta ja opetuksesta. fi
dc.format.extent 428
dc.format.mimetype application/pdf
dc.language.iso en en
dc.publisher Aalto University en
dc.publisher Aalto-yliopisto fi
dc.relation.ispartofseries Aalto University publication series DOCTORAL DISSERTATIONS en
dc.relation.ispartofseries 61/2012
dc.subject.other Computer science
dc.subject.other Education
dc.title Visual program simulation in introductory programming education en
dc.title Visuaalinen ohjelmasimulaatio ohjelmoinnin alkeisopetuksessa fi
dc.type G4 Monografiaväitöskirja fi
dc.contributor.school Perustieteiden korkeakoulu fi
dc.contributor.school School of Science en
dc.contributor.department Tietotekniikan laitos fi
dc.contributor.department Department of Computer Science and Engineering en
dc.subject.keyword visual program simulation en
dc.subject.keyword introductory programming education en
dc.subject.keyword novice programmers en
dc.subject.keyword program visualization en
dc.subject.keyword interactive visualization for education en
dc.subject.keyword visuaalinen ohjelmasimulaatio fi
dc.subject.keyword ohjelmoinnin perusopetus fi
dc.subject.keyword ohjelmoinnin aloittelijat fi
dc.subject.keyword ohjelmavisualisaatio fi
dc.subject.keyword vuorovaikutteinen opetusvisualisaatio fi
dc.identifier.urn URN:ISBN:978-952-60-4626-6
dc.type.dcmitype text en
dc.type.ontasot Doctoral dissertation (monograph) en
dc.type.ontasot Väitöskirja (monografia) fi
dc.contributor.supervisor Malmi, Lauri, Professor
dc.opn Ben-Ari, Mordechai, Associate Professor, Weizmann Institute of Science, Israel
dc.date.dateaccepted 2012
dc.rev Guzdial, Mark, Professor, Georgia Institute of Technology, USA
dc.rev Meisalo, Veijo, Professor Emeritus, University of Helsinki, Finland
dc.date.defence 2012-05-30
local.aalto.digifolder Aalto_65223
local.aalto.digiauth ask


Files in this item

This item appears in the following Collection(s)

Show simple item record

Search archive


Advanced Search

article-iconSubmit a publication

Browse

Statistics