• Nenhum resultado encontrado

Ce este BPMN?

N/A
N/A
Protected

Academic year: 2023

Share "Ce este BPMN?"

Copied!
53
0
0

Texto

(1)

Business Process Modeling Notation

(BPMN)

IonuŃ Apetrei Master ISS,an:I

Prezentare sustinuta in cadrul Cercului de cercetare BPM Facultatea de Informatica, Univ. “Al.I.Cuza” Iasi

http://profs.info.uaic.ro/~alaiba/cercbpm

(2)

Preambul(1)

Ce este BPMN?

De ce avem nevoie de el?

(3)

Preambul(2)

BPMN reprezintă o notaŃie grafică (standard) menită să definească procesele de afaceri dintr-un “workflow”.

Proces de afaceri = colecŃie de activităŃi înrudite ce produce un anumit produs sau serviciu pentru un anumit client/clienŃi.

“Workflow” = secvenŃă de operaŃii, abstractizarea unei activităŃi concrete, şablon de activitate încapsulat intr-un proces, în

vederea integrării acestuia intr-un sistem.

(4)

Preambul(3)

Folosirea unei astfel de notaŃii conferă un limbaj comun, ce poate fi folosit atât de către utilizatorul tehnic, cât şi de utilizatorul de business, păstrând în acelaşi timp nealterată semantica procesului de afaceri.

(5)

Scurt istoric

Standardul BPMN a fost creat de către BPMI (Business Process Management Initiative )

Scopul declarat este acela de a unii cele două faze

separate (cea de proiectare a unui proces de afaceri şi cea de implementare)

În 2005 BPMI şi OMG(Object Management Group) au fuzionat, versiunea curentă fiind BPMN 1.1, urmând ca în scurt timp un update la specificaŃia să apară sub

numele de BPMN 2.0

(6)

Introducere

InformaŃiile prezentate fac parte din cadrul specificaŃiei BPMN 1.2 beta 3.

Scopul este acela de a prezenta notaŃiile şi semantica unei diagrame proces de afaceri (Business Process Diagram).

Un alt obiectiv este acela de asigura ca limbajele XML proiectate pentru execuŃia proceselor de afaceri (ex.

BPEL4WS ) pot fi vizualizate cu o notaŃie “business oriented”.

(7)

Contextul general(1)

Volumul de muncă depus în ultimii ani în ceea ce

priveşte dezvoltarea de limbaje de execuŃie, axate pe servicii web XML, ca parte integrantă a sistemelor BPM (Business Process Management) a scos în evidenŃă

anumite discrepanŃe.

Un prim argument îl constitue faptul că aceste limbaje sunt orientate exclusiv pe interrelaŃionarea dintre

sistemele BPM, monitorizarea şi proiectarea unor astfel de procese de afaceri de către utilizatorul uman fiind

destul de redusă, scopul declarat al acestor limbaje fiind acela de a conferii modele matematice formale şi de a profita de beneficiile serviciilor web.

(8)

Contextul general(2)

Astfel a apărut necesitatea existenŃei unei

interoperabilităŃi şi portabilităŃi la un nivel "human friendly". SoluŃia la această problemă fiind dată de standardul BPMN. Chiar dacă această specificaŃie

încearcă să creeze o notaŃie grafică general acceptată de cei care supraveghează şi proiectează procesele de afaceri, se pune un accent destul de important şi pe

maparea diagramelor de proces către limbajele de execuŃie aparŃinând sistemelor BPM.

(9)

Contextul general(3)

O delimitare a scopului prezentei specificaŃii este

necesară. “Business Process Modeling Notation”

este proiectat numai pentru a transpune conceptele de modelare ce fac subiectul proceselor de afaceri. Astfel încât alte tipuri de modelări ca modele de date,

organigrame, administrarea resurselor, strategii si reguli de afaceri nu intră în sfera de interes a standardului

BPMN.

(10)

Modelul BPMN

In ceea ce priveste modelul BPMN exista trei subtipuri principale:

Procese de afaceri private, cunoscute şi sub numele de procese interne.

Procese abstracte, sau publice.

Procese de colaborare, sau globale

Notă: aceste subtipuri încă nu au fost standardizate, urmând ca în viitorul apropiat o formă finală să fie propusă.

(11)

Modelul BPMN

