Diagrama cazurilor de utilizare

Diagramele cazurilor de utilizare sunt folosite pentru capturarea şi reprezentarea funcţionalităţilor sistemului. Elementele asociate cu diagramele cazurilor de utilizare sunt actorii şi cazurile. Un actor este o entitate externă sistemului care interacţionează cu acesta. Un actor descrie un rol pe care un utilizator sau un alt sistem îl joacă în cadrul sistemului descris.

Un caz descrie o funcţie a sistemului sau un serviciu pe care acesta îl pune la dispoziţie altor sisteme sau utilizatorului extern. Cazurile sun reprezentate grafic sub forma unor elipse ce conţin în interiorul lor numele acelui caz. Numele cazurilor trebuiesc alese cât mai sugestiv pentru a evidenţia funcţiile pe care acestea le îndeplinesc. În mod uzual numele unui caz trebuie să conţină un verb.

Un actor poate fi beneficiarul unei anumite funcţii a sistemului (recepţionează un mesaj) sau poate efectua o anumită operaţie asupra sistemului (transmite un mesaj). Interacţiunile dintre actori şi sistem sunt reprezentate prin intermediul relaţiilor de asociere.

Diagrama de mai sus poate fin interpretata astfel: Actorul de tip Elevator User poate efectua operatiile de Call Elevator si Select Flor.

Pot exista asocieri între cazuri. Asocierile dintre cazuri pot fi de următoarele tipuri:

  • Asociere de tip includere – prin care se specifică faptul că un anumit caz este compus din două sau mai multe cazuri. O astfel de asociere are tipul «include».
  • Asociere de tip extindere – prin care se specifică faptul că un anumit caz moşteneşte caracteristicile unui alt caz sau specializează un caz. O astfel de asociere are tipul «extends» sau este reprezentata ca o sageata cu triunghi gol.
  • Asociere de tip utilizare – prin care se specifică faptul că un anumit caz are nevoie de un alt caz pentru indeplinirea functiei. O astfel de asociere este similara cu cea dintre actor si un caz de utiliare.

Diargama de mai sus poate fi interpretata astfel: Actorul Operator poate efectua operatii de control si monitorizare. Operatia de monitorizare utilizeaza functiile de stocare si afisare ce sunt parte a aceluiasi sistem (cu alte cuvinte, pentru realizarea monitorizarii este nevoie si de functiile de stocare si afisare). Functia de control include o functie generic control care permite atat controlul manual cat si controlul automat.

Documentarea cazurilor de utilizare

Fiecare dintre cazurile prezentate într-o diagrama a cazurilor de utilizare trebuie documentat. Există diferite şabloane folosite în acest scop, în continuare fiind prezentat unul dintre acestea:

Şablon documentare caz

  • Nume caz: Numele cazului.
  • Sumar: descriere scurtă.
  • Actor: actorii cu care interacţionează.
  • Pre-conditii: condiţii ce trebuiesc îndeplinite pentru execuţia cazului.
  • Descriere: descrie ce face actorul şi cum reacţionează sistemul.
  • Alternative: enumeră eventuale cazuri alternative daca există.
  • Post-conditii: descrie starea în care sistemul rămâne după execuţie caz.

Utilizarea in sisteme complexe

În procesul de specificare a sistemelor mai complexe pot fi definite mai multe diagrame a cazurilor de utilizare, fiecare dintre acestea capturând anumite funcţionalităţi ale sistemului. De exemplu în cazul unei aplicaţii pentru controlul traficului feroviar putem identifica următoarele diagrame ale cazurilor de utilizare:

  • Diagrama generala ce descrie funcţiile principale ale sistemului .
  • Diagrama modulului de simulare;
  • Diagrama modulului de monitorizare;
  • Diagrama modulului de control;
  • Diagrama modulului de informare;

Pentru fiecare dintre diagramele cazurilor de utilizare pot fi elaborate diferite scenarii de utilizare prin care se modelează mesajele schimbate între actori şi sistem sau între diferitele entităţi ale sistemului – este astfel descris comportamentul sistemului. În scopul descrierii scenariilor de utilizare pot fi folosite următoarele tipuri de diagrame UML: diagramele de secvenţe, diagramele de colaborare şi diagrame de activităţi.