UML Rendszerfejleszts gyakorlat Szegedi Tudomnyegyetem Szoftverfejleszts Tanszk UML

  • Slides: 23
Download presentation
UML Rendszerfejlesztés gyakorlat

UML Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML n n Unified Modeling Language Mi ez? ¨

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML n n Unified Modeling Language Mi ez? ¨ n Grafikus modellező nyelv Mire való? ¨ ¨ ¨ Objektumorientált modellezés, tervezés Probléma specifikációja Probléma megoldása Dokumentáció Grafikus szemléltetés több nézetben n Use case, class diagram, … Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Használati eset modellezés n Rendszer viselkedését modellezi: ¨ funkcionalitás

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Használati eset modellezés n Rendszer viselkedését modellezi: ¨ funkcionalitás ¨ kommunikáció eszköze (felhasználó felé is) ¨ legmagasabb absztrakció n Megvilágítja: ¨ rendszer tervezett funkcióit (használati eseteit) ¨ rendszer környezetét (szereplők – Actor) ¨ ezek közötti kapcsolatokat (Use Case Diagram) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML – Use Case Diagram kapcsolatok n Asszociáció ¨

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML – Use Case Diagram kapcsolatok n Asszociáció ¨ n Általánosítás ¨ n Felhasználó és használati eset közötti kommunikáció, általában ige Egyik használati eset vagy aktor általánosabb formája a másiknak Kiterjesztés Egyik használati eset kiterjeszti újabb funkcionalitással a másikat ¨ Extend kulcsszó ¨ n Tartalmazás Egyik használati eset tartalmazza a másikat ¨ Include kulcsszó ¨ Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Use case példa Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Use case példa Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Eseményáramlás n A megrendelő által érthető legyen ¨ n

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Eseményáramlás n A megrendelő által érthető legyen ¨ n n n teljes mondatokat írjunk, szóhasználatban igazodjunk a megrendelőhöz (pl. ügyfél – kliens, aru – cikk, …) Adjuk meg pontosan a használati esetet elindító eseményt Az eseményáramlást külső szemszögből mutatjuk be, nem taglaljuk a rendszer belső működését Adjuk meg hogy mi alapján ellenőrizhető hogy a használati eset elérte célját Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML – Class Diagram n n Osztálydiagram A probléma

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML – Class Diagram n n Osztálydiagram A probléma megoldását leíró szerkezeti diagram Statikus Elemei ¨ n Osztályok, csomagok, interfészek, megjegyzések Kapcsolatok ¨ ¨ ¨ Asszociáció Aggregáció Kompozíció Öröklődés Függőség Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML - Class Diagram - Association Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML - Class Diagram - Association Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML – Class Diagram - Aggregation n Speciális asszociáció

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML – Class Diagram - Aggregation n Speciális asszociáció Egyik objektum része a másiknak Nem erős tartalmazás Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML Class Diagram - Composition n n Speciális aggregáció

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML Class Diagram - Composition n n Speciális aggregáció Fizikai, erős tartalmazás ¨ A tartalmazó a tartalmazott nélkül nem létezhet Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML Class Diagram – Általánosítás és specializáció (öröklődés) n

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML Class Diagram – Általánosítás és specializáció (öröklődés) n n Általánosítás: bizonyos osztályok közös tulajdonságai alapján egy új osztály létrehozása Specializáció: Egy osztály speciális esete(i) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Sztereotípusok n n n Osztálydiagramon sztereotípusok feltüntetése Osztály neve

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Sztereotípusok n n n Osztálydiagramon sztereotípusok feltüntetése Osztály neve felett Osztályok felfedezése Nehéz feladat! ¨ ajánlatos sztereotípusonként így kezdeni: boundary, control, entity ¨ n <<Boundary>> (határ) osztályok: rendszer környezete és belseje közötti kommunikációt valósítják meg ¨ interfészt képeznek a felhasználó vagy más rendszer (Szereplő) felé ¨ felhasználói interfész is ide tartozik ¨ Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Sztereotípusok n <<Control>> (vezérlő) osztályok: ¨ használati eset(ek) szekvenciális

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Sztereotípusok n <<Control>> (vezérlő) osztályok: ¨ használati eset(ek) szekvenciális viselkedését valósítják meg ¨ „használati eset végrehajtását” végzi ¨ általában egy szereplő/használati eset párhoz hozzátartozik egy Control osztály ¨ entitás osztályhoz tartozzon a funkcionalitás, vagy új vezérlő osztályba kerüljön? Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Sztereotípusok n <<Entity>> (entitás) osztályok: ¨ olyan információt/viselkedést modellez,

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Sztereotípusok n <<Entity>> (entitás) osztályok: ¨ olyan információt/viselkedést modellez, amely általában hosszú életű ¨ valós világ entitásai, kevésbé érzékenyek a környezetük változásaira ¨ általában alkalmazás-függetlenek ¨ jó kiindulás lehet: Use Case leírásokban a feladatkiosztások főnevei Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Csomagok (Package) Nagy rendszereknél elkerülhetetlen az osztályok csoportosítása n

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Csomagok (Package) Nagy rendszereknél elkerülhetetlen az osztályok csoportosítása n Hierarchikus szerkezetet biztosít n Magasabb szintű absztrakciót valósít meg n Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Szekvencia Diagramok n n n Objektum-kölcsönhatásokat mutat be az

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Szekvencia Diagramok n n n Objektum-kölcsönhatásokat mutat be az idő függvényében A szcenárióban szereplő objektumokat és osztályokat ábrázolja a közöttük küldött üzenetekkel Idő-orientált nézet Az üzenetek (Message) a szcenárió funkcionalitását valósítják meg Használati esetekkel szoros kapcsolatban állnak (általában a Használati Eset nézetnek a részei) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Szekvencia diagram - példa Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Szekvencia diagram - példa Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Package diagram n Csomagok és a közöttük fennálló függőségek

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Package diagram n Csomagok és a közöttük fennálló függőségek Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML-EK leképezés n Entitások és kapcsolataik (UML) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML-EK leképezés n Entitások és kapcsolataik (UML) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Video kölcsönző n Entitások és kapcsolataik (EK) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Video kölcsönző n Entitások és kapcsolataik (EK) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Video kölcsönző n Entitások és kapcsolataik (db séma) Rendszerfejlesztés

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Video kölcsönző n Entitások és kapcsolataik (db séma) Rendszerfejlesztés gyakorlat

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML toolok n Ingyenesen letölthető toolok Argo. UML n

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék UML toolok n Ingyenesen letölthető toolok Argo. UML n http: //argouml. tigris. org/ ¨ BOUML n http: //bouml. free. fr/download. html ¨ Star. UML n http: //downloads. sourceforge. net/staruml-5. 0 with-cm. exe? modtime=1135961973&big_mirror=0 n http: //staruml. sourceforge. net/en/documentations. php ¨ ¨ További n http: //en. wikipedia. org/wiki/List_of_UML_tools ¨ (Non-proprietary UML tools) Rendszerfejlesztés gyakorlat