ABONAMENTE VIDEO REDACȚIA
RO
EN
×
▼ LISTĂ EDIȚII ▼
Numărul 19
Abonament PDF

BPMN – util în modelarea proceselor de business

Anita Păcurariu
Senior Business Analyst
@Endava
DIVERSE

Business Process Model and Notation sau pe scurt BPMN este unul dintre cele mai cunoscute standarde de modelare și management al proceselor de business, fiind extrem de util în etapele de definire și aliniere a produselor software. Obiectivul BPMN este acela de a furniza un set unificat de elemente și de notații care să fie ușor de înțeles și de folosit de către toți participanții la procesul de livrare.

Un management eficient al proceselor de business într-un produs software este esențial atât pentru succesul acestuia pe piață cât și pentru cel al relației dintre client și compania prestatoare, relație intermediată de analistul de business. Știm cu toții că beneficiarii și/sau sponsorii produselor software nu sunt familiari cu terminologia specifică domeniului IT, apărând astfel numeroase probleme de comunicare între aceștia și echipele de livrare. Pentru a facilita această comunicare și pentru a aduce un plus de claritate cerințelor funcționale obținute, procesele de business trebuie modelate într-o manieră cât mai elocventă, folosind un limbaj standardizat și pe înțelesul tuturor.

Pentru crearea diagramelor BPMN se pot avea în vedere utilitare precum: MS Visio, Sparx Systems Enterprise Architect sau variante gratuite cum ar fi BonitaSoft, Intalio sau ProcessMaker.

Procese de business și BPD

Putem defini un proces de business ca o succesiune de activități de business realizate de către participanți, cu scopul de a-și atinge obiectivele și de a livra valoare. Aceste procese pot fi modelate pe trei nivele de detail, iar BPMN le suportă pe toate:

  • Harta procesului (engl. Process map) - este o diagramă simplă de activități.
  • Descrierea procesului - este o diagramă de activități extinsă cu informații adiționale.
  • Modelul procesului - este o diagramă de activități extinsă cu suficiente informații, astfel încât procesul să poată fi analizat, simulat sau executat folosind BPEL - Business Process Execution Language.

În analiza de business, procesele - independent de tipul lor (de management, operaționale sau de suport) trebuie modelate pentru a beneficia de următoarele avantaje:

  • Asimilare - procesele, dacă sunt împărțite în activități atomice, pot fi mai bine înțelese de către toți participanții la livrare.
  • Monitorizare și evaluare - procesele, dacă sunt reprezentate clar și concis pot fi mai bine monitorizate și evaluate și li se pot aplica anumiți indicatori de performanță (engl. KPI - Key Performance Indicators).
  • Optimizare - procesele, dacă sunt descompuse în activități independente și interconectate, pot pune în evidență blocaje (engl. bottlenecks), căi duplicate, căi alternative și bucle, putând fi astfel candidate la îmbunătățiri.
  • Creare de procese noi - procesele, dacă sunt corect modelate, reflectând starea actuală a sistemului (engl. as-is system), sunt un punct solid de pornire pentru modificări funcționale (engl. change requests) sau extensii ulterioare (engl. to-be system).
  • Automatizare - procesele, dacă sunt reprezentate pas cu pas, pot fi ușor automatizate, reducând astfel costurile asociate cu dezvoltarea și testarea, îmbunătățind calitatea produsului și optimizând etapele de mentenanță și suport.

Diagramele oferite de BPMN, numite BPD - Business Process Diagrams sunt similare diagramelor de activitate, fiind însă cu mult mai expresive și ușor de asimilat și putând fi totodată executate de utilitarele BPEL.

Pentru a crea BPD-ul, analistul de business identifică și modelează evenimentul de început al procesului, apoi celelalte evenimente, în ordinea în care se petrec până la evenimentul care încheie procesul. Deciziile de business și căile alternative se modelează folosind blocuri de decizie (engl. gateways). Dacă procesul de business este unul complex, el poate fi descompus în sub-procese, fiecare dintre acestea fiind modelat printr-o BPD aferentă, iar rezultatele obținute vor fi interconectate, pentru a obține vederea de ansamblu.

De ce să folosim BPMN?

