Ohjelmistojen laatu asiakkaan näkökulmasta Päivi Pääkkö Helsingissä 9.3.2008 Pro gradu-tutkielma HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty/Section Matemaattis-luonnontieteellinen tiedekunta Tekijä Författare Author Päivi Pääkkö Työn nimi Arbetets titel Title Ohjelmistojen laatu asiakkaan näkökulmasta Oppiaine Läroämne Subject Tietojenkäsittelytiede Työn laji Arbetets art Level Pro gradu -tutkielma Tiivistelmä Referat Abstract Aika Datum Month and year Laitos Institution Department Tietojenkäsittelytieteen laitos Sivumäärä Sidoantal Number of pages Avainsanat Nyckelord Keywords Ohjelmistojen laatu Säilytyspaikka Förvaringställe Where deposited Kumpulan tiedekirjasto, sarjanumero C-2004- Muita tietoja Övriga uppgifter Additional information
Sisältö 1 Johdanto...1 2 Ohjelmistojen laatu...1 2.1 Varhaisimmat laatumallit...2 2.2 ISO 9126 standardi...4 2.2.1 Ohjelmistotuotteen laatu...5 2.2.2 Käytössä koettu laatu...6 2.3 Valtiovarainministeriön verkkopalvelujen laatukriteeristö...7 2.3.1 Käyttö...8 2.3.2 Sisältö...9 2.3.3 Johtaminen...10 2.3.4 Tuottaminen...10 2.3.5 Hyödyt...10 2.3.6 Laadun arviointi...10 2.4 Tee-se-itse-malli...11 3 Ohjelmistojen laadun mittaaminen, tutkiminen ja parantaminen...11 3.1 Miten ohjelmistojen laatua tulisi mitata...11 3.2 Miten laatua tulisi tutkia...11 3.3 Ohjelmistojen laatua rajoittavat tekijät...11 3.4 Ohjelmistojen laadun parantaminen...11 4 Ohjelmistojen laadun hallinta tietotekniikkaosastolla...11 4.1 Tee-se-itse-malli...11 4.2 Miten laatua voitaisiin mitata tietotekniikkaosastolla...12 4.3 Esimerkkiohjelmistojen laadun tutkiminen...12 4.4 Arvio esimerkkiohjelmistojen laadusta...12 4.5 Suositukset osastolle ohjelmistojen laadun kehittämiseksi...12 5 Yhteenveto...12 Lähteet...13 i
1 Johdanto 2 Ohjelmistojen laatu Sananlaskun mukaan kauneus on katsojan silmissä, vastaavasti ohjelmistoissa ohjelmistojenlaatu on katsojan silmissä [FeP97, s.337]. Ohjelmiston laatu riippuu siitä, kuka ohjelmistoa arvioi. Esimerkiksi asiakas voi kokea ohjelman laadukkaaksi, jos se on helppokäyttöinen, edullinen ostettaessa ja sen käyttöönotto on helppoa. Sama ohjelma voi esimerkiksi ohjelman ylläpitäjän kannalta tuntua vähemmän laadukkaalta, mikäli koodi on hankalasti ylläpidettävissä tai se vaatii jonkun tietynlaisen hankalan teknisen ratkaisun taakseen. Eri sidosryhmät kiinnittävät huomiota eri asioihin, koska heillä jokaisella on oma näkemyksensä laadusta [Eva04, kpl. 1.1]. Perinteisesti asiakkaat eivät yleensä osaa vaatia laatua. On totuttu liiaksi siihen, että ohjelmistot välillä kaatuilevat tai eivät muuten täytä vaatimuksia. Myöskään ohjelmistojen toimittajat eivät usein kiinnitä suurta huomiota ohjelmistojen laatuun, koska he saavat yleensä rahansa toimittamansa ohjelmiston huonosta laadusta huolimatta [Off02]. Usein toimittajille jopa maksetaan myöhemmin lisää, jotta he korjaisivat aikaisemmat virheensä. Onneksi ohjelmistojen käytön ollessa jo yleistä, ohjelmistojen laatuunkin on ruvettu viime vuosina kiinnittämään yhä enemmän huomiota. Niin ohjelmistotuotannossa kuin muillakin aloilla laatu on yleensä helppo tunnistaa kun siihen törmää, mutta se on hankalasti määriteltävissä. Laatu on usein melko läpinäkyvää, sitä ei varsinaisesti huomaa ennen kuin se on poissa [Gil92, s.3]. Kiinnitämme laatuun huomiota vasta siinä vaiheessa kun sitä ei ole ja laadun puuttuminen haittaa toimintaamme. Toisaalta muutamme herkästi käsitystämme laadusta suhteessa odotuksiimme. Jos tuote on esimerkiksi halpa, emme odota sen olevan kovin laadukas, vaan hyväksymme siinä olevat virheet. Kalliin tuotteen kohdalla samat virheet tekevät tuotteesta huonolaatuisen, koska odotimme kalliin tuotteen olevan laadukas. 1
Ohjelmistojen laadulle on annettu useita määritelmiä, kuten virheettömyys, erinomaisuuden aste tai tarkoitukseen sopivuus (fitness for purpose) [Gil92, s.6]. Mitattaessa laatua asiakkaan näkökulmasta, eräs ehdotettu määritelmä ohjelmistojen laadulle on käyttötarkoitukseensa sopiva (fitness for use) [Eva04, kpl. 1.1]. Tällöin ohjelmiston laadusta päättävät ohjelmiston käyttäjät tietyssä toimintaympäristössä [Eva04, kpl. 1.1]. Ohjelmistojen laatu koostuu useista erilaisista laatuattribuuteista, kuten esimerkiksi käytettävyydestä, ylläpidettävyydestä ja luotettavuudesta. Laatuattribuutit jaetaan yleensä sisäisiin ja ulkoisiin laatuattribuutteihin. Sisäiset laatuattribuutit kuvaavat ohjelmiston sisäisiä ominaisuuksia jotka voidaan mitata tarkastelemalla ainoastaan itse ohjelmistotuotetta [FeP97, s.74]. Ulkoisten laatuattribuuttien kohdalla tarkastellaan puolestaan ohjelmiston käyttäytymistä suhteessa sen ympäristöön [FeP97, s.74]. Ohjelmiston laatu määritellään vertaamalla ohjelmistoa haluttujen laatuattribuuttien yhdistelmään, jolloin laatu tarkoittaa sitä kuinka suuren määrän ohjelmisto näistä halutuista laatuattribuuteista täyttää [Sch04]. Kokonaiskuvan saamiseksi aion seuraavaksi käydä läpi muutamia yleisiä laatumalleja aloittaen ensimmäisistä 1970-luvulla kehitellyistä laatumalleista päätyen tuoreeseen Valtiovarainministeriön julkaisemaan laatukriteeristöön. 2.1 Varhaisimmat laatumallit McCall ja Boehm kehittivät 1970-luvun loppupuolella ensimmäiset hierarkkiset mallit ohjelmistojen laadun kuvaamiseksi. Mallit keskittyvät kuvaamaan lopputuotetta erilaisin laatutekijöin, pääasiassa loppukäyttäjän näkökulmasta [FeP97, s.340]. Suurin osa malleissa kuvatuista laatutekijöistä on korkealla tasolla olevia ulkoisia laatuattribuutteja, mutta ne sisältävät myös joitain sisäisiä laatuattribuutteja [FeP97, s.340]. Malleissa laatutekijät jaetaan pienempiin osiin kunnes lopulta päädytään mitattavissa oleviin yksinkertaisiin mittoihin. 2
McCall kehitti oman mallinsa tutkiessaan ohjelmistojen laadun eri tekijöitä ilmavoimien rahoittamassa tutkimuksessa [CaM78]. Ilmavoimilla oli kaupallista maailmaa suuremmat vaatimukset ohjelmistojen laadulle ja tuon ajan ongelmana oli, että ohjelmistojen laadulle ei ollut olemassa mitään yleisesti hyväksyttyä määritelmää [CaM78]. Sittemmin määritelmiä on tullut lisää. Nykyisin ongelmana tuntuu olevan pikemminkin se, että mikään malli tai määritelmä ei ole selkeästi ylitse muiden ja laajalti käytössä. McCall:n tavoitteena oli kaventaa ohjelmiston käyttäjien ja kehittäjien välistä kuilua, joten hän valitsi malliinsa sekä käyttäjien näkökulmaa että kehittäjien prioriteetteja heijastavia laatukriteerejä [Gil92, s.21]. Malli jakaa ohjelmistotyön kolmeen osa-alueeseen joita ovat tuotteen toiminta (product operations), tuotteen muuttaminen (product revision) ja tuotteen siirtäminen (product transition) [CaM78]. Kullekin osa-alueelle on määritelty 3-5 sitä kuvaavaa laatutekijää, kuten kuvasta 1 näemme. Laatutekijät käsittelevät laatua johtamisen näkökulmasta ja ne voidaan jakaa edelleen erilaisiksi laatukriteereiksi [CaM78]. Laatukriteerit puolestaan käsittelevät ohjelmistojen laatua itse tuotteen näkökulmasta ja niille voidaan siten määritellä erilaisia mittoja kuvaamaan kyseistä kriteeriä [CaM78]. Näin subjektiivisesti koettavasta ohjelmistojen laadusta yritetään tehdä mitattavissa olevaa. Kuva 1: Ohjelmistojen laadun osa-alueet ja laatutekijät [CaM78]. 3
Samoihin aikoihin Boehm kehitti oman laatumallinsa. Mallin tarkoituksena oli määritellä joukko hyvin rajattuja ja eroteltuja ohjelmistojen laadun ominaispiireteitä [Gil92, s.24]. Kehitystyön tuloksena Boehm huomasi, että kiinnittämällä huomiota ohjelmistojen laatuun voitaisiin saavuttaa huomattavia kustannussäästöjä ohjelmiston koko elinkaaren aikana [BBL76]. Myös Boehm jakoi ohjelmistojen laadun erilaisiin osakokonaisuuksiin, joita hän pilkkoi yhä pienemmiksi päätyen erilaisiin mittoihin, kuten kuvasta X näemme. 2.2 ISO 9126 standardi Vuosien kuluessa McCallin ja Boehm:n malleja käytettiin ja niitä paranneltiin kunkin organisaation omiin tarpeisiin sopivaksi. Myös monia uusia laadun määritelmiä ja malleja kehitettiin. Vaihtelevista käytännöistä johtuen asiakkaiden oli hankala ymmärtää ja vertailla eri ohjelmistotuotteiden laatua [ISO01]. Tähän ongelmaan yritettiin vastata kehittämällä ISO 9126 standardi, jonka ensimmäinen yritys 1980-luvulla epäonnistui yhteisesti sovittujen määritelmien puuttuessa [ISO01]. Työtä kuitenkin jatkettiin ja 1990-luvun alussa julkaistiin McCall:n mallin pohjalta tehdyn ISO 9126 standardin ensimmäinen versio [FeP07, s. 343]. Standardissa ohjelmistojen laatu jaettiin kuuteen laatua kuvaavaan laatuattribuuttiin. Standardin ensimmäistä versiota kritisoitiin siitä, että se ei määrittele tarpeeksi tarkasti laatuattribuuttien aliattribuutteja, mikä vaikeuttaa standardin käyttöä [FeP97, s. 343]. Vuonna 2001 julkaistiin standardista uusi versio, jossa varsinaiset laatuattribuutit säilyivät samoina, mutta aliattribuutteja esitellään tarkemmin [ISO01]. Standardissa tavoitteena on saavuttaa tarpeellinen ja riittävä laatu, joka kohtaa käyttäjien todellisten tarpeiden kanssa [ISO01]. ISO9126 standardissa on kuvattu kaksiosainen ohjelmistojen laadun malli. Ensimmäisessä osassa käsitellään itse ohjelmistotuotteen laatua ja toisessa osassa ohjelmiston käytössä koettavaa laatua. Standardi jakaa ohjelmistotuotteen laadun laatuattribuutteihin, joita ovat toiminnallisuus, käyttövarmuus, käytettävyys, suorituskyky, ylläpidettävyys ja siirrettävyys [ISO01]. Nämä vaikuttavat ohjelmiston käytössä koettuihin laatuattribuutteihin 4
(qulity in use attributes), joilla standardissa kuvataan niitä vaikutuksia, joita ohjelmistolla on tietyssä kontekstissa [ISO01]. Standardin mukaan ohjelmistoprosessin laatu vaikuttaa ohjelmiston sisäisiin laatuattribuutteihin, jotka vaikuttavat ohjelmiston ulkoisiin laatuattribuutteihin. Nämä puolestaan vaikuttavat käytössä koettuun laatuun. Vastaavasti kukin äsken mainituista riippuu aina edellisestä. Esimerkiksi ohjelmiston ulkoiset laatuattribuutit riippuvat siitä millaisia käytössä koettuja laatuattribuutteja ohjelmistolla halutaan olevan. Tämän mallin mukaan ohjelmistoprosessin laatu vaikuttaa ohjelmistotuotteen laatuun mikä taas vaikuttaa käytössä koettuun laatuun. Siten parantamalla ohjelmistoprosessia voidaan parantaa tuotteen laatua ja vastaavasti parantamalla tuotteen laatua voidaan parantaa käytössä koettua laatua. Käytössä koettu laatu antaa lisäksi arvokasta palautetta, jonka perusteella voidaan parantaa tuotteen laatua. Samoin tuotteen laatu antaa palautetta siitä kuinka laadukas ohjelmistoprosessi on ollut. Palautteen saaminen ja arvioiminen mahdollistavat organisaation jatkuvan oppimisen ja laadun parantamisen. Seuraavaksi käyn lyhyesti läpi standardissa määritellyt kuusi ohjelmistotuotteeseen liittyvää laatuattribuuttia. Lisäksi käyn läpi käytössä koetut laatuattribuutit, joita ovat tehokkuus, tuottavuus, käyttöturvallisuus ja tyytyväisyys. 2.2.1 Ohjelmistotuotteen laatu Standardin mukaan ohjelmistotuotteen laatu jaetaan kuuteen laatuattribuuttiin: toiminnallisuuteen, käyttövarmuuteen, käytettävyyteen, suorituskykyyn, ylläpidettävyyteen ja siirrettävyyteen [ISO01]. Näistä kuudesta laatuattribuutista ainoastaan toiminnallisuus on uusi verrattuna aiemmin esitettyyn McCall:n mallin laatutekijöihin. Laatuattribuutit jaetaan edelleen erilaisiin aliattribuutteihin, joita voidaan mitata ohjelmistoon liittyvillä ulkoisilla ja sisäisillä mitoilla [ISO01]. Taulukossa 2 on 5
kuvattu kaikki kuusi laatuattribuuttia ja niiden aliattribuutit. Kuten taulukosta voimme nähdä standardi määrittelee hyvin suuren joukon erilaisia attribuutteja, joten standardin käyttö voi tuntua työläältä. Laatuattribuutti Toiminnallisuus Käyttövarmuus Käytettävyys Suorituskyky Ylläpidettävyys Siirrettävyys Aliattribuutit Soveltuvuus, tarkkuus, yhteensopivuus, tietoturvallisuus ja toiminnallisuuteen liittyvien sääntöjen noudattaminen Kypsyys, vikasietoisuus, viasta toipuminen, käyttövarmuuteen liittyvien sääntöjen noudattaminen Ymmärrettävyys, opittavuus, käyttökelpoisuus, viehättävyys, käytettävyyteen liittyvien sääntöjen noudattaminen Käyttäytyminen ajan suhteen, käyttäytyminen resurssien suhteen, suorituskykyyn liittyvien sääntöjen noudattaminen Analysoitavuus, muutettavuus, vakaus, testattavuus, ylläpidettävyyteen liittyvien sääntöjen noudattaminen Sopeutuvuus uuteen ympäristöön, asennettavuus, rinnakkaiselo toisten ohjelmistojen kanssa, vaihdettavuus, siirrettävyyteen liittyvien sääntöjen noudattaminen Taulukko 2: Ohjelmiston laadun laatuattribuutit. Standardia on moitittu siitä, että se määrittelee käyttövarmuuden muista standardeista poiketen [FeP97, s.343]. Tällöin ohjelmiston käyttäjien on hankala arvioida käyttövarmuutta ISO 9126 standardin mukaan [JKC04]. Puutteistaan huolimatta standardia pidetään tärkeänä virstanpylväänä ohjelmistojen laadun arvioinnin kehittämisessä [FeP97, s.343]. 2.2.2 Käytössä koettu laatu Käytössä koettu laatu kuvaa käyttäjän näkökulmaa ohjelmistojen laatuun ja se voidaan määritellä tuotteen kykynä täyttää käyttäjän määrittelemät tehokkuuteen, tuottavuuteen, käyttöturvallisuuteen ja tyytyväisyyteen liittyvät 6
tavoitteet tietyssä toimintaympäristössä [ISO01]. Kuten kuvasta X näimme käytössä koettu laatu riippuu siitä onko ulkoisten laatuattribuuttien määrittelemä tuotteen laatutaso saavutettu. Toisaalta käytössä koettu laatu antaa palautetta tämän laatutason saavuttamisesta. Käytössä koettu laatu koostuu: tehokkuudesta, joka tarkoittaa, että käyttäjä voi virheettömästi ja kokonaan saavuttaa määritellyt tavoitteet tietyssä kontekstissa, tuottavuudesta, joka tarkoittaa, että käyttäjä voi käyttää sopivan määrän resursseja suhteessa tehokkuuteen tietyssä kontekstissa, käyttöturvallisuudesta, joka tarkoittaa ohjelmiston kykyä saavuttaa hyväksytty riskitaso tietyssä kontekstissa ja tyytyväisyydestä, joka määritellään ohjelmiston kykynä tyydyttää käyttäjien tarpeet tietyssä kontekstissa [ISO01]. Standardin mukaan käytössä koettua laatua ei voida mitata itse ohjelmistotuotteen ominaisuuksista, vaan ohjelmiston käytön tuloksista tietyssä toimintaympäristössä [ISO01]. 2.3 Valtiovarainministeriön verkkopalvelujen laatukriteeristö Valtiovarainministeriö julkaisi vuonna 2004 julkisten verkkopalvelujen laatukriteereistä ensimmäisen version. Laatukriteeristön taustalla on tarve tarjota työkaluja julkisten verkkopalvelujen laadun kehittämiseen ja arviointiin sekä levittää laadukkaita julkishallinnon verkkopalvelujen käytäntöjä [KSE07, s.15]. Laatukriteereitä päivitettiin vuonna 2007, jolloin mm. lisättiin monia uusia kriteereitä ja edellisiä selkiytettiin. Laatukriteeristössä verkkopalvelulla tarkoitetaan tietoverkkojen kautta tarjottavia palveluja, jotka voivat ulottua yksinkertaisesta tietojen etsinnästä ja tarkistamisesta aina vuorovaikutteisten palvelujen tarjoamiseen, sähköiseen asiointiin ja mahdollisuuksiin osallistua asioiden valmisteluun ja päätöksentekoon [KSE07, s.16]. Mielestäni ohjelmisto voi olla sähköistä asiointia tarjoava verkkopalvelu, joten kriteeristöä voidaan soveltaa ohjelmistojen laatuun silloin, kun käsitellään verkossa toimivia ohjelmistoja. Kyse on samasta asiasta eri termein käsiteltynä. Muun 7
muassa kaikki esimerkkiohjelmistot, joita aion tässä työssä käyttää, toimivat verkossa ja tarjoavat mahdollisuuden sähköiseen asiointiin. Laatukriteeristö koostuu viidestä arviointialueesta, kuten kuvasta 3 näemme. Arviointialueita ovat verkkopalvelun käyttö, sisältö, johtaminen, tuottaminen ja hyödyt [KSE07, s.21]. Käyttöä ja sisältöä tarkastellaan käyttäjän näkökulmasta, kun taas johtamista ja tuottamista tarkastellaan tutkimalla palvelun tarjoajan toimintaa [KSE07, s.22]. Hyödyt liittyvät kaikkiin arviointialueisiin [KSE07, s.21]. Kukin arviointialue jakautuu kriteereihin ja kuhunkin kriteeriin liittyy sitä konkretisoivia ominaisuuksia. Kuva 3: Laatukriteeristön rakenne ja tarkastelun eri näkökulmat [KSE07, s.22]. Seuraavaksi käyn läpi laatukriteeristön eri arviointialueet keskittyen erityisesti verkkopalvelujen käyttäjiä koskeviin arviointialueisiin. 2.3.1 Käyttö Käyttö-arviointialue arvioi verkkopalvelun laatua loppukäyttäjän näkökulmasta. Tavoitteena on varmistaa, että verkkopalvelu vastaa mahdollisimman hyvin käyttäjän tarpeita ja odotuksia ja että sen käyttäminen on mahdollista ja riittävän yksinkertaista [KSE07, s.35]. Käyttöön liittyy yhteensä 14 kriteeriä, kuten esimerkiksi, että verkkopalvelua voi käyttää erilaisissa teknisissä 8
ympäristöissä, käyttö tuntuu turvalliselta ja luotettavalta sekä navigointi ja tiedon löytäminen on helppoa [KSE07, s.25]. Jokaiseen kriteeriin liittyy 2-7 ominaisuutta, jotka konkretisoivat kriteerin ja pilkkovat sen pienempiin ja helposti käsiteltäviin osiin. Esimerkiksi kriteeri, joka mittaa tuntuuko verkkopalvelun käyttö turvalliselta, jakautuu neljään ominaisuuteen. Näitä ovat: verkkopalvelussa kerrotaan selkeästi siitä vastaava taho, jolloin muun muassa yhteystietojen tulee löytyä helposti, rekisteröitymistä ja tunnistautumista vaaditaan vain välttämättömissä tilanteissa, esimerkiksi luottamuksellisia tietoja käsiteltäessä kriteeristössä suositellaan käyttäjien tunnistukseen vähintään verkkopankkitunnisteiden tasoisia ratkaisuja, käyttäjästä kerätään tietoja vain tarvittaessa ja käyttäjälle kerrotaan etukäteen mihin tietoja kerätään ja käytetään ja palvelussa käytetään suojattua yhteyttä aina tarpeen vaatiessa, eli aina välitettäessä arkaluonteisia tietoja [KSE, s. 39-42]. Kaikista viidestä arviointialueesta käyttö-arviointialue on mielestäni yksi tärkeimmistä alueista arvioitaessa ohjelmistojen laatua asiakkaan näkökulmasta. Se on mielestäni myös kaikkein lähinnä ISO 9126 standardin käytössä koettua laatua, vaikka itse kriteerit on hyvin erilaisia. 2.3.2 Sisältö Sisältö-arviointialueen avulla varmistetaan, että verkkopalvelun sisältö noudattaa kohderyhmän tarpeita [KSE07, s.57]. Arviointialueen kriteerit käsittelevät muun muassa sisällön rakennetta, olennaisuutta, ymmärrettävyyttä ja kattavuutta. Arviointialue jaetaan viiteen kriteeriin, joita ovat: rakenne on jäsennelty tarkoituksenmukaisesti, sisältö on luotettavaa ja ajantasaista, sisältö on kattava, tekstisisältö on ymmärrettävää ja luettavaa sekä käyttäjä saa verkkopalvelun kautta hyvää palvelua [KSE07, s.57-62]. 9
2.3.3 Johtaminen Johtamisalueen kriteerit käsittelevät erilaisia verkkopalvelun tuottamiseen ja ylläpitoon liittyviä kysymyksiä. Kriteereitä ovat muun muassa se että verkkopalvelua johdetaan, sen kehittämispäätös on perusteltu, verkkopalvelu noudattaa lainsäädäntöä ja se tukee organisaation strategiaa ja tavoitteita [KSE07, s. 65-68]. 2.3.4 Tuottaminen Tuottamisen arviointialueella käsitellään kriteereitä, jotka voidaan perinteisesti liittää ohjelmistotuotantoprojekteihin. Näihin kriteereihin kuuluvat esimerkiksi: käyttäjäryhmät, käyttäjien tarpeet ja käyttötilanteet on otettu huomioon sekä sisällöntuotanto on järjestelmällistä ja tekninen ylläpito on hallittua [KSE07, s.25]. 2.3.5 Hyödyt Hyötyihin liittyvät kriteerit käsittelevät sekä verkkopalvelun käyttäjän että sen tuottajan kokemaa hyötyä, kuten kuvasta X näimme. Jostain syystä hyötyihin on tässä laatumallissa löydetty kaikkein vähiten kriteereitä. Niitä ovat: verkkopalvelusta on hyötyä organisaatiolle, verkkopalvelu tukee käyttäjien mahdollisuutta vaikuttaa, verkkopalvelu tunnetaan hyvin sekä käyttäjä saa verkkopalvelusta lisäarvoa [KSE07, s. 91-94]. Mielestäni tähän arviointialueeseen olisi voinut keksiä monia muitakin hyötyjä, kuten verkkopalvelu mahdollistaa käyttäjälle jonkin täysin uuden palvelun käyttämisen, jota ei aiemmin ole ollut olemassa tai palvelu on ollut käyttäjän ulottumattomissa. Hyötynä voisi olla myös esimerkiksi tiedon lisääntyminen tai jäsentyminen paremmin ymmärrettäväksi. 2.3.6 Laadun arviointi Verkkopalvelujen laatukriteeristön lisäksi Valtiovarainministeriö on julkaissut verkkopalvelujen arviointityökalun. Työkalun avulla voidaan mitata laatukriteeristön sisältämien kriteerien ja niihin liittyvien ominaisuuksien 10
toteutumista [Ver08]. Arviointiyökalussa voi valita mitä arviointialueita halutaan arvioida ja ohjelma pyytää sen mukaan arvioimaan eri kriteerejä. Suurin työ on perustella ja pisteyttää valitsemansa kriteerit, joista ohjelma kokoaa lopuksi raportin. 2.4 Tee-se-itse-malli Edellä läpikäydyt laatumallit ovat vain pieni osa tarjolla olevista laatumalleista. Mikään ohjelmistojen laatumalli ei ole vakiintunut laajasti käyttöön, vaikka monet ovat ehdottaneet erilaisia laatumalleja ja kehyksiä [ISO01]. Tämän vuoksi useat organisaatiot ovat päätyneet määrittelemään itse oman laatumallinsa tai yhdistelemään tunnettuja laatumalleja toisiinsa päätyen niin sanottuun tee-se-itse-malliin. Tee-se-itse-mallissa laatu koostuu edellä esitettyjen mallien tapaan erilaisista laatuattribuuteista, mutta tee-se-itsemallissa laatu määritellään jokaisen ohjelmistotuotteen kohdalla yhteistyössä asiakkaan kanssa [FeP97, s.340-341]. 3 Ohjelmistojen laadun mittaaminen, tutkiminen ja parantaminen 3.1 Miten ohjelmistojen laatua tulisi mitata 3.2 Miten laatua tulisi tutkia 3.3 Ohjelmistojen laatua rajoittavat tekijät 3.4 Ohjelmistojen laadun parantaminen 4 Ohjelmistojen laadun hallinta tietotekniikkaosastolla 4.1 Tee-se-itse-malli 11
4.2 Miten laatua voitaisiin mitata tietotekniikkaosastolla 4.3 Esimerkkiohjelmistojen laadun tutkiminen 4.4 Arvio esimerkkiohjelmistojen laadusta 4.5 Suositukset osastolle ohjelmistojen laadun kehittämiseksi 5 Yhteenveto 12
Lähteet BBL76 CaM78 Eva04 Gil92 FeP97 ISO01 JKC04 KSE07 Off02 Ver08 Boehm B. W., Brown J. R., Lipow M., Quantitative evaluation of software quality. ICSE 76: Proceedings of the 2nd international conference on Software engineering, elokuu 1976, sivut 592-605. Cavano J. P., McCall J. A., A framework for the measuremet of software quality. ACM SIGSOFT Software Engineering Notes, vol. 3, nro. 5, (marraskuu 1978), sivut 133-139. Evans I., Achieving Software Quality Through Teamwork. Artech House, 2004. Gillies A. C., Software Quality, Theory and Management. Chapman & Hall, Lontoo, 1992. Fenton N. E., Pfleeger S. L., Software Metrics, A Rigorous & Practical Approach. PWS Publishing Company, Boston, 1997. ISO/IEC. 2001a. Software engineering-software product quality- Part 1: Quality model. ISO/IEC 9126-1, Geneva, Switzerland, International Organization for Standardization, 2001, sivut 1-25. Jung H-W., Kim S-G., Chung C-S., Measuring Software Product Quality: A Survey of ISO/IEC 9126. IEEE Software, vol. 21, nro. 5, (Syyskuu 2004), sivut 88-92. Koskenniemi H., Saastamoinen M., Eerola P., Verkkopalvelujen laatukriteeristö Väline julkisten verkkopalvelujen kehittämiseen ja arviointiin. Valtiovarainministeriö, Julkaisuja-sarja 7a/2007, Edita Prima Oy, Helsinki, 2007. [Myös www.suomi.fi/suomifi/laatuaverkkoon/laatukriteeristo/uusi_kriteeris to/verkkopalvelujen_laatukriteeristo/verkkopalvelujen_laatukriteeri sto.pdf, 5.2.2008]. Offutt J., Quality Attributes of Web Software Applications. IEEE Software, vol. 19, nro. 2, (maaliskuu 2002), sivut 25-32. Verkkopalvelujen arviointityökalu, www.arviointityokaly.fi [6.3.2008] 13