Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheraportointi ja virheasian ajaminen Maaret.

Samankaltaiset esitykset


Esitys aiheesta: "Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheraportointi ja virheasian ajaminen Maaret."— Esityksen transkriptio:

1 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheraportointi ja virheasian ajaminen Maaret Pyhäjärvi ja Erkki Pöyhönen Julkaisuversio 1.0 2005-01-02 tekijä mainittava http://creativecommons.org/licenses/by/1.0/fi/

2 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Tiedoksi lukijalle Tämä materiaali on edelleen työn alla –Varsinainen julkaisu tapahtuu testauskirjan julkaisun yhteydessä tai jälkeen Materiaalin hyödyntäminen on vapaata –Erityisesti haluamme tukea yleishyödyllisen ohjelmistotestauksen opetuksen jäsentymistä tarjoamalla materiaalimme vapaasti muokattavaksi pohjamateriaaliksi Uskomme että kirjallinen materiaali on noin 20 % vastaavasta koulutuksesta puhuttuna –Lisää materiaalia löytyy pään sisältä Kysyttävää? –Ota yhteyttä maaret.pyhajarvi@iki.fi ja erkki.poyhonen@nokia.commaaret.pyhajarvi@iki.fi erkki.poyhonen@nokia.com

3 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen 3 – Virheraportointi ja virheasian ajaminen Tehokas ohjelmistotestaus Testitapaukset ja testien suorittaminen Virheraportointi ja virheasian ajaminen Testaus ohjelmisto- kehityksen osana Katselmoinnit testaustoimintana Testaustekniikat Testausvälineet ja testauksen automatisointi Testauksen suunnittelu ja hallinta Testausprosessin muuttaminen

4 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Oppimistavoitteet Ymmärrät miksi virheraportointiin pitää panostaa Tiedät kuinka laaditaan hyviä virheraportteja joilla saadaan virheet korjatuksi Osaat suhtautua löytyneisiin virheisiin asianmukaisesti Tiedät miten tunnistaa vaatimuksia virhetiedon rakenteelle mittaamistavoitteiden perusteella

5 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen 3 – Virheraportointi ja virheasian ajaminen Käsiteltävät asiat Virheiden raportoinnin prosessi Virhekorjauk- sien motivoi- minen

6 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen 3 – Virheraportointi ja virheasian ajaminen Käsiteltävät asiat Virheiden raportoinnin prosessi Virhekorjauk- sien motivoi- minen

7 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Ohjelmistossa on virhe jos: Ohjelmisto ei tee jotakin mitä sen määrittelyjensä mukaan pitäisi tehdä Ohjelmisto tekee jotain mitä sen määrittelyjensä mukaan ei pitäisi tehdä. Ohjelmisto tekee jotakin mitä määrittelyissä ei ole mukana Ohjelmisto ei tee jotakin mitä määrittelyissä ei ole mukana mutta pitäisi olla. Ohjelmisto on vaikea ymmärtää, käyttää, hidas tai – testaajan mielipiteen mukaan – ei vain ole loppukäyttäjän mielestä oikein.

8 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheraportointi Testauksessa etsitään virheitä Jos virheitä ei raportoida ja saada korjatuksi, miksi tehdä testausta –”Testaaja, joka ei osaa raportoida havaintoja hyvin on kuin jääkaapin valo, joka on päällä vain kun ovi on kiinni” – Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing Virheraportointi on virhetilanteen yksityiskohtaista viestintää –Viittaus testitapaukseen ei ole riittävä raportti

9 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheiden hallinta testaukselle Painotus virheraportin sisältöön –Raportointiin käytettävä aika vs. korjauksen tekemiseen käytettävä aika –Jos erillisen testauksen on tarkoitus tukea kehitystä, muiden tekemän selvitystyön minimointi on hyvä tavoite Näkyvyys etenemiseen on kehitykselle kriittistä Virheenhallinnan muodollisuuden merkitys kasvaa nopeasti projektin koon kasvaessa tai tekijöiden hajautuessa

