Teknillinen korkeakoulu

Linkkejä

Viiteryhmät

Ohjelmoinnin perusopetuksen verkosto on matemaattis-luonnontieteellisellä alalla toimiva yliopistoverkosto. Yliopistojen tieteenalojen verkostot rakentavat jonkin tieteenalan tai monitieteistä valtakunnallista toimintaverkkoa. Verkostojen sivuilta löytyy tietoa mm. alan kursseista, tutkijakouluista ja ajankohtaisista tapahtumista.

Verkosto toimii tiiviissä yhteistyössä Tietojenkäsittelytieteen Seuran piirissä toimivan teemaryhmän Tietojenkäsittelytieteiden opetuksen SIG kanssa. Teemaryhmän tavoitteena on tuoda yhteen alan opettajia ja opetusteknologiasta kiinnostuneita tutkijoita. Tarkoituksena on edistää mm. opettajien välistä yhteistyötä, opetus- ja oppimateriaalien vaihtoa, opetuksen tueksi kehitettyjen tieto- ja viestintätekniikkaan perustuvien välineiden käyttöönottoa sekä ottaa kantaa ajankohtaisiin yhteiskunnallisiin alan opetukseen liittyviin kysymyksiin.

Suomessa verkosto ja SIG tekevät yhteistyötä LUMA-keskuksen kanssa. Valtakunnallisen LUMA-keskuksen tarkoituksena on tukea ja edistää luonnontieteiden, matematiikan ja teknologian opetusta ja oppimista kaikilla asteilla varhaiskasvatuksesta yliopistoon sekä edistää alan harrastuneisuutta.

Kansainvälisellä tasolla monilla verkostoon kuuluvilla tutkijoilla ja tutkimusryhmillä on yhteistyötä ACM/SIGCSE:n (Association for Computing Machinery/Special Interest Group on Computer Science Education) kanssa. SIGCSE tarjoaa keskustelufoorumin alan opettajille ja tutkijoille, jossa voi vaihtaa ajatuksia ohjelmistojen ja koulutuksen kehittämisestä, kursseista, koulutusohjelmista sekä muista elementeistä, jotka liittyvät tietojenkäsittelytieteiden opettamiseen ja pedagogiikkaan. Lisäksi verkostolla on aktiivinen rooli mm. AlgoViz-projektissa, jonka tavoitteena on kerätä yhteen algoritmivisualisaation tutkijoita ja visualisointivälineiden käyttäjiä ympäri maailmaa.

Yksittäisiä välineitä

