unified modeling language (uml)...

25
Miskolci Egyetem Általános Informatikai Tanszák Ficsor Lajos UML / 1 Ficsor Lajos Unified Modeling Language UML / 1 Unified Unified Modeling Modeling Language Language (UML) (UML) Áttekint ttekintés Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 08. 10. 16. Ficsor Lajos Unified Modeling Language UML / 2 Sz Szüks ksé gess gessé ge ge Az objektum orientált fejlesztési módszerek a rendszer különbözı nézıpontú modelljeit készítik el A modellek dokumentálására megfelelı technikára van szükség A technikának szabványosnak kell lennie, mert ez segíti a fejlesztık közötti kommunikációt (közös nyelv), – lehetıvé teszi a technikát támogató eszközök ("tool"- ok) készítését Ficsor Lajos Unified Modeling Language UML / 3 Az UML t Az UML tö rt rté nete 1. nete 1. Az 1990-es évek közepe - vezetı módszertanok: Booch'93 (Booch): erıs a tervezés fázisában, népszerő az engineering-intenzív alkalmazásoknál. OMT2 (Rumbaugh) : erıs az analízis fázis során, népszerő az adat-intenzív alkalmazásoknál. OOSE (Jacobson) : kiváló támogatást ad a "business engineering"-hez, és igazan csak ez támogatja a követelmény analízist.

Upload: others

Post on 27-Jan-2021

23 views

Category:

Documents


0 download

