Ohjelmoinnin harjoitustyö (periodi I) : Harjoitustyön arvosteluperusteet

Arvosanan määräytyminen


Pisterajat 30 35 40 45 50
Arvosanat 1 2 3 4 5

Dokumentaatio (24 pistettä)


Ohjelman kuvaus (12 pistettä)

  • täsmällinen määrittely
  • luokkarakenteen kuvaus
  • luokkien kuvaus
  • ajonaikaisen toiminnan kuvaus
  • valittujen ratkaisujen perustelut ja yleinen filosofia
  • menetelmien, algoritmien ym. selostukset
  • ohjelman rajoitusten poistaminen ja parannusehdotukset
  • testauksen kuvaus ja raportointi

Käyttöohje (6 pistettä)

  • peruskäyttäjän näkökulmasta kirjoitettu
  • asennus, aloitus, lopetus, virheilmot jne.
  • kaikki mahdolliset tilanteet selostettava
  • tyypilliset käyttötapaukset/istunnon kulku
  • havainnollisuus: esimerkit, kuvat ja kaaviot

Dokumentoinnin tyylikkyys (6 pistettä)

  • Ilmaisun selkeys, kieliasu ("miten sanotaan")
  • Jäsentely ("missä järjestyksessä sanotaan")
  • Ulkoasu (layout, sivunumerointi, sisällysluettelo...)

Toteutus (24 pistettä)


Toiminnallisuus, luotettavuus ja käytettävyys (12 pistettä)

  • toteutuksen laajuus suhteessa aiheen vaativuuteen
  • toiminnan virheettömyys, tulosten oikeellisuus
  • virhetilanteiden käsittely
  • koodin vikasietoisuus
  • Käyttöliittymäratkaisun toimivuus
  • Käyttötuntuma

Tehokkuus, ylläpidettävyys ja siirrettävyys (12 pistettä)

  • kielen ominaisuuksien hallinta
  • algoritmien ja tietorakenteiden tehokas toteutus
  • valitut luokkaratkaisut, oliohenkisyys
  • järkevä metodijako, muuttujien näkyvyys
  • koodin yleiskäyttöisyys ja muunneltavuus
  • koodin selkeys ja luettavuus, nimentä

Testaus (6 pistettä)


  • Systemaattinen testaus (toivotun lopputuloksen ennalta määrittelevää, ei hakuammuntaa)
  • Kattava testaus (erityyppiset virheet löytävä)

Työprosessi (6 pistettä)


  • Aikataulussa pysyminen
  • Raportoinnin täsmällisyys
  • Palavereihin valmistautuminen 
  • Demon ja esitelmän laatu
  • Aktiivinen oman työn ideointi
  • Omien näkemysten esilletuonti (riippumatta siitä, oliko ohjaaja samaa mieltä tai päädyttiinkö lopulta eri ratkaisuun :)
  • Oma-aloitteisuus ja sisälukutaito :)
  • Luovuus