Seuraavassa on linkkejä erityisesti tietojenkäsittelytieteiden opetuksen tueksi kehitettyihin järjestelmiin. Lista ei ole kattava. Lista siirretään tulevaisuudessa Verkoston Wikiin, joten lisäykset ja päivitykset kannattaa tehdä suoraan sinne. Osa välineistä on esitelty verkoston seminaareissa ja koottu USB-tikulle. Tikun sisältö on päivitettävissä verkosta.

  • ACE on kääntäjiin liittyvien tehtävien automaattiseen arviointiin kehitetty työkalu. ACE tarjoaa opiskelijoille graafisen käyttöliittymän tehtävien tekemiseen. Tehtävät liittyvät äärellisiin automaatteihin sekä LL- ja LR-jäsentäjiin.
  • BOSS OnLine Submission System - The University of Warwickissa kehitetty ohjelmointitehtävien automaattiseen tarkastamiseen tarkoitettu järjestelmä.
  • Buenos ja YAMS: Buenos on pieni käyttöjärjestelmärunko, jota voidaan käyttää harjoitustyöpohjana käyttöjärjestelmäkurssilla. Buenosta ajetaan simulaattorissa nimeltä YAMS, joka simuloi MIPS32 CPU:ta. YAMS simuloi myös joitakin yksinkertaisia laitteita.
  • CourseMarker on Ceilidh-järjestelmän uusin versio ja tarkoitettu automaattiseen tarkastamiseen ohjelmointikursseilla. Järjestelmää kehittää Nottinghamin yliopistossa toimiva Learning Technology Research group.
  • Formulaattori. Valitse autoosi paras mahdollinen paristo ja voita! Lyö vetoa autosi puolesta. Kauden parhaat vedonlyöjät pääsevät listalle.
  • Goblin on Teknillisen korkeakoulun Automaation tietotekniikan laboratoriossa kehitetty kurssinhallintajärjestelmä ohjelmoinnin perusopetuksen avuksi.
  • Japroch on ohjelma, jonka avulla voidaan tarkistaa ohjelmien tyylejä. Japroch ohjelma näyttää visuaalisesti havaitut virheet. Lisäksi tarkistettavat määritykset ovat helposti konfiguroitavissa.
  • Javala on Tampereen teknillisessä yliopistossa kehitetty avoin oppimisympäristö Java-ohjelmointikielen opiskeluun.
  • Jeliot 3 on Java ohjelmien visualisointiin tarkoitettu työkalu, jolla opettaja ja opiskelijat voivat seurata ohjelman toimintaa. Jeliotia voidaan käyttää ohjelmoinnin alkeiden kurssilla esittelemään ohjelmoinnin keskeisiä käsitteitä esim. silmukoita ja ehtolauseita. Lisäksi Jeliot visualisoi olio-ohjelmoinnin keskeisiä käsitteitä kuten luokkia, olioita ja muodostimia, mikä helpottaa näiden käsitteiden konkretisointia. Jeliotia voidaan myös käyttää BlueJ:n kanssa yhdessä omana laajennuksenaan. Yhteyshenkilö: niko myller at cs joensuu fi.
  • Korostustyökalulla voidaan Java-ohjelmista korostaa osia, joilla on joko semanttinen tai syntaksinen merkitys. Korostustyökalulla voidaan korostaa visuaalisesti erilaisia osia, ja näin voidaan auttaa opiskelijaa ymmärtämään ja oppimaan ohjelmoinnin peruskäsitteitä paremmin.
  • MatrixPro on alustariippumaton algoritmisimulaatioympäristö itseopiskeluun ja luentokäyttöön. Järjestelmällä voidaan tuottaa algoritmianimaatioita kirjoittamatta lainkaan ohjelmakoodia. Se mahdollistaa valmiiden tietorakenteiden (taulukot, linkitetyt listat, puut ja verkot) ja niiden yhdisteiden manipuloinnin graafisessa muodossa. Järjestelmässä on valmiita toteutuksia myös eräille abstraketeille tietotyypeille, kuten perustietorakenteille (pino, jono), hakurakenteille ja prioriteettijonoille.
  • Olio-ohjelmien metafora-pohjainen animointi havainnollistaa olio-ohjelmoinnin käsitteitä opiskelijoille tuttujen metaforien avulla ja helpottaa siten näiden käsitteiden keskinäisten suhteiden hahmottamista. Ensimmäinen animaatio valmistui kesällä 2006 ja muut olio-ohjelmoinnin perusopetuksessa tarvittavat animaatiot on tarkoitus saada valmiiksi vuoden 2006 aikana.
  • Pistari on leikkimielinen tietorakenteisiin ja algoritmeihin liittyvä tietovisailu. Peli esittää kysymyksen ja siihen neljä vastausvaihtoehtoa. Tehtävänä on valita vaihtoehdoista se, joka on oikein. Pelin läpäiseminen kokonaan edellyttää oikeata vastausta 25 kysymykseen. Yksikin väärä vastaus ja peli päättyy heti. Onneksi pelissä on käytettävissä oljenkorsia, joilla voi poistaa kaksi väärää vaihtoehtoa, kysyä vihjettä tai hypätä kysymyksen yli. Peliä pelataan Älypää Oy:n kehittämällä sovelluksella, joka käyttää Flash-tekniikkaa.
  • PlanAni on muuttujien rooleille perustuva ohjelma-animaattori, jonka käytön on havaittu parantavan ohjelmoinnin oppimistuloksia merkittävästi. PlanAni antaa ohjelmien suoritukselle konkreettisen mallin ja tuo esiin muuttujien merkityksen ohjelmien syvärakenteen muodostajina. PlanAnin avulla opettaja voi syventää opiskelijoiden ohjelmointitietämystä, joka edesauttaa sujuvan ohjelmointitaidon kehittymistä. PlanAnin jakeluversiossa on valmiina ohjelmoinnin alkeisopetukseen sopiva joukko Java-, C-, Python- ja Pascal-kielisten ohjelmien animaatioita. Uusien animaatioiden lisääminen on myös mahdollista.
  • RAIPPA on järjestelmä joka esittää ja tarkistaa laboratorioharjoitusten lyhyitä esitehtäviä, neuvoo opiskelijaa ja tilastoi opiskelijan suorituksen. RAIPPA on ollut koekäytössä Oulun Yliopistossa tietokonetekniikan kurssilla kahtena viime vuonna.
  • Rubyric on rubriikkeihin perustuva arviointityökalu. Arvioijat hyödyntävät etukäteen kirjoitettuja palautefraaseja palautetta laatiessaan, joka nopeuttaa palautteen antamista koska kaikkea palautetta ei tarvitse kirjoittaa käsin. Se myös mahdollistaa yhdenmukaisen arvioinnin eri arvioijien välillä, koska palautukset arvioidaan samojen etukäteen määriteltyjen arviointikriteerien mukaisesti.
  • Scheme-robo on automaattinen arviointityökalu ohjelmointitehtäville. Järjestelmä on toteutettu Schemellä. Se on tarkoitettu ohjelmointikursseille, joissa opiskelijat toteuttavat monta pientä ohjelmaa Schemellä.
  • Style++ on TTY:n ohjelmistotekniikan laitokselle rakennettu C++ tyylianalysaattori. Analysointi perustuu TTY:n Ohjelmistotekniikan laitoksen tyylioppaaseen.
  • Titokone on symbolisella konekielellä kirjoitettujen ohjelmien kääntämiseen ja suorittamiseen tarkoitettu ohjelmisto ttk-91 -tietokoneelle. Ohjelmistoon sisältyy ohjelmistonkehitysympäristö ja suorituksen simulaattori ja animaattori. Titokoneen päälle on rakennettu ympäristö (TitoTrainer), jonka avulla voidaan luoda ja toteuttaa automaattisisesti Titokoneen avulla tarkistettavia ohjelmia.
  • TRAKLA2 on verkkopohjainen oppimisympäristö, joka mahdollistaa algoritmisimulaatioon perustuvien tehtävien jakelun, automaattisen tarkastamisen ja palautteen opiskelijalle, mallivastausten tarkastelun algoritmianimaationa sekä pistekirjanpidon kurssilla. Java-appletissa ratkottavat tehtävät ovat opiskelijakohtaisia ja niistä on tarjolla myös paikalliset versiot, joita voidaan hyödyntää ilman verkkoyhteyttä. Tällä hetkellä tehtävävalikoimassa on tehtäviä perusalgoritmeista, järjestämisalgoritmeista, verkkoalgoritmeista, hakurakenteista, prioriteettijonoista sekä hajautuksesta. Yhteyshenkilö: ari korhonen at tkk fi.
  • Tutnew on dynaamisen muistinhallinan testauskirjasto C++-kieltä varten. Sitä käytetään Tampereen teknillisellä korkeakoululla useilla kursseilla.
  • Ville on ohjelmakokonaisuus, jonka avulla loppukäyttäjät voivat tarkastella ohjelman suoritusta askel kerrallaan. Lisäksi se on työkalu, jonka avulla tällaisia esimerkkejä voidaan helposti tuottaa. Kantavana ideana on helpottaa ohjelmoinnin alkeiden opiskelua, ja esimerkiksi sellaisten käsitteiden kuin muuttujat, taulukot, aliohjelmat, peräkkäisyys ja rekursio ymmärtämistä; esitysten tarkoituksena on myös auttaa ymmärtämään ohjelman suorituksen riippumattomuus käytettävästä kielestä, ja edelleen luoda silta Java- ja pseudokielen välille.