10 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Edistymisen seuranta vaatii virheenhallintaa Yksi tapa seurata etenemistä on seurata löytyneitä ja korjattuja virheitä Se on hyödyllinen tapa seurata etenemistä myöhemmissä kehitysaktiviteeteissa, kun taas alussa toiminnallisuuden seuranta on hyödyllisempää Virhetrendit kuulivat tärkeimpiin välineisiin päätettäessä koska tuote julkaistaan Trendit yhdistävät sekä projektijohtoa että ylempää johtoa niihin kohdistuvien intressien puolesta

11 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheraporteissa on paljon tietoa Virheiden analysointia voidaan käyttää projektin ja prosessin virhekaavojen tunnistamiseen –Virhekaavat saadaan seuraamalla eri aktiviteettien löytämiä virhemääriä –Aineiston lajittelu moduuleittain mahdollistaa kohdistetut toimenpiteet, sillä virheet usein kerääntyvät ryhmiksi Toinen tyypillinen käyttötarkoitus virheiden analysoinnille on prosessin parannus –Esimerkiksi yhteisten parantamistapojen löytäminen joilla yleisimmät virhetyypit saadaan vähenemään

12 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Miksi teemme tätä? Ei raporttia = ei virhettä Tuletko muistamaan missä oli vikaa vielä vuoden päästä? Tuletko muistamaan, kuinka toistat sen kahden päivän kuluttua? Kuinka muuten todistamme, että testasimme? Viestintä: testausta tehdään myös kaukana kehityksestä

13 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheen elinkaari

14 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Alitiloja tarvitaan Avoin –Uusi –Avoin –Uudelleenavattu Ratkaistu –Korjattu –Ei toistettavissa –Ei korjata –Kuten suunniteltu –Kaksoiskappale –Ulkoinen –Siirretty tulevaisuuteen

15 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virhekorjausten varmistaminen Kun toteuttaja sanoo virheen olevan korjattu, varmista että näin on –Monia syitä väärinymmärrykselle Tarkista korjatut virheet nopeasti –Varmista, että et hidasta virheen sulkemista tai eteenpäinviemistä Kun korjaus menee pieleen, puhu toteuttajalle –Ystävällisesti ja avuliaasti! Virheen löytäjän (testaajan) pitäisi sulkea virheraportti –Muut eivät tiedä raportin yksityiskohtia ja mahdollisia aukkoja

16 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Tiedosta käsittelykustannukset Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Raportin kirjoittaminen vie aikaa Raportin lukeminen vie aikaa –Projektipäällikkö –Muutoshallintaraati –Toteuttaja Harkitse sopivaksi mitä käsitellään millä tavoin, sillä pienet ja ei-toistettavat asiat vievät myös aikaa Myös virhekorjauksen varmistamiseen liittyy käsittelykustannus –Seuraa riskin toteutumaa

17 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Julkiset vs. yksityiset virheet Julkinen = kirjattu jaettuun virhetietokantaan Yksityinen = toteuttaja korjaa muistilappuun pohjautuen Koska virheestä pitäisi tulla julkinen? –Tasapainoteltavana tarve arvioida virheenpoiston tehokkuutta vs. virheraportoinnin kustannus Testaajat voivat raportoida yksityisiä virheitä Ohjelmoijat voivat raportoida julkisia virheitä

18 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Kysy ennen kuin raportoit virheitä yksityisiä julkaisuja vastaan Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Yksityisen version testaamisen sanaton sääntö: onnistut testaajana kun toteuttaja näyttää hyvältä Raportointi julkisissa tietokannoissa usein johtaa siihen ettei testaajalle näytetä varhaisia versioita –Riippuu kulttuurista Varo kuitenkin kutsumasta kaikkia varhaisia versioita yksityisiksi –Selvät pelisäännöt koska julkinen raportointi alkaa siten että johto voi seurata tilannetta

19 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheen prioriteetti ja vakavuus Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Vakavuus on virheen vaikutus tai seuraus –Eivät muutu ellei virheen piiloseurauksista opita jotain uutta. Prioriteetti ilmaisee koska yritys haluaa kyseisen virheen korjattavaksi –Muuttuvat projektin edetessä –Yleensä vakavilla ongelmilla on korkea korjausprioriteetti ja pienillä kosmeettisilla ongelmilla on matala korjausprioriteetti Nämä kaksi asiaa eivät kuitenkaan ole samat –Tyypillisesti testaaja käyttäjän edustajana päättää vakavuudesta, kun taas prioriteetti on projektitason tai jopa yritystason päätös

