Arviointi¶
Kurssin suoritus koostuu viikoittaisista harjoitustehtävistä sekä harjoitustöistä eli projekteista. Lisäksi tulee läpäistä tentti, joka järjestetään sähköisenä tenttinä.
Näiden kategorioiden maksimipisteet ja keräämäsi pisteet näkyvät Plussan oikeassa reunassa sekä Kurssimateriaali- että Omat pisteesi -näkymissä.
Arvosanaan vaikuttavat asiat¶
Arvosana muodostuu seuraavista osista:
Normaalit ohjelmointiharjoitukset (N): Harjoituspisteitä kerryttävät viikoittain tehtävät harjoitustehtävät, jotka ovat tyypillisesti koodaustehtäviä. Harjoituspisteitä pitää kerätä vähintään (noin) puolet maksimimäärästä. (Tarkat pisterajat näkyvät alla olevassa taulukossa.)
Projektit (P = P1 + P2): Projektipisteitä kerryttävät projekteista saadut pisteet. Kurssilla on kaksi projektia, ja ne molemmat ovat pakollisia. Projektipisteitä pitää kerätä vähintään 50 näistä kahdesta projektista yhteensä, eli vähintään puolet kaikista projektipisteistä.
Bonus (B): Bonuspisteitä (max. 10) saat vastaamalla materiaalin lopussa olevaan kurssikyselyyn. Siitä saadut pisteet ovat aidosti bonuspisteitä, eli ne lasketaan yhteen viikkoharjoituspisteiden kanssa, mutta ne eivät kasvata viikkoharjoitusten maksimipistemäärää.
Tentti: Kurssilla on sähköinen lopputentti. Se arvostellaan asteikolla 1-5, ja se on läpäistävä saadakseen hyväksytyn kokonaissuorituksen. Tentti kattaa kurssin keskeiset osaamistavoitteet teorian ja C++:n osalta, teknisemmät osaamistavoitteet liittyvät harjoitustöihin.
Arviointiin ei vaikuta:
Kategorian M tehtävät ovat monivalintatehtäviä, jotka on tarkoitettu oman osaamisen arviointiin. Monivalintakysymyksiin vastaaminen (mikä edellyttää teoriaosuuksien lukemista ja videoiden katsomista) auttaa tenttiin valmistautumisessa.
Kategoria GDPR sisältää vain luvan kurssidatan käyttämisestä tutkimustarkoituksiin.
Arvioinnissa on vielä lisäsääntö:
Tenttiarvosanalla 1 ei voi saada parempaa kokonaisarvosanaa kuin 3.
Arvioinnin osa-alueet tarkemmin¶
Tekemällä viikkoharjoituksia ja projekteja saat tulospisteitä alla olevan taulukon mukaisesti. Sarakkeen N (normitehtävät) luvut ovat prosenttilukuja (%). Ne lasketaan summaamalla kategoriasta N saadut pisteet ja jakamalla summa kyseisen kategorian maksimipisteiden summalla. Sarakkeen P (projektit) luvut ovat myös prosenttilukuja ja samalla myös pistemääriä (p), sillä projektien maksimipistemäärä on sata. Sarakkeessa P otetaan huomioon projekteista saadut pisteet eli pisteet kategorioista P1 and P2.
Tulospisteet viikkoharjoituksista ja projekteista¶
Tulospisteet |
N (%) |
P (% = p) |
|---|---|---|
1 |
50 |
50 |
2 |
60 |
60 |
3 |
70 |
70 |
4 |
80 |
80 |
5 |
90 |
90 |
Yllä olevasta taulukosta saadaan kaksi (mahdollisesti eri) tulospistettä: yksi viikkotehtäville ja toinen projekteille. Nämä tulospistelukemat sekä (mahdollinen) tenttiarvosana vaikuttavat lopulliseen arvosanaan alla kerrottavalla tavalla.
Suorittaaksesi kurssin hyväksytysti sinun pitää saada vähintään puolet viikkotehtäväpisteistä (sarake N) ja saada kahdesta projektista vähintään 50 pistettä (sarake P). (Vaikka saisit toisesta projektista 50 pistettä ja toisesta 0, niin pisteesi eivät riitä läpipääsyyn, sillä molemmat projektit ovat pakollisia.) Lisäksi tentistä pitää saada hyväksytty arvosana (1-5). Lopullinen arvosana saadaan näiden kolmen luvun keskiarvosta: tenttiarvosana, viikkoharjoitusten tulospisteet ja projektien tulospisteet. Keskiarvo pyöristetään lähimpään kokonaislukuun, jolloin esimerkiksi 2.33 pyöristyy 2:een, mutta 2.67 pyöristyy 3:een.
Poikkeus: Keskiarvon laskemisessa on kuitenkin sellainen poikkeus, että jos tenttiarvosana on 1, kokonaisarvosana ei voi olla parempi kuin 3.
Arvosanalaskuri¶
Jos yllä kerrotut säännöt lopullisen arvosanan laskemiseksi tuntuvat
sekavilta ja jos ymmärrät asian paremmin ohjelmakoodista,
kannattaa tutustua esimerkkiin examples/00/grading.
Vältyt isommilta ongelmilta, jos kopioit esimerkin hakemistoon
student/00/grading ennen ohjelman ajamista.
Esimerkki löytyy Gitistä melkein samasta paikasta kuin tehtävien koodipohjat. Kannattaa kuitenkin ensin tehdä valmiiksi ja palauttaa tämän kierroksen ensimmäinen tehtävä (4.2.1 Kurssin palautuskäytäntö), jotta Gitin ja versionhallinnan käyttö olisi tutumpaa.
Vaikka koodin lukeminen tuntuisi vaikealta, voit ajaa esimerkkiohjelmaa erilaisilla tulospisteillä ja tenttiarvosanoilla ja tutkia, millainen arvosana kyseisillä syötteillä olisi tulossa. Ohjelma toimii seuraavasti:
The program uses the following values for constants:
MAX_P_POINTS: 100
MAX_N_POINTS: 650
MAX_B_POINTS: 10
Update the values, if they do not match with those in Plussa.
Enter points from categories N, P1, P2, B, and exam grade: 650 50 50 10 1
-> Score from weekly exercises: 5
-> Score from projects: 5
-> Total grade: 3
The program uses the following values for constants:
MAX_P_POINTS: 100
MAX_N_POINTS: 650
MAX_B_POINTS: 10
Update the values, if they do not match with those in Plussa.
Enter points from categories N, P1, P2, B, and exam grade: 650 20 30 10 5
-> Score from weekly exercises: 5
-> Score from projects: 1
-> Total grade: 4
The program uses the following values for constants:
MAX_P_POINTS: 100
MAX_N_POINTS: 650
MAX_B_POINTS: 10
Update the values, if they do not match with those in Plussa.
Enter points from categories N, P1, P2, B, and exam grade: 650 50 0 10 5
-> Score from weekly exercises: 5
-> Score from projects: 0
-> Total grade: 0
Ensimmäiseksi syötteeksi annetaan siis viisi lukua välilyönneillä eroteltuna.
Huomaa tarkistaa, että ohjelma käyttää niitä maksimipisteitä, jotka
näkyvät Plussassa.
Tarvittaessa voit päivittää vakioiden arvot tiedostoon main.cpp.
Projekteista¶
Projektit ovat isompia ohjelmointitehtäviä kuin viikottaiset harjoitukset. Niiden tarkoitus on varmistaa, että jokainen osaa soveltaa kurssin aihepiirejä itsenäisesti (ja osaa tentissä tarvittavat tiedot ja taidot). Ryhmätyöskentelyyn on seuraavat säännöt:
Kurssilla on kaksi projektia. Molemmat ovat pakollisia. Yksi projekti ei siis riitä, vaikka saisit siitä 50 pistettä tai yli.
Projektit saa tehdä (ei ole pakko) ryhmätyönä korkeintaan kahden hengen ryhmissä. Tällaisissa tapauksissa jokaisen lähdekooditiedoston alkuun pitää selkeästi merkitä, ketkä kaksi henkilöä ovat tehneet työn (opiskelijanumero, nimi ja sähköpostiosoite).
Parityön sallivia projekteja varten kurssialustalla on linkki “Luo uusi ryhmä”. Sen avulla opiskelijat pääsevät muodostamaan ryhmiä. Lisäksi tällaisten projektien palautuslaatikkossa on näkyvissä kaksi vaihtoehtoa: “Palauta yksin” / “Palauta ryhmässä”. Ole tarkkana, että valitset oikean vaihtoehdon, koska valintaa ei voi myöhemmin perua.
Jos työskentelet parina, projektin kaikkien palautusten pitää olla paripalautuksia, et voi siis esim. harjoittelumielessä tehdä ensin palautuksia yksin.
Ryhmätyöskentely vaatii itsekuria. Katastrofin ainekset ovat kasassa, mikäli ryhmätyöskentely on sillä tasolla, että toinen tekee ja toinen ei ymmärrä juuri mitään. Tällaisessa tilanteessa on lähes varmaa, että se joka ei ymmärrä, mitä ollaan tekemässä, ei opi kurssin asioita riittävästi, jotta hän voisi jatkaa seuraaville kursseille.
Kopioinnista (plagioinnista)
Jos kopioinnista jää kiinni, seurauksena on välitön harjoitustyön hylkääminen ja kurssisuorituksen siirtyminen myöhempään ajankohtaan. Harjoitustyön kopioiminen on tenttivilppiin rinnastettava rike. Tenttivilpistä voi pahimmillaan seurata yliopistosta erottaminen.
Myös alkuperäisen koodin kirjoittajaa (siis sitä, jonka koodia on kopioitu) kohtaa jonkinlainen sanktio. Tämä voi olla arvosanan alennus, korvaavan harjoitustyön toteuttaminen tai muuta vastaavaa. Jokainen tapaus arvioidaan erikseen.
Neuvo
Jos haluat jatkaa ohjelmoinnin opiskelua tämän opintojakson jälkeen, on tärkeää tietää, että myöhempien opintojaksojen (Tietorakenteet ja algoritmit 1 sekä Ohjelmointi 3: Rajapinnat) esitietovaatimuksina on arvosana 3 tästä opintojaksosta.
Projekteja käsitellään viikkoharjoituksissa kyseisten viikkojen kohdalla. Seuraamalla harjoituksia sinun helpompi päästä alkuun projekteissa.
Kuten edellä kerrottiin, assistentit arvioivat projektit, jolloin he kiinnittävät huomiota esim. erilaisiin tyyliseikkoihin ja versionhallinnan käyttöön. Kun assistentit ovat saaneet projektin arvioitua, heidän antamansa palaute lisätään Plussaan yhdeksi projektipalautukseksi. Arvioinnin valmistumisesta tulee myös uutinen Plussaan. Jos sinulla on huomauttamista projektisi arvioinnista, ota yhteyttä työn tarkastaneeseen assistenttiin viikon kuluessa uutisen lisäämisestä. Assistentin sähköpostiosoite löytyy saamastasi palautteesta.
Erikoisjärjestelyt¶
Opintojaksolla on niin suuri määrä opiskelijoita, että erikoisjärjestelyjä tehdään vain hyvin perustelluista dokumentoiduista syistä (kuten lääkärintodistuksella, yksilöllisillä opiskelujärjestelyillä tms.).
Jos esimerkiksi tarvitset lisäaikaa tehtävien tekemiseen tms., lähetä viestiä kurssin sähköpostiin (prog2@tuni.fi) mahdollisimman pian tarpeen ilmettyä, mieluiten ennen tehtävän eräpäivää, niin tilanteesta voidaan neuvotella.