Aineopintojen harjoitustyö: ohjelmistotekniikka
Kurssin nimi on muuttunut syksyllä 2023, tätä aiemmin kurssi tunnettiin nimellä Ohjelmistotekniikka
Kurssilla tutustutaan ohjelmistokehityksen periaatteisiin sekä menetelmiin ja sovelletaan niitä toteuttamalla pienehkö harjoitustyö Python-kielellä.
Kurssin kolmella ensimmäisellä viikolla on muutama ohjauksessa tai omatoimisesti tehtävä harjoitustehtävä. Kurssin pääpainon muodostaa viikolla 2 aloitettava, itsenäisesti tehtävä harjoitustyö. Työtä on tarkoitus edistää pala palalta viikoittaisten tavoitteiden ohjaamana.
Kurssin arvostelu perustuu pääasiassa harjoitustyöstä saataviin pisteisiin. Osa pisteistä kertyy aikatauluun määriteltyjen viikoittaisten välitavoitteiden kautta, osa taas perustuu työn lopulliseen palautukseen. Jos olet jo toteuttanut isohkoja ohjelmistoja, on kurssi tietyissä tapauksissa myös mahdollista hyväksilukea.
Kurssilla ei ole koetta. Harjoitustyö tulee tehdä kurssin aikataulujen puitteissa. Kesken jäänyttä harjoitustyötä ei voi jatkaa seuraavalla kurssilla (keväällä 2026), joten muista varata riittävästi aikaa (10-15h viikossa) koko periodin ajaksi!
Tarkemmat ohjeet harjoitustyöhön löytyvät täällä. Kurssimateriaali löytyy täältä.
If you are in the English-language BSc program and would like to take this course but cannot read Finnish, please contact the teacher.
Kirjoitusvirheitä
Jos huomaat tehtävissä tai muussa materiaalissa kirjoitusvirheitä, kirjaudu GitHubiin ja toimi tämän ohjeen mukaisesti.
Ajankohtaista
- Kurssin aloitustilaisuus ke 29.10.2025 klo 10.15–11.45
- Aloitustilaisuudessa käytettävät kalvot löytyvät täältä
- Kurssilla on Discord-kanava, jossa on tarjolla ohjausta ja keskustelua kurssiin liittyen
- Jos kysyt jotain, joka koskee koodiasi tai siinä esiintyviä virhetilanteita, lisää kysymyksen yhteyteen linkki omaan repositorioosi. Ilman koodin näkemistä ongelman selvittäminen on hankalaa tai jopa mahdotonta.
- HUOM: kaikki epäasialliset, halventavat ja jotain ihmisryhmää syrjivät kommentit kanavalla ovat kiellettyjä ja tälläisten kommenttien esittäjät poistetaan kanavalta
- Jos tarvitset kurssiin liittyvää ohjausta, tule pajaohjaukseen 3.11. - 19.12.:
Harjoitustyön toimivuus
- Kurssilla käytettävän Python version tulee olla vähintään 3.10.
- Koneiden konfiguraatioissa on eroja, ja tällä kurssilla ei riitä että hajoitustyössä tekemäsi sovellus toimii vain omalla koneellasi
- Harjoitustyösi pitää pystyä joka viikko suorittamaan, kääntämään ja testaamaan komentoriviltä käsin laitoksen Linux-koneilla (tai uusimmat päivitykset sisältävällä cubbli-linuxilla), muussa tapauksessa työtä ei tarkasteta ja menetät viikon/loppupalautuksen pisteet.
- Pääset testaamaan ohjelmaasi laitoksen koneella myös kotoa käsin käyttämällä etätyöpöytää, valitse valitse Cubbli Linux
Aikataulu
Viikko 1
Palautuksen deadline tiistai 4.11. klo 23:59
- Kurssin aloitustilaisuus. Aloitustilaisuudessa käytettävät kalvot tulevat löytymään täältä. Aloitustilaisuudesta julkaistaan myöhemmin tallenne, joka on katsottavissa täältä
- Tehtävät: Komentorivi- ja Git-harjoittelu (1p)
- Tehtävien palautus tapahtuu tekemällä repositorio GitHubiin ja rekisteröitymällä Labtooliin
- Lähtötasotesti
Viikko 2
Palautuksen deadline tiistai 11.11. klo 23:59
- Harjoitustyö ja tehtävät: Aiheen alustava määrittelydokumentti, testaaminen ja unittest (3p)
- Oman harjoitustyön toteutus alkaa
Viikko 3
Palautuksen deadline tiistai 18.11. klo 23:59
- Harjoitustyö ja tehtävät: Koodin runko valmiina, luokka- ja sekvenssikaaviot (3p)
Viikko 4
Palautuksen deadline tiistai 25.11. klo 23:59
- Harjoitustyö (3p)
- Ohjelman perustoiminnallisuus
- Testien aloitus
- Alustava rakenne luokkakaaviona
- Pylint otettu käyttöön
Viikko 5
Palautuksen deadline tiistai 2.12. klo 23:59
- Harjoitustyö (3p)
- Release 1
- Testikattavuus nousee
- Jotain päätoiminnallisuutta kuvaava sekvenssikaavio
Viikko 6
Palautuksen deadline tiistai 9.12. klo 23:59
- Harjoitustyö (3p)
- Release 2
- Testikattavuus nousee
- Docstring-dokumentaatio aloitettu
- Alustava versio arkkitehtuuridokumentista
- Koodikatselmointi (2p)
Viikko 7
Lopullisen palautuksen deadline sunnuntai 21.12. klo 23:59