Tutkimusryhmien, projektien ja hankkeiden sivustoja

  • AlgoViz project, Virginia Tech, on algoritmien havainnollistamisvälineiden levittämiseen keskittyvä projekti, joka ylläpitää Wikiä, SVN:ää ja keskustelufoorumeja, joiden tavoitteena on edesauttaa välineiden käyttöönottoa.
  • CogLab on Joensuun yliopistossa toimiva Kognitiolaboratorio, joka tarjoaa välineet ohjelmoinnin psykologian, käytettävyyden ja kognitiotieteen tutkimukselle.
  • Computer Science Education Research Group on tutkimusryhmä, jota koordinoidaan TKK:n Ohjelmistotekniikan laboratoriosta. Se kokoaa yhteen opettajia, tutkijoita ja asiantuntijoita tietotekniikan ja kasvatustieteen alueilta.
  • Edge on Tampereen teknillisessä korkeakoulussa toimiva ryhmä opettajia, jotka ovat kiinnostuneet kehittämään omaa opetustaan. Sivuilta löytyy luettelo heidän kehittämistään työkaluista ja niiden ylläpitäjistä.
  • EdTech-tutkimusryhmä Joensuun Yliopistosta on keskittynyt opetusteknologian ja tietojenkäsittelyn opetuksen tutkimukseen ja opetukseen.
  • i3GO on Oulun yliopistossa toimiva tutkimusryhmä, joka kehittää ja tekee tunnetuksi edistyneitä ohjelmistotarkastuksen menetelmiä ja työkaluja.
  • Learning Technology Research group on Nottinghamin yliopistossa toimiva tutkimusryhmä, joka kehittää mm. CourseMarker-järjestelmää.
  • Ohjelmia - Jyväskylän yliopistossa kehitettyjä vapaaseen jakeluun tarkoitettuja ohjelmia.
  • OTE - Opintojen tukeminen ja opetuksen kehittäminen opintopolun eri vaiheissa -hanke
  • The Roles of Variables Home Page esittelee Joensuun yliopistossa toimivan muuttujien rooleja tutkivan ryhmän tuloksia, joita voidaan hyödyntää mm. ohjelmoinnin opettamisessa.
  • SVG - Software Visualization Group on TKK:lla toimiva ohjelmistojen havainnollistamiseen erikoistunut tutkimusryhmä. Sen sivuilta löytyy linkkejä jo edelläkin mainittuihin TKK:n projekteihin sekä eräisiin muihin hankkeisiin.
  • Turun yliopiston ohjelmoinnin perusopetuksen verkostohankkeen www-sivusto, jossa lyhyet kuvaukset siellä toteutetuista työkaluista.

