5. Szekvencia-diagram (Sequence diagram)

iDevice ikon Bevezetés

A szekvencia-diagram építőelemeinek megismerése, ezen felül annak a képességnek megszerzése, mely segítségével egy egyszerű rendszer működését ezzel a modellező eszközzel le tudjuk írni. A videó segítségével annak elsajátítása, hogy a diagramot az ArgoUML fejlesztő eszköz használatával össze tudjuk állítani.

 


 


iDevice ikon

Nézzük meg most a beiratkozás folyamatát kicsit más oldalról: vegyük szemügyre az ebben érintett objektumok életciklusát, üzenetváltásait. A szekvencia-diagramon már láthatóvá válik, hogy egy-egy objektumtól milyen feladatok elvégzését várjuk el (várnak el a többi objektumok).

20. ábra

A beiratkozás folyamatában érintett objektumok üzenetváltásait leíró szekvencia-diagram

A felső téglalapok az objektumokat jelölik az osztályuk nevével. Az osztálynév előtti kettőspont jelenti azt, hogy itt nem az osztályról van szó, hanem egy példányáról, az objektumról.


iDevice ikon Megjegyzés

Az osztályra nem is jellemző a tevékenykedés, inkább arra szolgál, hogy elmondja, hogyan tevékenykedjen az objektuma. Az objektumot ahhoz, hogy működhessen, előbb létre kell hozni (példányosítani), erről az őt használó objektumok valamelyikének kell gondoskodni.



iDevice ikon

A téglalapból kiinduló hasáb illetve szaggatott vonal az objektum életvonala: annak aktív illetve passzív állapotát mutatja.

Az életvonalak közötti nyilak az üzenetek, melyekkel az egyik objektum a másikat valamilyen művelet végrehajtására kéri fel. Ennek a műveletnek a neve kerül a nyílra. A művelet a program futásakor egy metódushívást jelent.

Az időtényezőt fejezi ki a függőleges helyzet: ami feljebb van, az előbb történik, ami lejjebb, az azt követően.

Nézzük meg a leírtakat konkrétan, a beiratkozás folyamatát végigkövetve.

A beiratkozás a teljes folyamatnak csak egy része, ezért úgy tekintjük, hogy a :Tagkartyanyomtato kivételével az itt szereplő objektumok már élnek. Mindegyik a :Vezerlo kérésére jött létre, ekkor megkapta a hivatkozási címüket, így később is meg tudja szólítani őket. A továbbiakban csak az az objektum tudja használni bármelyiküket, melynek a :Vezerlo elárulja ezt a címet.

Amit a diagramon látunk, az tulajdonképpen a :Vezerlo objektum beiratkozas() nevű műveletének végrehajtása közben lejátszódó üzenetváltás. A művelet (melyet a régebbi programozói nyelvezet szerint eljárásnak mondanánk) leírása, azaz metódusa (method) a Vezerlo osztály definíciójában van rögzítve, és a diagramról is leolvasható: az adatkeres(), a bejegyez() és a Tagkartyanyomtato() eljáráshívás típusú üzenetek (call action) sorban egymás utáni kiadása. Persze minden hívás megvárja, amíg az előtte lévő befejezi a feladatát. A visszafelé mutató szaggatott vonalú nyilak szemléltetik a visszatérésről (return action) érkező értesítéseket. Más szavakkal elmondva a bekezdés lényegét, a :Vezerlo tudja, hogy milyen feladatokat kell elvégezni a beiratkozás során, és mint egy jó főnök kiosztja a tennivalókat.

A :Tag objektum szerepe, a kölcsönzői tag adatainak tárolása, pontosabban készenlétben (az operatív tárban) tartása addig, amíg ezzel az ügyféllel foglalkozunk. (Egyszerre mindig csak egy taggal foglalkozunk.)