ITI0011:Hindamine

Allikas: Kursused
Mine navigeerimisribale Mine otsikasti

Siin lehel on aine "Programmeerimise põhikursus Javas" (ITI0011) 2017. aasta hindamispõhimõtted.

Hindamispõhimõtted

  • Tudengid saavad punkte praktiliste ülesannete lahendamise, tunnikontrollide ja eksami sooritamise eest
  • Suured kodused ülesanded ehk projektid (koodiga HW) määravad ära tudengi maksimaalse hinde aines. Kui ühtegi projekti pole lahendatud, on võimalik maksimaalne hinne "3". Iga lahendatud projekt tõstab võimalikku maksimaalset hinnet ühe palli võrra. Selleks, et saada hindeks "5", tuleb lahendada mõlemad projektid.
  • Punktid liidetakse kokku ning lõpphinne kujuneb TTÜ õppekorralduse eeskirja järgi vastavalt 51-60 punkti -> hinne "1", 61-70 p -> hinne "2", … 91 või rohkem punkte -> hinne "5".
  • Kui punktisumma annaks parema hinde kui projektide kaitsmine võimaldab, läheb arvesse projektide piirang. Ehk siis arvesse läheb väiksem hinne.
  • Väikseid tunniülesandeid (koodiga PR) saab kaitsta vaid konkreetses tunnis. Neid ülesandeid hiljem kaitsta ei saa.
  • Väikesed koduülesanded (koodiga EX) tuleb esitada tähtajaks ning need tuleb õppejõule kaitsta.
  • Koduülesande kuni kolm nädalat hilisem esitamine annab kuni pooled punkti. Peale seda aega ülesannet enam kaitsta ei saa.
  • Kõik ülesanded tuleb lahendada iseseisvalt, kui pole öeldud teisiti.
  • Ülesannete lahendused pannakse üles TTÜ git'i personaalsesse salve.
  • Ülesannet võib esitada (git'i üles laadida) mitu korda. Automaatselt hinnatava ülesande puhul läheb arvesse parim tulemus.
  • Plagiaadi esitamise eest on tulemus automaatselt 0 punkti. Loe lisaks TTÜ akadeemilist tava.

Täpsemalt on punktide saamine kirjeldatud järgmistes alalõikudes.

Ülesannete kaitsmine

Kodused ülesanded (EX ja HW) tuleb punktide kättesaamiseks õppejõule kaitsta. Kaitsmise eesmärk on aru saada, et tudeng on koodi ise kirjutanud ja saab sellest 100% aru. Kaitsmisel on oluline, et tudeng saab oma kirjutatud koodist aru ja oskab teha väikeseid parandusi/täiendusi. Õppejõud annab tudengile tagasisidet tema koodi kohta. Vajadusel suunab õppejõud tudengi konsultatsiooni, kus viimane saab oma koodi parandada, et punktid kätte saada.

Õppejõud hindab kaitsmist vahemikus [0..1]. Kaitsmise tulemus korrutatakse läbi testide tulemusega. Saadud korrutis on ülesande eest arvesse minev punktisumma. Näiteks testidest sai tudeng 0.8p, õppejõu kaitsmise eest 0.5 => ülesande eest kokku 0.4p.

Üldiselt on soovitatav pigem lahendada väiksem osa ülesandest ära ning sellest lõpuni aru saada kui proovida kõike teha nii, et koodist ise aru ei saa. Kaitsmisel võib õppejõud ühe konkreetse rea (või isegi sümboli) kohta küsida. Kui tudeng vastata ei oska, võib see kogu kaitsmise hinde 0-ks viia.

Ülesannete koodistiil

Kõikide ülesannete puhul rakendatakse Java koodistiili kontrolli. Kood peab täielikult vastama stiilinõuetele, vastasel juhul ei saa ülesande eest punkte. Täpsemalt tuleb iga ülesande juurde eraldi "stiili" hinne, mis korrutatakse testide tulemuse ja kaitsmisega läbi. Kui siilihinne on 0, siis on ka kogu tulemus 0.

Stiili eest saab 1 punkti juhul, kui ühtegi stiiliviga koodis ei leidu. Muul juhul on stiili eest tulemus 0. Erinevate ülesannete juures võivad natuke erinevad nõuded olla. Tudeng saab ülesande esitamisel tagasisidet oma koodistiili probleemide kohta ning saab neid kuni tähtajani parandada.

Tunniülesanded (koodiga PR)

Üldiselt igas praktikumis antakse tudengitele üks harjutusülesanne, mida saab lahendada ainult kohapeal. Lahendust otseselt kaitsma ei pea. Ülesannete eesmärk on tutvustada tudengile uut teemat. Kui tudengil jääb midagi segaseks, saab ta õppejõult kohe küsida.

  • vähemalt 20 PR ülesannet semestri jooksul
  • iga ülesande eest kuni 0.2 punkti.
  • ülesande eest saab punkte vaid siis, kui näitad selle õppejõule tunnis ette.
  • ülesande esitamiseks tuleb see git'i laadida.

Kodused ülesanded (koodiga EX)

Semestri jooksul antakse 15 ülesannet koduseks iseseisvaks lahendamiseks. Ülesanne antakse tavaliselt nädala alguses ja selle tähtaeg on järgmise nädala alguses (seega on tudengil nädal aega aega seda lahendada). Ülesande korrektse lahendamise ja kaitsmise eest on võimalik saada kuni 1 punkt.

Ülesanne läheb hindamisele, kui selle lahendus on õigel ajal git'is vastavas kaustas (näiteks EX01) ja see vastab stiilinõuetele. Ülesande git'i panemisel jooksutatakse tudengi koodi peal automaattestid, mis kontrollivad lahenduse korrektsust. Tudeng saab testitulemuse teada emaili teel (näiteks 80% läbitud). Tudengil on kuni tähtajani aega oma koodi parandada, et saada võimalikult kõrge tulemus. See tähendab, et tudeng võib ükskõik mitu korda ülesande lahendust git'i laadida. Arvesse läheb parim tulemus (kui pole öeldud teisiti).

Lisaks sisulisele testimisele annab automaattestimine tagasisidet ka stiili kohta. Selleks, et ülesannet saaks kaitsma tulla, peab stiiliprobleemid ära lahendama. Vt. #Ülesannete koodistiil

Automaattestidest saadud tulemus ei anna automaatselt punkte. Selleks, et tudeng saadud tulemuse punktideks saab (näiteks 80% => 0.8p), peab tudeng ülesande kaitsma õppejõule. Vt. #Ülesannete kaitsmine

Harjutusülesandeid saab kaitsta vaid oma tunni ajal. Kui tudeng tahab kaitsta teise rühma tunni ajal, siis ta peab ootama õige rühma kaitsmised ära ning peale neid võib kaitsta. Üldiselt on kaitsmiseks määratud tähtaeg üks nädal peale selle esitamistähtaega.

Kokkuvõte

  • 15 ülesannet semestri jooksul
  • iga ülesanne kuni 1 punkt
  • ülesanne tuleb kaitsta õppejõule
  • punktide saamiseks peab stiil korras olema
  • kaitsmisel peab koodist 100% aru saama
  • ülesande esitamiseks tuleb see git'i laadida

Suured kodused ülesanded (projektid, koodiga HW)

Projektid on mõnevõrra mahukamad iseseisvad ülesanded, kus kombineeritakse erinevad õpitud teadmised mõne suurema probleemi lahendamiseks. Kokku on semestri jooksul 2 sellist tööd. Mõlemal on konkreetne tähtaeg. Mõlema projekti lahendamine annab kuni 10 punkti.

Projekt tuleb ettemääratud tähtajaks laadida git'i (näiteks kaust HW01). Kodutöö tuleb kaitsta õppejõule selleks ettenähtud tundide ajal. Vt. #Ülesannete kaitsmine.

Projektide lahendamine on eelduseks parema hinde saamiseks. Nimelt kumbki projekt annab võimaluse saada parem lõpphinne. Kui tudeng ei lahenda ühtegi projekti ära, on võimalik maksimaalne hinne "3". Iga kaitstud projekt tõstab seda maksimaalset hinnet ühe palli võrra. Näiteks ühe kaitstud projektiga on võimalik saada lõpphinne "4", kahe kaitstud projektiga "5". Kui tudeng ühtegi projekti ei kaitse, saab ta maksimaalselt hindeks "3". Nendel tudengitel, kes muidu oleksid hindega "3" rahul, on soovitatav projekte ikka lahendada ja kaitsta, kuna need annavad täiendavalt punkte (mis kokkvõttes aitavad ainet läbida) ja mis kõige olulisem, õpetavad programmeerimist.

Projekte kaitstakse ettemääratud praktikumides. Kuni kolm nädalat peale tähtaega saab ülesande kaitsmise eest kuni 50% (ümardatakse alla, nt 7p => 3p). Alates neljandast nädalast peale tähtaega ülesannet enam kaitsta ei saa. Kõik ülesanded tuleb kaitsta semestri jooksul.

Projekt koosneb erinevatest osadest. Täpsemalt tuleb lugeda projekti kirjeldusest. Selleks, et projekt läheks arvesse parema hinde saamisel, peab sellest minimaalne osa (põhiosa) töötama.

Projektide kokkuvõte

  • 2 projekti semestri jooksul
  • iga projekt annab kuni 10 punkti
  • kaitsmine õppejõule ettemääratud praktikumi ajal
  • kaitsmine peale tähtaega kuni 3 nädalat annab 50% punktidest (ümardatakse alla)
  • 4 või enam nädalat peale tähtaega projekti enam kaitsta ei saa
  • projekt tuleb laadida mainitud tähtajaks git'i vastavasse kausta.
  • kehtivad üldised kaitsmise reeglid
  • iga edukalt kaitstud projekt annab tudengile võimaluse saada lõpphindeks 1 palli võrra parema hinde. 0 projekti => maksimaalne hinne "3", 1 projekt => maksimaalselt hinne "4", 2 projekti => maksimaalne hinne "5".
  • projekt on edukalt kaitstud, kui lahendatud on vähemalt põhiosa.

Tunnikontrollid

Semestri jooksul korraldatakse 3 tunnikontrolli. Tudeng peab tunnikontrolli tegemiseks tunnis kohal olema. Iga tunnikontrolli eest võib saada kuni 2 punkti. Seega kokku tunnikontrollide peale 6 punkti. Tunnikontroll sisaldab nii praktilist ülesannet (koodikirjutamine) kui valikvastustega küsimusi. Pärast tähtaega jääb tunnikontroll avatuks (saab harjutada).

Tunnikontrollid toimuvad üks kord kuus alates märtsist (täpsemalt alates 5 nädalast toimub üks tunnikontroll 4 nädala jooksul).

Eksam

Täpsustub!

Enne eksamit saadud punktid liidetakse ning arvesse läheb maksimaalselt 50 punkti (ehk kui tudeng on kogunud 52 punkti, läheb arvesse 50).

  • Eksamieeldus: vähemalt 15 punkti saadud enne eksamit
  • eksam annab kokku kuni 60 punkti
  • Eksam on sooritatud, kui selle eest on saadud vähemalt 31 punkti (51% võimalikust maksimaalsest)
  • eksamile peab registreeruma ÕIS-is (hiljemalt eelmisel päeval kell 12)
  • kaasa võtta pildiga isikut tõendav dokument
  • eksam toimub arvutiga, kuni 4h

Eksam sooritatakse arvutiklassi arvutite peal, kood läheb git'i. Välist interneti kasutada ei tohi. git'i seadistamise jms puhul saavad õppejõud aidata. Osa eksamist on teoreetiline, suurem osa praktiline (programmeerimisülesannete lahendamine).

Punktid kokkuvõtvalt

  • tunniülesanded 20 x 0.2p = 4p
  • koduülesanded 15 x 1p = 15p
  • projektid 2 x 10p = 20p
    • iga kaitstud projekt annab võimaluse teenida 1 pall kõrgema hinde (0 kodutööd => maks hinne "3", 2 kodutööd => maks hinne "5").
  • tunnikontrollid 3 x 2p = 6p
  • võimalus teenida lisapunkte
  • enne eksamit läheb arvesse maksimaalselt 50p.
  • eksam 60p
  • punktid enne eksamit ja eksamitulemus liidetakse
  • hinne kujuneb punktisumma pealt
    • 0-50p = "0"
    • 51-60p => "1"
    • ...
    • 91-.. p => "5"