Muita linkkejä

  • CodeWitz-projektin tavoitteena on suunnitella, tuottaa ja evaluoida havaintomateriaalia ohjelmoinnin opetuksen tueksi. Kyseessä on Tampereen ammattikorkeakoulun koordinoima hanke.
  • Data Structure And Algorithm Visualizations Wiki sisältää luettelon yksittäisistä algoritmivisualisaatioista (tällä hetkellä noin 350 kpl), kirjallisuusluettelon sekä sekalaisen joukon muuta tietoa ja resursseja.
  • Ohjelmistotekniikan opetuksen työkalut - Tampereen teknillisen korkeakoulun sivuilta löytyvä lista erilaisista työkaluista.
  • SIGCSE Education Links on kokoelma verkkomateriaaleja, joita ovat olleet toteuttamassa SIGCSE:n jäsenet. Materiaalit on tarkoitettu tietotekniikan opetuskäyttöön.
  • Suomen virtuaaliyliopiston sivuilla on tietoa myös muista SVY:n verkostohankkeista.
  • Verkko-opetuksen laatukäsikirja on työkalu verkko-opetuksen laadun kehittämiseen. Se antaa kokonaiskuvan verkko-opetuksen laadunhallinnasta ja tekee laatutyön sisältöjä ja menetelmiä tunnetuksi. Laatukäsikirja sisältää pohdittavia kysymyksiä verkko-opetuksen laadunhallinnasta sekä erilaisia tarkistuslistoja, kriteereitä ja prosessikuvausesimerkkejä omassa laatutyössä hyödynnettäväksi.
  • Viope Solutions Oy on ohjelmoinnin verkko-opetusvälineiden kehittämiseen erikoistunut yritys.
  • Älypää Oy on suomalainen viihde- ja koulutusalan ohjelmistoratkaisuihin erikoistunut yritys.
  • By The Mark Oy on suomalainen ohjelmistoyritys, joka kehittää ja tarjoaa innovatiivisia palveluita ohjelmoinnin oppimiseen, opettamiseen ja osaamisen automaattiseen arviointiin.

Projektia koordinoi Ari Korhonen, email Ari.Korhonen@hut.fi.
Tätä sivua on viimeksi päivitetty 2010-05-05.
http://www.cse.tkk.fi/en/research/COMPSER/Verkostohanke/links.shtml    
Suomen Virtuaaliyliopisto