BPMN 1.2 – basis elementen en hun betekenis, core 2 Onderstaande tabel geeft een overzicht van de meest gangbare basis elementen van BPMN met telkens een beknopte toelichting. Hiermee kan men aan de slag om processen te vrij accuraat te modelleren. (BP, staat voor Best Practice). gewoon Start Event (Gebeurtenis) Deze lege cirkel, met dunne rand, geeft de aanvang (start) van het proces weer. BP : geef met een korte naam onder de cirkel aan wat het proces triggert. Vermijd meerdere start events voor hetzelfde proces. gewoon End Event (Gebeurtenis) Deze lege cirkel, met dikke rand, geeft aan waar een processtroom stopt. Een proces kan op meer dan één plaats stoppen (meerdere end events) BP : duidt met een korte naam onder de cirkel het resultaat aan het einde van het procespad aan. gewoon Intermediate Event (Gebeurtenis) Deze lege cirkel met dubbele rand wordt gebruikt om een gebeurtenis aan te geven die zich voordoet tussen het begin en een eindpunt van het proces. Naargelang de gebeurtenis wordt leidt dit tot een uitstel, een onderbreking of een verandering in de processtroom. Message Start Event Weergegeven door cirkel met dunne rand, met daarin een enveloppe. Een binnenkomend bericht (brief, fax, telefoon, mail, signaal, …) doet het proces starten. BP : indien bij het ontvangen een bijkomende handeling vereist is, is het aanbevolen een Taak (zie verder) te gebruiken. Een “ontvangen” Taak geeft aan dat er iets meer gebeurt dan louter ontvangen. Message End Event Een cirkel met dikke rand, met daarin een volle enveloppe. Aan het einde van een procespad wordt een bericht verstuurd naar een andere organisatie als resultaat van het proces. BP : indien bij het versturen een bijkomende handeling vereist is, (bvb, een actor moet informatie in een type brief verwerken vóór het bericht te sturen) is het aanbevolen een Taak (zie verder) te gebruiken. Message Intermediate Events Een cirkel met dubbele rand, met daarin een lege enveloppe (links). Men wacht om een bericht te onotvangen. Het proces stroomt pas verder als het bericht effectief ontvangen wordt. Een cirkel met dubbele rand, met daarin een volle enveloppe (rechts). Een bericht wordt verstuurd naar een andere organisatie (buiten het proces) 20100208 Pagina 1 van 5 Timer Start Event Een cirkel met dunne rand en daarin een klok, geeft aan dat het proces start op een bepaald moment of volgens een bepaalde tijdcyclus (elke eerste donderdag van de maand). Timer Intermediate Event Een cirkel met dubbele rand en daarin een klok, geeft aan dat er gewacht wordt tot een bepaalde termijn verstreken is alvorens verder te gaan, of dat een proces onderbroken wordt vanaf een bepaald tijdstip. Link Intermediate Events Worden altijd als een paar gebruikt. Een sequentiestroom komt toe in een cirkel met dubbele rand en daarin een volle pijl (links). Dit link event komt op hetzelfde of een ander diagram overeen met een cirkel met dubbele rand en daarin een lege pijl (rechts). Vandaaruit stroomt de sequentiestroom verder. Samen hebben ze dezelfde betekenis als een sequentiestroom. De naam van beide elementen moet dezelfde zijn BP : gebruik link events als het diagram onoverzichtelijk wordt, door teveel gekruiste sequentiestromen (Go to). Ze zijn ook nodig als een proces op hetzelfde niveau over meer dan één diagram wordt uitgetekend (Off Page). Signal Intermediate Events Een cirkel met dubbele rand, met daarin een lege driehoek (links). Geeft aan dat het proces wacht tot een bepaald signaal wordt opgevangen alvorens verder te gaan. Een cirkel met dubbele rand, met daarin een volle driehoek (rechts). Geeft aan dat een signaal wordt uitgezonden (niet gericht) zonder kennis waar of door wie het wordt opgevangen (verschil t.o.v Messages). Buiten of binnen de pool, ongeacht het niveau in het proces. Terminate End Event Een cirkel met dikke rand en daarin een volle cirkel, geeft aan dat alle activiteiten binnen het Sub-Proces worden stopgezet, maar het proces op hoger loopt wel verder. BP: Dit event is handig om een parallel pad met een oneindige loop in een sub-proces te onderbreken, bvb opvolging. Error Intermediate Event Een cirkel met dubbele rand, met daarin een leeg bliksem teken wordt altijd op de rand van een activiteit geplaatst. Dit geeft aan dat een fout zich heeft voorgedaan tijdens de uitvoering van de activiteit. Dit soort event laat toe om te verduidelijken wat gebeurt wanneer wordt afgeweken van de normale stroom binnen het proces omwille van een fout, of als iete niet correct zou zijn.. 20100208 Pagina 2 van 5 Activiteit De rechthoek met afgeronde hoeken stelt een eenheid van werk voor waar een bepaalde tijd voor nodig is. De korte naam van de activiteit geeft aan wat uitgevoerd moet worden. BP : Gebruik altijd een werkwoord om aan te geven dat iets wordt uitgevoerd (actief), nooit enkel een zelfstandig naamwoord. BP voor de leesbaarheid van het diagram geldt de vuistregel “op éénzelfde diagram niet meer dan tien “Activiteiten” (Deelprocessen of Taken) plaatsen”. Taak Een taak in BPMN is een atomaire Activiteit (wordt niet gedecomponeerd op een lager niveau). Voor de taak geldt eenheid van tijd, ruimte en actor. (Collapsed) Sub-process De rechthoek met afgeronde hoeken met een + teken onderaan stelt een eenheid van werk voor die zelf samengesteld is uit een aantal “onderliggende” activiteiten. De Sub-Process activteit wordt verder gedecomponeerd op een ander diagram. Er ontstaat zo een hiërarchische structuur van Activiteiten. Loop Activiteit De rechthoek met afgeronde hoeken met een gekrulde pijl onderaan geeft aan dat een Activiteit wordt uitgevoerd totdat een vastgestelde voorwaarde vervuld is (bvb. “gedurende één week”, of “tot dossier volledig is”). De voorwaarde wordt vóór of na de uitvoering van de activiteit getest Multiple-Instance Activiteit De rechthoek met afgeronde hoeken met 3 vertikale streepjes onderaan geeft aan dat de Activiteit een bepaald aantal keer herhaald wordt. De activiteit wordt herhaald maar telkens voor een nieuw item van het totaal. Wanneer het vooropgesteld aantal items behandeld is, stopt de activiteit. Items kunnen ofwel sequentieel ofwel parallel behandeld worden. Kruispunt (Gateway) Kruispunten worden weergegeven dmv een ruit. Het zijn controle punten in het proces waar de processtromen uit elkaar (split) gaan of samenkomen (join). Naargelang de voorwaarden wordt één (“of exclusief”,X), elke (“en”, +) of een mogelijke combinatie (“of inclusief”, O) van processtromen gevolgd. Het verloopt analoog daar waar processtromen samenkomen wordt Symbolen binnen de ruit kunnen specifiek aangeven welke controle wordt uitgeoefend op de stroom, exclusive X, and +, inclusive, O BP : Het kruispunt is nooit de beslissing zelf. Die moet in een voorafgaande activiteit uitgevoerd worden. XOR Kruistpunt (Data-based Exclusive Gateway) Een ruit met een X-kruis. In geval van splitsing, kan het proces maar via één enkele van de uitgaande sequentiestromen verder. De beslissing hangt 20100208 Pagina 3 van 5 af van de gegevens en de condities die bepaald zijn in het kruispunt. Het proces volgt de eerste sequentiestroom met een voorwaarde waaraan voldaan is. Er kunnen ook meerdere sequentiestromen samenkomen in een XOR kruispunt. Gebruik dit alleen wanneer een controle punt relevant is. BP : Zorg voor een logische volgorde en eenduidige condities, anders blijft het proces geblokkeerd aan het kruispunt Parallel Kruispunt (Parallel Gateway) Een ruit met een +-teken. In geval van splitsing betekent dit dat alle uitgaande sequentiestromen parallel tegelijk gevolgd worden, zonder controle op voorwaarden. Indien meerdere sequentiestromen samenkomen in een parallel kruispuint betekent dit dat alle paden moeten doorlopen zijn vooralleer het proces verder loopt. (Inclusief) OR Kruispunt (Inclusive Gateway) Een ruit met een cirkel met volle rand. In geval van splitsing kan het proces één, meerdere of alle paden volgen naargelang de voorwaarden op de uitgaande sequentiestromen vervuld zijn. Indien meerdere sequentiestromen samenkomen in een OR kruispuint betekent dit dat alle actieve paden moeten doorlopen zijn vooralleer het proces verder loopt. BP : zorg ervoor dat de sequentiestromen uit een OR kruispunt, verder ook samenkomen in een OR kruispunt. BP : Gebruik een Default voorwaarde om te vermijden dat het proces vastloopt in een OR kruispunt met splitsing, indien alle andere condities fout zouden zijn. Event XOR Kruistpunt (Event Based Exclusive Gateway) Een ruit met een cirkel met dubbele rand met daarin een lege vijfhoek. Wordt enkel gebruikt bij splitsing, Het proces kan maar via één enkele van de uitgaande sequentiestromen verder. De beslissing hangt af van de gebeurtenis (event) die zich het eerst voordoet (de Race condition), alle andere paden worden genegeerd. Deze gebeurtenis kan een binnekomend bericht, het verstrijken van een termijn of een signaal zijn. Dit kruispunt wordt altijd gebruikt in combinatie met events waarmee het verbonden is (na het kruispunt). Naam Naam Naam Naam BP : Combineer een Event XOR Kruispunt met een timer intermediate event wanneer het proces op een extern bericht wacht en een zekere termijn vastgesteld is. Pools & Lanes (Zwembanen) Deze rechthoekige banen worden gebruikt om “deelnemers” (organisatieentiteiten of actoren) weer te geven. Pools kunnen ahv rechthoeken opgedeeld worden in Lanes, om de uitvoering van activiteiten binnen de pool te verduidelijken. 20100208 Pagina 4 van 5 BP : plaats de actoren die tot eenzelfde organisatie behoren in eenzelfde pool. Modeleer alleen activiteiten van “externe” pools als die voldoende gekend zijn. Indien niet, kan je nog een lege pool gebruiken. Sequentiestroom De volgorde aan waarmee de zaken moeten plaatsvinden in het proces wordt weergegeven met volle pijlen. Sequentiestromen verbinden enkel Gebeurtenissen, Activiteiten en Kruispunten. BP Gebruik geen kromme verbindingslijn, verkies hoeken (recht, gebogen) BP We trachten de kruising van connectoren in de mate van het mogelijke te vermijden. Default Sequentie stroom Een volle pijl met een schuin streepje aan het begin. Dit pad is gelinkt aan een Default voorwaarde en wordt gevolgd enkel en alleen als de condities (voorwaarden) van alle andere uitgaande sequentiestromen (bvb. uit een kruispunt) fout zijn. Deze sequentiestroom vermijdt dat het proces ergens vastloopt. Berichtenstroom De gestreepte pijl, met een open bolletje aan begin en een open pijl aan het einde geeft aan dat tussen twee deelnemers (weergegeven als Pools, zie verder) informatie verzonden wordt. Berichtenstromen kunnen zowel pools als activiteiten uit aparte pools met elkaar verbinden. Associatie Met de gestreepte lijn legt men een verband tussen verschillende objecten, (bvb tussen een kruispunt en een tekst beschrijving). Gebruik de gestreepte pijl (gerichte associatie) om weer te geven dat een Data-object een input of een output is van een activiteit naam [status] Data object Een rechthoek met omgeslagen hoekje stelt informatie (bvb. document, email, fax, brief) voor die door een proces stroomt. Een data-object wordt geassocieerd via een associatie met een berichtenstroom of met een processtap. Tekst Annotatie Vrije tekst beschrijving binnen vierkante haakjes. Verbind de Tekst annotatie dmv de Associatie met object op een diagram om meer informatie / toelichting over het bewuste object te geven. BP : Gebruik tekst associatie om de (bedrijfs)regels die van kracht zijn voor een gegeven beslissingspunt te verduidelijken. Schrijf ze niet in de ruit. 20100208 Pagina 5 van 5