Prezentarea sintetică a avantajelor acestui standard, care vine atât în ajutorul analiștilor de business cât și al clienților, poate lua următoarea formă:

  • Simplitatea - elementele și notațiile puse la dispoziție de BPMN sunt intuitive, nefiind nevoie de cunoștințe prealabile de nivel tehnic. Astfel, analistului de business îi este ușor să creeze diagrame BPMN, care sunt foarte simplu de urmărit de către partea de business.
  • Expresivitatea - standardul este expresiv și adaptabil în ceea ce privește modelarea proceselor, permițând aplicarea unei game largi de constrângeri. Spre deosebire de alte standarde ca de exemplu UML, BPMN este mult mai versatil și poate reprezenta fluxuri mult mai complexe de business.
  • Standardizarea - BPMN este un standard guvernat și menținut de către OMG - Object Management Group.
  • Aplicabilitate în IT - având în vedere că IT-ul este o orizontală care deservește verticale precum sectorul financiar sau cel bancar, necesitatea de a avea suport IT este foarte mare și în continuă expansiune iar majoritatea proceselor de business trebuie modelate într-un limbaj clar, obiectiv și elocvent, pentru a putea fi livrate la calitate ridicată și pentru a asigura satisfacția și încrederea clienților.

Elementele BPMN

Un model BPMN poate fi descris ca o succesiune de noduri, conectate prin fluxuri paralele sau secvențiale. Pentru a putea folosi BPMN în analiza de business, trebuie să cunoaștem câteva elemente cheie ale limbajului, care sunt folosite la descrierea majorității proceselor. Mai întâi trebuie să știm că există patru categorii de elemente, după cum putem vedea mai jos:

Obiecte de flux (engl. flow objects)

  • Activități - acțiuni care se întâmplă în cadrul procesului de business, fiind reprezentate grafic sub formă de dreptunghiuri cu colțurile rotunjite. Putem vorbi aici despre task-uri , sub-procese și task-uri recurente .
  • Evenimente - acțiuni care pot da startul unui proces, se pot întâmpla într-un proces sau pot opri un proces și sunt reprezentate sub formă de cercuri, tipul de contur al cercului determinând tipul de eveniment. Putem vorbi astfel despre evenimente de start - contur simplu, intermediare - contur dublu și de stop - contur boldat.
  • Porți (engl. gateways) - elemente care modelează interacțiunile dintre fluxurile unui proces și deciziile de business, fiind reprezentate grafic prin romburi.

Conectori

  • Fluxuri secvență (engl. sequence flows) - sunt reprezentate prin săgeți cu linie continuă și indică ordinea activităților într-un proces de business.
  • Fluxuri mesaj- sunt reprezentate prin săgeți cu linie întreruptă și indică un schimb de mesaje între două swimlane-uri diferite dintr-un proces de business.
  • Asocieri - sunt reprezentate prin săgeți cu linie punctată și se folosesc pentru a asocia date, informații și artefacte la obiecte.

Swim lanes

  • Pools - ajută la clasificarea activităților și a participanților în cadrul unui proces de business interactiv.
  • Lanes - reprezintă sub-partițiile unui pool și pun în evidență de regulă rolurile implicate în procesul de business și acțiunile asociate fiecăruia.

Artefacte

  • Obiecte - prezintă modul în care datele și documentele sunt folosite într-un proces și definesc intrări și ieșiri din activități. Obiectele pot primi și "stări" care prezintă modul în care documentele pot fi modificate în cadrul procesului.
  • Grupuri - pun în evidență anumite secțiuni din BPD fără a adăuga constrângeri de performanță. Pot fi folosite pentru a clasifica elemente pentru raportare și nu se supun restricțiilor impuse de pools sau lanes.
  • Adnotări (engl. annotations) - furnizează informații suplimentare despre un proces și pot fi conectate cu un anumit obiect din BPD folosind asocieri.

Bune practici în modelarea BPMN

Chiar dacă limbajul BPMN este flexibil și nu ne impune constrângeri în ceea ce privește modelarea, este bine să respectăm câteva bune practici stabilite în prealabil la nivelul echipei de proiect, al departamentului sau al organizației:

  • Activitățile procesului de business trebuie modelate în ordine cronologică, pe o cronologie de la stânga la dreapta.
  • Procesele de business încep de regulă cu un eveniment declanșator și continuă până la obținerea de rezultate.
  • Task-urile și activitățile din cardul unui proces trebuie asociate la roluri relevante din punctul de vedere al business-ului.
  • Un model complet al procesului de business ar trebui să prezinte modul în care obiectele și/sau datele sunt transferate.
  • Procesele de business trebuie modelate ierarhic, descriindu-se sub-procesele componente, în cazul în care acestea există.
  • Este recomandată stabilirea și folosirea convențiilor de nume pentru modelarea proceselor de business, ca de exemplu: i) numele elementelor trebuie să fie scurte și concise; ii) este redundant să repetăm cuvinte precum "task" sau "proces" în numele unui task respectiv proces; iii) activitățile trebuie să aibă ca nume un verb; iv) în numele complexe, fiecare cuvânt trebuie scris cu literă mare - de exemplu, vom denumi o activitate "SolicitareAbsență" nu "solicitareabsență" sau "Solicitareabsență".
  • Dacă procesul de business evoluează în timp, este recomandat să versionăm BPD-urile create, pentru a putea fi urmărite schimbările.

