Rendszer-modellezés, modellezési technikák

Hasonló dokumentumok
Rendszer-modellezés, modellezési technikák

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Szoftver architektúra, Architektúrális tervezés

A szoftverfejlesztés eszközei

Szoftver-technológia II. Architektúrák dokumentálása UML-lel. Irodalom. Szoftver-technológia II.

Szoftver követelmények meghatározása

Software Engineering

Szoftver-technológia II. Modulok és OOP. Irodalom

Szoftver követelmények meghatározása

Adatmodell elemei. Adatmodellezés. Adatobjektum. Kutya adatobjektum, mint tábla

Szoftver-mérés. Szoftver metrikák. Szoftver mérés

Komponens alapú fejlesztés

S S A D M ELEMZÉSI ÉS TERVEZÉSI MÓDSZERTAN. Structured Systems Analysis and Design Method

S01-7 Komponens alapú szoftverfejlesztés 1

Információs rendszerek Információsrendszer-fejlesztés

Formális módszerek GM_IN003_1 Bevezetés

Szoftvertechnológia ellenőrző kérdések 2005

UML (Unified Modelling Language)

Szoftverminőségbiztosítás

10-es Kurzus. OMT modellek és diagramok OMT metodológia. OMT (Object Modelling Technique)

Szoftver újrafelhasználás

Software Engineering Szoftver fejlesztés

A szoftverfejlesztés eszközei

Projectvezetők képességei

Elosztott rendszer architektúrák

TSIMMIS egy lekérdezés centrikus megközelítés. TSIMMIS célok, technikák, megoldások TSIMMIS korlátai További lehetségek

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Modellinformációk szabványos cseréje. Papp Ágnes, Debreceni Egyetem EFK

Kogníció, koncepciók, modellek

Információtartalom vázlata

Szoftverminőségbiztosítás

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Alkalmazások architektúrája

Szoftver tervezés és design

Adattárház kialakítása a Szövetkezet Integrációban, UML eszközökkel. Németh Rajmund Vezető BI Szakértő március 28.

Planning and Design of Information Systems. André Blokdijk, Paul Blokdijk ACADEMIC PRESS, 1987.

DW 9. előadás DW tervezése, DW-projekt

Témakörök. Structured Analysis (SA) Előnyök (SA) (SA/SD) Jackson Structured Programming (JSP) Szoftvertechnológia

Szoftver-technológia I.

AZ ELőADÁS CÉLJA. a funkciók dokumentálásának bemutatása. az SSADM szerkezetben elfoglalt helyének bemutatása

A szoftver tesztelés célja

Modellellenőrzés a vasút automatikai rendszerek fejlesztésében. XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő

Követelmény meghatározás. Információrendszer fejlesztés módszertana, Dr. Molnár Bálint egyetemi docens 1

Az előadás célja. Információrendszer fejlesztés módszertana, Dr. Molnár Bálint egyetemi docens 1

Szoftverarchitektúrák 3. előadás (második fele) Fornai Viktor

Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben. Ráth István

Magas szintű adatmodellek Egyed/kapcsolat modell I.

Objektumorientált paradigma és a programfejlesztés

TOGAF elemei a gyakorlatban

Verifikáció és validáció Általános bevezető

Objektum orientált software fejlesztés (Bevezetés)

1. előadás Alapfogalmak Modellezés, a Bachman-féle fogalomrendszer, adatmodell,

Témakörök. Struktúrált fejlesztés. Elınyök (SA) Structured Analysis (SA) Hátrányok (SA) Alapfogalmak (SA)

Modellező eszközök, kódgenerálás

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

HASZNÁLATI ESET DIAGRAM (USE CASE DIAGRAM)

Objektum orientált programozás Bevezetés

Absztrakció. Objektum orientált programozás Bevezetés. Általános Informatikai Tanszék Utolsó módosítás:

Adatmodellek. 2. rész

Objektumorientált paradigma és programfejlesztés Bevezető

Szakterületi modell A fogalmak megjelenítése. 9. fejezet Applying UML and Patterns Craig Larman

Üzleti architektúra menedzsment, a digitális integrált irányítási rendszer

Bevezetés. Adatvédelmi célok

A követelm. vetelmény. analízis fázis. Az analízis fázis célja. fázis feladata

Nagy bonyolultságú rendszerek fejlesztőeszközei

Informatikai rendszertervezés

ANALYSIS PATTERNS MARTIN FOWLER ANALYSIS PATTERNS. Általános ismertető és Accountability Patterns

