Käyttötapausanalyysi ja testaus tsoft

Samankaltaiset tiedostot
Testaaminen ohjelmiston kehitysprosessin aikana

Testaussuunnitelma Labra

Määrittelyvaihe. Projektinhallinta

Ohjelmistojen mallintaminen. Luento 2, pe 5.11.

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Ohjelmistotekniikan menetelmät, kesä 2008

Dynaaminen analyysi II

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

UML- mallinnus: Tilakaavio

Ohjelmistotekniikan menetelmät, kevät 2008

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

käyttötapaukset mod. testaus

Dynaaminen analyysi II Luento 4 Antti-Pekka Tuovinen

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

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Convergence of messaging

Ohjelmiston toteutussuunnitelma

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

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

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

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

Ohjelmistojen mallintaminen, kesä 2009

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta

UCOT-Sovellusprojekti. Testausraportti

Yksikkötestaus. Kattava testaus. Moduulitestaus. Ohjelman testaus. yksikkotestaus/ Seija Lahtinen

Ohjelmistotuotantoprojekti

Ohjelmiston testaussuunnitelma

Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

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

Testaussuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

Johdatus sovellussuunnitteluun, s2001, osa 3 Helsingin yliopisto / TKTL. Harri Laine / Inkeri Verkamo 1. Järjestelmän palvelujen määrittely

Johdatus sovellussuunnitteluun, s2000, osa3 Helsingin yliopisto;/tktl. Harri Laine 1. Järjestelmän palvelujen määrittely

Lohtu-projekti. Testaussuunnitelma

58160 Ohjelmoinnin harjoitustyö

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät

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

TOIMINNALLINEN MÄÄRITTELY MS

Ohjelmistotekniikan menetelmät, UML

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

Ohjelmistojen mallintaminen

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2)

Laadukas vaatimustenhallinta. Pekka Mäkinen Copyright SoftQA Oy

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

Dynaaminen analyysi I

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

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta

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

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

Käyttötapausten mallintaminen

Käyttäjien tunnistaminen on ensimmäinen tehtävä järjestelmän palveluja määriteltäessä. Käyttäjien löytämiseksi voidaan esittää kysymykset:

Hirviö Järjestelmätestauksen testitapaukset ja suoritusloki I1

Ohjelmiston testaus ja laatu. Testausmenetelmiä

Ohjelmistojen mallintaminen Olioperustainen ohjelmistomalli Harri Laine 1

SEPA-päiväkirja: Käytettävyystestaus & Heuristinen testaus

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

Ohjelmien testaustyökalut

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

Good Minton QA Raportti Iteraatio 1 Sulkapalloliiton Kilpailujärjestelmä

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

Ohjelmistotekniikka - Luento 2

Ohjelmistotekniikan menetelmät, luokkamallin laatiminen

CoMa - Testausdokumentti

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

Testi generaattori. Testien ajotyökalu. Kuva 1. Offline mallipohjainen testaus

Siltatiedon tarkkuustason määrittäminen Taitorakennerekisterissä. Maria Vinter

Ohjelmiston testaus ja laatu. Testaustasot

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

Opiskelija osaa määritellä ohjelmiston tiedot ja toiminnot, suunnitella ohjelmiston rakenteen ja laatia ohjelmiston teknisen spesifikaation.

Testaussuunnitelma. Dokumentti: Testaussuunnitelma.doc Päiväys: Projekti: AgileElephant Versio: V0.4

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria

Toiminnot eli käyttäytyminen. Tieto eli rakenteelliset ominaisuudet

Hirviö Laadunvarmistussuunnitelma

T Testiraportti - järjestelmätestaus

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

Onnistunut Vaatimuspohjainen Testaus

Testaussuunnitelma Vaatimusanalyysin hallintatyökalu

Joku hauska otu-aiheinen kuva (no ei oo pakko olla hauska) OHJ-3010 Ohjelmistotuotannon perusteet, kesä 2012

Määrittely- ja suunnittelumenetelmät

Ohjelmistojen mallintaminen Unified Modeling Language (UML)

Ohjelmistojen mallintaminen, kesä 2010

Ohjelmistojen mallintaminen, mallintaminen ja UML

Testaussuunnitelma. Dokumentti: Testaussuunnitelma.doc Päiväys: Projekti: AgileElephant

L models. Testisuunnitelma. Ryhmä Rajoitteiset

Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve

Kurssin aihepiiri: ohjelmistotuotannon alkeita

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

Testaussuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Vaatimusmääritelystä UML:n avulla

Hirviö Testausraportti I2

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

UCOT-Sovellusprojekti. Vaatimusmäärittely

