O diagramă de colaborare este un tip de diagramă de interacțiune a limbajului de modelare unificat (UML) care evidențiază organizarea structurală a obiectelor în proiectarea sistemului informatic de programare orientată pe obiecte (OOP). Diagrama de colaborare descrie relațiile dintre obiecte între ele. Aceste diagrame pot necesita abilități tehnice și pregătire pentru a crea. O organizație centrală de guvernare controlează standardele UML, iar acestea continuă să evolueze.
În OOP, un obiect este o entitate încapsulată compusă din atribute și comportamente, iar termenul obiect se referă adesea la un tip de date complexe. De exemplu, un obiect poate consta din date despre articole de inventar și diferite funcții pentru preluarea și revizuirea acestor date. Gândirea datelor, atributelor și comportamentelor ca obiecte poate simplifica procesul de modelare și dezvoltare.
Elementul obiect este un element cheie într-o diagramă de colaborare. Obiectele pot interacționa între ele. De exemplu, un obiect de comandă de cumpărare poate interacționa cu un obiect de inventar pentru a modela efectul pe care primirea articolelor dintr-o comandă de cumpărare îl are asupra stocului. Diagrama poate arăta un rol de clasă pentru fiecare obiect, care poate fi descris și ca responsabilități pentru acel obiect.
Un al doilea element este elementul de relație sau asociere. Acest element descrie o legătură care conectează obiectele asociate și indică modul în care se va comporta asocierea în această circumstanță. Poate fi folosit și pentru a arăta cardinalitatea. Cardinalitatea este relația necesară între datele din cele două obiecte, cum ar fi o relație unu la unu sau unu la mai mulți.
Mesajele sunt al treilea element în diagramele de colaborare. Ele sunt reprezentate ca săgeți care indică de la obiectul inițial la obiectul final. Numerotarea poate fi adăugată la mesaje pentru a arăta secvența de timp a interacțiunilor obiectelor.
O diagramă de colaborare este similară cu o diagramă de secvență, deoarece ambele arată modul în care obiectele interacționează între ele în relații dinamice sau în funcție de timp. Unele programe de modelare UML pot converti diagramele de secvență în diagrame de colaborare și invers, datorită asemănărilor lor. Relațiile dinamice sunt mai ușor de înțeles din diagramele de secvență, în timp ce diagramele de colaborare descriu conexiunile dintre obiecte mai eficient.
Diagramele de colaborare necesită abilități tehnice pentru a le crea. Sarcina este adesea atribuită unui analist de sisteme informatice. Analiștii care creează modelele folosesc diagrame de caz, diagrame de clasă și diagrame de secvență pentru a aduna informații despre sistemul necesar pentru dezvoltarea diagramelor. În plus, modelele sunt de obicei create folosind un software special, care poate necesita instruire pentru utilizare.
Standardele UML sunt dezvoltate de Object Management Group. Standardele continuă să avanseze și, ca rezultat, convențiile de modelare a diagramei pot fi modificate. De exemplu, notațiile UML mai noi folosesc o diagramă de comunicare ca versiune simplificată a diagramei de colaborare.