Funkcionális modellek leképezése. Dialógusok meghatározása

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

Fogalmi modellezés. Ontológiák Alkalmazott modellező módszertan (UML)

Autóipari beágyazott rendszerek. Funkcionális biztonságossági koncepció

Szoftver technológia ProgMat -

30 MB INFORMATIKAI PROJEKTELLENŐR

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner,

Informatikai rendszertervezés

BMEVIHIM134 Hálózati architektúrák NGN menedzsment vonatkozások: II. Üzemeltetés-támogatás és üzemeltetési folyamatok

Részletes szoftver tervek ellenőrzése

Programfejlesztési Modellek

Szolgáltatás Orientált Architektúra a MAVIR-nál

Adatmodellezés. 1. Fogalmi modell

Adatbázis-kezelés. alapfogalmak

Logikai adatmodell kialakítása

Miskolci Egyetem Általános Informatikai Tanszék

A tesztelés feladata. Verifikáció

V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus

01. gyakorlat - Projektalapítás

ADATBÁZIS-KEZELÉS. Modellek

A fejlesztési szabványok szerepe a szoftverellenőrzésben

1. Bevezetés a szoftvertechnológiába

Funkcionális modellek leképezése

Parametrikus tervezés

Modell alapú tesztelés mobil környezetben

Szoftverminőségbiztosítás

Szemléletmód váltás a banki BI projekteken

Katasztrófavédelem informatikai rendszere ZNEBK104102

Szoftverfejlesztő képzés tematika oktatott modulok

Szoftverminőségbiztosítás

Informatikai projektellenőr szerepe/feladatai Informatika / Az informatika térhódítása Függőség az információtól / informatikától Információs

Átírás:

Rendszer-modellezés, modellezési technikák System engineering and modelling Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 8. Roger S. Pressman: Software Engineering, 5th e. chapter 10, 11, 12, 13. 2

A rendszermodellezés célja A megvalósítandó rendszer megértése rendszer lehatárolása m!ködés modellezése Modellek létrehozása kommunikáció elemzés tervezés 3 A rendszer-modellezés folyamata "Valóság" (Vállalati folyamatok) Percepció Felhasználó Validálás Tudás kinyerés Koncepcionális modell Modellezés Informatikai elemz! 4

Rendszerszer! megközelítés Rendszer entitások attribútumai közötti kapcsolatok Vizsgálati szempontok Mely attribútumok lényegesek? Milyenek az entitások kapcsolatai? Hol vannak a rendszer határai? Mi a rendszer feladata, szerepe? Mivel jár az alkotó részek egy bizonyos elrendezése? 5 Rendszerszer! megközelítés (folyt.) Output definiálása Határok meghatározása Nem lineáris m!ködés felderítése Szabályozási folyamatok meghatározása Több szempontú megközelítés 6

Modellezés Modellek különböz" néz"pontokból Küls" néz"pont rendszer környezete, kontextus Viselkedési megközelítés Szerkezeti megközelítés 7 Rendszermodell hierarchia "Világ" nézet Domén nézet Elem nézet Részlet nézet 8

Üzleti folyamatok modellezése Cél: üzleti tevékenység hatékony információ felhasználásának kialakítása Elemzési területek adatok architektúrája alkalmazások architektúrája technológiai infrastruktúra 9 Üzleti folyamatok modellezése (folyt.) A vállalat Egy üzletág Információs stratégia Egy üzletág Info. feld. terület Üzletági elemzés Információs rendszer Implementációs részletek Üzleti r. rendszerterv Software engineering 10

Termék modellek Felhasználói igények megjelenítése termékjellemz"kként Termék architektúra Technológia, infrastruktúra 11 Termék modellek (folyt.) A teljes termék Egy funkció Követelmény specifikáció Hardver Szoftver Feld. követ. Komponens nézet Adatok Funkció Prg. k. Viselkedés Elemzési és tervezési modellezés Komponens konstrukció és integrálás Software engineering 12

Modellezési alapelvek A probléma információs aspektusának megjelenítése és megértése A szoftver által végrehajtandó funkciók definiálása A küls" események hatására bekövetkez" viselkedés megjelenítése A modellek részleteinek réteges (hierarchikus) kifejtése Az elemzés célja az információk megjelenítése implementációs szinten 13 Modell típusok Adatfeldolgozási modellek Kompozíciós modellek Architektúrális modellek Klasszifikációs modellek Stimulus-válasz modellek 14

