Unified Modeling Language

(UML szócikkből átirányítva)
Ez a közzétett változat, ellenőrizve: 2024. augusztus 8.

Az UML (Unified Modeling Language) szabványos, általános célú modellező nyelv, üzleti elemzők, rendszertervezők, szoftvermérnökök számára. Grady Booch, Ivar Jacobson és James Rumbaugh egyesített munkájának terméke.[1]Az objektumorientált (OO) modellezés módszerét alkalmazni lehet a való világ bonyolultságának leírására. Az UML egy gyakorlati, objektumorientált modellező megoldás, nagy méretű programrendszerek modelljeinek vizuális dokumentálására alkalmas eszköz. Az UML módszer és leíró nyelv segítségével különböző nézőpontú szöveges és grafikus modellek készíthetőek többek közt:[2]

  • Rendszerekről, szervezetekről: viselkedésükről, külső és belső kölcsönhatásaikról stb.
  • Szereplőkről: viselkedésük egy rendszerben, kapcsolatuk más rendszerekkel stb.
  • Üzleti tevékenységről, folyamatokról:
  • Logikai összetevőkről: azok viselkedéséről, feladataikról, kommunikációjáról egy rendszeren belül, vagy rendszerek között stb.
  • Szoftverekről, programokról: az UML az objektumorientált programozás szabványos specifikációs nyelve.
  • Adatbázisokról: elméleti, logikai és fizikai modellekről egyaránt.
Különböző UML diagramok
UML osztálydiagram, adatmodellezés

Az UML grafikus jelöléseket használ a különféle rendszerek jól áttekinthető absztrakt modelljének leírására. Az UML modellek szabvány UML jelölést használó diagramokból állnak. Hatékony kommunikációs eszköz nemcsak a szoftver rendszereket fejlesztő szakemberek közötti, hanem a felhasználók és a fejlesztők együttműködésében és kommunikációjában egyaránt.

Az UML története

szerkesztés
  • A 80-as évek végére több objektumközpontú modellezési irányzat is kialakult. Némelyiket elsősorban (objektumorientált) programok modellezésére használták, másokat egyéb célokra, például adatbázis-tervezésre.
  • A 90-es évek elején három modell különült el. Ezek kifejlesztői Jim Rumbaugh, Ivar Jacobson és Grady Booch voltak. Az 1990-es évek közepén a Rational Software alkalmazta Rumbaugh-t és Booch-t, akik megalkották az Unified Method 0.8-at. 1996-ban már Jacobsonnal együtt dolgozták ki az Unified Method 0.9-et.
  • 1997-ben már Unified Modeling Language néven adták be az OMG (Object Management Group) nevű független szabványszervezethez, mely azóta is fejleszti.

Az UML 2.0 verzió 13 különböző diagramtípust definiál, melyek kategóriákba és alkategóriákba oszthatók:

 
Az UML 2.0 diagramok hierarchiája

Strukturális diagramok

szerkesztés

A strukturális diagramok a modellezett rendszer elemeire vonatkoznak. Ezek altípusai a következők:

  • Osztálydiagramok

Az osztálydiagram egy statikus modell. A rendszerben használt osztályokat mutatja azok attribútumaival együtt. Az osztálydiagram tartalmazza továbbá az osztály szintű kapcsolatokat.

  • Komponensdiagramok

A komponensdiagram a rendszer fizikai komponenseit és az azok közötti függőségeket mutatja. Fizikai komponens például a file, a header, a modul, a csomag és a futtatható állomány is.

  • Összetett struktúradiagramok

Az összetett struktúradiagram (composite structure diagram) az osztályok belső szerkezetét mutatja és azt, hogy az adott szerkezet milyen kollaborációkat tesz lehetővé.

  • Telepítési diagramok
 
Egy deployment (telepítési) diagram

A telepítési diagramok (deployment diagram) a rendszerimplementációhoz használt hardvert, a hardverre telepített szoftverkomponenseket és azok viszonyát hivatottak reprezentálni.

  • Objektumdiagramok

A modellezett rendszer egy adott időpillanatbeli állapotát mutatják az objektumdiagramok. Az objektumdiagram pillanatfelvétel a rendszer állapotáról. Osztályok példányait és kapcsolatait jeleníti meg. Az objektumdiagram konkrétabb az osztálydiagramnál, mert objektumok példányainak a kapcsolatát írja le objektumosztályok kapcsolata helyett.

  • Csomagdiagramok

A csomagdiagram azt mutatja, miképp szerveződnek a szoftverelemek csomagokba illetve hogyan viszonyulnak ezek a csomagok egymáshoz.

Viselkedési / Dinamikus diagramok

szerkesztés
 
egy use case diagram
 
egy állapotgép diagram

A viselkedési / dinamikus diagramok azt írják le, hogy minek kell történnie a modellezett rendszerben:

  • Aktivitásdiagramok

Az aktivitásdiagramok a munkafolyamatot (idegen szóval workflow-t) modellezik.

  • Állapotgép diagramok

Az állapotgép diagramok a rendszer lehetséges állapotait és az azok közötti átmeneteket mutatják állapotgépes ábrázolással.

  • Use case diagramok

A use case diagramok fogalmazzák meg a rendszer használati eseteit.

  • Interakciós diagramok

Az interakciós diagramok fogalmazzák meg a rendszerelemek közötti kommunikációt. Ezeknek további altípusai léteznek:

  • Kommunikációs diagramok
  • Interakciós Áttekintő diagramok (Az UML 2.0 verziótól)
  • Szekvenciadiagramok
  • UML időzítődiagramok (Az UML 2.0 verziótól)

Az UML széles körben elfogadott és használt szabvány, kicsiny rendszereket fejlesztők gyakran kritizálják az alábbiak miatt:

  • Túl nagy és túl bonyolult: Az UML szabvány sok diagramot tartalmaz, amelyeknek egy jó részét alig használják, jó része pedig redundáns.
  • Pontatlan szemantika: Az UML szemantikát részben OCL-lel, részben angol nyelven, részben az UML-lel magával definiálják, és hiányzik a formális nyelveknél megszokott szigorú definíció.

A jelenlegi UML szabvány verziónként használ más jelölést (UML 2 és 1 között van eltérés), folyamatosan fejlődik, nem kiforrott.

Egyszerű, kis méretű szoftveres alkalmazással támogatott megoldás esetén, amennyi idő alatt az UML segítségével egy szoftver precízen megtervezhető, azalatt az idő alatt, csak a kivitelezést szem előtt tartó szoftverfejlesztés kockázatmentesen, kétszer gyorsabban megvalósítható. De ha a cél: precízen megtervezni egy komplex, összetett alkalmazást, amely megfelelően dokumentálva van, és platformfüggetlen, akkor az UML használata gyakorlatilag megkerülhetetlen.

  • Raffai Mária dr.:Egységesített megoldások a fejlesztésben -UML modellező nyelv és RUP módszertan- , Novadat Kiadó, 2001, ISBN 963 9056 29 4
  • Dr. Raffai, Mária. Egységesített Megoldások a Fejlesztésben 2. Budapest: Novadat (2002). ISBN 9789639056299 
  • Vég, Csaba. Alkalmazásfejlesztés a Unified Modeling Language szabványos jelöléseivel. Budapest: Logos 1999 (2000). ISBN 9789630376600 

További információk

szerkesztés
A Wikimédia Commons tartalmaz Unified Modeling Language témájú médiaállományokat.