# BPMN

Näide äriprotsesside modelleerimiskeele (BPMN) kasutamisest
**BPMN** (ingl *Business Process Modelling Notation*) on äriprotsesside modelleerimiskeel ehk graafiline notatsioon (märgistik) äriprotsesside ja töövoogude täpsemaks kirjeldamiseks.

BPMNi kui standardit haldab Object Management Group. Hetke viimane versioon on detsembrist 2013, versioon 2.0.2.

## BPMNi elemendid

Tänu piiratud hulga graafiliste elementide koosnevad BPMNi mudelid lihtsatest diagrammidest. Keerulisemate olukordade kirjeldamiseks on kategooria põhisümbolile lisatud disainielemente, mis ei muuda oluliselt sümboli väljanägemist. Elemendid jagunevad nelja põhikategooriasse ja nende alamkategooriatesse:

* Sündmus
* Tegevus
* Lüüs
* Ühendus

### Vooelemendid *(flow objects)*

Sündmused *(events)*, tegevused *(activities)*, lüüsid *(gateways)*

#### Sündmused

Sündmus märgitakse ringiga ning tähistab midagi, mis „juhtub“ (võrdle toiming – midagi, mida sooritatakse, viiakse läbi). Sündmused mõjutavad protsessi vooge ja neil on reeglina põhjus ja tagajärg.

* **Algus(start event)* – alguse sündmusega näidatakse protsessiskeemil protsessi algus. Ringi joon on peen.
* **Lõpp(end event)* – lõpu sündmusega tähistatakse protsessiskeemil protsessi lõppu. Ringi joon on jäme.
* **Vahepealne(intermediate event)* – vahepealne sündmus toimub alguse ja lõpu vahel. Vahepealsed sündmused mõjutavad protsessi, kuid otseselt ei alusta ega ei lõpeta protsessi. Ringil on kaks joont

#### Tegevused

Tegevus märgitakse ümardatud nurkadega ristkülikuga ning tähistab tööd, mis tuleb sooritada.

* **Toiming(task)* – toiming on üksik tegevus protsessi käigus. Elementi kasutatakse, kui protsessi koostamisel ei kirjeldata teda detailsemalt.
* **Alamprotsess(sub-process)* – alamprotsess on protsess protsessi sees. Alamprotsessi kasutatakse kui vaja mõni tegevus detailsemalt lahti kirjeldada. Alamprotsessil on oma algus ja lõpp. Ristkülikul allservas keskel on kastis pluss märk.
* **Transaktsioon(transaction)* – transaktsioon on alamprotsesside erijuht, mille käigus kontrollitakse, et kõik toiminguid on sooritatud, Kui mõni toiming ebaõnnestub, siis juba õnnestunud toimingud tühistatakse või tuleb rakendada kompensatsioonimehhanisme.

#### Lüüsid e väravad ehk läbipääsud

Lüüse märgitakse rombina ning neid kasutatakse protsessi hargnevuste ja koonduvuste kirjeldamiseks. Hargnevused võivad olla tingimuslikud või paralleelsed. Voogobjekte saab omavahel siduda ühendavate objektidega [mida see tähendab?].

### Ühenduselemendid *(connecting objects)*

Järgnevusvoog *(sequence flow)*, sõnumivoog *(message flow)*, seos *(association).*

#### Järgnevusvoog

Järgnevusvoog märgitakse pidevjoonena koos noolega, see tähistab toimingute sooritamise järjekorda.

#### Sõnumivoog

Sõnumivoog märgitakse katkendjoonena koos avatud noolega. Teda kasutatakse protsessi osaliste vahel sõnumiedastuse tähistamiseks. BPMNis paigutatakse protsessi osalised eri nn basseinidesse ja ujumisradadele.

#### Seos

Seos märgitakse punktiirjoonena koos noolega ning kasutatakse vooelementidele info (nt tekstilise või graafilise lisainfo) lisamiseks.

### „Ujumisrada" (*swimlane*) ja artefakt

* Bassein ja ujumisrada
* Andmeobjekt
* Rühm
* Märkus

BPMN-is kasutatakse erinevate osalejate tähistamiseks basseine ja nende sees radasid.

#### „Bassein" (*pool*)

Basseiniga tähistatakse protsessis osalejaid. Osaleja ehk üks bassein võib siinkohal olla kas organisatsioon või kindel inimene organisatsioonis.

Basseinis võib olla üks või mitu rada.

„**Ujumisrada" ehk rada (*swimlane*, *lane*)**

Radasid kasutatakse, et tähistada ühise nimetajaga erivaid osalisi, nt rollid, ametikohad ühe osaleja ehk organisatsiooni sees.

#### Artefakt (*artefact* (UK)*, artifact* (US))

Artefakt on informatiivne ega tohi protsessis osaleda. Artefaktid (tavakeeles ese/objekt) on selles meetodis andmeobjekt, rühm ja märkus. Üks artefaktide kasutamise selgitus (inglise keeles) on näiteks veebilehel

#### Andmeobjekt (*data object*)

Andmeobjekt näitab, milliseid andmeid toimingud „toodavad“ või vajavad (kasutavad). Kasutatakse juhul, kui andmete liikumine ei ole protsessi järgnevusvoost kergesti loetav või kui on vaja esile tõsta andmete liikumist.

#### Grupp e rühm (*group*)

Rühma kasutatakse toimingute rühmitamiseks. Rühma kasutamine ei mõjuta toimingute järjekorda. Rühma raami ülaosas tuuakse välja rühma kirjeldus.

#### Märkus (*annotation*)

Märkusi kasutatakse BPMN-i mudeli/skeemi lugejale lisainfo ja kommentaaride andmiseks, viidatakse sellele punktiirjoonega.

### Äriprotsesside diagrammide näiteid

* Klõpsa pilti, et näha diagrammi täissuuruses
* Protsess normaalvooga
* Diskussioonitsükkel
* E-posti teel hääletamise protsess
* Häälte kogumine

## Viiteid

* BPMN-i koduleht