Használati eset (Use case) modell

A funkcionális specifikáció alapján elkészíthető használati eset modell, mely a rendszer funkcionalitását, képességeit egy újabb nézőpontból ábrázolja. A használati eseteket tehát még a tervezési fázisban, a kódolás előtt, de a funkcionális specifikáció közben/után kell elkészíteni.

Mi az a használati eset diagram?

A használati eset diagram célja leírni a modellezendő rendszer és a környezete kapcsolatait. Ez egy funkcionális diagram, vagyis középpontjában a rendszer által végrehajtandó funkciók vannak. A use case diagram megmutatja, kik, és mire akarják használni a rendszert.

A használati eset modell a rendszer felhasználói nézetét szemlélteti. A modell elemei:

  • egy vagy több használati eset diagram,
  • a diagramokon megjelenő modell elemek megnevezése, rövid, összefoglaló leírása, amely a fejlesztés korai fázisában kialakul,
  • az egyes modell elemek részletes specifikációja, amely a fejlesztés későbbi fázisaiban bővíti, pontosítja a modellt.

Megmondja, hogy mit kell tudnia, illetve milyen funkciói legyenek a rendszernek. Szemléletes, könnyen áttekinthető.

Use Case jelölések

A használati eset diagramok alapvelő elemei az alábbiak:

  • Rendszerhatár
  • Használati eset (use case): egy felhasználó által látható / igényelhető, a fejlesztendő rendszer által megvalósítandó funkció vagy funkció csoport
  • Aktor (actor): a rendszerrel kapcsolatba kerülő személyek, külső rendszerek, akik/amelyek a rendszer szolgáltatásait igénybe veszik
  • Kapcsolatok az aktorok és használati esetek között.
  • Kapcsolatok a használati esetek között
  • Kapcsolatok az aktorok között.
// Rendszer

A rendszerhatárt jelölni szokás a használati eset diagramon, ami általában az aktorok (kívül vannak a rendszeren) és a használati esetek között húzódik.

Jelölés:

img1

// Aktor

Egy szerepkört reprezentál (pl.: felhasználók). Nem az a lényeges, hogy ki a felhasználó, hanem az, hogy milyen szerepet játszik a rendszer használata során.

A felhasználó és az aktor fogalmak között tehát több-több kapcsolat van (több felhasználó léphet kapcsolatba a rendszerrel ugyan abban a szerepkörben, ugyanakkor egy felhasználó több szerepkörben is használhatja a rendszert.

Jelölés:

img2

// Használati esetek (use case)

Az elvárt viselkedésminták (vagyis hogy mire képes a rendszer). A felhasználó egy adott céljának eléréséhez lehet, hogy több használati eset végrehajtása szükséges. Például, ha egy webáruházban vásárolni akarunk, ahhoz az alábbi funkciókat kell igénybe venni:

  • bejelentkezés
  • keresés az áruk között
  • áru kosárba helyezése
  • fizetési és szállítási adatok megadása

Ezek a modellben egy-egy használati esetként jelenhetnek meg. Ugyanakkor a Use case modell nem tartalmaz idő dimenziót, csak szükséges funkcionalitásokat. Az előző példában felsorolt használati esetek a modellben egymás mellé helyezve jelennek meg.

Jelölés:

img3

Relációk

A fenti entitások közötti kapcsolat. A diagram jellegéből adódik, hogy nem lehet olyan elem, amely legalább egy másik elemmel ne lenne kapcsolatban.

// Kapcsolat aktor és használati eset között
  • Asszociáció
    • Azt jelenti, hogy az aktor használja a use case-t.
    • jelölhető a számossága
    • jelölés: folytonos vonal (opcionálisan nyíl mutathatja a vezérlés irányát)

img4

// Kapcsolatok használati esetek között
  • Include
    • A és B használati eset között tartalmazás (include) kapcsolat áll fenn, ha az A használati eset végrehajtásakor a B mindig, feltétel nélkül végrehajtódik.
    • Akkor alkalmazzuk ezt a lehetőséget, ha ki akarjuk hangsúlyozni, hogy az A használati eset milyen résztevékenységekből áll össze.
    • Jele: a tartalmazótól a tartalmazott felé mutató, szaggatott vonallal rajzolt nyíl, «include» jelzéssel

img5

  • Extend
    • A bővítés kapcsolat az jelenti, hogy egy használati eset bizonyos esetekben (valamilyen feltétel fennállása esetén) egy másik funkció végrehajtását igényli.
    • A bővítő használati eset kiegészíti az alap funkciót, vagy valamilyen kivételes esetet kezel.
    • Jele: a kiegészítő használati eset felől az alap funkció felé mutató szaggatott vonallal rajzolt nyíl, «Extend» jelzéssel

img6

// Kapcsolat használati eset és használati eset, vagy aktor és aktor között
  • Általánosítás
    • Öröklődés
    • Ha A használati eset leszármazottja B, akkor azt jelenti, hogy B egy speciális esete A-nak (azaz tudja mindazt, amit A, de van néhány speciális, csak rá jellemző tulajdonsága)

Jele: nyíl

img7

Használati eset leírás

A diagramot célszerű kiegészíteni az egyes interakciók leírásával, szöveges kifejtésével. Ehhez lásd példánkat, és letölthető sablonunkat.

// Példa

img27

Ha mélyebben érdekel a terület, szívesen ajánljuk O’Reilly „Learning UML 2.0” könyvét, nagyon hasznos útmutató, példákkal: http://www.it-ebooks.info/book/307/

//  letölthető sablonok