20 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Esimerkki prioriteetin ja vakavuuden eroista Vakavia virheitä joita ei kannata korjata: –Virhe myöhäisessä vaiheessa projektia, jonka korjauskustannukset kokonaisuutena ylittävät mahdollisen haitan –Virhe joka korruptoi tietoja jotka syötetään niin että koneen kello on 10 vuotta nykypäivästä jäljessä. Virheen näkyminen käytäntöön ei ole todennäköistä tältä osin ja se saatettaisiin jättää korjaamatta. Kosmeettisia virheitä jotka kuitenkin pitää pikaisesti korjata: –Virhe aloitusruudussa, jossa yrityksen logo on nurinpäin tai nimi väärin kirjoitettuna ei ole virheenä kovin vakava, mutta korjausprioriteetiltaan varmasti hyvinkin korkea useimmille yrityksille.

21 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Pienilläkin virheillä on väliä Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Pienet virheet harhauttavat asiakasta ja vähentävät luottamusta sovellukseen Kaner and Pels: halvat pikkukorjaukset (alle 2 h korjaustyötä) aiheutti puolet teknisen tuen soitoista eräälle massamarkkinasovellukselle

22 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen IEEE 1044 luokittelu ja luokittelutiedot Virheen kirjaus Tutkimustulosten kirjaus Toimenpiteiden kirjaus Jälkikäsittelyn kirjaus VaiheetKirjaustoimet -tärkeys -merkitys asiakkaalle -vaikutus käyttöturvaan -vaikutus projektin kustannuksiin -vaikutus projektin riskeihin -vaikutus laatuun/ luotettavuuteen Täydentävät luokittelutiedot Pakolliset luokittelutiedot Tunnista vaikutus - vakavuus Tunnistus Tutkinta Toimenpiteet Jälkikäsittely Luokittele havainto -aktiviteetti -projektin vaihe -oire Luokittele tutkinnan tulokset -todellinen aiheuttaja -virhelähde -tyyppi Luokittele toimenpiteet -ratkaisu Luokittele jälkikäsittely -jatkokäsittely -oletettu syy -toistettavuus -tuotteen tila -korjaavan toimenpiteen laajuus Täydentävät luokittelutiedot Pakolliset luokittelutiedot

23 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheen raportointi Raportoi niin pian kuin mahdollista Kuvaa virheet mahdollisimman selkeästi –Epäselvät raportit jätetään helposti huomiotta ja ne aiheuttavat lisätyötä Ole puolueeton ja neutraali virheitä raportoidessa Seuraa virheraporttien etenemistä prosessissa Virheraportin toistettavuus on tärkeää, testitapauksen toistettavuus ei välttämättä ole.

24 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Hyvä virheen kuvaus Minimaalinen –Vain tosiasiat ja yksityiskohdat jotka ovat tarpeen –Tarkat askeleet jotka näyttävät ongelman Yksittäinen –Vain yksi virhe per raportti Selkeä ja yleinen –Käytä askeleita jotka suoritetaan helposti ja osoita virheen yleisyys ja näkyvyys käyttäjälle mahdollisuuksien rajoissa. Toistettavissa –Eristä ja toista satunnaiselta vaikuttava käyttäytyminen.

25 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Kaikkia virheitä ei korjata Aikaa ei ole riittävästi –Priorisoi korjaukset Kyseessä ei ole oikeasti virhe –Väärinymmärrykset, testivirheet tai speksimuutokset Liian riskialtista korjata –Yhden asian korjaaminen voi rikkoa monta muuta Se ei ole korjaamisen arvoinen –Esiintyy harvoin tai vähän käytetyissä ominaisyyksissa ja sillä on kiertoteitä. Virheet raportoidaan heikosti.

26 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Tyypillistä sisältöä virheraportille ID Otsikko tai yhteenveto Vakavuus Prioriteetti Kategoria Ympäristö ja/tai alusta Kuvaus Muita hyödyllisiä kenttiä kuten –Koonti –Kuka löysi ja koska –Omistaja

