Rendszerfejlesztés II. - © Beszédes Árpád Az UML nyelv Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád Bevezetés Unified Modeling Language (egységesített modellező nyelv) Egy nyelv: szintaktikai és szemantikai szabályok összessége Szoftver-teljes rendszer elemeinek: Vizualizálására Specifikálására Létrehozására Dokumentálására Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád UML előnyei Nyílt szabvány (Object Management Group – OMG által) Könnyű elsajátítani, de bonyolultan is lehet alkalmazni Implementációtól független tervezést tesz lehetővé Mindössze 10-20 % része van használva az esetek 80-90 %-ban Teljes szoftverfejlesztési életciklust támogatja Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád UML előnyei (folyt.) Különböző alkalmazás területekre alkalmazható (üzleti, valósidejű, beágyazott, osztott, …) Hatalmas tapasztalati tudásra épít Sok eszköz támogatja (IBM Rational Rose,Microsoft Visio, Microsoft Visual Studio, Argo UML, Borland Together, GDPro, dia,…) Támogatók: Rational, HP, IBM, Microsoft, Oracle, Platinum, TI, Sun, DEC, Compaq,… Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád UML története OMT, Booch, OOSE egyesítésével jött létre 1995 októberében „Unifikálva”: szemantikus modellek, szintaktikus jelölés, diagramok Version 1.0: OMG (Object Management Group) által szabványosítva 1997 július Hivatalos: OMG UML 1.5 (2003 március) Aktuális (véglegesítési fázisban): 2.0 Metamodellezésre épít Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád UML specifikáció 1.5: 736 oldal 2.0: Infrastructure 200 oldal 2.0 Superstructure 800 oldal Action Semantics (végrehajtható modell, ld. MDA) Modellek cseréjének formátuma (XMI) OCL - Object Constraint Language (bővíthetőségi mechanizmus) Profile-ok Olvashatóságot segítő specifikáció Stb. Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád UML Diagramok (1.5) Use Case: funkcionalitás felhasználó szemszögéből Class: rendszer „szótára”: osztályok és kapcsolataik Object: osztály példányok és kapcsolataik Component: implementáció fizikai szerkezete Deployment: rendszer hardver topológiája Sequence: dinamikus viselkedés (idő-orientált) Collaboration: din. viselkedés (üzenet-orientált) Statechart: din. viselkedés (esemény-orientált) Activity: din. viselkedés (aktivitás-orientált) Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád Class Diagram Osztályok Window display () size:Area visibility:Boolean hide () +default-size:Rectangle #maximum-size:Rectangle +create () +display () +size:Area = (100,100) #visibility:Boolean = true +hide () -xptr: XWindow* -attachXWindow(xwin:Xwindow*) {abstract, author=Joe, status=tested} Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád Class Diagram (folyt.) Kapcsolatok (asszociáció) Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád Class Diagram (folyt.) Kapcsolatok végpontjai Polygon Point Contains {ordered} 3.. * 1 GraphicsBundle color texture density -bundle + vertex Rendszerfejlesztés II. - © Beszédes Árpád
Rendszerfejlesztés II. - © Beszédes Árpád Class Diagram (folyt.) Kompozíció (erős aggregáció) Window scrollbar [2]: Slider title: Header body: Panel scrollbar title body Header Panel 2 1 Slider Rendszerfejlesztés II. - © Beszédes Árpád
Általánosítás (öröklődés) Rendszerfejlesztés II. - © Beszédes Árpád