Diagrami i kolaboracionit

parapamje|Collaboration diagramit|300px
**Collaboration diagram** ose ndryshe i njohur si **Communication diagram** grupon bashkë lidhjet ndërmjet objekteve të ndryshëm. Bashkëveprimet renditen si lidhje të numëruara të cilat ndihmojnë të ndiqet sekuenca e bashkëveprimeve. Collaboration diagrami ndihmon të identifikohen të gjitha lidhjet që ka çdo objekt me një objektet tjera. Në modelimi 4+1 i Collaboration diagrami i përket pjesës së "Pikëpamjeve Procesore" për veprime dinamike. Collaboration diagramet demonstrojnë se si objektet janë te lidhur në mënyrë statike. Collaboration diagrami është shumë i ngjashëm me diagramin e sekuencës për qëllimin që arrin, në fjalë të tjera, tregon lidhjen dinamike të objekteve në sistem.

## Përshkrimi 
parapamje|Një shembull i collaboration diagramit |300px
Collaboration diagrami sqarohet shumë lehtë duke modeluar objektet në sistem dhe duke prezantuar si lidhje asociacionet ndërmjet objekteve. Lidhja ndërmjet objekteve paraqiten me shigjeta. Për të identifikuar thirjet rendore të këtyre objekteve, afër çdo shigjete shënohet një numër.
Ata tregojnë lidhjet ndërmjet objekteve dhe rendin e mesazheve të kaluara nëpërmjet tyre. Objektet renditen si ikona dhe shigjetat tregojnë mesazhet që kalojnë ndërmjet tyre. Numrat pranë mesazheve quhen numra rendor. Siç sugjeron edhe emri, ata tregojnë rendin e mesazheve që janë duke kaluar ndërmjet objekteve. Ka plot skema të numërimit rendor që janë të pranuara në UML. Mund të përdoret edhe një format i thjeshtë 1,2,3…, siç sqaron edhe shembulli i mëposhtëm, ose për diagrame më të komplikuara dhe më të detajuara mund të përdoret edhe skema si 1, 1.1, 1.2, 1.2.1 ...

## Elementet 
Një vegël e sofistikuar modelimi mund të konvertojë shumë lehtë një Collaboration diagram në një diagram të sekuencës dhe e kundërta. Prandaj, elementet e një Collaboration diagrami janë gati të njëjtë sikur ata të diagramit të sekuencës.
Një Collaboration diagram përbëhet nga elementet vijuese:

## Shembull 
Le ta shqyrtojmë një softuer që kontrollon një telefon celular të thjeshtë. Ky cellular përmban butona për të shtypur numra dhe një buton “Dërgo” për realizimin e thirrjeve. Ka harduer dhe softuer që merret me mbledhjen e numrave të shtypur për thirje dhe një radio celulare që kujdeset për lidhjen me rrjetin celular. Ka një mikrofonë, dëgjues dhe ekran.
Të analizojmë procesin hap mbas hapi. Në rend të parë e kemi procesin ku gjatë shtypjes së butonave për numra të fillohet shënimi i numrit të telefonit. Si e din softueri që një buton është shtypur?
Ka mënyra të ndryshme për ta bërë këtë: por më e thjeshta është të ketë një objekt Buton që dërgon një shifër si porosi. Cili objekt duhet të pranon këtë porosi? Duket qartë që duhet të jetë objekti Dialer. Ky objekt pastaj duhet ti tregon Ekranit të paraqesë shifrën e re, e gjithashtu ti tregojë Autoparlantit të emiton tingullin e duhur. Kjo procedurë vazhdon deri sa të shtypet butoni Dërgo.
Kur shtypet butoni Dërgo, objekti Buton dërgon mesazhin Dërgo deri tek Dialeri. Ai pastaj dërgon një porosi Lidhu deri te RadiojaCelulare dhe bashkangjit numrin e telefonit. RadiojaCelulare më vonë i tregon Ekranit të prezanton shenjën NëPërdorim .

## Nga Collaboration diagrami në Communication diagram 
Në teknologjinë UML 2 tashmë kemi në përdorim një emër tjetër për Collaboration diagram. Paraqitja e rrjedhojës së porosive ndërmjet objekteve në një aplikacion i Orientuar në Objekte dhe për te shprehur lidhjet ndërmjet klasave, emërtohet me Communication diagram, ose diagrami i Komunikimit. Edhe pse këto diagrame i përdorim më pakë ata janë shum të dobishëm në situata ku si kërkesë fillestare nuk kemi Use Case diagrame. Këto diagrame janë tepër të përdorur nga njerëz të cilët preferojnë UML Class diagramet pasi janë të ngjashëm ndërmjet veti .

## Referime