Procesele de afaceri private sunt acele procese specifice unei anumite organizaŃii şi sunt acele tipuri de procese care au fost generic denumite "workflow"-uri sau procese BPM. Un singur proces privat poate fi mapat către unul sau mai multe documente BPEL4WS.

Procesele abstracte reprezintă interacŃiunea dintre un proces privat şi un alt proces sau participant.Numai

acele activităŃi ce sunt destinate comunicării cu exteriorul procesului privat, în concordanŃă cu mecanismele

corespunzătoare de control ale "flow"-ului, vor fi incluse în procesul abstract. Astfel, procesul abstract arată "lumii exterioare" doar secvenŃele de mesaje ce sunt destinate exclusiv interacŃionării cu procesul privat curent.

(12)

Modelul BPMN

Procesele de colaborare. Un proces global reprezintă interacŃiunile dintre două sau mai multe entităŃi de tip

"business". Aceste interacŃiuni sunt definite ca o

secvenŃă de activităŃi ce reprezintă ??şabloanele de tip

"message -exchange" dintre entităŃile implicate. Cu alte cuvinte un proces global poate fi privit ca două sau mai multe procese abstracte ce comunică intre ele.

(13)

Business Process Diagram

In cadrul şi între cele trei submodele BPMN pot fi create o serie întreagă de diagrame (BPD). Vom prezenta o lista cu tipurile de procese de afaceri ce pot fi modelate cu ajutorul standardului BPMN

:

Activitati apartinand proceselor private de nivel inalt.

Procese private detaliate

Procese private detaliate ce interactioneaza cu unu sau mai multe entitati externe ( sau procese

"Black Box").

(14)

Business Process Diagram

Doua sau mai multe procese private detaliate interactionand.

Proces privat detaliat in relationare cu un proces abstract.

Proces privat detaliat in relationare cu un proces de colaborare.

Doua sau mai multe procese abstracte.

Proces abstract in relationare cu un proces de colaborare.

Numai procese de colaborare.

(15)

Business Process Diagram

Doua sau mai multe procese private detaliate interactionand prin intermediul propriilor procese abstracte.

Doua sau mai multe procese private detaliate interactionand prin intermediul unui proces de colaborare.

Doua sau mai multe procese private detaliate interactionand prin intermediul propriilor procese abstracte si cu un proces de colaborare.

(16)

Elemente de baz ă ale BPD

Cele patru categorii principale de elemente sunt:

“Flow Objects”

“Connecting Objects”

“Swimlanes”

“Artifacts”

(17)

Elemente de baz ă ale BPD

Obiectele de tip "flow" sunt principalele elemente grafice ce ajută la definirea comportamentului proceselor de afaceri. Întâlnim trei subcategorii:

Evenimente

ActivităŃi

Gateway-uri

(18)

Elemente de baz ă ale BPD

Există trei modalităŃi prin care obiectele de tip "flow" pot fi interconectate între ele sau cu alte informaŃii.Există trei tipuri de obiecte de conectare (“Connecting Objects”):

Sequence Flow

Message Flow

Association

(19)

Elemente de baz ă ale BPD

În ceea ce priveşte gruparea elementelor primare de modelare există două modalităŃi prin intermediul aşa numitelor "Swimlanes“.

Pools

Lanes

(20)

Elemente de baz ă ale BPD

Artefactele ("Artifacts") sunt folosite cu scopul de a furniza informatii aditionale referitor la un proces.

Principalele artefacte prezente sunt:

Data Object

Group

Annotation

Artefactele pot fi adăugate oricât de mult, în funcŃie de necesitatea modelării.

(21)

Elemente de modelare de baz ă

Eveniment

un eveniment este ceva care se petrece în timpul desfăşurării unui proces de afaceri. Acest eveniment afectează "flow"-ul întregului proces şi de obicei există o cauză,un declanşator ("trigger"). Ca notaŃie grafică, un eveniment este reprezentat printr-un cerc.Există trei tipuri de evenimente în funcŃie de momentul în care

intervin în "flow", astfel avem:

Eveniment de inceput

Eveniment intermediar

Eveniment de sfârşit

(22)

Elemente de modelare de baz ă

Activitate

Este un termen generic pentru "munca" pe care o companie o efectuează. O activitate poate fi

atomică sau compusă. Există şi aici trei tipuri de activităŃi, acestea fiind:

Proces (este conŃinut în cadrul elementului "Pool")

Subproces

Task

(23)

Elemente de modelare de baz ă

Gateway

Acest element este folosit pentru a controla divergenŃa şi convergenŃa caracteristică