Studiu de caz

În cele ce urmează vom analiza un exemplu scurt și intuitiv pentru a evidenția modul în care se aplică analiza BPMN în cazul unui scenariu de business concret precum și pașii necesari pentru crearea BPD-ului.

Fig. 1 Diagrama BPMN a procesului de solicitare absență

Să studiem procesul prin care un angajat din departamentul IT al unei companii solicită concediu iar superiorul său ierarhic, după o evaluare prealabilă, aprobă sau nu cererea sa. Vom adăuga și cazul în care superiorul ierarhic nu răspunde în timp util la cerere, caz în care se va opta pentru o rută alternativă, cu răspuns automat, trimis de către sistem în numele acestuia.

În situația de față, în primul rând trebuie să punem în evidență actorii implicați în proces și anume angajatul, superiorul ierarhic și sistemul.

La pasul al doilea vom identifica setul de activități desfășurate de fiecare dintre cei trei actori în cadrul procesului, ca de exemplu:

Angajatul: solicită absența - activitate urmată de notificarea superiorului său ierarhic.

Superiorul ierarhic: procesează cererea de absență,iar apoi decide dacă o aprobă sau o respinge. Ambele decizii sunt însoțite de trimiterea unui mesaj de notificare înapoi către angajat.

Sistemul: pune la dispoziție fluxul alternativ care constă în respingerea automată a cererii de concediu, în cazul în care superiorul ierarhic nu răspunde afirmativ sau negativ în timp de o zi (acțiune urmată de trimiterea unui mesaj automat de respingere către angajat).

La pasul al treilea trebuie să decidem tipurile de elemente cu care vom crea BPD-ul. Hotărâm că vom folosi un pool cu două lane-uri, unul pentru angajat și celălalt pentru superiorul său ierarhic. Tot pe lane-ul superiorului vom reprezenta și acțiunile făcute de sistem, care în situația de față îl impersonalizează. Mai avem nevoie și de activități, blocuri de decizie și evenimente de start, intermediare și de stop. Cu rol de conectori utilizăm fluxuri secvență și fluxuri mesaj.

La pasul patru, începem să plasăm elementele BPMN pe BPD și anume - pe lane-ul angajatului vom avea următoarele: evenimentul de start, activitatea de solicitare absență, evenimentul intermediar de notificare a superiorului ierarhic și evenimentul de stop.

Pe lane-ul superiorului ierarhic modelăm evenimentul de start - care constă în primirea notificării trimise de angajat, activitatea de procesare a absenței, blocul de decizie în urma căruia rezultă aprobarea sau respingerea cererii - însoțite de evenimentele intermediare de notificare a angajatului cu rezultatul procesării și din ambele cazuri, evenimentul de stop.

Tot pe lane-ul superiorului ierarhic, la activitatea de procesare a cererii, plasăm un eveniment intermediar de timeout (cu valoarea de o zi) după expirarea căruia se declanșează evenimentul intermediar de notificare a angajatului de respingerea cererii, urmat de evenimentul de stop.

Concluzii

Existența unui standard pentru modelarea proceselor de business, cunoscut și înțeles de către analiștii de business, client și echipele tehnice este de un real folos nu numai în analiza de business ci și în întregul proces de livrare, cu atât mai mult cu cât este vorba despre un standard simplu, intuitiv și care nu presupune cunoștințe tehnice anterioare. Beneficiile majore ale acestuia sunt reprezentate de înțelegerea și comunicarea proceselor de business între părțile implicate și capacitatea modelelor rezultate de a fi executate de BPEL.

LANSAREA NUMĂRULUI 87

Prezentări articole și
Panel: Project management

Marți, 24 Septembrie, ora 18:00
Impact Hub, București

Înregistrează-te

Facebook Meetup

Conferință

Sponsori

  • ntt data
  • 3PillarGlobal
  • Betfair
  • Telenav
  • Accenture
  • Siemens
  • Bosch
  • FlowTraders
  • MHP
  • Connatix
  • UIPatj
  • MetroSystems
  • Globant
  • Colors in projects