Skip to content

Latest commit

 

History

History
151 lines (107 loc) · 9.01 KB

README.md

File metadata and controls

151 lines (107 loc) · 9.01 KB

Ohjelmistotekniikka, syksy 2020

Kurssin nimi on muuttunut syksyllä 2018, tätä aiemmin kurssi tunnettiin nimellä Ohjelmistotekniikan menetelmät

Yleistä

Kurssilla tutustutaan ohjelmistokehityksen periaatteisiin sekä menetelmiin ja sovelletaan niitä toteuttamalla pienehkö harjoitustyö.

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.

Kurssilla ei ole koetta. Harjoitustyö tulee tehdä kurssin aikataulujen puitteissa. Kesken jäänyttä harjoitustyötä ei voi jatkaa seuraavalla kurssilla (keväällä 2021), joten muista varata riittävästi aikaa (10-15h viikossa) koko periodin ajaksi!

Tarkemmat arvosteluperusteet täällä.

Kirjoitusvirheitä

Jos huomaat tehtävissä tai muussa materiaalissa kirjoitusvirheitä, kirjaudu GitHubiin ja toimi täällä olevan ohjeen mukaan.

Ajankohtaista

  • Kurssin ainoa luento ma 26.10. klo 14-16 etänä zoomissa
  • Sovellus tehdään käyttämällä Javan versiota 11. Asennusohjeet
  • Kurssista on nyt myös olemassa betatestausvaiheessa oleva Python-versio
    • Python-version suortittaminen omalla vastuulla. Ohjelmoinnin perusteiden suorittaminen Pythonilla ei riitä esitiedoksi! Olio-ohjelmointi on syytä hallita
  • Kurssin Telegram-kanava: https://t.me/tktlotm
    • 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 zoom-pajaan:
    • ti 14-16 (3.11. alkaen) zoom
    • to 16-18 zoom
    • pe 12-14 zoom
    • Myös Telegramissa voi kysellä erityisesti arkisin klo 9-16
    • Jos kysymys koskee koodia tai siinä esiintyviä virhetilanteita, kannattaa laittaa kysymyksen yhteyteen linkki omaan repositorioosi. Ilman koodin näkemistä ongelman selvittäminen on hankalaa tai jopa mahdotonta.
    • Jos et halua kysyä kysymystä suoraan kurssin kanavalla, voit ottaa yhteyttä suoraan "telegram-vastaavaan" Kalle Ilvekseen. Pääasiassa kysymykset kannattaa kuitenkin esittää kanavalla, sillä samat ongelmat koskevat usein useampaakin opiskelijaa
  • Jos olet jo toteuttaunut isohkoja ohjelmistoja, on kurssi tietyissä tapauksissa mahdollista hyväksilukea

Harjoitustyön toimivuus

  • Harjoitustyö on tehtävä Javan versiolla 11

  • 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ää https://helpdesk.it.helsinki.fi/ohjeet/tietokone-ja-tulostaminen/tyoasemapalvelu/etakaytettavat-tyopoydat-vdi-ja-vmware tai kirjautumalla ssh:lla palvelimelle melkki.cs.helsinki.fi

Linkkejä

Pajaohjauksen aikatauluja

Aikataulu

viikko 1

Palautuksen deadline ti 03.11. klo 23:59

  • Maanantaina 26.10. klo 14-16 aloitustilaisuus tallenne
  • Komentorivi- ja Git-harjoittelu (2p)
  • Tehtävien palautus tapahtuu tekemällä repositorio githubiin ja rekisteröitymällä labtooliin

viikko 2

Palautuksen deadline ti 10.11. klo 23:59

  • Harjoitustyön aiheen alustava määrittelydokumentti (1p)
  • JUnit-harjoittelu (2p)
  • Oman projektin koodaus alkaa

viikko 3

Palautuksen deadline ti 17.11. klo 23:59

  • Harjoitustyön koodin runko valmiina (2p)
  • Pajassa tehtävät tai omatoimiset [tehtävät]/tehtavat/viikko3.md) Luokka- ja sekvenssikaaviosta (1p)

viikko 4

Palautuksen deadline ti 24.11. klo 23:59

  • Harjoitustyö (3p)
    • Ohjelman perustoiminnallisuus
    • Testien aloitus
    • Alustava rakenne luokkakaaviona
    • Checkstyle otettu käyttöön
  • Tarkemmat ohjeet täältä

viikko 5

Palautuksen deadline ti 01.12. klo 23:59

  • Harjoitustyö (3p)
    • Release 1
    • Testikattavuus nousee
    • Jotain päätoiminnallisuutta kuvaava sekvenssikaavio
  • Tarkemmat ohjeet täältä
  • Koodikatselmointi (2p)

viikko 6

Palautuksen deadline ti 08.12. klo 23:59

  • Harjoitustyö (3p)
    • Release 2
    • Testikattavuus nousee
    • JavaDoc aloitettu
    • Alustava versio arkkitehtuuridokumentista
  • Tarkemmat ohjeet täältä

viikko 7

Lopullisen palautuksen deadline su 20.12. klo 23:59