Oppijan palvelukokonaisuus Prosessimallinnuskoulutus 28.9.2011
Agenda Yleistä Tässä hankkeessa sovitut kuvauskäytännöt Prosessimallinnuksen perusteet Allas, alku- ja lopputapahtuma, tehtävä, virta ja tietovirta Aliprosessi, portti ja tapahtumatyypit Muut kuvaamisessa käytettävät symbolit
Mikä on prosessi ja prosessimalli? Prosessi on joukko toisiinsa liittyviä toistuvia tehtäviä ja niiden toteuttamiseen tarvittavia resursseja, joiden avulla syötteet muutetaan tuotoksiksi. (mukautettu: Laamanen, Prosessijohtamisen käsitteet, JHS 152). Prosessi on johtamisen apuväline, keino saada aikaan haluttu tulos. Prosesseja jatkuvasti kehittämällä pyritään tehostamaan toimintaa ja nopeuttamaan läpimenoaikoja sekä parantamaan laatua, palvelutasoa, kustannustehokkuutta ja vaikuttavuutta (ValtIT). Prosessimalli on graafinen esitys prosessin tehtävistä: Tehtävien järjestys Tehtävien kulku ja niiden keskinäiset riippuvuudet (siirtymien ehdot ja logiikka)
Prosessin kuvaaminen Prosessi koostuu prosessiaskelista, jotka voivat olla: Aliprosesseja Tapahtumia Toimenpiteitä Jokainen prosessiaskel nimetään työvaiheessa suoritettavien asioiden mukaisesti Prosessiaskeleet liittyvät toisiinsa virroilla, jotka kuvaavat prosessin etenemistä askeleesta toiseen
Mihin tulee kiinnittää huomiota prosessia mallintaessa? Keskipisteenä tulee olla prosessin mallintaminen, ei esim. käyttöliittymän toiminnallisuuden kuvaaminen Käyttöliittymän toiminnallisuudet kuvataan käyttötapausten muodossa Minimalismi vältetään tarpeettoman ja prosessin kannalta merkityksettömän tiedon tuomista prosessimalliin
Agenda Yleistä Tässä hankkeessa sovitut kuvauskäytännöt Prosessimallinnuksen perusteet Allas, alku- ja lopputapahtuma, tehtävä, virta ja tietovirta Aliprosessi, portti ja tapahtumatyypit Muut kuvaamisessa käytettävät symbolit
Prosessin kuvaaminen Prosessimallinnuksessa käytetään JHS-152 suosituksen mukaisen BPMN-mallinnuskielen versiota 2.0 Prosessi kuvataan horisontaalisesti vasemmalta oikealle
Nimeämiskäytännöt Termi Aliprosessi Prosessi Tapahtuma Nimeämiskäytäntö Substantiivi Hakulomakkeen toimittaminen Substantiivi Koulutukseen hakeutuminen Tapahtuman nimen tulisi olla muotoa: substantiivi (yleensä käsiteltävän tieto-objektin nimi) + verbi Hakemus vastaanotettu Toimenpide Toimenpiteen nimen tulisi olla muotoa: verbi + substantiivi (yleensä käsiteltävän tieto-objektin nimi). Peruuta hakemus Huom. verbi voi olla nominaalisessa muodossa, esim. aktiivin tai passiivin partisiippi (esim. Hakemus vastaanotettu) Nimeämisen yhdenmukaisuus on tärkeämpää kuin kaavan noudattaminen
Prosessiohjausnäkökulma Prosessi tulee kuvata keskitetyn prosessiohjauksen näkökulmasta Tämä kuvaustapaa tukee parhaiten prosessien kehittämistä Toimijakohtainen mallinnus sisältää helposti tietoa, joka on tarpeetonta prosessikehityksen kannalta Sitä millä tavalla prosessiohjauksen näkökulma käytännössä heijastuu prosessimalleihin, käsitellään myöhemmin
Agenda Yleistä Tässä hankkeessa sovitut kuvauskäytännöt Prosessimallinnuksen perusteet Allas, alku- ja lopputapahtuma, tehtävä, virta ja tietovirta Aliprosessi, portti ja tapahtumatyypit Muut kuvaamisessa käytettävät symbolit
Agenda Yleistä Tässä hankkeessa sovitut kuvauskäytännöt Prosessimallinnuksen perusteet Allas, alku- ja lopputapahtuma, tehtävä, virta ja tietovirta Aliprosessi, portti ja tapahtumatyypit Muut kuvaamisessa käytettävät symbolit
Toimija (allas) Eri toimijat kuvataan omina altainaan Keskitettyä prosessiohjausnäkökulmaa käytettäessä toimijakohtaisissa altaissa mallinnetaan ainoastaan toimijoiden sisäistä toimintaa Useimmiten toimijakohtaat altaat voidaan jättää tyhjiksi, sillä toimijoiden sisäisellä toiminnalla ei ole merkitystä prosessiohjauksen näkökulmasta katsottuna Toimijoiden välinen vuorovaikutus kulkee prosessiohjausaltaan kautta.
Tapahtumat: Prosessin tai aliprosessin alku Prosessin alku Määrittelee prosessin tai aliprosessin aloituskohdan Prosessin alku viesti Käytetään kun halutaan näyttää, että prosessin aloittaa viestin saapuminen toiselta toimijalta
Tapahtumat: Prosessin tai aliprosessin loppu Prosessin lopputapahtuma Määrittelee yleisesti prosessin tai aliprosessin lopetuskohdan
Toiminto Toiminto on prosessiaskel, joka voi olla joko atominen toimenpide tai koosteinen aliprosessi Toiminnot kuvataan suorakaiteina Toimenpidesymbolia käytetään silloin, kun tehtävää ei ole tarkoituksenmukaista kuvata yksityiskohtaisemmalla tasolla
Toiminto Aliprosessi Toimenpide Viestin vastaanottaminen Toimenpide Viestin lähettäminen
Virta Virta-symbolilla kuvataan toimintojen suoritusjärjestystä prosessissa Virtoja ei saa luoda altaiden välille, virrat pelkästään saman toimijan sisällä Virta voi lähteä tai päättyä seuraavista aktiviteeteista: Tapahtuma Toiminto (toimenpide tai aliprosessi) Portti
Tietovirta Tietovirralla kuvataan jonkun tiedon tai dokumentin siirtämistä toimijan altaan ja prosessiohjausaltaan tai tietovaraston välillä Tietovirrat liikkuvat aina eri toimijoiden välillä Tietovirran saa luoda pelkästään seuraavien kohteiden välille Allas Toiminto (toiminnot eivät saa olla samassa altaassa) Viestitapahtuma (muut tapahtumat eivät ole sallittuja, tapahtumat eivät saa olla samassa altaassa)
Harjoitustehtävä: Junalipun ostaminen Asiakas siirtyy junayhtiön verkkokauppaan ostaakseen junalipun Piirrä prosessi, jossa on altaina asiakas ja junalipun myymisen prosessiallas Prosessi käynnistyy, kun asiakkaalta tulee tietovirta, joka aiheuttaa Junalippupyyntö vastaanotettu tapahtuman Prosessissa on yksi toiminto - aliprosessi: Junalipun myynti verkkokaupasta Prosessi päätty Junalippu ostettu -tapahtumaan
Agenda Yleistä Tässä hankkeessa sovitut kuvauskäytännöt Prosessimallinnuksen perusteet Allas, alku- ja lopputapahtuma, tehtävä, virta ja tietovirta Aliprosessi, portti ja tapahtumatyypit Muut kuvaamisessa käytettävät symbolit
Aliprosessi ja tapahtuma-aliprosessi Aliprosessit voidaan kuvata prosessimallissa toimintoina Aliprosessi voidaan myös esittää avattuna samassa kuvassa kuin pääprosessi Aliprosessin aloittaminen keskeyttää pääprosessin etenemisen aliprosessin ajaksi Tapahtuma-aliprosessi (Event Sub-Process) jatkuu rinnakkain pääprosessin kanssa Tapahtuma-aliprosessi kuvataan katkoviivalla Tallenna hakemuksen liite Hakemuksen liite vastaanotettu Liite tallennettu
Valinta (portti) Valintasymbolilla kuvataan valintatilanteita, joissa virta haarautuu tai yhdistyy Valintaa käytetään esim. silloin kun prosessissa tehdään päätös jostain asiasta
Portit (Gateway) Kuvaavat kuinka virrat kontrolloidusti jakautuvat ja yhdistyvät prosessissa Porttiin voi liittää vain virtoja (sequence flow), ei viestivirtoja Portilla pitää olla vähintään kaksi sisääntulevaa tai ulosmenevää virtaa Porttityypit:
Tapahtumien päätyypit Alku Prosessi Aliprosessi Tapahtumaaliprosessi (keskeyttävä) Tapahtumaaliprosessi (keskeyttämätön) Väli Vastaanotto/ sieppaus (catching) Lähetys/ aiheuttaminen (Throwing) Reuna (keskeyttävä) Reuna (keskeyttämätön) Loppu
Esimerkki tapahtumatyypeistä ja symboleista
Tapahtumat: Prosessin tai aliprosessin alku Aliprosessi voi alkaa pelkästään tyhjällä prosessin alku -symbolilla Tapahtuma-aliprosessi muillakin Alkutapahtumia voi olla useita. Jokainen alkutapahtuma aloittaa uuden prosessi-instanssin. Alkutapahtumaan ei voi tulla virtoja (sequence flow) Prosessien (pl. tapahtuma-aliprosessi) alku- ja lopputapahtumat ovat valinnaisia. Vähintään yksi lopputapahtuma pitää kuitenkin olla, jos prosessilla on alkutapahtuma. Samoin vähintään yksi alkutapahtuma, jos lopputapahtuma.
Tapahtumat: Lähettävät välitapahtumat (throwing) Lähettävät välitapahtumat tuottavat tapahtumia, jotka tyypillisesti vastaanotetaan vastaanottavissa (catching) tapahtumissa Virheiden lähetys lopettaa aina prosessin/aliprosessin eli ne eivät ole välitapahtumia Viesti Prosessissa lähetetään viesti Signaali Signaalin lähetys kuuntelijoille
Tapahtumat: Vastaanottavat välitapahtumat (catching) Kuvastavat tilannetta, jossa prosessin eteneminen riippuu jostakin tapahtumasta Prosessi esim. jää odottamaan jotakin tapahtumaa tai etenemistapa riippuu siitä tapahtuuko jokin mahdollinen tapahtuma Viesti Prosessi jatkuu jonkun viestin saavuttua Ajastus Prosessi jatkuu tietyn ajan kuluttua Signaali Prosessi jatkuu jonkun signaalin saavuttua Virhetilanne Prosessissa on tapahtunut virhe. Virheen jälkeen prosessin etenemistä jatketaan virhetilanne-tapahtuman kohdalta
Toiminnon reunaan kytketyt tapahtumat Tapahtuman kytkeminen toiminnon reunaan muuttaa tapahtuman merkitystä Reunatapahtumat voivat olla yleensä joko keskeyttäviä tai keskeyttämättömiä (eivät kuitenkaan kaikki, kuten virhekäsittelyt)!=
Tapahtumat: Prosessin tai aliprosessin loppu Prosessin lopputapahtuma signaali Prosessi tai aliprosessi päättyy signaalin lähettämiseen Prosessin loppuminen virhetilanteeseen Prosessin päättäminen (terminate) Prosessin päättäminen terminate-tapahtumalla lopettaa kyseisen prosessin kaikki prosessi-instanssit Ei vaikuta ylemmille prosessitasoille
Harjoitustehtävä: Junalipun ostaminen Verkkokaupan toiminnassa on ongelmia Avaa samaan prosessikuvaan aiemmin piirretyn prosessin aliprosessi Junalipun myynti verkkokaupasta Aliprosessi sisältää portin: Verkkokauppa toiminnassa (kyllä/ei) Jos verkkokauppa ei ole toiminnassa, aliprosessi päättyy virhetilanteeseen Jos verkkokauppa on toiminnassa, suoritetaan toiminto Lipun myynti Jos junalipun ostaminen verkkokaupasta päättyi virhetilanteeseen, suoritetaan toiminto Myy lippu rautatieasemalla
Agenda Yleistä Tässä hankkeessa sovitut kuvauskäytännöt Prosessimallinnuksen perusteet Allas, alku- ja lopputapahtuma, tehtävä, virta ja tietovirta Aliprosessi, portti ja tapahtumatyypit Muut kuvaamisessa käytettävät symbolit
Toimenpidetyypit Toimenpiteet (taskit) voidaan tarkentaa: Palvelutoimenpide (service task), palveluita (esim. Web Service) käyttävä tehtävä. Kutsu voi olla kaksisuuntainen. Lähetystoimenpide (send task) on tarkoitettu viestin lähettämiseen ulkoiselle toimijalle. Kutsu on yksisuuntainen. Vastaanottotoimenpide (receive task) odottaa viestin saapumista ulkoiselta toimijalta. Kutsu on yksisuuntainen. Käyttäjätoimenpide (user task), ihmisen tietojärjestelmää hyödyntäen suorittama tehtävä Manuaalitoimenpide (manual task), tehtävä, joka tarkoitettu suoritettavaksi ilman tietojärjestelmää. Business rule task, sääntömoottorilla suoritettu tehtävä
Tapahtumatyypit ja niiden symbolit
Tapahtumapohjainen valinta Tapahtumapohjainen valinta Eteneminen riippuu valintaa seuraavista tapahtumista Portissa pitää käyttää joko välitapahtumia tai vastaanottotoimenpiteitä (receive task). Vastaanottotoimenpide on vaihtoehtoinen viestitapahtumille Error, Cancel, compensation and link tapahtumat eivät ole sallituja Tapahtumapohjainen portti voi myös aloittaa prosessin. Tämä on ainoa skenaario, missä gateway voi olla ilman sisääntulevaa virtaa. Huomaa symboli
Parallel Gateway (AND-portti) Parallel Gateway jakaa virrat useampiin yhtäaikaisesti eteneviin virtoihin tai se yhdistää useamman virran yhdeksi Virtoja jaettaessa prosessi jakautuu jokaiseen lähtevään virtaan, ts. jokainen lähtevä virta saa syötteen. Virtoja yhdistettäesä Parallel Gateway toimii virtojen synkronoijana eli eteneminen jatkuu vasta kun jokaiseen tulevaan virtaan on tullut syöte
Inclusive Gateway (OR-portti) Inclusive Gateway (inklusiivinen valinta) jakaa virran yhteen tai useampaan rinnakkaiseen virtaan tai yhdistää nämä virrat yhdeksi Jakavasta portista pitää lähteä vähintään kaksi ulostulovirtaa, joista vähintään yhteen edetään virtoihin liitettyjen ehtojen mukaisesti Yhdistämisessä ei jäädä odottamaan kaikkia sisääntulevia virtoja, vaan pelkästään niitä joihin on aikaisemmin lähetetty syöte
Ehdollinen virta Ehdollisen virran ehto määrittelee käytetäänkö virtaa. Voidaan liittää vinoneliöllä suoraan aktiviteettiin.
Oletusvirta
Tapahtuma-aliprosessit Tapahtuma-aliprosessi (event sub-process) sallii tapahtumien käsittelyn prosessissa tai aliprosessissa. Tapahtuma-aliprosessin pitää alkaa yhdellä alkutapahtumalla, joka käynnistää prosessin. Tapahtuma-aliprosessit ovat itsenäisiä eikä niissä saa olla virtoja (sequence flow) sen sisältävään prosessiin (tai aliprosessiin). Tapahtuma aliprosessi voi olla joko keskeyttävä tai keskeyttämätön. Keskeyttävä keskeyttää prosessin/aliprosessin, johon tapahtuma-aliprosessi on sisällytetty. Keskeyttämätön tapahtuma-aliprosessi voi tapahtua monta kertaa - aina kun alkutapahtuman ehto täyttyy. Näitä tapahtuma-aliprosessi-instansseja voi olla suorituksessa useita samanaikaisesti
Tapahtuma-aliprosessi esimerkki Muutos tai liite hakemukseen vastaanotettu Tallenna hakemuksen muutokset Hakemusta muokattu
Prosessikuvauksien yksinkertaistaminen: vaihtoehtoiset kuvaustavat (1)
Prosessikuvauksien yksinkertaistaminen: vaihtoehtoiset kuvaustavat (2)
Prosessikuvauksien yksinkertaistaminen: vaihtoehtoiset kuvaustavat (3)
OR- ja AND-portti esimerkki
Kiitos mielenkiinnosta!