Äèàãðàììû âçàèìîäåéñòâèÿ (interaction diagrams) ÿâëÿþòñÿ ìîäåëÿìè, îïèñûâàþùèìè ïîâåäåíèå âçàèìîäåéñòâóþùèõ ãðóïï îáúåêòîâ.
Êàê ïðàâèëî, äèàãðàììà âçàèìîäåéñòâèÿ îõâàòûâàåò ïîâåäåíèå îáúåêòîâ â ðàìêàõ òîëüêî îäíîãî âàðèàíòà èñïîëüçîâàíèÿ. Íà òàêîé äèàãðàììå îòîáðàæàþòñÿ ðÿä îáúåêòîâ è òå ñîîáùåíèÿ, êîòîðûìè îíè îáìåíèâàþòñÿ ìåæäó ñîáîé.
Ïðîèëëþñòðèðóåì äàííûé ïîäõîä íà ïðèìåðå äîñòàòî÷íî ïðîñòîãî âàðèàíòà èñïîëüçîâàíèÿ, êîòîðûé îïèñûâàåò ñëåäóþùåå ïîâåäåíèå:
– Îêíî Ââîäà Çàêàçà ïîñûëàåò Çàêàçó ñîîáùåíèå "ïðèãîòîâèòüñÿ";
– Çàêàç ïîñûëàåò äàííîå ñîîáùåíèå êàæäîé Ñòðîêå çàêàçà â äàííîì Çàêàçå;
– Êàæäàÿ Ñòðîêà çàêàçà ïðîâåðÿåò ñîñòîÿíèå îïðåäåëåííîãî Çàïàñà òîâàðà: Åñëè äàííàÿ ïðîâåðêà óäîâëåòâîðÿåòñÿ (ðåçóëüòàò — true), òî Ñòðîêà çàêàçà óäàëÿåò ñîîòâåòñòâóþùåå êîëè÷åñòâî òîâàðà èç Çàïàñà.
 ïðîòèâíîì ñëó÷àå êîëè÷åñòâî Çàïàñà ñíèæàåòñÿ äî óðîâíÿ ïîâòîðíîãî çàêàçà, è Çàïàñ çàïðàøèâàåò íîâóþ ïîñòàâêó òîâàðà.
Ñóùåñòâóþò äâà âèäà äèàãðàìì âçàèìîäåéñòâèÿ:
– {SITELINK-S100}äèàãðàììû ïîñëåäîâàòåëüíîñòè {/SITELINK}(sequence diagrams);
– {SITELINK-S101}êîîïåðàòèâíûå äèàãðàììû {/SITELINK}(collaboration diagrams).
Ó ðàçíûõ ðàçðàáîò÷èêîâ èìåþòñÿ ðàçëè÷íûå ïðåäïî÷òåíèÿ âèäà äèàãðàììû âçàèìîäåéñòâèÿ.  äèàãðàììå ïîñëåäîâàòåëüíîñòè äåëàåòñÿ àêöåíò èìåííî íà ïîñëåäîâàòåëüíîñòü ñîîáùåíèé: ëåã÷å íàáëþäàòü ïîðÿäîê, â êîòîðîì ïðîèñõîäÿò ðàçëè÷íûå ñîáûòèÿ. Íà êîîïåðàòèâíîé äèàãðàììå ìîæíî èñïîëüçîâàòü ïðîñòðàíñòâåííîå ðàñïîëîæåíèå îáúåêòîâ äëÿ òîãî, ÷òîáû ïîêàçàòü èõ ñòàòè÷åñêîå âçàèìîäåéñòâèå.
Îäíèì èç ïðèíöèïèàëüíûõ ñâîéñòâ ëþáîé ôîðìû äèàãðàììû âçàèìîäåéñòâèÿ ÿâëÿåòñÿ èõ ïðîñòîòà. Ïîñìîòðåâ íà äèàãðàììó, ìîæíî ëåãêî óâèäåòü âñå ñîîáùåíèÿ. Îäíàêî åñëè ïîïûòàòüñÿ èçîáðàçèòü íå÷òî áîëåå ñëîæíîå, ÷åì åäèíñòâåííûé ïîñëåäîâàòåëüíûé ïðîöåññ áåç îñîáûõ óñëîâíûõ ïåðåõîäîâ èëè öèêëîâ, òàêîé ïîäõîä íå ñðàáîòàåò.
Äèàãðàììû âçàèìîäåéñòâèÿ íàèáîëåå õîðîøè, êîãäà îíè îòîáðàæàþò ïðîñòîå ïîâåäåíèå; ïðè áîëåå ñëîæíîì ïîâåäåíèè îíè áûñòðî òåðÿþò ñâîþ ÿñíîñòü è íàãëÿäíîñòü. Åñëè íóæíî ïîêàçàòü ñëîæíîå ïîâåäåíèå ñèñòåìû íà îäíîé äèàãðàììå, òî ñëåäóåò èñïîëüçîâàòü äèàãðàììó äåÿòåëüíîñòåé.
Äèàãðàììû âçàèìîäåéñòâèÿ ñëåäóåò èñïîëüçîâàòü, êîãäà íóæíî îïèñàòü ïîâåäåíèå íåñêîëüêèõ îáúåêòîâ â ðàìêàõ îäíîãî âàðèàíòà èñïîëüçîâàíèÿ. Îíè õîðîøè äëÿ îòîáðàæåíèÿ âçàèìîäåéñòâèÿ ìåæäó îáúåêòàìè è âîâñå íå òàê õîðîøè äëÿ òî÷íîãî îïèñàíèÿ èõ ïîâåäåíèÿ.
Åñëè íóæíî îïèñàòü ïîâåäåíèå åäèíñòâåííîãî îáúåêòà âî ìíîãèõ âàðèàíòàõ èñïîëüçîâàíèÿ, òî ñëåäóåò ïðèìåíèòü äèàãðàììó ñîñòîÿíèé. Åñëè æå îïèñûâàåòñÿ ïîâåäåíèå âî ìíîãèõ âàðèàíòàõ èñïîëüçîâàíèÿ èëè ìíîãèõ ïàðàëëåëüíûõ ïðîöåññàõ, ñëåäóåò ðàññìîòðåòü äèàãðàììó äåÿòåëüíîñòåé.
|