TRANSCRIPT

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 1

    FicsorLajos

    Unified Modeling Language UML / 1

    UnifiedUnified ModelingModeling LanguageLanguage (UML)(UML)ÁÁttekintttekintééss

    Ficsor Lajos

    Miskolci Egyetem

    Általános Informatikai TanszékUtolsó módosítás: 08. 10. 16.

    FicsorLajos

    Unified Modeling Language UML / 2

    SzSzüükskséégessgesséégegeAz objektum orientált fejlesztési módszerek a rendszer különbözı nézıpontú modelljeit készítik el

    A modellek dokumentálására megfelelı technikára van szükség

    A technikának szabványosnak kell lennie, mert ez– segíti a fejlesztık közötti kommunikációt (közös

    nyelv),

    – lehetıvé teszi a technikát támogató eszközök ("tool"-ok) készítését

    FicsorLajos

    Unified Modeling Language UML / 3

    Az UML tAz UML töörtrtéénete 1.nete 1.Az 1990-es évek közepe - vezetı módszertanok:

    Booch'93 (Booch): erıs a tervezés fázisában, népszerő az engineering-intenzív alkalmazásoknál.

    OMT2 (Rumbaugh) : erıs az analízis fázis során, népszerő az adat-intenzív alkalmazásoknál.

    OOSE (Jacobson) : kiváló támogatást ad a "business engineering"-hez, és igazan csak ez támogatja a követelmény analízist.

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 2

    FicsorLajos

    Unified Modeling Language UML / 4

    Az UML tAz UML töörtrtéénete 2.nete 2.1991-ben Grady Booch és Jim Rumbaugh(Rational Software Corporation)1995 október: UML 0.8

    1995-ben Ivar Jacobson is csatlakozott1996. október: UML 0.911997. január 17.: UML 1.0 (OMG-nek!)1997. szeptember: UML 1.1 (szabvány!)az utolsó teljes szabványos verzió az UML 1.5(elfogadva 2003. március) Részben elfogadva: UML 2.0 (2006. március.)

    FicsorLajos

    Unified Modeling Language UML / 5

    Az UML tAz UML töörtrtéénete 3.nete 3.

    Más módszerek Booch'91 OMT-1 OOSE

    Booch'93 OMT2

    UML 0.8

    UML 0.9További fejlesztõ

    partnerek

    UML 1.0

    1995

    1996 jun, okt.

    1997. jan. 17.

    Sokféleség

    Egységesítés

    Szabványosítás

    Iparszerû alkalmazás

    FicsorLajos

    Unified Modeling Language UML / 6

    Az UML definAz UML definíícicióójajaAz OMG Unified Modeling LanguageSpecification, vers. 1.5 dokumentum 1.1 pontjának (Overview) elsı két mondata:The Unified Modeling Language (UML) is a language for specifying, visualizing, constructing, and documenting the artifacts of software systems, as well as for business modeling and other non-software systems. The UML represents a collection of the best engineering practices that have proven successful in the modeling of large and complex systems.

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 3

    FicsorLajos

    Unified Modeling Language UML / 7

    Az UML fı célkitőzései 1.

    Kifejezı vizuális modellezı nyelv biztosítása– fejlesztés támogatása– kommunikáció támogatása

    Lehetıség az alap koncepció bıvítésére és specializálására– Alkalmazkodni tudjon a különbözı fejlesztések

    szükségleteihez• Szokásos fejlesztés: elegendı legyen hozzá az alap eszköztár• Új elképzelésekkel az alapok módosítása nélkül legyen

    kiegészíthetı (kiterjesztési mechanizmus)• Egy adott alkalmazásterület speciális igényei szerint testre

    szabható legyen

    FicsorLajos

    Unified Modeling Language UML / 8

    Az UML fı célkitőzései 2.

    Programozási nyelvtıl és módszertantól független legyen

    Biztosítson formális alapot a modellezı nyelv megértéséhez– Precíz definíciók szükségesek az eszköz készítık

    számára– Érthetı (nem túl formális) definíciók szükségesek a

    felhasználók számára– Megoldás: metamodell osztály diagrammok

    segítségével

    FicsorLajos

    Unified Modeling Language UML / 9

    Az UML fı célkitőzései 3.

    Támogatja az objektum orientált eszközök fejlesztését– Számos felhasználó által ismert és használt,

    szabványos eszköz

    Az eddigi gyakorlati tapasztalatok ("bestpractices") integrálása

    A magas szintő fejlesztési koncepciók támogatása: komponensek, keretrendszerek, minták (patterns) stb.

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 4

    FicsorLajos

    Unified Modeling Language UML / 10

    HivatkozHivatkozáások 1.sok 1.A legteljesebb:www.omg.com/uml

    Vég Csaba: Alkalmazásfejlesztés a UnifiedModeling Language szabványos jelöléseivelLogos 2000, Debrecen, 2000

    Raffai Mária: Egységesített mogoldások a fejlesztésben; UML modellezı nyelv, RUP módszertanNovodat, 2001.

    FicsorLajos

    Unified Modeling Language UML / 11

    HivatkozHivatkozáások 2.sok 2.Sike Sándor, Varga László: Szoftvertechnológia és UMLELTE Eötvös Kiadó, Budapest, 2002.

    FicsorLajos

    Unified Modeling Language UML / 12

    A modell leíró nyelv elemei 1.

    A továbbiakban szereplı elemek az 1.5 verziószerinti állapotnak megfelelıek.

    use case diagramm

    osztály diagramm

    viselkedés diagrammok :– állapot diagramm (state diagram)

    – aktivitás diagramm (activity diagram)

    – sorrend diagramm (sequence diagram)

    – együttmőködési diagramm (collaboration diagram)

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 5

    FicsorLajos

    Unified Modeling Language UML / 13

    A modell leíró nyelv elemei 2.

    implementációs diagrammok:– komponens diagramm (component diagram)

    – telepítési diagramm (deployment diagram)

    kiterjesztési mechanizmusok– kiegészítı jelölések, amelyek több diagramtípus által

    is használhatók

    Az UML tehát nem módszertan!

    FicsorLajos

    Unified Modeling Language UML / 14

    KiterjesztKiterjesztéési mechanizmusoksi mechanizmusokAz UML kiegészítı jelölései. Feladatai:– a szabványos jelölésrendszer "testre szabása"– a szabványos elemekkel nem leírható modell

    tulajdonságok rögzítése

    Fajtái:– sztereotípia (stereotype): új modell elemek jelölésére– megszorítás (constraint): az UML más jelöléseivel

    meg nem adható tulajdonságok– kulcsszavas értékek (tagged values): modell elemek

    speciális jellemzıinek megadására– megjegyzések

    FicsorLajos

    Unified Modeling Language UML / 15

    MegjegyzMegjegyzééseksek

    Megjegyzés szövege

    Megjegyzés teljes szövege:megjegyzes.doc

    Egy osztály

    Elemhez kapcsolt megjegy zés

    Formája:

    Kapcsolható egy elemhez:

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 6

    FicsorLajos

    Unified Modeling Language UML / 16

    SztereotSztereotíípiapiaFormája:

    « megnevezés »

    A minısített név elıtt vagy fölött kell megadni.

    Ikon is rendelhetı hozzá.

    Az egyes ábratípusoknál speciális sztereotípiák jelennek meg.

    FicsorLajos

    Unified Modeling Language UML / 17

    MegszorMegszorííttáásoksokFormája:

    { megszorítás leírása }

    A leírás lehet szöveges vagy formális.

    A formális leírásra egy ajánlat: OCL (ObjectConstraint Language, IBM)

    Megadható:

    minısített elem után vagy alatt

    kapcsolt megjegyzésben

    FicsorLajos

    Unified Modeling Language UML / 18

    Kulcsszavas Kulcsszavas éértrtéékekkekFormálisan ez is megszorítás

    Adott névhez értéket rendel

    Érték önállóan is szerepelhet

    A fejlesztéssel kapcsolatos információkat is így rögzíthetjük

    Példák:

    { persistent }

    {author="Ficsor", version=0.9.9, date=00.01.01}

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 7

    FicsorLajos

    Unified Modeling Language UML / 19

    UseUse casecase diagram 1.diagram 1.Jacobson "hozománya"

    Use Case (használati eset):– interakció a felhasználó és az alkalmazás között

    – a felhasználó által látható funkciót ír le

    – konkrét felhasználói cél elérését rögzíti

    A rendszer határait jelölhetjük ki.

    Lényeges szerepe van a követelmény analízis során

    FicsorLajos

    Unified Modeling Language UML / 20

    UseUse casecase diagram 2: diagram 2: AktorAktor

    Jele:

    A felhasználó egy szerepe a rendszerben.

    Több felhasználó - egy aktor

    Egy felhasználó - több aktor

    Aktor lehet külsı rendszer is

    Vásárló(f rom Act ors)

    FicsorLajos

    Unified Modeling Language UML / 21

    UseUse casecase diagram 3: diagram 3: UseUse casecaseEgy jól meghatározott funkció, amelynek végrehajtása a rendszer és egy külsı entitás közötti üzenetváltást kíván.Jele:

    A rendszer, egy alrendszer vagy egy osztály objektumai által végrehajtott funkció-együttes.Pontos leírása is szükséges (szöveges vagy egyéb diagram)

    Áruvásárlás

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 8

    FicsorLajos

    Unified Modeling Language UML / 22

    UseUse casecase diagram 4: Pdiagram 4: PééldaldaFizetés a kasszánál:

    A vevı a kasszához megy a kiválasztott árukkal, a pénztáros leolvassa a vonalkódokat, a rendszer elkészíti a blokkot, a vevı fizet, a pénztáros elveszi az összeget.

    Aktorok: vevı, pénztáros

    A rendszer válaszai: egységár a vonalkódokra

    Use-case-ek: vásárlás, blokkolás, fizetés

    FicsorLajos

    Unified Modeling Language UML / 23

    UseUse casecase diagram 5: Pdiagram 5: Péélda (lda (áábra)bra)

    Vásárló(f rom Actors)

    Blokkolás

    Áruvásárlás

    Pénztáros

    Fizetés

    FicsorLajos

    Unified Modeling Language UML / 24

    UseUse casecase diagram 6: kapcsolatokdiagram 6: kapcsolatokAktor és use case között: asszociáció (jelölhetı a

    számossága is)Use case-ek között:

    : A1 use case magában foglalja A2-ıt (részletezés, vagy ismétlıdés kezelése): A1 use case mőködését A2kiegészíti (többlet funkciók vagy speciális esetek)

    Aktorok vagy use case-ek között: általánosítás(generalization)

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 9

    FicsorLajos

    Unified Modeling Language UML / 25

    UseUse casecase diagram 7: kapcsolatok (diagram 7: kapcsolatok (áábra)bra)

    Pénztáros(f rom U se Cas e View)

    Boltvezeto

    Hitel adás

    Göngyöleg kezelés

    Áruvásárlás(f rom Use Case View)

    Árulista megnézése

    Általánosítás

    Blokkolás

    FicsorLajos

    Unified Modeling Language UML / 26

    OsztOsztáálydiagramlydiagramOsztályok és összefüggéseik ábrázolásáraA rendszer statikus strukturális modelljeHárom szint:

    koncepcionálisspecifikációsimplementációs - általában túl sok részlet, de– dokumentáció– kódgenerálás

    Rajzolható objektum diagram is, az osztályok példányainak felhasználásával

    FicsorLajos

    Unified Modeling Language UML / 27

    OsztOsztáálydiagram: osztlydiagram: osztáály szimbly szimbóólumaluma

    Windowk

    Windowsvisibi li ty : Bool eansize : A rea

    display()hide()

    Windowi

    size : Area = (100,100)visibi lity : Boolean = invisiblexptr : XWindow*

    display()hide()attachXwindow()create()

    Koncepcionális

    Specifikációs

    Im plementációs

    Név

    Attribútumok

    Operációk

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 10

    FicsorLajos

    Unified Modeling Language UML / 28

    OsztOsztáálydiagram: objektum szimblydiagram: objektum szimbóólumalumaEgy konkrét objektum

    Objektum neve : Osztály neve KissPista : HallgatóPl.:

    Egy osztály tetszıleges objektuma

    : Osztály neve

    Megadhatók konkrét attribútum értékek is

    Megjegyzés: az aláhúzás része a jelölésnek!

    KissPista : Hallgató

    Név = Kiss PistaNeptunKód = ZZZZZZ

    FicsorLajos

    Unified Modeling Language UML / 29

    OsztOsztáálydiagram: attriblydiagram: attribúútumoktumokFormája:

    láthatóság név : típus = alapérték

    A láthatóság jelölése:

    szabványos:

    + public

    # protected

    - private

    Windowprivate attr.protected attr.public attr.

    Rational Rose szerint

    FicsorLajos

    Unified Modeling Language UML / 30

    OsztOsztáálydiagram: attriblydiagram: attribúútumoktumokkoncepcionális szint:

    az osztálynak van ilyen adata (pl. a vásárlónak van neve)

    specifikációs szint:

    az osztálynak van adott típusú adata, amelyen meghatározott operációk hajthatók végre (pl. a vásárló neve beállítható, lekérdezhetı)

    implementációs szint:

    az osztály adott típusú mezıje és az azokat kezelımódszerei

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 11

    FicsorLajos

    Unified Modeling Language UML / 31

    OsztOsztáálydiagram: operlydiagram: operáácicióókk

    Formája:láthatóság név(param) : típus{comment}

    típus a visszatérési érték típusaparam a paraméterlista (vesszıvel elv.)– azonosító : típus = alapérték

    Közöttük lehetnek az alábbi sztereotípusok:– – – – vagy

    FicsorLajos

    Unified Modeling Language UML / 32

    OsztOsztáálydiagram: operlydiagram: operáácicióókkkoncepcionális szint:

    a viselkedés lényegi elemei

    specifikációs szint:

    az osztály publikus módszerei

    implementációs szint:

    az osztály módszerei

    FicsorLajos

    Unified Modeling Language UML / 33

    OsztOsztáálydiagram: lydiagram: kapcsolatokkapcsolatokKapcsolat az egyes osztályok között

    Asszociáció (általános kapcsolat)Nevesített kapcsolatok:– általánosítás– tartalmazás (aggregáció és kompozíció)– beágyazott (osztály hatáskörben definiált) osztály -

    elsısorban az implementációs szintő diagrammokon

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 12

    FicsorLajos

    Unified Modeling Language UML / 34

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióóJele vonal, tulajdonságai:

    kapcsolat neve,szerepkör (mindkét irányban),irányítása (egy-vagy kétirányú vagy nincs),a szerepkörök számossága– n..m vagy n-m vagy n,m, ...,k– n,m stb lehet 0 vagy * (végtelen)– * magában a 0..* -ot jelenti.

    A szerep kötött sorrendje is elıírható.Az asszociáció minısítıje is elıírható.Az asszociációhoz a tulajdonságait leíró osztály is rendelhetı.

    FicsorLajos

    Unified Modeling Language UML / 35

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióókoncepcionális szint:

    viszony a fogalmak között

    specifikációs szint:

    felelısségek

    implementációs szint:

    az elérhetıség megvalósítása (pl. pointer, kulcs)

    FicsorLajos

    Unified Modeling Language UML / 36

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióóPélda:

    Cég Személy1..*0..1

    +alkalmazott1..*

    +alkalmazóAlkalmazás0..1

    Szerep nevek

    Kapcsolat neve

    Számosság Számosság

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 13

    FicsorLajos

    Unified Modeling Language UML / 37

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (szerep)(szerep)A szerep lehet sorrendiségi, azaz jelölhetjük, hogy az objektumok kötött sorrendben vesznek részt az asszociációban

    Jelölése az {ordered} megszorítással

    Példa:

    sokszög pont3..*

    {ordered}

    +alkotjaSzerepnévmultiplicitás

    Kötött sorrendben!

    FicsorLajos

    Unified Modeling Language UML / 38

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (szerep)(szerep)Két osztály közötti asszociációhoz tartozhat több szerep is

    Ilyenkor minden szerephez egy vonal

    Példa:

    Tárgy Hallgató

    +regisztrált

    +gyakvezér

    felvesz

    demonstrátor

    FicsorLajos

    Unified Modeling Language UML / 39

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (min(minııssííttıı))A minısítı konkrét értékei az asszociáció többes oldalán az objektumok egy példányát vagy egy részhalmazát jelölik ki.

    Jele:

    Osztály1 minısítı Osztály2

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 14

    FicsorLajos

    Unified Modeling Language UML / 40

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (min(minııssííttıı))Példa:

    Tárgy tárgykód Hallgatófelvesz

    Ennek megfelelı objektum diagram:

    SoftwareTechnológia : TárgyGEIAL2144N KissPista: Hallgatófelves

    z

    FicsorLajos

    Unified Modeling Language UML / 41

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (tulajdons(tulajdonsáág)g)Olyan tulajdonságokat, amelyek inkább az asszociációhoz, mint valamelyik osztályhoz rendelhetık, összefoglalhatunk egy harmadik osztályba, amelyet a kapcsolathoz rendelünk.

    Jelölés:

    Osztály1 Osztály2

    Tulajdonság

    FicsorLajos

    Unified Modeling Language UML / 42

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (tulajdons(tulajdonsáág)g)Példa:

    Cég Személy

    Alkalmazás

    KezdeteFizetés

    beosztás

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 15

    FicsorLajos

    Unified Modeling Language UML / 43

    OsztOsztáálydiagram: asszocilydiagram: asszociáácicióó (t(tööbbes)bbes)Több osztály között fennálló asszociáció jelölése:

    Osztály1

    Osztály3

    Osztály2 Osztály1

    Osztály3

    Osztály2

    Osztály4

    FicsorLajos

    Unified Modeling Language UML / 44

    OsztOsztáálydiagram: lydiagram: ÁÁltalltaláánosnosííttáássSpeciális (közvetett) viszony két osztály között

    koncepcionális szint:

    típus - altípus viszony

    specifikációs szint:

    az alosztály interface-e rendelkezik az ısosztály interfac-ének minden elemével

    implementációs szint:

    öröklıdés (származtatás)

    FicsorLajos

    Unified Modeling Language UML / 45

    OsztOsztáálydiagram: lydiagram: ÁÁltalltaláánosnosííttááss

    Alakzat

    Kör Téglalap Hatszög

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 16

    FicsorLajos

    Unified Modeling Language UML / 46

    OsztOsztáálydiagram: lydiagram: aggregaggregáácicióó éés kompozs kompozíícicióó

    Kétféle egész - rész viszony:

    aggregáció: a rész az egészhez tartozik, de önállóan is létezı entitás

    kompozíció: a rész önmagában nem létezhet, csak valaminek a részeként.

    FicsorLajos

    Unified Modeling Language UML / 47

    OsztOsztáálydiagram: lydiagram: aggregaggregáácicióó éés kompozs kompozíícicióó((áábra)bra)

    Motor Kerék

    Autó

    1 4..51 4..5

    Konyha Szoba

    Ház

    0..1 1..*0..1 1..*

    Aggregáció Kompozíció

    FicsorLajos

    Unified Modeling Language UML / 48

    OsztOsztáálydiagram: lydiagram: parametrizparametrizááltlt osztosztáályly

    Címlista

    Elemek:Tombelemelemszám:Integer

    DinTomb

    Parametrizált osztály

    Paraméterek

    Konkretizált osztály

    Konkretizálás paraméterei

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 17

    FicsorLajos

    Unified Modeling Language UML / 49

    OsztOsztáálydiagram: lydiagram: interfaceinterfaceAz sztereotípiával, vagy egy körrel jelöljük

    Csak a metódusoknak van hely

    Interface-ek közötti lehetséges asszociáció: általánosítás

    Interface és osztály közötti lehetséges asszociáció: implementálás, realizálás. Jele a példán.

    FicsorLajos

    Unified Modeling Language UML / 50

    Szekvencia diagram 1.Szekvencia diagram 1.Objektumok közötti üzenetváltások az idıben

    Elemei:

    példaobjektumok, életvonallal, aktivitási szakasszal (vezérlési fókusszal)

    üzenetek (név, argumentum, feltétel, ismétlıdés)

    megjegyzések az ábrától balra

    FicsorLajos

    Unified Modeling Language UML / 51

    Szekvencia diagram 2: pSzekvencia diagram 2: pééldalda

    Forrás: UML specification

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 18

    FicsorLajos

    Unified Modeling Language UML / 52

    Szekvencia diagram Szekvencia diagram 33: : üüzenetzenet fajtfajtáákk

    Objektum1 Objektum2

    Egyszerû üzenet

    Szinkron üzenet

    Aszinkron üzenet

    Uzenet time-outttal

    FicsorLajos

    Unified Modeling Language UML / 53

    Szekvencia diagram 4: pSzekvencia diagram 4: pééldalda

    Alternatívmőködés

    Élettartam vége

    Beágyazott vezérlés fókusz

    Élettartam kezdete

    Forrás: UML specification

    FicsorLajos

    Unified Modeling Language UML / 54

    ÁÁllapot diagram 1.llapot diagram 1.Egy adott objektum

    lehetséges állapotaiátmenetek az egyes állapotok között (állapotváltozások)– ehhez kapcsolható események– az objektum értékeihez kapcsolható feltételek [feltétel]

    formában– az ismétlıdés jelzése (*)

    kezdı és végállapotegy állapot részletezhetı (strukturált áll. diagram)állapotok között lehet általánosítás kapcsolat

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 19

    FicsorLajos

    Unified Modeling Language UML / 55

    ÁÁllapot diagram 2.llapot diagram 2.

    Állapot

    entry/ Belépési tevékenységexit/ Ki lépési tevékenység

    do/ Normál tevékenységon esemény/ ^Eseményhez kapcsolódó tev.

    Állapot jelölése

    FicsorLajos

    Unified Modeling Language UML / 56

    ÁÁllapot diagram 3. (pllapot diagram 3. (péélda)lda)

    Forrás: UML specification

    FicsorLajos

    Unified Modeling Language UML / 57

    EgyEgyüüttmttmőőkkööddéési diagram 1.si diagram 1.Szintén objektumok közötti üzenetváltások az idıben

    Elemei:

    példaobjektumok– aktív: vastag keret vagy {active} megszorítás – üzenetet

    küldhet másik objektumnak– passzív – üzenet hatására aktivizálódik– multiobjektum: objektumok egy csoportja

    Az együttmőködı objektumok vonallal összekötve– Ellenırzendı: a megfelelı osztályok között az

    osztálydiagramon asszociációnak kell lennie!

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 20

    FicsorLajos

    Unified Modeling Language UML / 58

    EgyEgyüüttmttmőőkkööddéési diagram 2.si diagram 2.üzenetek– objektumok közötti nyilak, sorszámozva és névvel

    ellátva– a nyíl iránya jelzi az üzenetküldés irányát– A sorszám sorrendiséget jelez

    Üzenetnek lehet argumentuma és eredménye– Jele kis körbıl kiinduló nyíl, az adatáramlás irányát

    mutatja– A nyílon az argumentum vagy eredmény megnevezése

    Az ábrán szerepelhet aktor is, ekkor tıle indul az elsı üzenet.

    FicsorLajos

    Unified Modeling Language UML / 59

    EgyEgyüüttmttmőőkkööddéési diagram 3. psi diagram 3. pééldalda

    Vásárló(f rom Actors)

    Ügyfél

    : ATM

    : központi gép: banki gép

    tranzakció

    összeg

    készpénz

    tranzakció

    összeg

    engedély

    tranzakció

    összeg

    rendben

    Készpénzfelvétel ATM-bıl

    FicsorLajos

    Unified Modeling Language UML / 60

    EgyEgyüüttmttmőőkkööddéési diagram 4. psi diagram 4. pééldalda

    : hallgató: oktató

    Zh eredmény hirdetés

    eredménylap

    Multi objektummal

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 21

    FicsorLajos

    Unified Modeling Language UML / 61

    AktivitAktivitáás diagrams diagramIdıben lezajló változások ábrázolása a végrehajtandó tevékenységek és azok sorrendjének megadásával Alapjai:– munkafolyamat (work-flow) diagram– folyamatábra (flow chart)

    Alapelemei:– tevékenységek (ívelt oldalú téglalap)– átmenet (nyíl)– szinkronizációs vonal (vastag vízszintes vonaldarab)– döntési pont (rombusz)

    FicsorLajos

    Unified Modeling Language UML / 62

    AktivitAktivitáás diagram s diagram -- ppééldalda ((nemnem teljesteljes!)!)Tágy

    meghirdetése

    Határidõig várakozás

    Tárgy lem ondás a

    Tárgy véglegesítése

    Kiírások megnézése

    Tárgyra jelentkezés

    Jeletkezés elfogadása

    Módosítás felajánlása

    Tárgy megtartása

    Tárgy lezárása

    FicsorLajos

    Unified Modeling Language UML / 63

    SSáávvoos s aktivitaktivitááss diagramdiagramA diagramm függılegesen sávokra osztható

    Egy sáv egy felelısségi kört (felhasználó, szervezeti egység stb.) jelöl

    A tevékenységek a sávokhoz rendelhetık, ezzel az adott tevékenységhez tartozó felelıs is ábrázolható

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 22

    FicsorLajos

    Unified Modeling Language UML / 64

    SSáávvoos s aktivitaktivitááss

    diagram diagram --ppééldalda

    FicsorLajos

    Unified Modeling Language UML / 65

    Komponens diagramKomponens diagramKomponensek: fizikai alkotóelemek. Tipikusan:– forrás-állományok

    – könyvtárak

    – futtatható állományok

    – dokumentumok

    – adatfile-ok

    – software komponensek

    Definiált sztereotípiák:– «executable»

    – «library»

    – «tables»

    – «file»

    – «document»

    FicsorLajos

    Unified Modeling Language UML / 66

    Komponens diagram Komponens diagram -- ppééldalda

    Tárgyra jelentkezés

    Tárgy kezelés s zerver

    Adatbázis szerver

    Online szerver

    Web Browser

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 23

    FicsorLajos

    Unified Modeling Language UML / 67

    TelepTelepííttéési diagramsi diagramTartalma:

    A rendszer hardware elemei (csomópontok) és a közöttük levı fizikai viszonyok

    A hardware és software elemek összerendelése

    FicsorLajos

    Unified Modeling Language UML / 68

    TelepTelepííttéési diagram si diagram -- ppééldaldaTanszéki szerver

    Admin. szerver

    Hallgatói PC

    TCP-IP

    TCP-IP (védett)

    Tárgy kezelés szerver

    Adatbázis szerver

    Online szerver

    Web Browser

    FicsorLajos

    Unified Modeling Language UML / 69

    ModellModellezezééss ttáámogatmogatáásasaAz UML támogatja teljes modellek felépítését

    Eszközei:

    Csomag (package)

    Alrendszer (subsystem)

    Modell

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 24

    FicsorLajos

    Unified Modeling Language UML / 70

    CsomagCsomagTetszıleges modell elemek csomagba rendezhetık

    A csomagok egymásba ágyazhatók

    Egy csomag beágyazott csomagot és egyéb modell elemeket egyszerre is tartalmazhat.

    A csomagok közötti kapcsolatokat szaggatott nyilak jelzik, a kapcsolat jellegét sztereotípiával adhatjuk meg. Két elıre definiált sztereotípia:–

    FicsorLajos

    Unified Modeling Language UML / 71

    CsomagCsomag: p: péélldada

    Forrás: UML specification

    FicsorLajos

    Unified Modeling Language UML / 72

    AlrendszerAlrendszerOlyan csomag, amely egy viselkedési egység.

    Az alrendszer interface-eket biztosít a többi alrendszernek

    Tartalmaz(hat)– Operációkat

    – Specifikációs elemeket

    – Realizációs elemeket

  • Miskolci EgyetemÁltalános Informatikai Tanszák

    Ficsor Lajos UML / 25

    FicsorLajos

    Unified Modeling Language UML / 73

    Alrendszer: jelAlrendszer: jelöölléés s éés kapcsolatoks kapcsolatok

    Jelölés:

    Operációk leírása

    Interface-ek

    Kapcsolatok:

    Forrás: UML specification

    FicsorLajos

    Unified Modeling Language UML / 74

    ModellModellA rendszer egy nézete (view)

    Jelölés:

    Forrás: UML specification