Koneoppimismallit yksittäisen tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä
Schmidlechner, Jonatan (2024)
Schmidlechner, Jonatan
2024
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-09-18
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202408318470
https://urn.fi/URN:NBN:fi:tuni-202408318470
Tiivistelmä
Yksittäisen tehtävän työmäärän arvioiminen on välttämätöntä ketterässä ohjelmistokehityksessä, jossa ohjelmiston kehittäminen tapahtuu muutaman viikon pituisissa sprinteissä. Työmääräarviot mahdollistavat tehtävien priorisoimisen sprintin aikana, mikä on tärkeää sprintin onnistumiseksi. Epätarkat työmääräarviot usein johtavat ohjelmistoprojektin budjetin tai määräajan ylittymiseen. Työmäärän arviointi on yksi kehittäjien vaikeimmista tehtävistä. Arviointiprosessi perustuu perinteisesti kehittäjien subjektiiviseen näkemykseen, mikä usein johtaa virheelliseen työmääräarvioon. Koneoppimispohjaisilla arviointimalleilla on potentiaalia tarkentaa ja tehostaa yksittäisen tehtävän työmäärän arviointia.
Tämä systemaattinen kirjallisuuskatsaus selvittää, mitkä koneoppimistekniikat ovat yleisimpiä koneoppimispohjaisissa arviointimalleissa yksittäisen tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä. Tutkimuksessa tarkastellaan 10 tutkimusta, jotka ehdottavat uutta arviointimallia, sekä yhtä replikointitutkimusta. Lisäksi tutkimuksessa selvitetään mitä haasteita näiden arviointimallien kehittämiseen liittyy. Viimeisenä tutkimuksessa pohditaan sitä, pystyvätkö nämä arviointimallit auttamaan kehittäjiä tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä.
Tutkimuksesta selviää, että pitkä-lyhytkestomuisti-verkko ja takaisinkytketty valtatieverkko ovat koneoppimispohjaisten arviointimallien yleisimpiä koneoppimistekniikoita. Kyseisten tekniikoiden suosio on kasvanut merkittävästi vuodesta 2019. Haasteina koneoppimispohjaisten arviointimallien kehityksessä tehtävän työmäärän arviointia varten ovat koulutusdatan huono laatu ja saatavuus. Koulutusdatan huono saatavuus johtuu yritysten haluttomuudesta jakaa heidän yksityistä dataansa. Koulutusdatan huono laatu johtuu tehtäväkuvausten epäselvyydestä, lukuisista kirjoitusvirheistä sekä tehdyistä epätarkoista työmääräarvioista, joita ei jälkikäteen korjata. Kuitenkin yksikään tarkastelluista tutkimuksista ei päätarkoituksenaan tutkinut ongelmia, joita ilmenee koneoppimispohjaisten arviointimallien kehittämisessä. Siksi aihetta on syytä tutkia tarkemmin jatkotutkimuksissa.
Tutkimuksesta lisäksi selviää, että koneoppimispohjaiset arviointimallit saattavat olla hyödyllisiä yksittäisen tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä. Ne pystyvät automatisoimaan työmäärän arviointiprosessin täysin tai osallistumaan siihen kehittäjien tukena. On kuitenkin epäselvää kuinka tarkkoja arviointimallien antamat työmääräarviot ovat ihmisten perinteisten työmääräarvioiden tarkkuuksiin verrattuina. Yhden tarkastellun tutkimuksen ehdottama arviointimalli saavutti tyypillistä ihmisen perinteistä työmäärän arviointia tarkemman arviointitarkkuuden, mutta useimpia ehdotettuja arviointimalleja ei kyetty vertaamaan selkeästi ihmisten perinteisiin arvioihin niiden tarkkuuksien suhteen. Myös tämä aihe vaatii jatkotutkimusta.
Tämä systemaattinen kirjallisuuskatsaus selvittää, mitkä koneoppimistekniikat ovat yleisimpiä koneoppimispohjaisissa arviointimalleissa yksittäisen tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä. Tutkimuksessa tarkastellaan 10 tutkimusta, jotka ehdottavat uutta arviointimallia, sekä yhtä replikointitutkimusta. Lisäksi tutkimuksessa selvitetään mitä haasteita näiden arviointimallien kehittämiseen liittyy. Viimeisenä tutkimuksessa pohditaan sitä, pystyvätkö nämä arviointimallit auttamaan kehittäjiä tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä.
Tutkimuksesta selviää, että pitkä-lyhytkestomuisti-verkko ja takaisinkytketty valtatieverkko ovat koneoppimispohjaisten arviointimallien yleisimpiä koneoppimistekniikoita. Kyseisten tekniikoiden suosio on kasvanut merkittävästi vuodesta 2019. Haasteina koneoppimispohjaisten arviointimallien kehityksessä tehtävän työmäärän arviointia varten ovat koulutusdatan huono laatu ja saatavuus. Koulutusdatan huono saatavuus johtuu yritysten haluttomuudesta jakaa heidän yksityistä dataansa. Koulutusdatan huono laatu johtuu tehtäväkuvausten epäselvyydestä, lukuisista kirjoitusvirheistä sekä tehdyistä epätarkoista työmääräarvioista, joita ei jälkikäteen korjata. Kuitenkin yksikään tarkastelluista tutkimuksista ei päätarkoituksenaan tutkinut ongelmia, joita ilmenee koneoppimispohjaisten arviointimallien kehittämisessä. Siksi aihetta on syytä tutkia tarkemmin jatkotutkimuksissa.
Tutkimuksesta lisäksi selviää, että koneoppimispohjaiset arviointimallit saattavat olla hyödyllisiä yksittäisen tehtävän työmäärän arvioinnissa ketterässä ohjelmistokehityksessä. Ne pystyvät automatisoimaan työmäärän arviointiprosessin täysin tai osallistumaan siihen kehittäjien tukena. On kuitenkin epäselvää kuinka tarkkoja arviointimallien antamat työmääräarviot ovat ihmisten perinteisten työmääräarvioiden tarkkuuksiin verrattuina. Yhden tarkastellun tutkimuksen ehdottama arviointimalli saavutti tyypillistä ihmisen perinteistä työmäärän arviointia tarkemman arviointitarkkuuden, mutta useimpia ehdotettuja arviointimalleja ei kyetty vertaamaan selkeästi ihmisten perinteisiin arvioihin niiden tarkkuuksien suhteen. Myös tämä aihe vaatii jatkotutkimusta.
Kokoelmat
- Kandidaatintutkielmat [8798]