27 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Otsikko tai yhteenveto Kuvaa ongelman yhdellä rivillä Parhaimmillaan antaa ajatuksen missä ja mitä ongelma on ilman kuvauksen lukemistakin Jos ei voi antaa molempia, keskity ensisijaisesti vastaamaan kysymykseen mitä, sitten vasta missä Hyvä kieliasu parantaa selkeyttä Hyvä yhteenveto: –Lyhyt riittävän yksityiskohtainen kuvaus josta lukija voi käsittää virhetilanteen –Lyhyt ilmaus virheen rajoista tai riippuvuuksista –Lyhyt ilmaus virheen vaikutuksesta tai seurauksista

28 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Kuvaus Pitäisi sisältää kaikki tarvittava tieto ongelman toistamiseen Kenellä tahansa, jolla on perustietämys testattavasta järjestelmästä, pitäisi olla mahdollista toistaa virhe kuvaukseen pohjaten (sinä, toinen testaaja, kehittäjä, projektipäällikkö, ulkopuolinen) –Aliarvioi lukijaa Täydelliset ja selkeät askeleet ongelman toistamiseen –Kukaan ei osaa lukea ajatuksiasi –Jos joku tulee pyytämään lisätietoa, kuvauksesi ei ollut riittävä Kaikki toistamiseen tarvittava tieto yhdessä paikassa Jos mikä tahansa muutos mihin tahansa virheraportin kenttään tehdään, se kannattaa selittää kommentoiden kuvauksen perään

29 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Ratkaisu ei kuulu raporttiin Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Väärät ratkaisuehdotukset johtavat helposti virheraporttien ohittamiseen Keskity vain tarkkaan tietoon ongelmasta, ei ratkaisusta Jätä toteuttajalle tilaa virheen syyn löytämiseen ja korjauksen tekemiseen Muotoile ehdotuksia, ei ratkaisuja, jos tarpeen

30 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Luettavuuden parantaminen Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Virheraportteja lukevat ihmiset voivat olla väsyneitä ja ärtyneitä Yksinkertaiset toistamisen askeleet –Kulje virhetilanteeseen askel askeleelta –Numeroi kukin askel –Älä jätä kertomatta mitään tarpeellista askelta –Listaa lyhin mahdollinen tapa toistaa –Käytä välilyöntejä ja rivinvaihtoja muotoiluun –Käytä lyhyitä ja yksinkertaisia lauseita –Osoita mitä tapahtui ja mitä odotettiin –Jos seuraukset ovat vakavia mutta tarvitsevat selitystä, selitä –Sisällytä lisäkommentteja jos se helpottaa ongelman tunnistusta tai uudelleentestausta korjauksen jälkeen –Monimutkaisille ongelmille, muotoile kolmen rivin johtotason tiivistelmä –Pidä sävy neutraalina –Älä vitsaile; ne ymmärretään väärin.

31 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Muuta Liitä mukaan tiedostot jotka tarvitaan virheen toistamiseen tai ongelman tutkimiseen –Nopeuta diagnosointia Ota kuva, jos kyseessä on ulkoasuongelma, tai jos se auttaa ymmärtämään ongelmaa; liitä se raporttiin Virheraportin tulee olla itsenäinen; ei vaatimusta testitapausten tai muiden testidokumenttien läsnäolosta ymmärtämiseen ja toistamiseen Vaikka testaajalla on oikeus ja velvollisuus kertoa kehitykselle että ”vauva onkin ruma”, sen voi tehdä myös diplomaattisesti

32 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Toistettavuus on tärkeää Virheraportit, joita ei voi toistaa ohjelmoijalle tarjolla olevassa ympäristössä ovat vähemmän uskottavia (ko. toteuttajalle) Jos ongelma on ympäristöstä tai kokoonpanosta riippuvainen, raportti on uskottavampi jos se suoraan kertoo riippuvuuden (jolloin toteuttaja lähtee oletuksesta että virhe ei toistu kaikilla laitteilla ja ohjelmistoilla)

