Visual Java Debugger for Computer Science Education

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

Helsinki University of Technology | Diplomityö
Checking the digitized thesis and permission for publishing
Instructions for the author

Date

2003

Major/Subject

Ohjelmistotekniikka

Mcode

Tik-106

Degree programme

Language

en

Pages

79

Series

Abstract

Tässä diplomityössä suunniteltiin ja toteutettiin ohjelmoinnin perusopetukseen ohjelmien visualisointityökalu. Tämän lisäksi suunniteltiin uusi diagramminotaatio olio-ohjelman ajonaikaisen tilan esittämiseen. Työ sisältää katsauksen oppimisteorioihin sekä nykyiseen opetukseen Teknillisessä Korkeakoulussa ja oppilaiden oppimisongelmiin kursseilla. Esitämme yhtenä ratkaisuna näihin ongelmiin visualisointityökalujen käyttämisen ohjelmoinnin opetuksessa; luennoilla kurssihenkilökunnan ja harjoituksissa opiskelijoiden itsensä toimesta. Oppilaiden ongelmat ohjelmointikursseilla liittyvät erityisesti olio-ohjelmoinnin keskeisiin käsitteisiin, kuten olioiden välisiin viittauksiin, olioiden luomiseen ja olio-ohjelman suorituksen etenemiseen ohjelman olioiden välillä. Näiden ongelmakohtien pohjalta asetettiin visualisointityökalulle joukko vaatimuksia, joiden perusteella tutkittiin olemassaolevien visualisointityökalujen soveltuvuutta tähän tarkoitukseen. Mikään arvioiduista, järjestelmistä ei täyttänyt kaikkia vaatimuksia, joten työssä päädyttiin toteuttamaan oma järjestelmä joka visualisoi esimerkkiohjelmien ja opiskelijoiden rakentamien ohjelmien suoritusta havainnollisella tavalla. Koska olioiden, viittausten ja metodikutsujen esittämiseen animoidussa muodossa ei löytynyt valmiita tunnettuja notaatioita, suunniteltiin työn osana myös uusi notaatio. Tämä notaatio - Program State Graph, pyrkii visualisoimaan opiskelijoiden hankaliksi kokemia ohjelmointikielen ominaisuuksia. Rakentamamme visualisointityökalu esittää ja ylläpitää edellämainitun notaation avulla mukaista diagrammia suoritettavasta ohjelmasta. Ohjelman suoritusta seurataan myös korostaen ohjelmakoodista suoritettavaa koodiriviä. Toteutettu ohjelma sisältää myös lähdekoodiparserin, jonka avulla koodista voidaan korostaa haluttuja elementtejä lukemisen helpottamiseksi.

Description

Supervisor

Malmi, Lauri

Thesis advisor

Malmi, Lauri

Keywords

programming, ohjelmointi, basic educatin, perusopetus, debug, debug, visualization, visualisointi, java, java

Other note

Citation