Ohjelmistojen laatu asiakkaan näkökulmasta

Samankaltaiset tiedostot
arvostelija OSDA ja UDDI palveluhakemistoina.

Käytettävyyslaatumallin rakentaminen verkkosivustolle

Selainpelien pelimoottorit

Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg

Aika/Datum Month and year Kesäkuu 2012

Koht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa

Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages

5 Verkkopalvelun laadun käsite? (hyvin lyhyesti)

JULKISTEN VERKKOPALVELUJEN LAATUKRITEERISTÖN KONSEPTI

Käytettävyyslaatumallin rakentaminen web-sivustolle. Oulun yliopisto tietojenkäsittelytieteiden laitos pro gradu -suunnitelma Timo Laapotti 28.9.

Luonnontieteiden popularisointi ja sen ideologia

Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan

! #! %! & #!!!!! ()) +

Katsaus korruption vaikutuksesta Venäjän alueelliseen talouskasvuun ja suoriin ulkomaisiin investointeihin

ITK130 Ohjelmistojen luonne

Tiedekunta/Osasto Fakultet/Sektion Faculty Valtiotieteellinen tiedekunta

Hallintomallit Suomen valtionhallinnon tietohallintostrategioissa

Ohjelmistoprosessit ja ohjelmistojen laatu Kevät Ohjelmistoprosessit ja ohjelmistojen laatu. Projektinhallinnan laadunvarmistus

15224 standardi johtamisen ja laadukkaan työn tukena auditoijan näkökulma YTL Merja Huikko

Ohjelmistojen laadun parantaminen refaktoroinnilla Simo Mäkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto

OpenUP ohjelmistokehitysprosessi

Koekysymyksiä. Ohjelmistoprosessit ja ohjelmistojen laatu Ohjelmistojen suorituskyky


Arkkitehtuurinen reflektio

Yhdeksän mittaria ohjelmistotuotannon. seuraamiseen. tsoft. Vesa Tenhunen Joensuun yliopisto, TKT:n laitos

Arviointi ja mittaaminen

!"#$%&'$("#)*+,!!,"*--.$*#,&--#"*/".,,%0

ISO uudistuu mikä muuttuu? TERVETULOA!

Johdantoluento. Ohjelmien ylläpito

Oppimateriaalin kokoaminen ja paketointi

SVY:n palvelut yliopistojen laadunedistämistyössä onko niitä?

ICT:n johtamisella tuloksia

KUNTIEN JA HUS:N ASIAKAS- JA POTILASTIETOJÄRJESTELMÄN HANKINTA

Palvelutasosopimukset ja niiden asema IT-ulkoistuksissa

Miten löydän Sen Oikean? Senaattoritilaisuus Liisa Paasiala, Senior Consultant

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Ohjelmistotuotanto, syksy laatu Ohjelmiston laatu

Julkisen hallinnon yhteinen kokonaisarkkitehtuuri

Työkaluja esimiestyön tehostamiseen

Työterveys ja -turvallisuus uuden ISO standardin valossa Sertifioinnilla kilpailuetua - Inspectan tietopäivä

Tutkittua tietoa. Tutkittua tietoa 1

Kasvua ja kilpailukykyä standardeilla. Riskit hallintaan SFS-ISO 31000

TULOKSELLISEN TOIMINNAN KEHITTÄMISTÄ KOSKEVA SUOSITUS

Monitoimittajaympäristö ja SIAM, haasteet eri toimijoiden näkökulmasta

Yksilöllistä, puhuroi, suorita - Mitä käyttöliittymien termien taakse kätkeytyy?

Tietoturvallisuuden kokonaisvaltainen hallinta Heikki O. Penttinen Castilsec Oy.

SFS-ISO/IEC Tietoturvallisuuden hallintajärjestelmät. Ohjeistusta. Riku Nykänen

JHS129 Julkisten verkkopalvelujen suunnittelu ja kehittäminen. JHS-jaosto

TOIMINNALLINEN MÄÄRITTELY MS

Suomen virtuaaliammattikorkeakoulu Mobile IP > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

Suomen virtuaaliammattikorkeakoulu Boolen operaattorit v. 0.5 > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

Pirkanmaan ammattikorkeakoulu Hotel Management Case Hotel v 0.5 > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

Tietojärjestelmän kehittäminen syksy 2003

Luotain-arviointi. Nykytila-arvio toiminnan osa-alueesta. Trust, Quality & Progress. Jatkuvuus Tietosuoja Tietohallinto Tietoturvallisuus