33 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Ei-toistettavien virheiden raportointi Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Merkittävät virheet häiritsevät käyttäjää vaikka hekään eivät niitä voisi järjestelmällisesti toistaa. Toteuttaja voi päästä ongelman syihin kiinni testaajaa paremmin. Raportoitavia vaikka toimintatapa olisi yleensä jättää ne käsittelemättä. Yhdistele useita raportteja jäljittäessäsi ongelmatilannetta. Kuvaa tekemäsi ongelmanselvitys Pidä huolta että raportista käy ilmi että virhe ei ole toistettava. –Erillinen kenttä vs. yhteenveto Älä raportoi virheitä joita et ole parhaasi mukaan yrittänyt toistaa

34 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Ei-toistettavat virheet ovat toistettavissa Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Virhetilanteet tapahtuvat tiettyjen ehtojen vallitessa –Useita muuttujia –Syy virheen toistettavuuden puutteeseen on aineistossa. Logiikassasi on jokin aukko. Et käytä oikeita ehtoja. Mikset? Kun kohtaat ei-toistettavan virheen, jotain tärkeää on huomioimatta –Muistivuodot, villit osoittimet, korruptoitunut pino –Ensimmäisen kerran ehdot –Tietyt aineiston arvot, korruptoitunut tietokanta –Aikariippuvuus –Tehtävien sarja –Aiemmat virhetilanteet –Taustalla ajettava ohjelmisto

35 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen 3 – Virheraportointi ja virheasian ajaminen Käsiteltävät asiat Virheiden raportoinnin prosessi Virhekorjauk- sien motivoi- minen

36 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheasian ajaminen 1.Testauksen tarkoitus on löytää virheitä. 2.Havaintoraportit ovat ensisijainen tuotoksesi. Ne ovat se, minkä testausryhmän ulkopuoliset ihmiset parhaiten huomaavat ja muistavat työstäsi. 3.Paras testaaja ei ole se, joka löytää eniten virheitä tai se, joka nöyryyttää eniten ohjelmoijia. Paras testaaja on se, joka saa eniten virheitä korjatuksi. 4.Ohjelmoijat toimivat aikarajoitteiden ja kilpailevien prioriteettien vaikutuksen alla. Opettele kuinka kirjoitat ja esität testauksesi tulokset siten, että niistä saadaan tuloksia

37 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Valitse taistelusi Vastuullasi ei ole varmistaa, että kaikki virheet tulevat korjatuksi Raportoi virheet tarkasti ja tavalla, joka antaa lukijalle mahdollisuuden ymmärtää ongelman koko vaikutuksen Selvitystyöllä ja kirjoittamisella on merkittävä vaikutus virheen korjaamisen toden- näköisyyteen Kaiken puolesta taisteleminen syö vakuuttavuutta

38 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Havaintoraportti myyntivälineenä Lähde: Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing. Esitä hyöty, jotta potentiaalinen asiakkaasi haluaa sitä Ennusta kaupan esteet ja valmistele vastauksesi Muotoile viestisi muotoon, jossa se ei loukkaa ketään

39 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virhekorjausten motivointi Kun ajat testin ja löydät virhetilanteen, katselet oiretta, et alla olevaa virhettä. Olet voinut löytää tai olla löytämättä parhaan esimerkin virhetilanteesta, jonka alla oleva virhe voi aiheuttaa. Siksi sinun pitäisi tehdä jonkun verran seurantatyötä yrittääksesi todistaa, että virhe: –on vakavampi kuin miltä se aluksi näyttää. –on yleisempi kuin miltä se aluksi näyttää.

40 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Etsi seurannaisvirheitä Lähde: Kaner. 2002. Bug Advocacy Slides. Kun löydät virheen, olet saanut ohjelman tilaan, johon toteuttaja ei sitä tarkoittanut ja jota toteuttaja todennäköisesti ei osannut odottaa. Saatat myös löytää aineistoa, jolla on oletettavasti mahdottomia arvoja. Ohjelma on nyt haavoittuvaisessa tilassa. Jatka sen testaamista ja saatat huomata, että alla olevan virheen todellinen vaikutus on paljon pahempi virhe, kuten järjestelmän kaatuminen tai korruptoitunut aineisto. Kolme jatkotestauksen tyyppiä: –Muuntele käytöstä (muuta olosuhteita muuttamalla sitä, mitä teet) –Muuntele ohjelmiston valintoja ja asetuksia (muuta olosuhteita muuttamalla jotakin testattavasta ohjelmistosta). –Muuntele ohjelmisto- ja laitteistoympäristöä

