Cazurile de utilizare şi scenariile reprezintă modalităţi de descriere a comportamentului sistemelor informatice (văzut ca interacţiuni între obiecte). În anumite cazuri însă este necesară studierea comportamentului în interiorul unui obiect. UML furnizează diagramele de tranziţie a stărilor şi diagramele de activităţi pentru modelarea comportamentului obiectelor.
În UML hărţile de stări sunt utilizate în descrierea comportamentului obiectelor aparţinând unui clase.
O stare (concretă) este caracterizată de valorile proprietăţilor unui obiect şi de mulţimea mesajelor care pot fi acceptate de către acest obiect la un moment dat. O stare conţine descrierea unui invariant de stare (condiţie logică adevărată pentru toate obiectele care se află în starea respectivă), şi a trei proceduri speciale: entry, exit şi do. Aceste proceduri descriu secvenţele de acţiuni care vor fi executate în momentul în care un obiect intră (entry), părăseşte (exit) sau se află (do) în starea respectivă. O stare se reprezintă grafic prin intermediul unui dreptunghi cu colţurile rotunjite, afişând în partea superioară un nume de stare. În partea inferioară a dreptunghiului opţional poate exista un compartiment care conţine expresiile ce definesc invariantul de stare şi cele trei proceduri speciale.
O tranziţie exprimă o situaţie în care un obiect poate trece dintr-o stare în alta. Tranziţiile se reprezintă grafic prin intermediul unor arce de cerc, linii simple sau linii poligonale orientate şi (opţional) etichetate care unesc două stări, numite stare sursă, respectiv destinaţie. Eticheta unei tranziţii este formată dintr-o signatură de mesaj, o condiţie (expresie logică) şi o secvenţă de activităţi care au loc în momentul declanşarii tranziţie. Pentru un obiect oarecare o tranziţie este declanşată atunci când obiectul se află în starea sursă a acesteia, execută operaţia corespunzătoare mesajului şi este îndeplinită condiţia specificată în etichetă.
Hărţile de stări permit reprezentarea ierarhică a stărilor unui obiect prin intermediul stărilor compuse (întâlnite şi sub denumirea de XOR-stări, stări abstracte sau super-stări). Stările compuse conţin un număr finit de stări simple sau compuse. Un obiect aflat într-o stare compusă se va afla în una şi numai una din sub-stările acesteia. Stările compuse se reprezintă grafic la fel ca stările simple, la care se adaugă un compartiment special, localizat între numele stării şi compartimentul destinat afişării invarianţilor de stare şi a procedurilor speciale. În cadrul acestui compartiment sunt reprezentate grafic toate sub-stările corespunzătoare.

Figura 1. Etichetarea tranziţiilor în hărţile de stări UML
Hărţile de stări permit modelarea de comportamente paralele ale unui obiect prin intermediul stărilor ortogonale (denumite şi AND-stări sau stări concurente). Stările ortogonale sunt formate din mai multe componente ortogonale, fiecare dintre acestea conţinând diverse sub-stări. Un obiect aflat într-o stare ortogonală se va afla de fapt în câte o stare corespunzătoare fiecărei componente ortogonale a acesteia. Reprezentarea grafică a stărilor ortogonale este asemănătoare reprezentării stărilor compuse, componentele ortogonale ale acestora fiind delimitate prin linii punctate verticale.

Figura 2. Principalele
notaţii ale hărţilor de stări UML
De asemenea, hărţile de stări introduc o serie de stări speciale, numite pseudo-stări. Pseudo-stările sunt stări intermediare care permit conectarea mai multor tranziţii în scopul descrierii unor situaţii complexe de modificare a stării concrete a unui obiect. Cele mai importante pseudo-stări definite în UML sunt:
- starea iniţială - indică sub-starea implicită în care intră un obiect în cazul declanşării unei tranziţii a cărei stare destinaţie este o stare compusă. Se reprezintă grafic sub forma unui cerc plin.
- starea finală - indică părăsirea contextului unei stări compuse. În cazul în care starea finală aparţine stării compuse de la cel mai înalt nivel al ierarhiei de stări (este rădăcina ierarhiei de stări) intrarea o tranziţie spre această stare semnifică distrugerea obiectului.
- starea istoric - este utilizată atunci când sub-starea iniţială a unei stări compuse nu este fixată decât pentru prima tranziţie spre această stare compusă, ea fiind dată mai apoi de ultima sub-stare activă. În figura 2 o primă tranziţie spre starea Pornita implică activarea sub-stării Normal, următoarele tranziţii activând sub-starea (Normal sau Marsalier) activă în momentul ultimei părăsiri a stării Pornita.
-