340 likes | 555 Views
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE ) Csíkszereda IRT 6 . kurzus. 6-os Kurzus (UML) Visszatekintés : ”történelmi szempontok ” Az UML lé trej ö tte UML -1 (Unified Modeling Language) és UML-2 Magyarul : EMN -1 (Egy s ég esített Modellező Nyelv).
E N D
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus 6-os Kurzus (UML) • Visszatekintés: ”történelmi szempontok” • Az UML létrejötte • UML-1 (Unified Modeling Language)és UML-2 Magyarul : EMN-1 (Egységesített Modellező Nyelv)
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Visszatekintés ”történelmi szempontok” • ADA, SIMULA, SMALLTALK- programozásinyelvek • OOD (Object Oriented Design) Grady Booch 1991-1993 • OOSA ( Object Oriented System Analysis) Shaer& Mellor1999 • OMT (Object Modeling Technique) James Rumbaugh 1991 • OOA ( Object Oriented Analysis) Coad & Ed Yourdon 1991 • HOOD ( Hierarchical Object Oriented Design) ESA (European space Agency) • OOSE (Object Oriented Software Engineering) Ivar Jacobson 1992
RUMBAUGH, JACOBSON és BOOCH célkitűzései (Raffai Mária UML2 pp. 19): • Komplex, küldetéskritikus, szoftverintenzív rendszerek fejlesztéséhez hatékony megoldások fejlesztése • Egyértelmű lépéseket határoznak meg az objektum-orientált elvű rendszermodellezési folyamat végrehajtásához a koncepciókialakítástól a végrehajtható szoftvertermék felügyeletéig • Olyan modellező nyelv kifejlesztése, amely az emberi kommunikációhoz és a gépi megvalósításhoz egyaránt alkalmas
Modellvezérelt fejlesztés (Model Driven Architecture) • A legkiválóbb fejlesztők és programozók tapasztalatait és megoldásait integrálja egységes egésszé. Az alkalmazás-fejlesztés során ismerni kell a támogatandó rendszert, a folyamatokat, a leképzési eljárásokat és a támogató technológiákat. Az alapvető cél ennek a tudásnak a formalizálása. (Allan Kennedy) • Az MDA-szabvány kimondja, hogy az üzleti feladatok modellezését el kell választani a megvalósítás részleteitől, vagyis a fejlesztést a szakterület modellnézeteinek kialakításával kell kezdeni, figyelmen kívül hagyva ebben a folyamatrészben az implementáció és működtetés technológiai környezetét, erre, meg a megvalósítási platformra alapozva kell megtervezni és megvalósítani az alkalmazást
MDA (Model Driven Architecture) modellnézetek • A szakterületi rendszert kifejező, az informatikai környezetet figyelmen kívül hagyó, a valós rendszer elemeit és funkcionalitását leíró doménmodell (CIM) • A megvalósítás eszközeitől és módjától független, a támogatandó szakterületi rendszernek a fejlesztési célja szerinti lényeges elemeit tűkröző platformfüggetlen modell (PIM) • A megoldási technológiát figyelembevevő, a technikai részleteket leíró, az implementációt megvalósító platformspecifikus modell (PSM)
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT UML (Unified Modeling Language) EMN (Egységesített Modellező Nyelv) • UML áttekintés • Történelem • Princípiumok • Alapfogalmak • Architektúra • A diagramok kölcsönhatása
Definíciók • A szoftver mérnökség területén, az egységesített modellező nyelv (UML) egy standardizált specifikációs nyelv az objektum modellezésre. Az UML egy általános célú nyelv, amely egy grafikus jelölésrendszert használ, hogy egy rendszernek az absztrakt modellét fel lehessen építeni, amelyre úgy hivatkozunk, hogy UML model. • Az UML-t az Obejkt Management Group (OMG) hivatalosan meghatározza az UML metamodellen keresztül, amelyik egy Meta-Object Facility (MOF) metamodel.
Mire használható még • Üzleti folyamatok modellezésére • Rendszer-mérnöki modellezésre • Szervezeti struktúra ábrázolására • A System Modeling Language (SyML)- rendszer egy domén specifikus modellezési nyelv a rendszer-mérnökiségre, amely UML 2.0 profilként van meghatározva • Az UML katalizátor a modellek által vezérelt technológiákra • Az UML modell transzformálható más reprezentációkra (Java) • Az UML kiterjeszthető
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus UML áttekintés Az UML egy nyelv a szoftver termékek vizualizálására, specifikálására, építésére és dokumentálására Az UML egyaránt hasznos szoftverfejlesztőknek és felhasználóknak, alkalmazható szoftver karbantartásra is
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Hol alkalmazható az UML? Üzemi IR, bank és pénzügyi szolgáltatásokban, távközlésben, szállításban, orvosi és tudományos területen , osztott webes alkalmazásokra támaszkodó szolgáltatásokban. A modellezés fontos összetevőkre hat: A szoftvet minőségére, a valóság egyszerűsítésére, a problémák jobb megértésére.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Az egységesített megoldások szükségessége: • a fejlesztő-felhasználó kommunikációjának problémája, a dokumentáció készítésének, a régebbi dokumentációk megértésének kérdése • az egy nyelven beszélés, a különböző projektekben „otthonosan mozgás” igénye • a Rational Software Incorporation és az OMG szerepe az egységesítési folyamatban (ROP, RUP, UML verziók és szabványosítás)
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Történelem Periódus Események 1975-1989 Objektumorientált programozási nyelvek 1989-1994 Több mint 50 objektumorientált analízis- és tervezési módszer 1994-1995 Booch és Raumbaugh egyesítés 1996 Jacobson, egyesítés 1996 UML 0.9 1997 UML 1.1 1998 UML 1.2 1998 UML 1.3 2005 UML 2.0
Modellezés • Lényeges megkülönböztetést tenni az UML model és a rendszer egy diagram-halmaza között • Egy diagram a rendszer modelljének parciális ábrázolása • Az UML diagramok három különböző nézetét adják meg a rendszernek: • Funkcionális követelmény-nézet • Statikus követelmény-nézet • Dinamikus viselkedés nézet
Strukturális diagramok • Osztálydiagram • Komponensdiagram • Összetett struktúra diagram • Telepítési diagram • Objektumdiagram • Csomagdiagram
Viselkedési-és kölcsönhatás diagramok • Viselkedési diagramok: • Aktivitási diagram • Állapotgép diagram • Use Case (használati eset) diagram • Kölcsönhatási diagramok: • Kommunikációs diagram • Szekvencia-diagram • Interaction overview diagram (UML 2) • UML Timing diagram (UML 2)
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Princípiumok • A modellválasztás befolyásolja a pobléma megoldását • Minden modell kifelyezhető különböző pontossági fokon • A modellek a valósághoz kötődnek • Nem elégséges egy modellt készíteni
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Architektúra Implementációs szempont Tervezési szempont Use Case szempontja Telepítési szempont Folyamat szempont
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus UML Diagramok egymásrahatása Szekvencia- Diagram Együttműködési Diagram Használati esetek Diagramja(HED) Osztály- Diagram Aktivitási- Diagram Állapot- diagram Komponens Diagram Környezeti Diagram
Használatos fogalmak • Strukturáknál: aktor, attribútum, osztály, komponens, interfész, objektum, csomag • Viselkedésnél: aktivitás, esemény, üzenet, metódus, operáció, állapot, use case • Kapcsolatoknál: aggregáció, asszociáció, kompozíció, függőség, általánosítás (öröklődés) • Más: • sztereotípia • sokszerűség – kardinalitás az adatbázisoknál • szerep
Osztályspecifikáció és láthatóság +public Minden objektum által hozzáférhető elem #protected Csak az öröklődés határain belül láthatóak -private Csak az objektum saját, belső rendszerében használhatók ~csomag Csak az adott csomagon belül láthatóak
Attribútumok • String Karakteres (rövid) • Char, Byte egy karakterből álló • Text szöveges (hosszú) karakterlánc • Enum felsorolás- (lista-) jellegű • Real valós szám • Double dupla pontosságú valós érték • Integer egész érték • Long hosszú integer • Date dátum jellegű • Boolean logikai érték • Currency árfolyam típusú
Attribútumok jellege • {changeable} az attribútum értéke korlátozás nélkül létrehozható, törölhető, változtatható • {addOnly} jelleget az 1-nél nagyobb multiplicitású attribútumokhoz lehet hozzárendelni. Több értékkel rendelkezhetnek, de ha egy értéket létrehoztak, akkor azt nem lehet törölni vagy módosítani • {frozen} jellegű attribútum az objektum létrehozása után nem törölhető és nem változtatható
Műveletek (metódusok) • Módosító és lekérdező műveletek (set, get) • Jellemzők: • Művelet neve • A művelet paraméterei és azok jellege: • in: bemeneti paraméter • out: kimenet a hívó objektum számára • inout: beérkezett paraméter, amelyet megváltoztatva az objektum visszaküld, vagy továbbít más objektumnak • A paraméter típusa • = alapértelmezett érték
Műveletspecifikáció finomítása • invariant olyan szabály, vagy feltétel meghatározása, amelyeknek mindíg teljesülnie kell • precondition olyan feltétel, amelynek a művelet végrehajtása előtt teljesülnie kell • postcondition a művelet végrahajtása utáni feltételeket szabályozza és meghatározza a visszatérési értékre (return value) vonatkozó szabályokat
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Ellenőrző kérdések • Hol alkalmazható az UML? • Milyen fontos összetevőkre hat amodellezés? • Melyek az UML princípiumok? • Miért szükséges az UML? • Alapfogalmak a UML-ben? • Grafikai elemek az UML Diagramokban? • Melyek a Strukturálási Diagramok? • Melyek a Környezeti Diagramok? • UML Diagramok egymásrahatása?