41 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Erikoistapausten yleistäminen Testaamme ääriarvoilla, koska ne ovat todennäköisimpiä virheen löytymispaikkoja. Mutta kun löydämme virheen, meidän ei tarvitse pitäytyä ääriarvotesteissä. –Kokeile yleisiä arvoja. Nämä ovat helppoja asetuksia, joiden ei pitäisi olla ohjelmalle mikään ongelma. Saatko virheen toistumaan? Jos kyllä, kirjoita se ylös ja viittaa raportissa näihin yleisiin asetuksiin. Tästä syntyy erittäin uskottava virheraportti.

42 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Toteuttajan motivoiminen virheen korjaamiseen Se näyttää todella pahalta Se näyttää mielenkiintoiselta arvoitukselta ja herättää ohjelmoijan uteliaisuuden Se tulee vaikuttamaan moniin ihmisiin Siihen pääseminen on triviaalin helppoa Se on nöyryyttänyt yritystä, tai sen kaltainen virhe nöyryytti kilpailijaa Jokin vastaavankaltainen nöyryytti yritystä tai kilpailijaa Johto (siis, joku jolla on vaikutusvaltaa) on sanonut, että he todella haluavat sen korjatuksi Olet sanonut, että haluat virheen korjatuksi, ja ohjelmoija pitää sinusta, luottaa arvostelukykyysi, on avoin imartelullesi, tai on sinulle palveluksen velkaa

43 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Korjausten vastustamisen syitä Toteuttaja ei saa toistettua virhettä Virheen ilmeneminen vaatii oudon ja monimutkaisen askelten sarjan Ei tarpeeksi tietoa siitä, mitkä askelet vaaditaan, ja niiden selvittäminen vie paljon työtä Ohjelmoija ei ymmärrä raporttia Epärealistinen (esim. “erikoistapaus”) Virheen korjaaminen vaatii paljon työtä Korjaus tuo liikaa riskejä koodiin Ei havaittavaa asiakasvaikutusta Ei tärkeä (kukaan ei välitä jos tämä on väärin: vähäinen virhe tai käyttämätön ominaisuus) Se ei ole virhe, se on ominaisuus Johto ei välitä tämän tyyppisistä virheistä Ohjelmoija ei pidä sinusta / luota sinuun (tai asiakkaasta, joka valittaa virheestä)

44 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Muihin vaikuttaminen kustannusten perusteella Todennäköiset teknisen tuen kustannukset Riski asiakkaalle Riski asiakkaan aineistolle tai laitteistolle Näkyvyys katselmoijien intressialueella Laajuus, johon virhe laajenee ohjelman käytöstä Kuinka usein asiakas näkee sen? Kuinka moni asiakas näkee sen? Estääkö se joitakin testaustehtäviä? Aste, jolla se estää sopimusten syntymisen tai myymisen

45 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Yhteenveto Virheraportointi on usein kirjallista viestintää ja väärinymmärryksien välttäminen tehostaa toimintaa Virheraportti kuvaa yleensä määriteltyjä testitapauksia tarkemmalla tasolla tavan toistaa virhetilanne. Virheet voidaan ratkaista sekä korjauksella että päätöksellä Testaajan kannattaa valita taistelunsa korjaukseen tahdottavien virheiden suhteen

46 Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Linkkejä ja vinkkejä Kirjoja: –Kaner. 1999. Testing Computer Software. –Kaner, Bach, Pettichord. 2002. Lessons Learned in Software Testing, Artikkeleita: –Std. IEEE 1044. Täydentävä jatkokurssi: –Virheenhallinta


Lataa ppt "Tämä teos on lisensoitu Creative Commons Tekijä mainittava –lisenssillä. – Maaret Pyhäjärvi & Erkki Pöyhönen Virheraportointi ja virheasian ajaminen Maaret."

Samankaltaiset esitykset


Iklan oleh Google