Testaus elinkaaressa



Samankaltaiset tiedostot
Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille

UCOT-Sovellusprojekti. Testausraportti

Convergence of messaging

Ohjelmiston testaussuunnitelma

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmiston testaus ja laatu. Testaustasot

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

Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen

TIE Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

TIE Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori

Onnistunut SAP-projekti laadunvarmistuksen keinoin

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2015

3.5 Hyväksymistestaus

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg

Testaus elinkaaressa. Testaustasot ja vaiheet

Testaus osana ohjelmistojen elinkaarta I

@Tampereen Testauspäivät ( )

Ohjelmistojen mallintaminen. Luento 11, 7.12.

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe LU. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T3

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

Tapahtuipa Testaajalle...

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

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

Hyväksymistestauksen tarkistuslista järjestelmän hankkijalle

HYVÄKSYMISTESTAUS- RAPORTTI - HAKEUTUJAN PALVELUT JA TODENNETUN OSAAMISEN REKISTERI

Testaaminen ohjelmiston kehitysprosessin aikana

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

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

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

T Testiraportti - järjestelmätestaus

L models. Testisuunnitelma. Ryhmä Rajoitteiset

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

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

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Good Minton QA Raportti Iteraatio 1 Sulkapalloliiton Kilpailujärjestelmä

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ

T Testiraportti TR-3. ETL-työkalu

58160 Ohjelmoinnin harjoitustyö

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

COTOOL dokumentaatio Testausdokumentit

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

Testaussuunnitelma Labra

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

Määrittelydokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

TOIMINNALLINEN MÄÄRITTELY MS

tsoft Tarkastusmenettelyt ja katselmukset Johdanto Vesa Tenhunen

T Tietojenkäsittelyopin ohjelmatyö. Testisarja Ray tracing. Tietokonegrafiikka-algoritmien visualisointi. Testisarja Ray tracing

Testauspäällikön tarinoita Arto Stenberg

Ohjelmistotuotteen hallinnasta

Ohjelmistotuotantoprojekti

Tutkittua tietoa. Tutkittua tietoa 1

Rinnakkaisten ohjelmien testaus Keskeisiä periaatteita ja strategioita

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

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

Onnistunut Vaatimuspohjainen Testaus

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

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

Lohtu-projekti. Testaussuunnitelma

CoMa - Testausdokumentti

CASE Varma Testauksen haasteet moniuloitteisessa testiympäristössä Tuukka Vähäpassi

Dynaaminen analyysi IV

Järjestelmätestauksen vaatimukset. 6. Järjestelmätestaus (B, 14) Järjestelmätestauksen korkean tason testausstrategia

Dynaaminen analyysi IV Luento 6 Antti-Pekka Tuovinen

SOPIMUS ASIAKAS- JA POTILASTIETOJÄRJESTELMÄSTÄ

Uudelleenkäytön jako kahteen

Testauspalvelu laadunvarmistajana Arekin monitoimittajaympäristössä. Satu Koskinen Teknologiajohtaja, Arek Oy

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0

Projektisuunnitelma Viulu

Standardin IEC testaustekniikoista. V-malli vai ketterämpi prosessi?

Project-TOP QUALITY GATE

Kahdenlaista testauksen tehokkuutta

Simulaattoriavusteinen ohjelmistotestaus työkoneympäristössä. Simo Tauriainen

TIE Ohjelmistojen testaus 2016 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

Testaussuunnitelma Versio Päiväys Tekijä Kuvaus

Testataanko huomenna?

Vakuutusyhtiöiden testausinfo

10. Tarkastukset. Tarkastusten rakenne

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

IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA LUONNOS

Laadunvarmistusdokumentti

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Laadunvarmistuksen suunnitelma. Ryhmä ExtraTerrestriaLs Aureolis Oy

Kontrollipolkujen määrä

Laadunvarmistus ostajan tukena Rami Sivonen/

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2016

LAADUN VARMISTAMISEN JOHTAMINEN. Pasi Riihilahti RAY Kehitysjohtaja

Testausoppeja toimialavaihdoksesta

Test-Driven Development

LAATURAPORTTI Iteraatio 1

MediaMark- ja NextMediahankkeiden

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Kuopio Testausraportti Asiakkaat-osakokonaisuus

KONEAUTOMAATION LAATU JA TURVALLISUUS Marko Varpunen

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

Ohjelmistotestauksen perusteet. versio 1.0

Transkriptio:

Testaus elinkaaressa Järjestelmätestaus Järjestelmätestaus Tarkoittaa koko järjestemän laajuuteen kohdistuvaa testausta, koko järjestelmän toiminnan näkökulmasta Järjestelmän ei tarvitse olla valmis vaan testataan se mitä on siihen mennessä aikaansaatu Yleensä sekä käyttäjän- että tekninen näkökulma Liian huonolaatuista koodia ei kannata järjestelmätestata, resurssien hukkaanheittoa. 1

