6-os Kurzus (UML) Visszatekintés: ”történelmi szempontok”

Slides:



Advertisements
Hasonló előadás
„Esélyteremtés és értékalakulás” Konferencia Megyeháza Kaposvár, 2009
Advertisements

ADATBÁZISOK.
Programozás III STRING-XML.
4. Előadás: A mohó algoritmus
Az integrált áramkörök (IC-k) tervezése
Az UML nyelv és fontosabb diagramtípusai
1Objektumorientált elemzés és tervezés – Dinamikus modellezés Gyurkó György Objektumorientált elemzés és tervezés Dinamikus modellezés.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 1 12-es Kurzus OMT modellek és diagramok OMT metodológia OMT (Object Modelling Technique)
1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék IT rendszerek modellezése Micskei Zoltán
IT infrastruktúra modellezése
© Kozsik Tamás Tömbök, kollekciók és egyéb alaposztályok.
Csala Péter ANDN #4. 2 Tartalom  C# - ban előre definiált típusok  Változók  Változókkal műveletek  Elágazás  Ciklus.
OBJEKTUMORIENTÁLT PROGRAM
Bevezetés a Java programozásba
Szoftverfejlesztés és szolgáltatás kiszervezés Folyamatjavítási mérföldkövek a világon és Magyaroszágon Bevezető gondolatok Dr. Biró Miklós.
Szakterület-specifikus modellezés és modellfeldolgozás
Vizuális modellezés Uml és osztálydiagram UML eszközök
Mérés és adatgyűjtés laboratóriumi gyakorlat Makan Gergely, Mingesz Róbert, Nagy Tamás 2. óra szeptember 9., 10. v
Programozás II. 3. Gyakorlat C++ alapok.

Modellvezérelt webalkalmazás-tervezés
A Java programozási nyelvSoós Sándor 1/17 Java programozási nyelv 4. rész – Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai.
Java programozási nyelv 3. rész – Osztályok I.
A CAD/CAM modellezés alapjai
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
6. előadás Parametrikus polimorfizmus. Generikus programozás. Az Ada sablonok.
Megvalósíthatóság és költségelemzés Készítette: Horváth László Kádár Zsolt.
Programozástechnológia
Az UML 4 rétegű metamodell szerkezete
Az UML kiterjesztési lehetőségei
Szoftvertechnológia Rendszertervezés.
WEB MES (webes gyártásirányító rendszer) Kiss Miklós (G-5S8)
Bevezetés a C++ programozási nyelvbe
ESzabványok Workshop 1. előadás: Bevezető, eAdatmodell október 13.
Objektum Vezérelt Szoftverek Analízise Ferenc Rudolf és Beszédes Árpád Szegedi Tudományegyetem FrontEndART.
Webes Információs Rendszerek fejlesztése
Anyagadatbank c. tárgy gyakorlat Féléves tematika Adatbázis alapfogalmak, rendszerek Adatmodellek, adatbázis tervezés Adatbázis műveletek.
Objektumorientált tervezés és programozás II. 3. előadás
Új programozási paradigmák a láthatáron (aspektus-orientált és intencionális programozás) Csontos Péter AITIA Informatikai Rt. 2002/10/17.
S S A D M ELEMZÉSI ÉS TERVEZÉSI MÓDSZERTAN
R EQUIREMENTS D EVELOPMENT Készítette: Devecseri Viktor.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT
UML Diagramok ábrázolása
1 Tudásalapú információ-kereső rendszerek elemzése és kifejlesztése Célkitűzés: Információk téma-specifikus, különböző típusú forrásokból (internet, intranet.
2008/2009 – 2. félév levelező tagozat
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Objektumorientált tervezés
UML Unified Modelling Language Szabványos jelölésrendszer elemeivel írja le diagramok formájában a rendszer működését a különböző modell-nézetek szempontjából.
BPM alapú robosztus e-Business alkalmazás fejlesztés VE Számítástudomány Alkalmazása Tsz. BME Méréstechnika és Információs Rendszerek Tsz. Balatontourist.
IT rendszerek modellezése
Objektumvezérelt rendszerek tervezése
Információs rendszerek tervezése
Objektum orientált programozás
Objektumvezérelt rendszerek tervezése 4.óra – Composite, Decorator © Fülöp Lajos.
Objektumvezérelt rendszerek tervezése
Elektronikus tanulási forráskezelő keretrendszer, kompetencia-fejlesztő program adatbázis létrehozása Calderoni program.
Adamkó Attila UML2 Adamkó Attila
Szoftver születik Eötvös Konferencia Köllő Hanna.
UML modellezés 3. előadás
Programozás III CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van.
Algoritmizálás, adatmodellezés
Gyurkó György. Az OO programozás és tervezés története 1960-as évek: SIMULA (véletlen folyamatokat szimuláló programok írása) az OO nyelvek őse 1970-es.
1Objektumorientált elemzés és tervezés – Dinamikus modellezés Gyurkó György Objektumorientált elemzés és tervezés Dinamikus modellezés.
Programozás I. 3. gyakorlat.
Szemantikai adatmodellek
UML használata a fejlesztésben, illetve a Visual Studio 2010-ben
Programozástechnológia
Információs rendszerek tervezése
Előadás másolata:

6-os Kurzus (UML) Visszatekintés: ”történelmi szempontok” 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 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus Visszatekintés ”történelmi szempontok” ADA, SIMULA, SMALLTALK- programozási nyelvek 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 Objekt 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 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 szoftver fejlesztőknek és felhasználóknak, alkalmazható szoftver karbantartásra is

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda. IRT. 6 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.

Az egységesített megoldások szükségessége: 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)

Történelem Periódus Események 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

Az UML 2.0 diagramjai

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)

A modellválasztás befolyásolja a pobléma megoldását 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 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

UML Diagramok egymásrahatása 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

Struktúra fogalmai grafikusan

Viselkedési fogalmak

Kapcsolatok ábrázolása

A csomagdiagram

A számla egyszerűsített modellje- osztálydiagram

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

Hol alkalmazható az UML? Milyen fontos összetevőkre hat a modellezés? 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 a modellezé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?