"Sequence Flow"-ului.Va determina operaŃii ca divizare ("forking"), contopire ("merging") şi unire ("joining").

(24)

Elemente de modelare de baz ă

"Sequence Flow“

Este folosit pentru a evidenŃia ordinea în care activităŃile se vor desfăşura într-un proces.

(25)

Elemente de modelare de baz ă

"Message Flow“

Relevă "flow"-ul de mesaje existent între doi

participanŃi. Cei doi participanŃi vor fi reprezentaŃi

într-un BPD ca două elemente "Pool" separate.

(26)

Elemente de modelare de baz ă

Asocierea

Folosită la asocierea informaŃiei cu obiectele de tip

"flow" ("Flow Objects").

(27)

Elemente de modelare de baz ă

"Pool“

Reprezintă un participant în cadrul unui proces, se comportă şi ca un "swimlane“ şi container grafic în ceea ce priveşte partiŃionarea unei mulŃimi de

activităŃi prezente în cadrul altor elemente de tip

"Pool". Astfel de situaŃii se întâlnesc mai ales in contextul B2B ("Business to Business").

(28)

Elemente de modelare de baz ă

"Lane“

Este o subpartiŃie în cadrul unui element "Pool" ce va extinde întregul "Pool", fie pe verticală sau pe orizontală. Sunt folosite pentru a organiza si

structura activităŃile.

(29)

Elemente de modelare de baz ă

"Data Object"

Sunt considerate artefacte, deoarece nu au impact direct asupra elementelor ca "Sequence Flow" sau

"Message Flow" din cadrul unui proces, dar

furnizează informaŃii în legătură cu activităŃile ce trebuie efectuate şi mai ales descriu rezultatul acelor activităŃi, ceea ce se produce.

(30)

Elemente de modelare de baz ă

"Group“

Este un chenar ce cuprinde o mulŃime (grup) de obiecte din cadrul aceleaşi categorii. Folosirea acestui element este o modalitate prin care categorii de obiecte pot fi afişate în cadrul unei diagrame.

(31)

Elemente de modelare de baz ă

Adnotari textuale

Se anexează de obicei asocierilor. Sunt un mecanism prin care proiectantul poate furniza informaŃii suplimentare pentru cititorul diagramei BPMN.

(32)

Setul extins de elemente BPD

Elementul "Eveniment" cu cele trei subcategorii

Start

(None,Message,Timer,Conditional,Signal, Multiple)

Intermediar

(None,Message,Timer,Error,Cancel, Compensation,Conditional,Link,Signal, Multiple)

Sfarsit (None,Message,Error,Cancel,

Compensation,Signal,Terminate,Multiple) Cele trei subelemente redau dimensiunea

flowului

(33)

Setul extins de elemente BPD

Evenimentele Start şi Intermediar deŃin declanşatori, ce definesc cauza instanŃierii evenimentului.Există o serie intreagă prin care aceste evenimente pot fi declanşate.

Evenimentele de tip Sfârşit pot definii un rezultat, ce va fi un direct corespondent al terminarii "Sequence Flow"- ului. Evenimentele de tip Start pot reacŃiona la un

declanşator (il pot prinde - "catch"). Evenimentele de tip Sfarsit pot doar să creeze un rezultat ( să arunce -

"throw"). Iar evenimentele Intermediare pot prinde sau arunca declanşatori.

(34)

Setul extins de elemente BPD

(35)

Setul extins de elemente BPD

Task

Este o activitate atomică ce este inclusă în cadrul unui proces. Un Task este folosit atunci când

munca din cadrul procesului nu este divizată la un nivel mai detaliat al PM-ului (Process Model).

(36)

Setul extins de elemente BPD

Proces/Subproces

Un subproces este o activitate compusă ce este inclusă în cadrul unui proces. Prin proprietatea de compunere înŃelegem faptul că respectiva

activitate poate fi descompusă la un nivel mult mai detaliat prin intermediul unui set de subactivităŃi.

(37)

Setul extins de elemente BPD

Subprocese de tip "collapsed“

Detaliile subproceselor nu sunt vizibile în diagramă. Semnul plus din partea de jos a

figurii semnificând că respectiva activitate este un subproces şi are un nivel mai detaliat decat cel de la pasul curent.

(38)

Setul extins de elemente BPD

Subprocese expandate

Limita unui subproces este expandată şi detaliile (un proces) sunt visibile în cadrul