Järjestelmätestauksen kohdentaminen 1/3 Toiminnallinen testaus Perinteinen ohjelman toiminnallisuuden testaus vaatimuksia vastaan Voidaan hyödyntää aiemmin esitettyjä testaustekniikoita ja menetelmiä Konfiguraatiotestaus Testataan toimivuus eri laitealustoilla Yhdistelmiä yleensä paljon alustojen priorisointi, ns. edustajalaitteet Testausjärjestelyjen rakentaminen yleensä aikaavievää erityiset testilaboratoriot Myös ulkopuolisten testauspalvelujen käyttö Järjestelmätestauksen kohdentaminen 2/3 Yhteensopivuustestaus Testataan toimivuus muiden ohjelmistojen ja standardien suhteen (vrt. konfiguraatiotestaus) Tiettyjen standardien täyttyminen voi olla markkinoillepääsyn ehto erityisesti kuluttajatuotteissa Certified for Windows, Symbian signed, Java verified Suorituskykytestaus Tässä esimerkkinä ei-toiminnallisten vaatimusten testauksesta Testataan järjestelmän suorituskykyä, esim. muistinkulutusta, skaalautuvuutta, vasteaikoja Testaukseen käytetään erityisiä mittausohjelmistoja 2

Järjestelmätestauksen kohdentaminen 3/3 Käytettävyystestaus Testataan ohjelman käytön helpoutta ja soveltuvuutta määriteltyyn tehtävään käyttäjän näkökulmasta Kaksi lähestymistapaa Haastattelut ja käytön seuranta Testaus käytettävyysstandardeja ja ohjeita vastaan Osittain kvalitatiivista (miltä tuntuu?), osittain kvantitatiivista (esim. mitataan suoritusaikoja) Muita järjestelmätestauksen kohdentamiskeinoja Lokalisointi- ja dokumenttitestaus Turvallisuustestaus Tietoturvatestaus Muiden ei-toiminnallisten vaatimusten testaus RISKIPERUSTAINEN TESTAUS H. Schaeferin näkemys riskiperustaisesta testauksesta Testaukseen käytettävissä olevat resurssit ovat aina niukat, paine saada nopeasti valmista On kyettävä priorisoimaan ja jättämään vähiten tärkeät testit pois Järjestelmätestaus on kallista ja siksi kohdennettava tehokkaasti (ROI ajattelu) Tavoitteena kyetä valitsemaan yrityksen liiketoiminnan kannalta mahdollisimman hyödylliset testitapaukset Järjestelmätestauksessa testausta ohjataan usein riskiperustaisesti Riskiperustaista testausta voidaan käyttää myös yksikkö- ja integrointitestauksessa, pääasiallisesti kuitenkin järjestelmätestauksen strategia Universaali strategia, soveltuu kaikentyyppiseen järjestelmätestaukseen 3

Mikä riski on? Mikä riski on? Riski = Vahingon suuruus * Todennäköisyys Vahingon suuruus Suora rahallinen menetys Asiakkaiden menetys Brandin ja laatuimagon heikkeneminen Ihmishengen menetys, katastrofit... (suuruus ~ Toteutumisen todennäköisyys Yleinen arvio tilastojen perusteella: koko, monimutkaisuus Täsmäarvio: mitä tiedämme tuotteesta ja sen laadusta ennen järjestelmätestausta Erittäin vaikea arvioida 4

Riskiperustaisen testauksen kulku Riskien tunnistaminen Vaatii monipuolista näkemystä tuotteesta ja liiketoiminnasta Yksi tekniikka on pitää aivoriihi-tyyppisiä kokouksia Testaajia, kehittäjiä, käyttäjiä, tuotepäälikkö, markkinointi, tekninen tuki... 1) Etsitään riskejä järjestelmän käyttötilanteesta ja yrityksen liiketoiminnasta Riskin seuraus tunnetaan Löytyneet riskit on kohdennettava järjestelmän toimintoihin, osiin tai laadullisiin ominaisuuksiin Toteutumistodennäköisyyden arvioimiseksi mietitään miten järjestelmä voisi aiheuttaa riskin toteutumisen 5

Riskien löytäminen... 2) Etsitään riskejä järjestelmästä Mietitään mitä järjestelmän jostain ongemasta seuraisi Koko järjestelmästä, osajärjestelmistä, järjestelmän liitynnöistä ympäristöön Käydään läpi toiminnot ja laatuattribuutit Laatuattribuutteja: luotettavuus, yhteensopivuus, käytettävyys, suorituskyky, ylläpidettävyys, turvallisuus, skaalautuvuus... Riskistrategia Riskistrategia Arvioidaan ja priorisoidaan riskit Valitaan riskitaso jonka ylittävät riskit on testattava Huomioidaan testauksen kustannukset eri riskeille Testauksen kohdentaminen Tehdään testaussuunnitelma Resurssoidaan ja organisoidaan testaus 6

