Kuvituskuva. Kuva: Iconscout.com.

Ohjelmistojen laatupajassa tutkitaan ohjelmistojen laatutyön, ylläpidon ja korjauksen näkymiä

14.12.2021

Laadunvarmistustyö on kallista ja aikaa vievää, sillä se vaatii paljon infrastruktuuria ja automatisointia, joiden rakentaminen vaatii osaamista ja resursseja. Usein laatutyö saa myös siirtyä kiireellisempien tehtävien tieltä, sillä se ei tuota välitöntä tulosta. Yhä useampi yritys panostaa ohjelmistojen tuotannossa laatuprosesseihin, sillä laadunvarmistukseen käytetty panos maksaa itsensä takaisin ohjelmiston ylläpidossa.

On arvioitu, että ylläpito voi viedä jopa 90 % koko ohjelmiston elinkaaren kustannuksista. Ylläpito muodostuu erilaisista päivityksiin ja korjauksiin liittyvästä työstä. Korjausten tekeminen valmiiseen ohjelmistoon on kallista puuhaa ja vanha alan viisaus kuuluukin, että virheiden korjaus suunnitteluvaiheessa maksaa vain murto-osan verrattuna ylläpidon aikaisiin muutostöihin.

Ohjelmistotuotannon nykytila nojaa vahvasti pilvisovelluksiin

Ohjelmistotuotannon nykytrendi on erilaisten pilvi- tai hybridisovellusten rakentaminen. Tällaiset ohjelmistot toimitetaan täysin tai osittain verkkopalveluina. Verkkopalvelut helpottavat ylläpitoa, sillä sovellukset sijaitsevat keskitetyssä paikassa. Lisäksi pilvisovellusten skaalaus on tyypillisesti helppoa, sillä pilvipalvelualustat mahdollistavat resurssien muuttamisen lennosta.

Valmiit ohjelmistokomponentit (commercial off-the-shelf) tuovat myös kustannustehokkuutta ja sopivat pilvipalveluina rakennettuihin sovelluksiin. Myös avoimen lähdekoodin ohjelmistokomponentit ovat suosittuja, sillä vapaasti saatavilla olevia ohjelmistoja tai niiden osia voidaan hyödyntää uusissa projekteissa. Tämä osaltaan tuo kustannussäästöjä ja osin siksi julkisissa ohjelmistoprojekteissa tuotetaan avointa lähdekoodia.

Laadunvarmistuksen veitsen terällä käytetään tekoälyä ja automaattista viankorjausta

Ohjelmistojen testaus virheiden varalta sekä katselmointi mahdollisten laatupoikkeamien havaitsemiseksi on ohjelmistojen tuotannossa nykypäivää. Nouseva trendi laadun hallinnassa on erilaisten tekoälypohjaisten laadunhallintyökalujen käyttö.

Maailmalla on myös tehty tutkimusta erilaisten uusien automaattisten korjausmenetelmien käyttämisestä ohjelmistojen korjaukseen ja ylläpitoon. Ohjelmistojen vikoja voidaan esimerkiksi paikata koneoppimismalleihin nojaavien algoritmien avulla.

Tulevaisuudessa on myös mahdollista, että ohjelmistot ovat itsekorjautuvia tai ainakin osaavat paikantaa vikoja automaattisesti. Pinnalla on ollut myös erilaiset ohjelmistojen  elinsiirtomenetelmät, joissa toimivista ohjelmistoista tuotuja siirrännäiskomponentteja käytetään viallisen ohjelman korjaamiseen.

Näitä tulevaisuuden näkymiä peilataan yritysten ohjelmistotuotannon ja laadunvarmistuksen käytäntöihin. Ohjelmistojen laatupajan perustaminen -hankkeessa tavoitellaan tiivistyvää yhteistyötä ohjelmistojen laadunvarmistuskäytänteiden kehittämiseksi. Tavoitteena on kartoittaa Etelä-Savon ohjelmistoyritysten laadunvarmistuksen käytäntöjä ohjelmistotuotannossa ja luoda pohjaa näiden kehittämiselle yhteistyön avulla.

Ohjelmistojen laadunvarmistuspajan perustaminen -hanketta rahoittaa Etelä-Savon maakuntaliitto Euroopan aluekehitysrahastosta (EAKR). Kaakkois-Suomen ammattikorkeakoulun hallinnoimaa hanketta toteutetaan 1.9.2021–30.6.2023. Lisätietoa verkkosivulta https://xamk.fi/laatupaja

Kirjoittanut Timo Hynninen

Kirjoittaja on tietotekniikan lehtori ja ohjelmistoalan koulutusvastaava Kaakkois-Suomen ammattikorkeakoulussa.