UCOT-Sovellusprojekti. Vaatimusmäärittely

SUUNNITELMA JA RAPORTTI Potilastiedon arkisto -palvelun käyttöönottokoe

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

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

Studio ART Oy. Yritysesittely. Studio ART Oy. Kasöörintie Oulu p

Transkriptio:

Käyttötapausanalyysi ja testaus tsoft 15.09.2004 http://cs.joensuu.fi/tsoft/ Johdanto Use Case analyysi (käyttötapausanalyysi) on yleisesti käytetty järjestelmälle asetettujen toiminnallisten vaatimusten mallinnustekniikka Käyttötapaus kuvaa järjestelmän ja toimijan välisen vuorovaikutuksen eri tilanteissa järjestelmän vastatessa toimijan tekemään palvelupyyntöön Vuorovaikutus ei aina ole tarkalleen samanlainen, eli samalla käyttötapauksella on useita skenaarioita http://cs.joensuu.fi/tsoft/ 16.9.2004 2

Johdanto Skenaario voi päättyä tavoitteen saavuttamiseen, mutta kaikki skenaariot eivät välttämättä pääty siihen: skenaario voi päättyä esimerkiksi järjestelmän antamaan virheilmoitukseen. http://cs.joensuu.fi/tsoft/ 16.9.2004 3 Johdanto Käyttötapaus kokoaa yhteen kaikki samaan käyttötapaukseen liittyvät eri skenaariot, sekä tavoitteen toteutumiseen päättyvät että tavoitteen saavuttamisessa epäonnistuvat skenaariot Käyttötapauksessa kukin skenaario kuvataan askel askeleelta: kuinka järjestelmän ja toimijan välinen vuorovaikutus tapahtuu http://cs.joensuu.fi/tsoft/ 16.9.2004 4

Johdanto Käyttötapausanalyysin käyttöönotto Mikä on sopiva "karkeustaso" käyttötapaukselle? Mikäli käytetään karkean tason käyttötapauksia, pitäisikö ne jakaa "pienempiin" käyttötapauksiin? Mikäli jaetaan, kuinka muodostuneita "alikäyttötapauksia" käytetään? Miten käyttäjän ja järjestelmän dialogi kuvataan? Pitäisikö käyttöliittymän toiminnallisuus ja dynamiikka kuvata käyttötapauksessa? Missä kuvataan muut järjestelmän tulosteet? http://cs.joensuu.fi/tsoft/ 16.9.2004 5 Johdanto http://cs.joensuu.fi/tsoft/suojattu/kayttotapausanalyysi.htm Collins-Cope: RSI - A Structured Approach to Use Cases and HCI Periaate: Käyttötapaukset jaetaan kolmeen osaan: vaatimuskäyttötapaukset (requirement), palvelukäyttötapaukset (service) ja käyttöliittymäkäyttötapaukset ( interface). http://cs.joensuu.fi/tsoft/ 16.9.2004 6

Vaatimuskäyttötapaukset Vaatimuskäyttötapausanalyysin tuloksena ainakin käyttötapauskaavio(t) ja käyttötapausten sanalliset kuvaukset Käyttötapauskaavion tarkoituksena on antaa yleiskuva järjestelmästä ja sen sisältämistä toiminnoista Käyttötapauskaavio esittää toimijat ja käyttötapaukset sekä niiden väliset suhteet http://cs.joensuu.fi/tsoft/ 16.9.2004 7 Vaatimuskäyttötapaukset http://cs.joensuu.fi/tsoft/ 16.9.2004 8

Vaatimuskäyttötapaukset Käyttötapauksen taso: Käyttötapaukset voidaan jakaa esimerkiksi kolmeen luokkaan: Käyttäjän tavoite: varsinainen käyttötapaus, jonka suorittaminen tuottaa käyttäjälle jotakin arvoa Koottu tavoite: sisältää useita Käyttäjän tavoite -tason käyttötapauksia Alitavoite: osa varsinaista Käyttäjän tavoite -tason käyttötapausta Korkeamman tason käyttötapauksen askel on potentiaalinen sisältyvä käyttötapaus (Alitavoite) http://cs.joensuu.fi/tsoft/ 16.9.2004 9 Vaatimuskäyttötapaukset http://cs.joensuu.fi/tsoft/ 16.9.2004 10

