Modelarea proceselor de afaceri folosind UML

Embed Size (px)

DESCRIPTION

Modelarea proceselor de afaceri folosind UML

Citation preview

Modelarea proceselor de afaceri cu ajutorul UML

I. Introducere

Datorita existentei unei concurente din ce in ce mai puternice, companiile sunt nevoite sa creasca nivelul de calitate al bunurilor si serviciilor oferite, sa reduca timpul de procesare a comenzilor, minimizand in acelasi timp costurile, ceea ce conduce la marirea profiturilor.

Pentru atingerea acestor obiective, companiile trebuie sa-si optimizeze operatiunile interne. Aceasta optimizare presupune, in primul rand, construirea unui model de afaceri care sa reprezinte activitatea firmei, permitand acesteia sa analizeze si simuleze schimbarile ce ar putea surveni inainte de implementarea acestora.

Pana de curand, modelele utilizate erau cele ierarhice, ce prezentau structura organizationala a firmelor. In ultima vreme a devenit insa evident faptul ca situatia multor companii poate fi mult imbunatatita prin optimizarea proceselor sale de afaceri.Un proces de afaceri reprezinta modul de functionare privit pe orizontala al unei companii, permitandu-i acesteia sa-si analizeze si optimizeze fluxul de lucru.

Un proces de afaceri:

poate afecta mai multe unitati organizationale;

poate avea un impact organizational pe orizontala;

creaza valoare clientului, ce poate fi intern sau extern.II. Unified Modelling Language (UML) UML reprezinta un limbaj de modelare cu notatii specifice si reguli gramaticale aferente, ce poate fi utilizat de companii pentru construirea modelelor software.

UML suporta o multime vasta de elemente grafice, descriind notatii specifice pentru clase, componente, noduri, activitati, fluxuri de munca, use cases, obiecte, stari si modul in care se pot modela relatiile de legatura dintre aceste elemente. UML suporta, de asemenea, extensii customizate prin utilizarea unor elemente stereotipice. UML are noua diagrame predefinite care descriu impreuna structura, comportamentul si arhitectura unui sistem.III. Modelarea proceselor de afaceri

Modelarea proceselor de afaceri constuituie o parte esentiala a oricarui proces de dezvoltare a programelor software, permitand analistului surprinderea principalelor aspecte si proceduri ce guverneaza modul in care functioneaza afacerea respectiva.

Intr-o prima faza, modelul permite analistului capturarea evenimentelor, inputurilor, resurselor si outputurilor asociate procesului de afaceri ce sunt considerate a fi semnificative. Prin adaugarea ulterioara a unor elemente de design de tipul Use Cases utilizand link-uri de implementare, devine posibila constructia unui model usor de urmarit si functional.

Notatii utilizate in Modelarea Proceselor

Un model al unui proces de afaceri contine in general urmatoarele elemente:

scopul sau motivul ce sta la baza procesului considerat;

inputurile specifice;

outputurile specifice;

resursele consumate;

activitatile ce sunt indeplinite intr-o anumita ordine;

evenimentele ce determina acest proces.

IV. Conceptele folosite pentru definirea arhitecturii unui sistem:

1. Procesul de afaceri

Procesul de afaceri reprezinta o colectie de activitati ce au ca scop obtinerea unui output specific pentru un anumit client sau piata, utilizand un set de inputuri. Accentul se pune pe modul in care sunt realizate activitatile dintr-o organizatie, ci nu pe ce tip de produs se obtine efectiv. Un astfel de proces consta intr-o ordonare specifica de activitati ce au loc intr-un timp si spatiu determinat, avand un inceput, un sfarsit, precum si inputuri si outputuri clar definite.

Notatia utilizata pentru descrierea unui proces de afaceri este urmatoarea:

Notatia utilizata sugereaza un flux de activitati de la stanga la dreapta. In general, un element de tip eveniment va fi plasat in stanga procesului si outputul va fi in partea dreapta. Elementele ce desemneaza activitati vor fi incluse in elementul de tip proces.Un proces are un scop si este influentat de evenimente.2. Inputuri, resurse si informatii

Procesele de afaceri utilizeaza informatii pentru a adapta sau finaliza diferite activitati. Spre deosebire de resurse, informatiile nu sunt consumate in cadrul procesului, ci mai degraba sunt utilizate ca parte a procesului de transformare. Informatiile pot proveni din surse externe, de la clienti, de la unitati interne din cadrul organizatiei sau pot fi chiar rezultatul unor alte procese.

O resursa reprezinta un input al unui proces de afaceri si spre deosebire de informatie este consumata in cadrul acestuia. Resursele sunt toate elementele utilizate in afaceri de tipul: elemente de capital, forta de munca, contracte, etc.Notatia utilizata pentru redarea informatiilor si resurselor este urmatoarea:

Ex. de informatie: template-urile utilizate pentru comenzi pot fi utilizate in mod repetat pentru ca noi comenzi sa aiba un format unitar, identic. Template-urile nu sunt alterate sau epuizate in cadrul acestei activitati.

Ex. de input: pe masura ce comenzile primite de la clienti sunt procesate, ele sunt consumate si nu vor mai fi utilizate din nou.3. EvenimenteUn eveniment poate fi: primirea unui obiect, atingerea unui deadline, o notificare sau orice altceva ar putea initia un proces de afaceri. Evenimentul poate fi consumat si transformat (de ex. o comanda a clientului) sau poate actiona ca un catalizator.Un eveniment este generat de un proces si primit de unul sau mai multe procese diferite de cel ce l-a generat.

4. Outputul

Un proces de afaceri va produce unul sau mai multe outputuri utilizate fie intern, fie pentru a satisface cerinte externe. Un output poate fi un obiect (de tipul unui raport sau o factura), o transformare a unor resurse primare (o programare zilnica) sau un rezultat de tipul satisfacerii comenzilor clientilor.Un output al unui proces de afaceri poate fi utilizat de un alt proces, fie ca un element ce a fost initial solicitat de acesta, fie ca unul generator de noi activitati.

5. Scopul

Orice proces de afaceri are un scop bine definit. Acesta reprezinta motivul pentru care organizatia isi desfasoara activitatea si trebuie definit in termenii beneficiilor pe care acest proces le aduce organizatiei per ansamblu si satisfacerii nevoilor de afaceri.

6. Regulile de afaceri

Regulile de afaceri reprezinta premisele ce definesc sau restrictioneaza anumite aspecte ale afacerii si constituie ansamblul cunostintelor legate de business-ul respectiv.

7. Mecanismele generale

Mecanismele generale pot fi folosite in toate diagramele . De ex., o nota poate contine numele unui document extern sau al unei alte diagrame pentru a indica locul in care putem gasi informatii suplimentare cu privire la model.V. Asamblarea elementelor componenteReprezentarea grafica a unui proces de afaceri ce contine elementele prezentate anterior:

VI. Implementarea

Relatiile de dependenta intre procesul de afaceri si use cases, pachete sau alte elemente ale modelului sunt reprezentate prin intermediul legaturilor de tip .

Exemplul de mai jos arata modul in care un Proces de Afaceri este implementat printr-un Use Case si un Pachet. Pe masura ce modelul este dezvoltat si componentele functionale ale programului software sunt construite si legate de Use Cases, justificarea fiecarui element dpdv al business-ului poate fi dedusa din model.

Procesul de afacere include o serie de proceduri manuale si automate. Acest model ilustreaza intocmai functionalitatea (Use Cases) ce va fi construita pentru a servi unui anumit proces de afaceri; orice functionalitate absenta trebuie sa fie obtinuta din alte sisteme sau proceduri (manuale sau automate).

VII. Ex.: un model ce poate fi construit pentru a reprezenta un proces de afaceri

Scopul acestui model este de a prelua comenzile clientilor si a le livra acestora. Procesul incepe prin primirea unei cereri de la un Utilizator, ceea ce conduce la apelarea urmatoarelor elemente: Catalogul de Carti;

Cosul de Cumparaturi;

Paginile On-line;

Inventarul Depozitului. Outputul il reprezinta comanda clientului.

Cea de-a doua parte a modelului procesului se refera la solutionarea comenzii clientului si livrarea produselor solicitate de acesta. Cel de-al doilea proces implica:

Inventarul Depozitului Curierul si se finalizeaza atunci cand comanda este livrata clientului.VIII. Studiu de caz: Modelarea unei companii din domeniul confectiilor1. Scurta prezentare a companieiCompania activeaza in domeniul confectiilor barbatesti inca din anul 1960 si are in prezent 400 de angajati, fiind considerata in primele 1000 de companii din Portugalia.

Produsele firmei sunt comercializate atat pe piata interna cat si pe pietele externe, exportul reprezentand 49% din cifra sa de afaceri. Principala destinatie externa o reprezinta Uniunea Europeana (29%), urmata de SUA (18%).

In prezent, compania produce costume, pantaloni si sacouri sub trei branduri cunoscute. Inca de la infiintare, compania a dorit sa se diferentieze prin confectionarea costumelor utilizand metode traditionale, ceea ce i-a conferit un plus de imagine si asocierea numelui sau cu ideea de calitate.

Viziunea sa este: sa fie imaginea calitatii, inovatiei si succesului pentru gama de confectii barbatesti ce se adreseaza jumatatii superioare a clasei mijlocii si sa mentina si sa consolideze pozitia de leader pe piata interna concomitent cu cresterea cotei de piata pe pietele externe2. Modelul conceptual

Modelul conceptual defineste conceptele cheie ce sunt importante pentru modelarea procesului de afaceri.

3. Procesul de afaceri