Környezeti modellek A környezeti (kontextus) modellek a rendszer m!ködési környezetét írják le a rendszer határain kívül Szociális és szervezeti vonatkozások Architektúrális modellek kapcsolat más rendszerekkel 15 System Model Template Felhasználói felület Folyamatok és irányítási funkciók Bemenet Kimenet Karbantartás, teszt 16

Folyamat modellek Folyamat modellek A rendszer átfogó folyamatai Rendszer által támogatott folyamatok Adatfolyam modellek folyamatok, folyamat-állomások közötti adatáramlás 17 Viselkedési modellek A rendszer viselkedésének, m!ködésének a leírása Alkalmazott megoldások (különböz" néz"pontok) adatfeldolgozási modellek állapotgép modellek 18

Adatfeldolgozási modellek Adatfolyam diagramok (Data Flow Diagram) feldolgozási állomások (transzformációk) adatáramlás a rendszerben Könnyen érthet" jelölésrendszer 19 Adatfolyam diagramok Funkcionális perspektíva Folyamatok adat igénye Adat kapcsolatok A B F Szintenkénti finomítás A V X Z I K J B W Y X Z Y 20

DFD példa környezeti elem 1 2.1 2 els! szint" eljárás eljárás 2.1 D1 adattár 1 D2/1 adattár 2 2.2 környezeti elem 2 eljárás 2.2 D2/2 adattár 3 3 2.3 eljárás 3 eljárás 2.3 21 Állapotgép modellek A rendszer viselkedésének leírása a küls" és bels" eseményekre adott válaszokkal Gyakran alkalmazzák valósidej! rendszereknél, felhasználói felületeknél (eseményvezérelt megközelítés) Rendszerállapotok és állapotátmentek 22

Állapotátmenet diagramok Állapottér dekompozíció Csomópontok állapot spec. tevékenységek (érkezés, elhagyás) Élek állapotátmenetek események (feltételek) üzenetküldés (akció) 23 Állapotátmenet diagram példa Jelszó1 **** Jelszó2 **** Regisztráció start Main OK disabled [pwd2=""] OK enabled [pwd1=""] [pwd1!=pwd2] Pwd 1 Different [pwd1!=""] [pwd2=""] All clear [pwd1=pwd2] [pwd1!=pwd2] [pwd2!=pwd1] [pwd2!=""] [pwd1=pwd2] [pwd2=""] Pwd 2 [pwd2=pwd1] Same [pwd1=""] Kilépés OK OK clicked Exit clicked OK clicked OK2 clicked Success feedback OK3 clicked exit Password missmatch 24

Adatmodellezés Rendszer által kezelt adatok szerkezetének leírása Egyed-kapcsolat-attribútum modellek Adatbázis kezel" alkalmazások relációs adatbázisok 25 Adatelemek Adatobjektumok küls" (valóságos) entitás Attribútumok adatobjektumok tulajdonságai felhasználás azonosítás leírás kapcsolat Kapcsolatok kétirányú szerepek, relációk számosság és modalitás 26