respectivei delimitări. Totuşi, trebuie de reŃinut că elementul "Sequence Flow" nu poate

traversa limita unui subproces.

(39)

Setul extins de elemente BPD

Tipuri de control asociate elementului

"Gateway“

Tipurile de control includ:

Decizii exclusive şi de contopire (

"Data-Based" and "Event-Based")

Decizii de incluziune şi contopire

CondiŃii complexe

"Forking" paralel şi unificare

Fiecare tip de control afectează atât fluxul input, cat si fluxul output.

(40)

Setul extins de elemente BPD

"Sequence Flow“

Fluxul normal ("Normal flow") - face referinŃă la fluxul ce îşi are originea dintr-un eveniment de tip

Start şi continuă prin activităŃi via căi paralele sau alternative, până când ajunge la un eveniment de tip Sfârsit ("End").

(41)

Setul extins de elemente BPD

Fluxul necontrolat ("Uncontrolled flow") - este fluxul care nu a fost afectat de nici o condiŃie sau care nu trece printr-un gateway.

(42)

Setul extins de elemente BPD

Fluxul condiŃional

"Sequence flow"-ul poate avea expresii condiŃionale ce sunt evaluate la runtime în vederea determinării utilizării fluxului.

(43)

Setul extins de elemente BPD

Fluxul default

Pentru deciziile "data-based" sau pentru deciziile

"inclusive",un tip de flux este chiar condiŃia default.

Acest flux doar dacă toate celelate fluxuri

condiŃionale de ieşire nu sunt adevărate (valide) la runtime.

(44)

Setul extins de elemente BPD

Fluxul de exceptie

Acest flux apare în afara fluxului normal al procesului, fiind bazat pe un eveniment

intermediar ce apare în timpul desfăşurării procesului curent.

(45)

Setul extins de elemente BPD

"Fork“

Acest termen este asociat noŃiunii de divizare a unu traseu în două sau mai multe subtrasee paralele, cunoscut şi sub numele de "Forking Flow". Există locuri în cadrul unui

proces unde activităŃile pot fi executate concurent, în detrimentul execuŃiei secvenŃiale. Există două opŃiuni:

construirea de fluxuri secvenŃiale de iesire multiple, metoda cea mai des folosită;

adoptarea unui gateway paralel, de obice utilizat in combinaŃii cu alte gateway-uri;

(46)

Setul extins de elemente BPD

“Join”

Defineşte combinarea a două sau mai multe căi paralele în una singură ("Joining Flow"). Se va folosii un gateway paralel.

(47)

Setul extins de elemente BPD

Decizii şi puncte de branşament

Deciziile sunt gateway-uri în cadrul unui proces de afaceri unde fluxul de control poate lua una sau mai multe căi alternative.

(48)

Setul extins de elemente BPD

Ciclarea ("Looping")

BPMN oferă două mecanisme pentru ciclarea în cadrul unui proces.

(49)

Setul extins de elemente BPD

Ciclarea de tip activitate

Atributele aparŃinând unui task sau a unui

subprocess vor determina dacă sunt repetitive sau vor fi executate o singură dată.

(50)

Setul extins de elemente BPD

Ciclarea de tip flux secvenŃial

Pot fi create ciclări prin conectarea unui flux secvenŃial la un obiect de tip "upstream". Un obiect este considerat de tip "upstream" dacă acel obiect are un flux secvenŃial de ieşire ce conduce la o serie intreagă de alte fluxuri

secvenŃiale, ultimul din această serie fiind un flux secvenŃial de intrare asociat obiectului original.

(51)

Setul extins de elemente BPD

TranzacŃie

Este un subproces ce este implementat,suportat de un protocol special ce se asigură că toate părŃile

implicate sunt de acord cu terminarea sau anularea unei activităŃi. Atributele activităŃii vor hotărâ dacă este sau nu o tranzacŃie.

(52)

Ce urmeaz ă ?

Intr-o expunere ulterioară voi prezenta un

studiu de caz, mai exact implementarea

concretă a unui proces de afaceri folosind

standardul BPMN vs. 1.2

(53)

Sfâr ş it

Întrebări?

Referências

Documentos relacionados

intr-o oarecare misurd, acest lucru poate fi simptomatic pentru societdlile ?n care oamenii sunt atAt de instdriti si se preocupd intr-o mdsurd atAt de mici de ce vor m5.nca sau unde