Abordarea procesului de afaceri al firmei se concentreaza pe modul in care pot fi atinse obiectivele precizate in viziunea firmei. Diagrama de mai jos este utilizata pentru modelarea procesului de Vanzare. Fiecare sub-proces are un scop specific ce trebuie atins. Procesul de afaceri poate de asemenea indica pasii necesari in vederea imbunatatirii business-ului sau a sistemelor ce il sustin.

4. Organizarea si Resursele Modelul organizational arata structura resurselor umane in timp ce modelul resurselor arata structura altor resurse de tipul: produse, documente si masini. Resursele ce apar in modelul resurselor sunt de fapt cele care sunt utilizate in modelul proceselor. Modelul conceptual descrie conceptele generale ale afacerii si reprezinta un ajutor pretios in constructia si exploatarea modelului resurselor si modelului organizational.

4.1. Modelul Resurselor Comanda reprezinta unul dintre conceptele cheie ale modelului conceptual al unei companii. Diagrama starii comenzii privind resursele arata modul in care aceasta comanda poate fi modelata pentru a putea fi urmarita si analizata pe parcurs. Diagrama ce reda modelul resurselor arata legaturile dintre resursa de tip comanda si alte tipuri de resurse precum: produse, tipuri de produse, furnizori, colectii, etc. Liniile de asamblare sunt necesare pentru a produce bunurile respective. Furnizorii ofera materiile prime si materialele necesare pe baza carora se confectioneaza produsele. Tipurile de produs (de ex. costum) sunt utilizate pentru a organiza si grupa produsele (ex. sacouri si pantaloni). Colectiile reprezinta portofoliul de tipuri de produse pentru un anumit sezon (ex. Colectia de primavara/vara).

Modelul resurselor este completat de regulile de afaceri. De ex., o regula de afaceri poate fi o restrictie privind limita creditului unui anumit client sau relatia dintre comenzile primite si capacitatea de productie.

4.2. Modelul Organizational

Structura organizationala a companiei este importanta pentru clarificarea responsabilitatilor fiecarei unitati organizationale, ceea ce se intentioneaza a fi facut prin intermediul diagramei corespunzatoare.

5. Analiza Interactiunii Analiza interactiunii se desfasoara in paralel cu modelarea organizationala si cu modelarea procesului de afaceri. Pentru a arata interactiunile existente intre unitatile organizationale dar si procesele ce au loc in fiecare unitate organizationala se utilizeaza diagramele secventiale UML. O interactiune reprezinta o secventa sau un scenariu care incepe cu un eveniment care poate fi o intrebare sau o comanda si se termina cu un rezultat. Diagrama secventiala pentru procesul de business denumit Vanzari este redata mai jos:

Concluzii

Notatiile utilizate de UML pot fi considerate complicate pentru majoritatea oamenilor de afaceri ce nu au cunostinte de IT.

Exista insa avantaje care recomanda UML ca fiind un limbaj potrivit pentru modelarea afacerilor deoarece:

UML este un standard notational recunoscut de comunitatea dezvoltatorilor de software; UML poate fi folosit la nivel general, caz in care detaliile legate de implementare pot fi omise;

Diagramele activitatilor si interactiunilor construite cu UML pot fi considerate nu doar potrivite modelarii afacerilor dar si user-friendly si chiar necesare pentru specificarea proceselor de afaceri.

Modelarea proceselor de afaceri permit imbunatatirea si reproiectarea afacerilor si organizatiilor si acest lucru poate fi de o importanta strategica in pozitionarea companiei pentru a face fata cu succes globalizarii si noilor provocari date de intrarea in era economiei digitale.Use case reprezinta descrieri ale comportamentului sistemului informatic atunci cand acesta raspunde unor solicitari din afara sistemului

Stereotipurile reprezinta unul din cele trei mecanisme de extensie din UML care permit designerilor sa extinda vocabularul UML in scopul crearii unor elemente model noi derivate din cele deja existente dar avand proprietati specifice corespunzatoare unui anumit domeniu sau utilizarii specifice. De ex., atunci cand modelam o retea, este posibil sa avem nevoie de simboluri pentru reprezentarea routerelor si huburilor. Utilizand noduri stereotipice, putem face astfel incat aceste elemente sa apara ca blocuri primitive. Din punct de vedere grafic, un stereotip este reprezentat printr-un nume intre ghilimele sau paranteze si plasate deasupra numelui unui alt element. In plus, ar putea fi indicat cu ajutorul unui icon specific.

Pachetele reprezinta constructii UML care permit organizarea elementelor modelului in grupe, ceea ce conduce la obtinerea unor diagrame UML mai simple si mai usor de inteles. Pachetele sunt reprezentate ca fisiere si pot fi utilizate in orice diagrama UML, desi ele sunt cel mai des folosite in diagrame Use Case si Class deoarece aceste modele au tendinta de expansiune.