JHS 179 Kokonaisarkkitehtuurin suunnittelu ja kehittäminen Liite 1. Strategian kuvaaminen strategiakartan avulla

Riskit hallintaan ISO 31000

Kuntasektorin asianhallinnan viitearkkitehtuuri 1.0. Kuntamarkkinat Tuula Seppo, erityisasiantuntija

Digi arkeen -neuvottelukunnan kokous: saavutettavuusdirektiivi ja siihen liittyvä kansallinen lainsäädäntö Kommenttipuheenvuoro, Sami Älli

Lahden, Pohjois Karjalan ja Kemi Tornion AMK Effective Reading > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

VirtaaliAMK Virtuaalihotelli > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

VirtuaaliAMK Tulipesän paineen ja palamisilman säätö > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

Pysähdy! Nyt on syytä miettiä tämä asia uudelleen. Kiinnitä huomiosi tähän. Hienoa, jatka samaan malliin. Innokylän arviointimittari

Miten tietojärjestelmän laatu näkyy yrityksen tuloksessa? Esko Hannula, CEO Qentinel

Käytettävyys julkishallinnon tietojärjestelmähankinnoissa tilaajan näkökulmasta

EFQM kansalaisopiston kehittämisessä

arvostelija Turvallisuuskriittisissä, sulautetuissa järjestelmissä esiintyvien ohjelmistovaatimusten virheanalyysi Jarkko-Juhana Sievi

Uudelleenkäytön jako kahteen

Julkisen hallinnon yhteinen kokonaisarkkitehtuuri

Kokonaisuuksien, riippuvuuksien ja synergioiden hahmottaminen helpottuvat

Palvelulaatu. Asiakkaiden käyttökokemukseen vaikuttavat laatutekijät digitaalisissa asiointipalveluissa. Petteri Ohvo,VM/JulkICT

Laskennallinen yhteiskuntatiede

Oulun seudun ammattikorkeakoulu Aineistojen polku kirjastoon > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

KUNTIEN JA HUS:N ASIAKAS- JA POTILASTIETOJÄRJESTELMÄN HANKINTA

1 Teknisen ja ympäristötoimen mittareiden laatiminen

Miten kerätä tietoa toiminnan jatkuvaan kehittämiseen

Tiina Tuurnala Merenkulkulaitos. Paikkatietomarkkinat Helsingin Messukeskus

EFQM Excellence malli

Verkkopalvelun käyttökelpoisuus ja arviointi

#saavuta2017 Puheenvuoroja, kognitiivinen saavutettavuus Torstai , klo

MEMS-muisti relaatiotietokannoissa

Prosessien hallinta ammatillisen koulutuksen laadunhallintasuosituksessa ja eurooppalaisessa viitekehyksessä

SEPA päiväkirja. Dokumentti: SEPA_diary_EM_PV.doc Päiväys: Projekti : AgileElephant Versio: V0.9

VirtuaaliAMK Tilastollinen päättely > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

Useaa tietolähdettä käyttävä klusterointi

Laadunvarmistuksesta Ismo Kantola.

Kokonaisvaltainen mittaaminen ohjelmistokehityksen tukena

Yritysturvallisuuden johtamisen arviointi

Valintaperusteena on kokonaistaloudellinen edullisuus. Vertailuvaiheeseen pääsevät ne tarjoukset, jotka täyttävät kelpoisuusehdot.

Suomen virtuaaliammattikorkeakoulu Business in The EU v. 0.5 > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

KÄYTTÖOHJE (pikaohje) KUNNAN JOHTAMISEN VIITEARKKITEHTUURI

Ammatillisen koulutuksen laatupalkinto 2018 Laatupalkintokilpailun prosessi ja hakemuksen laatiminen

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

Software engineering

punainen lanka - Kehitysjohtaja Mcompetence Oy markokesti.com Työhyvinvoinnin kohtaamispaikka Sykettätyöhön.

JHS 179 ICT-palvelujen kehittäminen: Kokonaisarkkitehtuurin kehittäminen Liite 1 Strategian kuvaaminen strategiakartan avulla

Suomen virtuaaliammattikorkeakoulu XML_mark_up_language > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

ProCountor-asiakastyytyväisyyskysely, syksy 2008

Suomen virtuaaliammattikorkeakoulu Tietojohtaminen rakennus prosesseissa > 80 % % % < 50 % Suhteellinen osuus maksimiarvosta (%)

Yhteisöllisen toimintatavan jalkauttaminen!

ArcInfo WEB-POHJAINEN TYÖKALU HITSAUSPARAMETRIDATAN ANALYSOINTIIN

Transkriptio:

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