Prosessin mukaisen toiminnan ja ohjelmistokehittäjien taitojen rooli
testivetoisessa kehityksessä
Väitöstilaisuuden tiedot
Väitöstilaisuuden päivämäärä ja aika
Väitöstilaisuuden paikka
Linnanmaa, IT116
Väitöksen aihe
Prosessin mukaisen toiminnan ja ohjelmistokehittäjien taitojen rooli
testivetoisessa kehityksessä
Väittelijä
Filosofian maisteri Davide Fucci
Tiedekunta ja yksikkö
Oulun yliopiston tutkijakoulu, Tieto- ja sähkötekniikan tiedekunta, tietojenkäsittelytiede
Oppiaine
Ohjelmistotuotanto
Vastaväittäjä
Professor Oscar Pastor Lopez, Universidad Politécnica de Valencia, Espanja
Kustos
Professori Burak Turhan, Oulun yliopisto
Täsmällisesti noudatettu testivetoinen kehitys voi parantaa ohjelmistokehittäjien tuottavuutta mutta ei takaa ohjelmiston parempaa laatua.
Testivetoisessa kehityksessä kirjoitetaan toistuvasti yksikkötestejä ennen varsinaista koodia eikä sen jälkeen. Ohjelmistokehittäjien yhteisössä uskotaan testivetoisen kehityksen olevan patenttiratkaisu. Ohjelmistotuotannon tutkimuskirjallisuuden tulokset ovat kuitenkin ristiriitaisia asian suhteen.
Väitöstutkimuksessa käsitellään kahta näkökulmaa, joita ei aiemmassa testivetoisen kehityksen tutkimuksessa ole huomioitu: ohjelmistokehittäjien taitoja käyttää kyseistä menetelmää sekä sitä, kuinka täsmällisesti he seuraavat testivetoisen kehityksen prosessia. Näiden kahden tekijän vaikutusta ohjelmistokehittäjien tuottavuuteen ja heidän tuottamansa ohjelmiston laatuun tutkittiin useilla kokeilla, joita tehtiin niin teollisuudessa kuin akateemisessa ympäristössäkin. Osallistujia oli yli sata.
Kokeissa kerätty aineisto osoittaa, että testivetoisen ohjelmistokehityksen suosima ’testi ensin’ -menettelytapa lisää ohjelmistokehittäjien tuottavuutta. Ohjelmistokehittäjien taidot ovat kuitenkin tuotetun ohjelmiston laadun parantamisen kannalta tärkeämpiä kuin tiukasti prosessinmukainen toiminta. Lisäksi aineisto osoittaa, että lyhemmät kehitystoiminnan iteraatiot liittyvät laadun paranemiseen, käytettiinpä testivetoista kehitystä tai ei.
Näiden tutkimustulosten pohjalta ehdotetaan, ettei testivetoisen kehitysprosessin täsmällistä seuraamista kannata ylikorostaa ohjelmistotuotantoteollisuudessa. Samalla kuitenkin suositellaan testivetoisen ohjelmistokehityksen hyödyntämistä, kun ohjelmistokehittäjät ovat taitavia ja kokeneita.
Väitöstutkimuksessa käsitellään kahta näkökulmaa, joita ei aiemmassa testivetoisen kehityksen tutkimuksessa ole huomioitu: ohjelmistokehittäjien taitoja käyttää kyseistä menetelmää sekä sitä, kuinka täsmällisesti he seuraavat testivetoisen kehityksen prosessia. Näiden kahden tekijän vaikutusta ohjelmistokehittäjien tuottavuuteen ja heidän tuottamansa ohjelmiston laatuun tutkittiin useilla kokeilla, joita tehtiin niin teollisuudessa kuin akateemisessa ympäristössäkin. Osallistujia oli yli sata.
Kokeissa kerätty aineisto osoittaa, että testivetoisen ohjelmistokehityksen suosima ’testi ensin’ -menettelytapa lisää ohjelmistokehittäjien tuottavuutta. Ohjelmistokehittäjien taidot ovat kuitenkin tuotetun ohjelmiston laadun parantamisen kannalta tärkeämpiä kuin tiukasti prosessinmukainen toiminta. Lisäksi aineisto osoittaa, että lyhemmät kehitystoiminnan iteraatiot liittyvät laadun paranemiseen, käytettiinpä testivetoista kehitystä tai ei.
Näiden tutkimustulosten pohjalta ehdotetaan, ettei testivetoisen kehitysprosessin täsmällistä seuraamista kannata ylikorostaa ohjelmistotuotantoteollisuudessa. Samalla kuitenkin suositellaan testivetoisen ohjelmistokehityksen hyödyntämistä, kun ohjelmistokehittäjät ovat taitavia ja kokeneita.
Viimeksi päivitetty: 23.1.2024