Számosság és modalitás Számosság (a kapcsolatban résztvev" adatobjektum megjelenések száma) Egy-egy kapcsolat Egy-több kapcsolat Több-több kapcsolat Modalitás (a reláció szükségessége) Kötelez" Opcionális 27 Adatobjektum példa Adatobjektumok Attribútumok Név Lakcím Életkor Vezet!i engedély száma Kapcsolatok Autója Tulajdonosa Gyártmány Modell Szín Rendszám 28

Egyed-kapcsolat diagramok Adatmodellek kedvelt leírási formája Elemei Adatobjektumok osztályai (egyedtípusok) Kapcsolatok számosság/modalitás Attributumok eltér" részletesség 29 Egyed-kapcsolat diagram jelölések Különféle jelölés rendszerek Chen Egyed Reláció Egyed Attrib. Attrib. Attrib. Attrib. Számosság Kötelez! Opcionális 30

Egyed-kapcsolat diagram példa MERISE jelölés 31 Adatszótárak Adatmodellben használt nevek szótára egyed és attribútum nevek definíció (típus) felhasználás, hivatkozások formátum adatok Egyértelm!ség, duplikálás elkerülése CASE támogatás 32

Struktúrált módszerek Rendszerszervezési és szoftverfolyamat megközelítés 70-es, 80-as évek Jellemz"k meghatározottság pontos dokumentációs és jelölésrendszer termék szemlélet 33 Struktúrált módszerek (folyt.) A módszer(tan) magábafoglalja a rendszermodellezést Definiálják az alkalmazható modelltípusokat, jelölésrendszereket, alkalmazási útmutatókat tartalmaznak CASE eszközök tartalmazzák a modellezési segédeszközöket 34

Struktúrált módszerek (folyt.) Struktúrált módszerek hiányosságai nem modellezik a nemfunkcionális követelményeket a módszer alkalmassága nem ítélhet" meg túl sok dokumentáció keletkezik a végfelhasználók számára túl részletes és nehezen megérthet" modellek 35 CASE támogatás A módszerhez csatlakozó szoftverfolyamat tevékenységeinek konzisztens támogatása modellezés, tervezés, kódgenerálás, tesztelés Egységes követelmény specifikálás és rendszertervezés A módszerhez tartozó jelölésrendszerek támogatása Különböz" nézetek szerinti modellek összekapcsolása 36

CASE támogatás (folyt.) CASE eszköz komponensek diagram editorok modell ellen"rzés fejlesztési minta-tár adatszótár!rlap és jelentés tervez" eszközök kód generátorok 37 CASE IDE példa WinDev 38

CASE IDE példa (folyt.) lekérdezés tervez" felületek Omnis Studio WinDev 39 Tervezési modellek A tervezési fázis célja az implementációt lehet"vé tév", részletes modellek megalkotása Szoftver tervezési modellek adat modellek architektúra modellek interfész modellek komponens modellek 40

Tervezési szintek Komponens szint! tervezés Interfész tervezés Folyamat specifikáció Állapotátmenet diagram Vezérlési specifikáció Adatfolyam diagram Állapotátmenet diagram Vezérlési specifikáció Architektúrális tervezés Adatfolyam diagram Adat tervezés Egyed-kapcsolat diagram Adatszótár 41 Tervezés és szoftvermin"ség Architektúra felismerhet" tervezési minta megfelel" komponensek evolúciós fejlesztés lehet"sége Moduláris tervezés funkcionális modulok Megfelel" reprezentáció A valós adatobjektumokhoz illeszked" adatszerkezetek Funkcionálisan független komponensek Kapcsolatok komplexitását csökkent" interfészek Módszeres tervezés a követelményspecifikáció alapján 42

Tervezési koncepciók Megválaszolandó kérdések Hogyan kell részekre, komponensekre bontani a szoftvert? Mi választja el a funkcionális vagy adatszerkezeti részleteket a koncepcionális modellekt"l? Vannek-e a szoftverek technikai min"ségét definiáló kritériumok? Tervezési koncepciók különböz" absztrakciós szintek használata lépésenkénti finomítás modularitás alkalmazása architektúrális minták alkalmazása vezérlési hierarchia kialakítása 43 Modularitás Modulokra bontás, modulok integrálása Kognitív komplexitás kezelése Modulszám hatása C( p 1 ) > C(p 2 ) " E( p 1 ) > E(p 2 ) C( p 1 + p 2 ) > C(p 1 ) + C( p 2 ) " E(p 1 + p 2 ) > E( p 1 ) + E(p 2 ) Modul költség Integrációs költség Összköltség Modulok száma 44

Szoftver architektúra A rendszert alkotó komponensek és interakcióik hierarchikus szerkezete A részletes tervezési tevékenység kerete Architektúrális tervezési minták Szoftver architektúra jellemz"i struktúrális jellemz"k komponensek, package-ek, interakciók nem funkcionális jellemz"k teljesítmény, megbízhatóság,... 45 Végrehajtási hierarchia Program hierarchia hívási-visszatérési architektúra metrikák mélység szélesség fan-in, fan-out láthatóság 46

Hívási gráf példa sgi ProDev 47 Információ elrejtés Modulok bels" információi nem hozzáférhet"k olyan modulokból melyekben az adott információ nem szükséges független, önálló modulok interfészek 48

Moduláris tervezési elvek Funkcionális függetlenség modularitás, absztrakció, info elrejtés Kritériumok Kohézió kevés, szorosan kapcsolódó funkció Csatolás alacsony fokú adat, vezérlési kapcsolat 49 Moduláris tervezési elvek (folyt.) Kohézió növelése, kapcsolás csökkentése modulok felbontása/egyesítése Fan-out csökkentése Modulban lezajló döntések hatásának korlátozása a modul hatókörére Interfészek komplexitásának csökkentése 50

Összefoglalás Rendszerszer! megközelítés Rendszermodell hierarchia Modellezési néz"pontok folyamat-, adat-, viselkedési-, architektúrális modellek Struktúrált elemzési módszerek Tervezési szintek Tervezési elvek 51