Ohjelmistokehityksen menetelmät ja käytänteet

Opas on tarkoitettu ohjelmistokehityksessä tarvittavien menetelmien sekä käytänteiden kouluttamiseen. Tutustutaan eri työkalujen käyttöön, joita päivittäin ja viikottain tarvitaan. Opas on tehty opettamisen tueksi.

Sisältö

Versionhallinta
Perusteet luvun tehtävät koostuvat useammasta tasosta. Tasot on yritetty kokoa loogiseen järjestykseen siten, että aina ennen seuraavaa tasoa olisi hyvä tehdä edellinen. Loppupäässä tehtävät ovat kuitenkin vapaampia ja enemmän tiedonhakuun liittyviä, koska joitakin asioita versionhallinnan käytöstä on vaikeampi opettaa suoraan. Erikoistilanteiden luominen opetusta varten on hankalaa ja sen sijaan pyritään tuomaan esille erilaisia tilanteita, joita työskentelyn aikana kohtaa. Monet ovat kuitenkin harvinaisia mutta varsinkin aluksi voi syntyä paljonkin erikoistilanteita mihin ei löydy suoraa vastausta tästä oppaasta.
Yksikkötestaus
Perusteissä käydään läpi yksikkötestauksen pääperiaatteet käytännössä. Tasot on suunniteltu siten, että alempi taso täydentää ylempää. Sisällöt auttavat tutustumaan aiheeseen ja opiskelijan tehtävä on itsenäisesti löytää näihin kysyttyihin asioihin vastaukset. Yksikkötestauksen harjoituksissa käytetään xUnit perheeseen kuuluvia yksikkötestauskirjastoja. Esimerkit ovat C# -ohjelmointikielellä tehtyjä mutta samat periaatteet toimivat ohjelmointikielestä riippumatta.
Test Driven Development (TDD)
Testausvetoinen kehitys tai kuten se paremmin tunnetaan termillä Test Driven Development, on tärkeä osa-alue testien kirjoittamisessa. Aihe on hankalampi opettaa ja vaatii kokemuksen kerryttämistä. Esimerkeissä tullaan kuitenkin tarjoamaan mahdollisuus tämän aiheen oppimiseen mutta parhaiten taidon omaksumisesta voi varmistua, kun kokeneempi kehittäjä antaa siitä palautteen. Teoriassa helppo aihe mutta käytännössä haastava.
Ketterä ohjelmistokehitys (Agile development)
Kirjassa ei ole varsinaisia tehtäviä ketterän ohjelmistokehityksen osalta. Lähteet toimivat vain aiheen esittelijänä. Tarkoitus on lisätä myöhemmin käytännön asioita miten kokonaisuus voi toimia ja minkälaisia hyötyjä menetelmien noudattamisesta on.
Agile esimerkki, sykli (alunperin valmisteltu projektityöskentelyn harjoitusta varten)
Last modified 4yr ago