Ohjelmiston ylläpidettävyys ja sen mittaaminen
Suupohja, Kiti (2023)
Suupohja, Kiti
2023
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ä
2023-02-24
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202302202523
https://urn.fi/URN:NBN:fi:tuni-202302202523
Tiivistelmä
Ohjelmiston ylläpito on ohjelmiston toimittamisen jälkeen tapahtuvien muutosten tekemistä, joiden tavoitteena voi olla ohjelmistovirheiden korjaus, suorituskyvyn parantaminen tai ohjelmiston mukauttaminen ympäristömuutoksiin. Se on ohjelmistokehityksen pisin ja kallein vaihe, jonka kulut sovelluksen kokonaishinnasta ovat kasvaneet viimeisten vuosikymmenien aikana. Tämän kandidaatintyön tavoitteena on tutkia, kuinka ohjelmiston ylläpito ja ylläpidettävyys määritellään nykypäivänä ja kuinka ohjelmiston ylläpidettävyyttä mitataan. Työssä esitellään erilaisia ylläpidossa käytettäviä mittareita ja vertaillaan niiden hyödyllisyyttä ylläpidettävyyttä arvioidessa.
Kirjallisuuskatsauksessa tutustutaan ensin ohjelmiston ylläpidon määritelmään ja sen alakategorioihin, jotka kuvaavat ohjelmiston ylläpitotoimien tavoitetta. Ylläpitoon liittyy vahvasti myös ylläpitokulujen ennustaminen, jota varten on luotu erilaisia arviointimalleja, joista yhteen tutustutaan tarkemmin tässä työssä. Ylläpitokuluja ennustettaessa voidaan hyödyntää erilaisia lähdekoodin ominaisuuksia, kuten virheiden ja ohjelmistorivien määrää. Ohjelmiston ylläpitoa helpottaa ohjelmistokoodin hyvä ylläpidettävyys, jota voidaan mitata erilaisilla ohjelmistometriikoilla.
Ylläpidettävyyden mittaamisesta on tullut tärkeä osa ohjelmiston jatkuvuuden varmistamista, sillä erilaiset metriikat auttavat ennustamaan ylläpitokuluja ja ohjelmiston elinkaaren pituutta tulevaisuutta varten. Ohjelmiston kompleksisuuden ja rakenteen mittareita voidaan hyödyntää ohjelmistoon jääneiden virheiden määrän ennustamiseen ohjelmistometriikoiden kautta, mutta taipumus virheisiin riippuu myös muista tekijöistä, kuten dokumentaatiosta ja kehittäjästä itsestään. Tässä työssä esitellään käytetyimpiä ohjelmistometriikoita ja perehdytään niiden laskemiseen. Havaittiin kuitenkin, ettei kaikkia metriikoita voida soveltaa kaikissa käyttötapauksissa, ja ettei kaikille mittareille ole olemassa standardoituja raja-arvoja.
Tässä työssä myös nousi esille ylläpidettävyyden mittaamisen haasteellisuus, sillä jotkin sen osa-alueista perustuvat kehittäjän henkilökohtaiseen kokemukseen. Lisäksi ohjelmistojen kehityksessä käytetyt teknologiat kehittyvät nopeasti, jolloin vanhat mittarit eivät välttämättä ole enää relevantteja tai käytettäviä tulevaisuudessa. Tästä voidaankin todeta, ettei ohjelmistometriikoiden sokea seuraaminen ole ylläpidettävyyden kannalta järkevin ratkaisu, vaan näitä mittareita kannattaa mieluummin käyttää työkaluna ohjelmiston ongelmakohtien löytämisessä.
Kirjallisuuskatsauksessa tutustutaan ensin ohjelmiston ylläpidon määritelmään ja sen alakategorioihin, jotka kuvaavat ohjelmiston ylläpitotoimien tavoitetta. Ylläpitoon liittyy vahvasti myös ylläpitokulujen ennustaminen, jota varten on luotu erilaisia arviointimalleja, joista yhteen tutustutaan tarkemmin tässä työssä. Ylläpitokuluja ennustettaessa voidaan hyödyntää erilaisia lähdekoodin ominaisuuksia, kuten virheiden ja ohjelmistorivien määrää. Ohjelmiston ylläpitoa helpottaa ohjelmistokoodin hyvä ylläpidettävyys, jota voidaan mitata erilaisilla ohjelmistometriikoilla.
Ylläpidettävyyden mittaamisesta on tullut tärkeä osa ohjelmiston jatkuvuuden varmistamista, sillä erilaiset metriikat auttavat ennustamaan ylläpitokuluja ja ohjelmiston elinkaaren pituutta tulevaisuutta varten. Ohjelmiston kompleksisuuden ja rakenteen mittareita voidaan hyödyntää ohjelmistoon jääneiden virheiden määrän ennustamiseen ohjelmistometriikoiden kautta, mutta taipumus virheisiin riippuu myös muista tekijöistä, kuten dokumentaatiosta ja kehittäjästä itsestään. Tässä työssä esitellään käytetyimpiä ohjelmistometriikoita ja perehdytään niiden laskemiseen. Havaittiin kuitenkin, ettei kaikkia metriikoita voida soveltaa kaikissa käyttötapauksissa, ja ettei kaikille mittareille ole olemassa standardoituja raja-arvoja.
Tässä työssä myös nousi esille ylläpidettävyyden mittaamisen haasteellisuus, sillä jotkin sen osa-alueista perustuvat kehittäjän henkilökohtaiseen kokemukseen. Lisäksi ohjelmistojen kehityksessä käytetyt teknologiat kehittyvät nopeasti, jolloin vanhat mittarit eivät välttämättä ole enää relevantteja tai käytettäviä tulevaisuudessa. Tästä voidaankin todeta, ettei ohjelmistometriikoiden sokea seuraaminen ole ylläpidettävyyden kannalta järkevin ratkaisu, vaan näitä mittareita kannattaa mieluummin käyttää työkaluna ohjelmiston ongelmakohtien löytämisessä.
Kokoelmat
- Kandidaatintutkielmat [8800]