Systeemityö 2 Käyttötapauskaavio Teppo Räisänen, Principal Lecturer Oulu University of Applied Sciences, School of Business and Information Management teppo.raisanen@oamk.fi, 050 382 6587
Tehtävä Pohtikaa seuraavien järjestelmien 1) päätoimijoita (henkilöryhmiä), 2) päätoimintoja: Pankki, kirjasto, oppilaitos (ASIO), nettikauppa, Facebook Kuvaa sanallisesti valitusta kohteesta ”kuka tekee ja mitä tekee” Rahan nostaminen pankkitiskillä Kirjan lainaaminen itsepalvelupäätteellä Opintosuoritusmerkintöjen syöttäminen ASIO:on Kirjan ostaminen nettikaupasta Uuden tapahtuman luominen Facebook:iin
Käyttötapaus Käyttötapauskaaviot kuvaavat järjestelmän ja toimijoiden välistä vuorovaikutusta Käyttötapaus vastaa yhtä toimijan havaitsemaa täydellistä toimintoa, josta seuraa hyödyllinen lopputulos Käyttötapaus edustaa järjestelmän toiminnallista vaatimusta Käyttötapaus on järjestelmän suorittamien toimintojen kuvaus Kuvataan toimijan näkökulmasta (ei oteta kantaa toteutukseen) Käyttötapauksen käynnistää aina toimija
Käyttötapaus Pankki Kirjasto Nettikauppa Rahan nostaminen ja tallentaminen Lainan myöntäminen Laskun maksaminen Kirjasto Kirjan lainaus ja palautus Uuden kirjan tietojen syöttäminen Viivästymissakon maksu Nettikauppa Tuotteiden selaus Tuotteen siirto ostokoriin Tuotteiden ostaminen
Käyttötapaus Käyttötapaus (use case) Toimija (actor) Järjestelmä (system) Assosiaatio
Toimijoiden löytäminen Toimijat edustavat niitä sidosryhmiä, jotka käyttävät ja ovat vuorovaikutuksessa järjestelmän kanssa Toimijoiden tunnistaminen auttaa järjestelmän vaatimusten määrittämisessä Asiakas Pankin- johtaja Pankki- virkailija
Toimijoiden löytäminen Toimijat voidaan koettaa tunnistaa kysymysten avulla: Ketkä käyttävät järjestelmän päätoimintoja? Kenen työhön järjestelmä vaikuttaa? Kuka ylläpitää järjestelmää? Tarvitseeko järjestelmä ulkoisia laitteita toimiakseen? Keskusteleeko järjestelmä toisten järjestelmien kanssa? Ketä järjestelmän tuottamat tulokset kiinnostavat?
Toimijoiden väliset suhteet Perintä on mahdollista toimijoiden välillä Pankki- virkailija Pankin- johtaja
Kirjaston tietojärjestelmä Toimijakaavio Kirjaston tietojärjestelmä
Kirjaston tietojärjestelmä Toimijakaavio Kirjaston tietojärjestelmä
Kirjaston tietojärjestelmä Toimijakaavio Kirjaston- hoitaja Kirjaston tietojärjestelmä Asiakas Informaa-tikko
Käyttötapaukset Käyttötapaukset ovat toimijoiden ja järjestelmän välisiä vuorovaikutustilanteita Jokaiselle löydetylle toimijalle pitää kysyä: Mitä toimintoja toimija tarvitsee järjestelmältä? Mitä toimija haluaa tehdä? Tarvitseeko toimijan lukea, luoda, tuhota, muokata tai tallentaa tietoa järjestelmään? Tarvitseeko järjestelmän huomauttaa toimijalle jotain? Tarvitseeko toimijan huomauttaa järjestelmälle jotain? Voiko toimijan päivittäisiä tehtäviä helpottaa tai parantaa lisäämällä järjestelmään uusia toiminnallisuuksia?
Käyttötapaukset Lisäksi kannattaa kysyä yleisiä kysymyksiä: Mitä syötteitä/tulosteita järjestelmä tarvitsee? Mistä syötteet/tulosteet tulevat? Minne syötteet/tulosteet menevät? Mitä ongelmia vanhassa järjestelmässä on?
Maksa myöhästymis-maksu Käyttötapaukset Graafinen notaatio Poista kirja Lainaa kirja Lisää kirja Palauta kirja Maksa myöhästymis-maksu
Maksa myöhästymis-maksu Käyttötapauskaavio Poista kirja Lainaa kirja Lisää kirja Palauta kirja Kirjaston-hoitaja Asiakas Maksa myöhästymis-maksu
Skenaario Skenaario kuvaa yhtä käyttötapausta* Skenaario on tarkennettu kuvaus siitä, miten käyttötapauksen on tarkoitus mennä Virhetilanteista voi kirjoittaa oman skenaarion * skenaarioita voi myös kirjoittaa niin, että niissä kuvataan monta käyttötapausta
Skenaario: OTTO-automaatti Käyttäjä syöttää sirukortin automaatin siniseen aukkoon Käyttäjä syöttää PIN koodin Järjestelmä tarkistaa onko koodi oikea Käyttäjä valitsee ”otto” Käyttäjä valitsee halutun rahasumman Järjestelmä valitsee setelit Käyttäjä valitsee ”lopeta” Järjestelmä palauttaa kortin Järjestelmä antaa rahat
Tehtävä Piirtäkää käyttötapauskaaviot seuraavista esimerkeistä: Pankki Kirjasto oppilaitos (ASIO) Nettikauppa Facebook Kirjoittakaa skenaariot yhdestä käyttötapauksesta jokaisessa kaaviossa
Käyttötapausten väliset suhteet Yleistys (Periytyminen / generalization) Sisältyvyys (include) Laajennus (extend)
Käyttötapausten väliset suhteet Yleistys (Periytyminen / generalization) Luokkakaaviossa aliluokka perii yläluokan ominaisuudet Samalla tavalla käyttötapaus voi periä toiselta käyttötapaukselta käytöksen ja tarkoituksen Yleensä perittyä käytöstä/tarkoitusta muokataan jollain tavalla Etsi asiakas Etsi henkilö Etsi yritys
Käyttötapausten väliset suhteet Sisältyvyys (include) Yksittäinen / yleinen käyttötapaus, joka sisällytetään muihin käyttötapauksiin ja jota muut käyttävät Mallinnetaan yleistä toiminnallisuutta, josta useat käyttötapaukset ovat riippuvaisia Sama toiminta useissa paikoissa Kun käyttötapaus käyttää toista, koko käyttötapaus on käytettävä/sisällytettävä Sisällytetty käyttötapaus ei toimi itsenäisesti, vaan osana toiminnallisuutta Kirjau-tuminen <<indluce>> <<indluce>> Laskun maksu Saldo- kysely
Käyttötapausten väliset suhteet Laajennus (extend) Käyttötapaus laajentaa toista käyttötapausta lisäämällä siihen toimintoja Laajentava käyttötapaus voi sisällyttää itseensä laajennettavan käyttötapauksen toimintoja, mutta ei välttämättä kaikkia Peruskäyttötapauksen toimintaa voidaan laajentaa tietyssä paikoissa: laajennuspisteissä Laajennussuhteella kuvataan valinnaista toiminnallisuutta Tilauksen tekeminen <<extend>> Pikatilauksen tekeminen
Käyttötapausten väliset suhteet Laajennus (extend) Ei kannata käyttää liikaa Sopii parhaiten, kun järjestelmästä voidaan toimittaa asiakkaille eri versioita Tai kun järjestelmää on tarkoitus laajentaa toimituksen jälkeen Tilauksen tekeminen <<extend>> Pikatilauksen tekeminen
Kotitehtävä Piirtäkää puuttuvat käyttötapauskaaviot ja skenaariokuvaukset Pankki Kirjasto oppilaitos (ASIO) Nettikauppa Facebook