Vaatimuskäyttötapaukset Käyttötapauksen taso Käyttäjän tavoite tason käyttötapauksen yläpuolella voi olla yksi tai useampi käyttötapaus ja Käyttäjän tavoite tason käyttötapauksen alapuolella on todennäköisesti monta käyttötapausta, mutta vain Käyttäjän tavoite tason käyttötapaukset esitetään käyttötapauskaaviossa http://cs.joensuu.fi/tsoft/ 16.9.2004 11 Vaatimuskäyttötapaukset Käyttäjän tavoite -tason käyttötapaus Looginen kokonaisuus, jolla on selvä lähtökohta ja käyttäjälle merkityksellinen lopputulos: Mistä käyttäjä on valmis maksamaan? Liian laajat käyttötapaukset ovat joko liian monimutkaisia ymmärtää tai liian epämääräisiä ollakseen hyödyllisiä Liian suppeat käyttötapaukset => liikaa käyttötapauksia järkevästi hallittavaksi http://cs.joensuu.fi/tsoft/ 16.9.2004 12

Vaatimuskäyttötapaukset http://cs.joensuu.fi/tsoft/ 16.9.2004 13 Vaatimuskäyttötapaukset Graafinen notaatio ei riitä ilmaisemaan kaikkea tarvittavaa informaatiota => Lisäksi tarvitaan käyttötapausten sanalliset kuvaukset UML 1.5 ei standardoi esitystapaa Käyttötapaus kuvataan yleensä sanallisesti vapaamuotoisella tekstillä tai käyttäen kaavainta http://cs.joensuu.fi/tsoft/ 16.9.2004 14

Vaatimuskäyttötapaukset Esimerkki kaavaimesta: http://cs.joensuu.fi/tsoft/suojattu/kayttotapausanalyysi.htm Tunniste Toimija(t) Tavoitteet Taso Sisältyvät käyttötapaukset Laajennetut käyttötapaukset Alkuehdot Loppuehdot http://cs.joensuu.fi/tsoft/ 16.9.2004 15 Vaatimuskäyttötapaukset Esimerkki kaavaimesta (jatkuu): Onnistuneen perussuorituksen skenaario Poikkeukset Kuvaus poikkeuksesta (eli poikkeuksen syy) Kuvaus käyttäjän ja järjestelmän välisestä vuorovaikutuksesta Tekniset kaaviot Käyttöliittymämääritykset Avoimet kysymykset Muutoshistoria http://cs.joensuu.fi/tsoft/ 16.9.2004 16

Järjestelmätestauksen testitapaukset Järjestelmätestauksen testitapaukset luodaan käyttötapausanalyysin pohjalta Luodaan yksi tai useampi testitapaus jokaiselle onnistuneen perussuorituksen skenaariolle (testattavalle) poikkeukselle sekä mahdollisille käyttötapauksen alkuehdoille Esimerkki testitapauslomakkeesta http://cs.joensuu.fi/tsoft/suojattu/tt_esimerkkipohja.htm http://cs.joensuu.fi/tsoft/ 16.9.2004 17 Testiskriptilomake Yleistiedot Sovelluksen tunniste Käyttötapauksen tunniste Kyseisen dokumentin tunniste Muutoshistoria Testausympäristö (mikäli poikkeaa testauksen määrittelydokumentissa määritetystä ympäristöstä) Esimerkki testauksen määrittelydokumentista http://cs.joensuu.fi/tsoft/suojattu/testauksenmaarittely.htm Onnistuneen perussuorituksen skenaario http://cs.joensuu.fi/tsoft/ 16.9.2004 18

Testiskriptilomake Kullekin testitapaukselle Testitapauksen tunniste Poikkeukset: käyttötapauksen poikkeuksen kohta Kuvaus poikkeuksesta Järjestelmän tila testitapauksen alussa Kuvaus käyttäjän ja järjestelmän välisestä vuorovaikutuksesta Poikkeukset: käyttötapauksen poikkeuksen kohta Kuvaus vuorovaikutuksesta Testitapauksen suoritusohjeet Odotetut tulokset Todelliset tulokset Testauksen tuloksen luokittelu http://cs.joensuu.fi/tsoft/ 16.9.2004 19 Testiskriptilomake Poikkeukset, joille ei ole tehty testitapausta Testitapauksen tunniste käyttötapauksen poikkeuksen kohta Kuvaus poikkeuksesta Kuvaus käyttäjän ja järjestelmän välisestä vuorovaikutuksesta käyttötapauksen poikkeuksen kohta Kuvaus vuorovaikutuksesta Syy, miksi ei ole tehty testitapausta http://cs.joensuu.fi/tsoft/ 16.9.2004 20

Palvelukäyttötapaukset http://cs.joensuu.fi/tsoft/ 16.9.2004 21 Palvelukäyttötapaukset Nokia Telecommunications (Jaaksi 1997): Vaatimusten keräysvaiheen jälkeen käyttötapaukset jaetaan pienempiin osiin, operaatioihin Operaatioista dokumentoidaan Nimi Alkuehdot Kuvaus (käyttäen sekvenssikaaviota) Poikkeukset ja Loppuehdot http://cs.joensuu.fi/tsoft/ 16.9.2004 22

