Katselmoinnit. review) Katselmoinnit (review( Mitä ovat katselmoinnit? Katselmoinnin määritelmä (IEEE 1988)

Samankaltaiset tiedostot
Katselmoinnin määritelmä. Katselmoinnit osa 1. ja vielä ajatuksia katselmoinneista. Katselmointi. Katselmointi, katselmus (review) IEEE Std

Laatu ohjelmistotyössä

Katselmoinnit. Katselmoinnin määritelmä

Laatukustannukset. Laadun hallinta. Laadun kustannuksista

Laadun hallinta. Laatukustannukset. Laadun kustannuksista. Sami Kollanus TJTA330 Ohjelmistotuotanto

Laadun hallinta. Laatukustannukset. Sami Kollanus TJTA330 Ohjelmistotuotanto

TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:

Menetelmäraportti Ohjelmakoodin tarkastaminen

Kontrollipolkujen määrä

LAATU, LAADUNVARMISTUS JA f RISKIEN HALLINTA JOUNI HUOTARI ESA SALMIKANGAS PÄIVITETTY

tsoft Tarkastusmenettelyt ja katselmukset Johdanto Vesa Tenhunen

Tarkastuskäytänteiden kehittäminen ohjelmistoja tuottavissa organisaatioissa

Projektin suunnittelu

Voisitteko. Tarkastukset

Onnistunut SAP-projekti laadunvarmistuksen keinoin

LAATU, LAADUNVARMISTUS JA f RISKIEN HALLINTA JOUNI HUOTARI ESA SALMIKANGAS

JYVÄSKYLÄ LICENTIATE THESES IN COMPUTING 4. Sami Kollanus. Ohjelmistojen tarkastuskäytänteiden puutteet ja ongelmat teoriassa ja käytännössä

$$$ Raha ratkaisee. $$$ Raha ratkaisee. Ohjelmistotuote. Ohjelmistotekniikan määritelmä

CMMI CMMI CMM -> CMMI. CMM Capability Maturity Model. Sami Kollanus TJTA330 Ohjelmistotuotanto

Ohjelmistotekniikka - Luento 2

Virtuaalinen tarkastus. Katselmoinnit osa 3. Paritarkastus. N-kertainen tarkastus (n-fold inspection)

CMM Capability Maturity Model. Software Engineering Institute (SEI) Perustettu vuonna 1984 Carnegie Mellon University

CMMI CMM -> CMMI. CMM Capability Maturity Model. Sami Kollanus TJTA330 Ohjelmistotuotanto Software Engineering Institute (SEI)

Työn ositusmalleista. Luennon tavoitteista. Motivointia. Walker Royce, Software Project Management, A Unified Framework

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

JHS XXX ICT-palvelujen kehittäminen: Laadunvarmistus Liite 6: Katselmointi

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

Ketterä vaatimustenhallinta

Projektityö

Reilun Pelin työkalupakki: Kiireen vähentäminen

SYSTEEMITYÖ. Tärkeitä sanoja

Prosessien kehittäminen. Prosessien parantaminen. Eri mallien vertailua. Useita eri malleja. Mitä kehitetään?

Valtioneuvoston kanslia VAIN VIRKAKÄYTTÖÖN Hallinto- ja palveluosasto/hallintoyksikkö Terja Ketola PTJ2008-työsuunnitelma 1 (5)

Johdanto. Mitä on ohjelmistotuotanto? Tämän kurssin näkökulma. Sami Kollanus TJTA330 Ohjelmistotuotanto

Mitä on ohjelmistotuotanto?

Testaaminen ohjelmiston kehitysprosessin aikana

Projektin tavoitteet

4. Verifiointi ja validointi. Kevät 2005 Empiirinen ohjelmistotutkimus / Taina. Kevät 2005 Empiirinen ohjelmistotutkimus / Taina

Staattinen testaus. Luento 5 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

Prosessiajattelu. Organisaation prosessikuvaus - CMMI. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessien määritys CMMI käytänteet

@Tampereen Testauspäivät ( )

Prosessiajattelu. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessikuvaus - CMMI. Sami Kollanus TJTA330 Ohjelmistotuotanto 3.4.

Ohjelmistotuotanto, s /27/2003

Virheiden etsintä: katselmoinnit vai testaaminen?

Johdantoluento. Ohjelmien ylläpito

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza

Projektityö

Vaatimusmäärittely- ja hallinta. Peruskäsitteet. Syyt aikataulun ja budjetin ylitykseen. TJTA330 Ohjelmistotuotanto

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

Ohjelmistoarkkitehtuurit. Syksy 2008

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

Vaatimusmäärittely- ja hallinta

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II

Tietojärjestelmän osat

Onnistunut Vaatimuspohjainen Testaus

Lentokelpoisuustarkastajien kertausseminaari

10. Tarkastukset. Tarkastusten rakenne

Tarkastusten rakenne. 10. Tarkastukset. Tuotoksen tekijän rooli. Tarkastustiimi. Tarkastusprosessin vaiheet. Tarkastusprosessi

Projektin suunnittelu. CMMI-käytänteet. Projektin suunnittelu CMMI-käytänteet

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Toiminnan laadunvarmistus SYSTEEMITYÖ. Laatu

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

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

KOKONAISARKKITEHTUURIN ARVIOINTI

SEPA päiväkirja. Aihe: Staattiset menetelmät Tekijät: Mikko Halttunen 58198B, Mikko Närjänen 58122B Ryhmä: Neptune T Ohjelmistoprojekti I

Ohjelmistotekniikka kevät 2003 Laatujärjestelmät

Projektin suunnittelu

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen

Julkisten toimijoiden tilintarkastus. Johtava asiantuntija Marita Virtanen KHT, JHTT, CIA, CCSA, CFE, CISA Piia-Tuulia Rauhala

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

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Sopimus Asiakas- ja potilastietojärjestelmästä. Liite N: Kielivaatimukset

Testauksen tuki nopealle tuotekehitykselle. Antti Jääskeläinen Matti Vuori

Tik Projektiryhmä: TeamAhma. Projektin HAYABUSA opponointi. Opponointisuunnitelma

MÄÄRÄYS SIJOITUSPALVELUYRITYKSEN RISKIENHALLINNASTA JA MUUSTA SISÄISESTÄ VALVONNASTA

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

dokumentin aihe Dokumentti: Testausraportti_I1.doc Päiväys: Projekti : AgileElephant

SEPA: Staattiset menetelmät Timo Sallinen, 51134F & Risto Kunnas, 50498T. Sisällysluettelo. 1 Johdanto. 2 SEPA harjoittelu käytännössä.

Johdatusta ohjelmistotekniikkaan

Software product lines

Onnistunut ohjelmistoprojekti

1 YLEISTÄ KÄYTTÖOHJEEN HYVÄKSYTTÄMINEN KÄYTTÖOHJEEN JAKELU KÄYTTÖOHJEEN ARKISTOIMINEN... 5

ISO 9001:2015 JÄRJESTELMÄ- JA PROSESSIAUDITOIN- NIN KYSYMYKSIÄ

Mitä on ohjelmistotuotanto? Johdanto. Tämän kurssin näkökulma. Kurssin suhde muuhun opetukseen

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

CHAMPION - mestariainesta. Tero Juuti

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

JHS 182 ICT-palvelujen kehittäminen: Laadunvarmistus Liite 6 Katselmointi

VBE II, vaihe 1:

ICT:n johtamisella tuloksia

Ohjelmistotuotanto s

T SEPA - STAATTISET MENETELMÄT Tuomas Tolvanen, 55382U Timo Töyry, 58578B

Apteekkitarkastukset. Yliproviisori Sami Paaskoski Lääkelaitos

Tietoturva- ja tietosuojariskien hallinta tietojärjestelmäkilpailutuksessa

Laadunvarmistustekniikat

Transkriptio:

Katselmoinnit Johdatus ohjelmistotekniikkaan Sami Kollanus 19.10.2004 Katselmoinnin määritelmä (IEEE 1988) An evaluation of software element(s) or projects status to ascertain discrepancies from planned results and to recommended improvement. This evaluation follows a formal process (for example, management review process, technical review process, software inspection process, or walkthrough process). 2 Mitä ovat katselmoinnit? Ihmisvoimin tehtävää työtä (vrt. testaus) Ne suorittaa joku muu kuin tuotoksen tekijä Päämäärä etsiä virheitä dokumentista Katselmoinnit (review( review) Tekninen katselmointi Läpikäynti Tarkastus Tarkoitus etsiä tuotoksesta virheitä lukemalla tuotosta (vrt. testaus) Suorittaa joku muu kuin tuotoksen tekijä 3 4 1

Päävaatimusten määrittely Järjestelmän spesifikaatio Testauksen V-malli Päävaatimusten speksit Järjestelmän speksit Komponenttien koodaus / testaus Komponenttien testaus Järjestelmän testaus Koskinen, Sakkinen ja Paakki, 2001. Ohjelmistotekniikka, kurssimoniste 5 Miksi katselmointeja? Testaus voidaan toteuttaa vasta toimivalle ohjelmalle, jolloin korjaaminen on kallista Testaus ei kata läheskään kaikkea validointi puutteet dokumentaatio ylläpidettävyys Katselmoinnit ovat halvempia jopa samojen virheiden löytämiseen kuin testaus (Basili( & Selby) 6 Virheen suhteellinen kustannus (Boehm 1981) Virheen korjaamisen suhteellinen kustannus 1 Arkkitehtuurin speksit Arkkitehtuurisuunnittelu Moduulien speksit Komponenttisuunnittelu Integrointitestaus Hyväksymistestaus Vaatimusmäärittely 3-6X 10X 15-40X 30-70X Koodaus Kehitys- Testaus Hyväksymis- Testaus 40-1000X Käyttöönotto, Ylläpito (82X IBM keskiarvo) 7 Tarkastus (Inspection( Inspection) Tarkasti määritelty kokouskäytäntö katselmoinnin toteuttamiseen Michael Fagan 1976, IBM Ei ole sama miten katselmointi toteutetaan: IBM totesi 23% tehokkuuden nousun jo ensimmäisissä kokeiluissa (Fagan( 1976). 8 2

Tarkastus (Gilb & Graham 1993) Tarkastuksella on johtaja, joka organisoi tilaisuuden Ei tuotoksen tekijä eikä esimies Ryhmän kokosuositus 3-6 henkilöä Vertaisryhmä Eri roolit tärkeitä: Eri osaamisalueet Sama dokumentti näkökulmista Jaetaan dokumentti osiin Tarkastus on luonnollinen osa tuotantoprosessia, ei minkään erillisen laatuyksikön asia Vie 5-15 % työajasta 9 Kokemuksia tarkastuksista 1 h tarkastuksiin säästää 33 h ylläpitotyötä (Russel 1991) Tarkastuksiin käytetty tunti maksaa itsensä takaisin 30-kertaisesti (Doolan( 1992) Hewlet-Packardilla säästetty 25 miljoonaa dollaria (Grady( & Slack 1994) Ericssonin projektissa 40 % työajasta tarkastuksiin -> 70 % parannus tuottavuudessa ja 100% testauksessa (Haikala & Märijärvi 2000) 10 Esimerkki laskennasta JPL:n organisaatio (Bush 1990): Virheen korjaaminen myöhemmässä vaiheessa maksaa 1700 $ Tarkastuksessa löydetään tarvallisesti 4 suurta ja 12 pientä virhettä Tyypillisesti aikaa 5 hengen tiimiltä kuluu 28 h -> kustannus 105 $/virhe Säästö = 1700-105 = 1595 $/virhe 11 Tarkastusprosessi (1/8) 12 3

Vaatimus tarkastuksen järjestämisestä Tarkastusprosessi (2/8) Tuotoksen tekijä esittää vaatimuksen tarkastuksen järjestämisestä, kun hänen mielestään esiehdot on täytetty Tarkastuksen tulisi olla vapaaehtoista?!? Valitaan tarkastuksen johtaja Tuotos tarkastuksen johtajalle 13 14 Tarkastuksen johtaja käy läpi aloituskriteerit Jos aloituskriteerejä ei ole täytetty, on turha tuhlata tarkastajien aikaa kriteerit yleisiä nopeasti tarkastettavia, esim. Dokumentiontiohjeita noudatettu Kaikki vaadittu tehty Voidaanko käytännössä peruuttaa? > aloitukriteerit käytännössä ehkä tekijää varten Tarkastusprosessi (3/8) 15 16 4

Tarkastuksen johtaja suunnittelee tarkastuksen läpiviennin Useampi kierros? Tarkastajien valinta ja roolitus Aikataulu, tilavaraukset Materiaalin jakelu tarkastajille Tarkastusprosessi (4/8) 17 18 Ei välttämättä järjestetä voidaan ohjeistaa tarkastajat muulla tavalla Tarkastajien koulutusta ja motivointia varten Varmistetaan, että jokainen tietä roolinsa Tuotoksen tekijä voi esitellä tuotosta, jotta tarkastajat pääsevät siihen helpommin sisälle Tarkastusprosessi (5/8) 19 20 5

Tarkastajat etsivät itsenäisesti tuotoksista virheitä Ilman tätä vaihetta on mahdollista, että löydetään vain 10% virheistä verrattuna hyvin toteutettuun tarkastukseen. (Gilb & Graham 1993) Tarkastaja käy dokumentin läpi tarkistuslistan avulla ja kirjaa löytämänsä virheet ylös Tarvitaan riittävästi aikaa Tavallinenen ongelmakohta! Tarkastusprosessi (6/8) 21 22 Kolme tarkoitusta Kirjataan ylös kaikki mahdolliset virheet, jotka on havaittu itsenäisessä tutustumisessa Suoritetaan tarkastus ryhmässä, jotta voidaan löytää ja kirjata ylös vielä uusia virheitä Kirjataan ylös tarkastettavaan tuotokseen liittyviä kehitysehdotuksia ja kysymyksiä tuotoksen tekijälle Lisäksi voidaan kerätä erikseen prosessinkehitysehdotuksia Aivoriihimäinen, suositaan vapaata ajatuksenjuoksua Rajoitetaan keskustelua, ettei kaikki aika kulu siihen Parannusehdotuksia ja kysymyksiä saa esittää, mutta ne ainoastaan kirjataan ylös Ratkaisujen pohdinta jätetään korjaajalle Maksimiaika 2 tuntia -> tarkastuksen johtajalla tärkeä rooli ohjata ajankäyttöä oleellisiin asioihin Tuloksena lista virheistä, parannusehdotuksista ja kysymyksistä 23 24 6

Tarkastusprosessi (7/8) Korjaaja (tuotoksen tekijä?) käy kirjauspalaverissa luodun listan läpi Virheiden luokittelu ja lopullinen kirjaus Virheiden korjaus Tarvittaessa korjauspyyntö lähdedokumenttiin Kolme tapaa edetä: Uusi tarkastus Tarkastuksen johtaja hyväksyy korjaukset Korjaaja vahvistaa itse korjaukset tehdyksi 25 26 Tarkastusprosessi (8/8) Tarkastuksen johtaja tarkistaa lopetuskriteerit Kriteerejä esim. Kaikki vaaditut dokumentit tehty Vaaditut korjaukset tehty Yleinen hyväksyttävä virhetaso saavutettu 27 28 7

Tärkeät tehokkuusseikat Valmistautuminen palaveriin Yksilön suoritus (kyky + motivaatio) koulutus Roolijako keskittyminen omaan osaan Oppiminen ennalta ehkäisy varo näitä virheitä listat koulutus tarkastusten kehittäminen 29 Tiivistelmä tarkastusten merkityksestä (Gilb 2000) Virheiden tunnistaminen ja poistaminen Projektin läpimenoajan lyheneminen Tehokkuuden kasvu Kustannusten säästö Laadun mittaaminen Prosessin kehittäminen Koulutus Oppiminen, virheiden ennalta ehkäisy Tuotoksen tekijän auttaminen 30 Luentotehtävä Kerro tämän luennon pohjalta, mitä hyötyä katselmoinneista on. Käsittele perustellusti useampia eri näkökulmia. Lähde: Gilb T., 2000. Planning to get the most out of inspections. Software Quality Professional, vol 2, no 2, 2000. Saatavilla HTML-muodossa: http://www.asq.org/pub/sqp/past/vol2_issue2/gil b.html 31 8