Riskien arviointi Yksinkertainen menetelmä Riskin todennäköisyys Käytetään karkeaa asteikkoa esim. 1-3 (matala, keskimääräinen, korkea) Arviointi perustuu tietoon ko. järjestelmän osan laadusta (aiempi testaus), tai yrityksen/yleiseen tietoon vastaavien järjestelmien laadusta kehityksen tässä vaiheessa Riskin seurauksen vakavuus Arvioidaan samoin karkealla asteikolla esim. 1-3 Joskus halutaan että riittävän vakava seuraus pakottaa testauksen todennäköisyydestä riippumatta Lasketaan yhteen jokaisen riskin todennäköisyys ja seuraus Saadaan viisiportainen riskien prioriteettiarvio 2...5 Yhteenlasku ei teoreettisesti oikein, mutta toimii Riskien arviointi Monipuolisempi menetelmä Todennäköisyyden arviointi Arvioidaan virheen esiintymisen todennäköisyyttä kehittämiseen liittyvien tekijöiden kautta Monimutkaiset osat, jatkuvasti muuttuneet osat Kehittäjien lukumäärä, kokemus ja -vaihtuvuus Uusi teknologia, työkalut, metodi tai sovellusalue Kiire, huono asiakassuhde tai projektinjohto Hajautettu kehitys, uudet alihankkijat... Seurauksen arviointi Näkyvyys asiakkaalle Vahingon suuruus Altistumisen yleisyys Annetaan painokertoimia edellisille tekijöille (esim. 1-3-10) Riskit arvioidaan em. tekijöiden suhteen asteikolla 1-5 Lasketaan kokonaisriski Todennäköisyys * vahinko 7

Riskien arviointi Monipuolisempi menetelmä Korkeat riskit - läpikotainen testaus Keskitason riskit - normaali testaus Matalat riskit - kevyt testaus tai ei testausta Tärkeää käyttää tilannekohtaista harkintaa, ei noudattaa orjallisesti riskilaskennan tulosta Monipuolisempi menetelmät eivät tuo useinkaan lisäarvoa Oleellista että näkökulma primääristi on käyttäjän / muiden joihin ohjelma vaikuttaa ja rahalliset arviot ovat näistä johdettuja Usein ihmisillä taipumus aliarvioida sellaisten riskien todennäköisyyttä joilla on suuret negatiiviset seuraukset ja yliarvioida myönteisten tapahtumien todennäköisyyksiä Riskien arviointi Esimerkki. (H. Shaefer) 8

Riskien raportointi ja seuranta Riskien seuranta jatkuvaa ja ohjaa testauksen kohdentamista HYVÄKSYNTÄTESTAUS Tavoite: osoittaa että tuote on sopimuksen mukainen Tavoitteena ei löytää enää virheitä, demonstraatio Joskus hyväksymistestauksen suunnitelma ja jopa testitapaukset ovat osa sopimusta Hyväksymistestaus perustuu asiakasvaatimuksiin Alihankintasuhteessa nämä hyväksymistestit voivat olla luonteeltaan kuitenkin integrointitestejä Perinteisesti hyväksymistestaus sijoittuu hankkeen loppuun Ketterässä kehityksessä myös hyväksymistestaus jakaantuu iteraatioille Hyväksytään piirre kerrallaan 9

Hyväksyntätestauksen toteutus Testataan kokonaista valmista tuotetta Testaajat loppukäyttäjiä (jos mahdollista) Testiympäristö lähellä todellista käyttöympäristöä Todelliset tietokannat, muut kytkeytyvät järjestelmät vai emulaatio tyngillä Testidata todellista vai generoitua Laitteiston konfiguraatio, laitteiston muu kuormitus Joskus erilaisia käyttöympäristöjä useita, konfiguraatiotestauksen tekniikat Virheiden raportointi ja korjaus Ei automaattisesti korjaukseen Neuvottelukysymyksiä, korjataanko vai siedetäänkö, mihin hintaan, seuraavaan versioon... MoSCoW priorisointi Yleinen priorisointitapa vaatimuksille, voidaan käyttää riskeillekin, etenkin hyväksyntätestauksessa Vaatimuksen toteutumisen testaamisen kohdentaminen asiakkaan prioriteetin mukaan Luokitellaan vaatimukset kategorioihin Must test - not negotiable Should test - agreed on, but not critical Could test - nice to have Won t test - to future releases Sovitaan hyväksyntätestauksessa taso jolloin katsotaan tuote valmiiksi toimitukseen Esim. Must 100%, Should 80%, Could 0% 10

Ylimpien testaustasojen synergiat Yksikkö- ja integrointitestauksen yhdistämisesen keinot ja hyödyt olivat ilmeisiä, ainakin niin kauan kuin kyse on kehittämistä tukevasta testauksesta Eri testaajien välillä on kuitenkin vaikea löytää synergiamahdollisuuksia Kehittäjät, testaajat, asiakkaat, ulkoistettu testaus Korkean tason integrointitestaus ja järjestelmätestaus Erilliset testaajat huolehtivat suurempien integrointien testauksesta, käyttäen samaa testiympäristöä ja järjestelyä kuin kehittäjät Korkean tason integrointitestaus hyödynnettävissä osana järjestelmätestausta Järjestelmätestaus ja hyväksymistestaus Mahdollista mikäli loppukäyttäjät osallistuvat järjestelmätestaukseen Usein yhdistyy ketterässä kehityksessä Luontevaa kun järjestelmätestaus on tehtävä aidossa ympäristössä 11