Palvelukäyttötapaukset RSI-lähestymistapa: Palvelukäyttötapaukset Palvelukäyttötapausten ja vaatimuskäyttötapausten olennaisin ero on, että palvelukäyttötapaukset ovat atomisia Palvelukäyttötapausmallin luominen voi aiheuttaa päivitystarvetta vaatimuskäyttötapauksiin lisätään vaatimuskäyttötapauksiin ne toiminnot (eli askeleet), jotka halutaan testata järjestelmätestausvaiheessa http://cs.joensuu.fi/tsoft/ 16.9.2004 23 Palvelukäyttötapaukset Esimerkki palvelukäyttötapauksen dokumentoinnista http://cs.joensuu.fi/tsoft/suojattu/kayttotapausanalyysi.htm Tunniste Syöteparametrit Tulosparametrit Alkuehdot Loppuehdot Kuvaus Poikkeukset http://cs.joensuu.fi/tsoft/ 16.9.2004 24

Käyttöliittymäkäyttötapaukset Vaatimuskäyttötapaukset kuvaavat vain järjestelmän käyttäjälle tarjoaman toiminnallisuuden eivät ota kantaa esimerkiksi käytettävän datan vaatimuksiin Kuitenkin ohjelmoijan ja käyttöliittymän suunnittelijan täytyy tietää tarkalleen esimerkiksi se, että mitä tarkoitetaan yhteystiedoilla mitä kenttiä osoitteeseen sisältyy, kenttien pituudet, puhelinnumeron validointisäännöt jne. RSI-lähestymistapa: Käyttöliittymäkäyttötapaukset http://cs.joensuu.fi/tsoft/ 16.9.2004 25 Käyttöliittymäkäyttötapaukset Esimerkki käyttöliittymäkäyttötapauksen dokumentoinnista http://cs.joensuu.fi/tsoft/suojattu/kayttotapausanalyysi.htm Käyttöliittymän tunniste Käyttöliittymän tarkoitus Käyttöliittymän kuvaus Kuva tai piirros prototyypistä Toiminnan ja datan kuvaus Kentät: tyyppi, minimi/maksimipituus, pakollinen tieto, erikoismerkit Painikkeet/linkit: kuvaus toiminnasta Tekstimuotoinen kuvaus http://cs.joensuu.fi/tsoft/ 16.9.2004 26

Käyttöliittymäkäyttötapaukset Testauksen kannalta käyttöliittymäkäyttötapausten pääkohderyhmä yksikkötestaajat Yksikkötestauksen suorittaa (yleensä) sama henkilö, joka koodaa yksikön eli yksikkötestausta voi suorittaa hyvinkin moni henkilö Ohjelman täydellinen yksikkötestaaminen (eli kaikkien mahdollisten syötteiden anto) käytännössä mahdotonta => valittava syötteet, joilla testaus suoritetaan Yksikkötestausohje, jossa mm. määritetään, miten syötteet valitaan http://cs.joensuu.fi/tsoft/ 16.9.2004 27 Käyttöliittymäkäyttötapaukset Esimerkki yksikkötestausohjeesta http://cs.joensuu.fi/tsoft/suojattu/yksikkotestausohje.htm Yksikkötestaus dokumentoidaan käyttäen yksikkötestauksen tuloslomaketta Dokumentoidaan, että testaus suoritettu yksikkötestausohjeen mukaisesti Ei dokumentoida sitä, mitä syötteitä käytetty Esimerkki yksikkötestauksen tuloslomakkeesta http://cs.joensuu.fi/tsoft/dokumenttipohjat.htm http://cs.joensuu.fi/tsoft/ 16.9.2004 28

Lopuksi Kysymyksiä? Kommentteja/palautetta mainituista sivuista kaivataan => vtapola@cs.joensuu.fi Käyttöön joitakin osia mainituista sivuista => vtapola@cs.joensuu.fi http://cs.joensuu.fi/tsoft/ 16.9.2004 29 Lähteet Cockburn, A. (2001) Writing Effective Use Cases. Addison- Wesley, Boston. Collins-Cope, M. (1999) The requirements/service/interface (RSI) approach to use case analysis (a pattern for structured use case development). 29th Technology of Object-Oriented Languages and Systems (TOOLS /EUROPE-29 99), Nancy, FRANCE, 172-183. Jaaksi, A. (1997) Our cases with use cases. The Journal of Object-Oriented Programming 10(9), 58-65 http://cs.joensuu.fi/tsoft/ 16.9.2004 30