Modellezési alapismeretek

Hasonló dokumentumok
Modellezési alapismeretek

Modellezési alapismeretek

Modellezési alapismeretek

Modellezési alapismeretek

Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

A konkréttól az absztraktig és vissza -a modellvezérelt tervezés az informatikában

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

Szoftverminőségbiztosítás

Modell alapú tesztelés mobil környezetben

Részletes szoftver tervek ellenőrzése

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

Nagy bonyolultságú rendszerek fejlesztőeszközei

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

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

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

Modellezés és metamodellezés

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

Formális módszerek GM_IN003_1 Bevezetés

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

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

Modellezés és metamodellezés

Informatikai technológiák szakirány Rendszertervezés ágazat

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

KOMPUTER-ALGEBRA RENDSZEREK VERIFIKÁCIÓJA

Folyamatmodellezés (BPMN) és alkalmazásai

Szoftver újrafelhasználás

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

Autóipari beágyazott rendszerek. Kockázatelemzés

Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.

Modellek fejlesztése

Automatikus tesztgenerálás modell ellenőrző segítségével

Modellek fejlesztése

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Informatikai rendszertervezés

Modell alapú tesztelés: célok és lehetőségek

Programfejlesztési Modellek

Részletes tervek ellenőrzése

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

Informatikai rendszertervezés

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

Kogníció, koncepciók, modellek

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

30 MB INFORMATIKAI PROJEKTELLENŐR

Software Engineering

Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert

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

Szoftver karbantartás

A BIZTONSÁGINTEGRITÁS ÉS A BIZTONSÁGORIENTÁLT ALKALMAZÁSI FELTÉTELEK TELJESÍTÉSE A VASÚTI BIZTOSÍTÓBERENDEZÉSEK TERVEZÉSE ÉS LÉTREHOZÁSA SORÁN

Autóipari beágyazott rendszerek Dr. Balogh, András

A szoftverfejlesztés eszközei

VIR alapfogalmai. Előadásvázlat. dr. Kovács László

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

A TANTÁRGY ADATLAPJA

Rendszermodellezés: házi feladat bemutatás

Szoftver értékelés és karbantartás

PTE PMMIK, SzKK Smart City Technologies, BimSolutions.hu 1

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

S01-8 Komponens alapú szoftverfejlesztés 2

IRÁNYÍTÓ RENDSZER IRÁNYÍTANDÓ FOLYAMAT. Biztonsági funkciók Biztonsági integritás. Normál működés. Hibák elleni védettség Saját (belső) biztonság

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

UML (Unified Modelling Language)

Valószínűségi modellellenőrzés Markov döntési folyamatokkal

Miért is transzformáljunk modelleket? Varró Dániel

Specifikáció alapú teszttervezési módszerek

Kvantitatív módszerek

Specifikáció alapú teszttervezési módszerek

Célkitűzés Megoldandó feladatok A tesztkörnyezet komponensei V&V folyamatok Eszközintegrációs szintek. Megfelelőség tanúsítása modell alapon

Tartalom. Konfiguráció menedzsment bevezetési tapasztalatok. Bevezetés. Tipikus konfigurációs adatbázis kialakítási projekt. Adatbázis szerkezet

Rendszertervezés ágazat

Modellek dokumentálása

DECOS Nemzeti Nap október 15. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Történet John Little (1970) (Management Science cikk)

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

Név: Neptun kód: Pontszám:

Metamodellezés. Simon Balázs BME IIT, 2011.

Szoftver karbantartási lépések ellenőrzése

Bánsághi Anna 2014 Bánsághi Anna 1 of 31

Mérés és modellezés 1

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT 6. kurzus

S01-7 Komponens alapú szoftverfejlesztés 1

TOGAF elemei a gyakorlatban

Mérés és modellezés Méréstechnika VM, GM, MM 1

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Utolsó módosítás:

Utolsó módosítás:

TARTÓSZERKEZETEK TERVEZÉSE ÉS TŰZGÁTLÓ MEGOLDÁSOK BIM ALAPÚ PROJEKTEKNÉL

Digitális technika (VIMIAA02) Laboratórium 5.5

Bevezetés a programozásba

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

Bokor Péter. DECOS Nemzeti Nap október 15. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Biztonságkritikus rendszerek

Méréselmélet MI BSc 1

Projectvezetők képességei

Ráth István. DECOS Nemzeti Nap október 15. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

A szoftverellenőrzés szerepe

SZOLGÁLTATÁS-VALIDÁCIÓ ITU-T AJÁNLÁSOK ALAPJÁN

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

A szoftverfejlesztés eszközei

Tartalom Platform-független modellezés Alkalmazás-modellezés A DECOS hardver platform Platform modellezés Hardver-szoftver integráció Implementáció 2

Átírás:

Modellezési alapismeretek Rendszermodellezés Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 1

Motiváció Stunts autóverseny, 1990. o Distinctive Games/Brøderbund Software o https://en.wikipedia.org/wiki/stunts_(video_game) Versenyzés + pályaszerkesztés (!) o Tkp. egy szakterület specifikus modell 2

Motiváció : mire jó egy modell? Végig lehet-e menni egy pályán? Ha igen, melyik kocsival? Egyértelmű-e a pálya meghatározása? Járható-e egy pálya fordított irányban is? Milyen elemek kombinálhatóak? Milyen pályák állíthatóak elő? Valósághű -e egy pálya? Alkalmas-e versenyzésre? Szeretnék új típusú pályaelemet, mi kell ehhez? Kép: http://www.abandonia.com/games/73/stunts.htm 3

Tartalom Modell és modellezés Mire használunk modelleket? Alapfogalmak 4

Modellezés alapfogalmai Modell és modellezés Mire használunk modelleket? Alapfogalmak 5

Mi a modell? "The sciences o do not try to explain, o they hardly even try to interpret, o they mainly make models. By a model is meant o a mathematical construct which, o with the addition of certain verbal interpretations, o describes observed phenomena. The justification of such a mathematical construct is solely and precisely that it is expected to work. Neumann János

Mi a modell? Egy valós vagy hipotetikus világ (a rendszer ) o egy részének o egyszerűsített képe, amely o a rendszert helyettesíti bizonyos megfontolásokban Döntések: o A világ mely része? o Mit hanyagol el? o Hogy feleltethető meg a világnak? Haszna o kisebb (véges) o áttekinthetőbb 8 Mikor lehet és érdemes felhasználni?

Mi NEM a modell? A modell nem a valóság! A modell nem a diagram. o az csak egy nézet 9

Modell vs. valóság 10

Matematikai modell vs. valóság Minden modell: zárt világ o Hatások, faktorok o Paraméterek o Érvényesség A modell bizonytalan működésű ezen a világon kívül Nem minden fejezhető ki előre o Emberi döntés o Generált modellek Megoldás validációja Normál működés o Peremfeltételek: Van elég anyag Minden rendelés határidőre o Célfüggvény: Költségminimum Rendkívüli eset o Peremfeltétel Anyaghiány o Célfüggvény: 1. Minél több rendelés határidőre 2. Költségminimum 11

Matematikai modell vs. valóság Minden modell: zárt világ o Hatások, faktorok o Paraméterek o Érvényesség A modell bizonytalan működésű ezen a világon kívül Nem minden fejezhető ki előre o Emberi döntés o Generált modellek Megoldás validációja Normál működés o Peremfeltételek: Van elég anyag Minden rendelés határidőre o Célfüggvény: Költségminimum Rendkívüli eset o Peremfeltétel Anyaghiány o Célfüggvény: 1. Minél több rendelés határidőre 2. Költségminimum 12

Példa: biztonságkritikus SW Repülőgép fékezése: kerékfék + sugárfordító 13

1993 Varsó: Lufthansa 2904 (SW) védelem: Kerék a levegőben (mindkét főfutó terhelt) OR Kerék csúszik (egy kerék gyorsan forog) (gép a leszállópályán) (PILÓTA FÉKEZHET) 14

Modell minősége A valóság: nyílt világ A modell: zárt világ Valósághűség: o Valószínű + kritikus esetek 15

Modell minősége A valóság: nyílt világ A modell: zárt világ Valósághűség: o Valószínű + kritikus esetek 16

Páncélozás? Wald Abraham 17

Páncélozás? Wald Abraham 18

Tartalom Modell és modellezés Mire használunk modelleket? Alapfogalmak Illusztratív példák 19

Modellezés a gyakorlati életben? Pl.: [svéd cég] webes konyhatervezője 20

Modellezés a gyakorlati életben? Pl.: [svéd cég] webes konyhatervezője 21

Ez is modellezési nyelv! Verilog szakterület specifikus, hardver leíró 22

Ez is modellezési nyelv! Verilog szakterület specifikus, hardver leíró 23

Mi értelme van modellezni? Én szoftvert készítek. Kell-e modelleznem is? o Már így is ezt teszed! (A szoftver forráskódja is egyfajta modell ) Ami fontosabb: mentális modellek Mikor kell kifejezetten lejegyezni a modelleket? o Szerepe: kommunikáció Ember ember Ember gép Gép gép Ember saját maga, kicsivel később Pl. évekkel később emlékezni kéne mérnöki döntések indokaira 24

A cél a kommunikáció Modellezési nyelvek o Modell megértése szükséges o Modellezési nyelvek Szintaxis: hogyan írom le a modellt? pl. SystemC o Matematikai struktúra : absztrakt szintaxis o Jelölés: konkrét szintaxis rajzjelek / szöveges formátum Szemantika: mit jelent a modell? i++ Kényszerfeltételek, korlátozások o Szintaktikai helyesség, jólformáltság o Tervezési konvenciók (csapatonként változhat) 25

A modell modellje 26

Alapfogalmak - Metamodellezés Modellezési nyelv: milyen típusú elemei vannak? o és milyen kapcsolatban állhatnak ezek az elemek? o és ezeknek a típusoknak mik a viszonya egymáshoz? Metamodell = egy modellezési nyelv modellje Illusztrációk, amelyeket mindenki ismer o Egyed-kapcsolat (ER) modell o UML objektum diagram osztálydiagram o Adatbázis tábla relációs adatbázisséma o XML dokumentum XML séma (vagy DTD) o 27

Alapfogalmak - Metamodellezés Modellezési nyelv: milyen típusú elemei vannak? Neptun-kód o és milyen kapcsolatban állhatnak ezek az elemek? o és ezeknek a típusoknak mik a viszonya egymáshoz? Diák Átlag hallgat Terem Kurzus Metamodell = egy modellezési nyelv modellje Illusztrációk, amelyeket mindenki ismer o Egyed-kapcsolat (ER) modell o UML objektum diagram osztálydiagram o Adatbázis tábla relációs adatbázisséma o XML dokumentum XML séma (vagy DTD) o Kód 28

Modell és modellezés Mire használunk modelleket? Alapfogalmak 29

Rendszertervezési folyamat Menedzsment Beszerzés, ellátás Tervezés, vezetés, értékelés ANSI/EIA 632 szabványból Rendszer tervezés Követelmények definiálása Megoldás definiálása Mérnöki feladatok Termék Elkészítése Implementáció Használhatóság Ezeket tipikus modellekkel támogatni Kiértékelés Rendszer analízis Követelmény validáció Rendszer verifikáció Végtermék validáció

Rendszertervezési folyamat - Analógia Menedzsment Rendszer tervezés Mérnöki feladatok Termék Elkészítése Validáció: megfelel-e a követelményeknek Kiértékelés

Felhasználás Dokumentáció A modell egyszerűbb o könnyebben elmondható, mint a teljes valóság o fokozatosan finomítható (ld. később) Kommunikáció, szemléltetés o demonstráció (ld. később) o érthető szöveges nyelv o szemléletes diagram Gondolkodás, tervezés támogatása o hasonlóak a szempontok o kommunikáció magunkkal 32

Felhasználás Dokumentáció A modell egyszerűbb o könnyebben elmondható, mint a teljes valóság o fokozatosan finomítható (ld. később) Kommunikáció, szemléltetés o demonstráció (ld. később) o érthető szöveges nyelv o szemléletes diagram Gondolkodás, tervezés támogatása o hasonlóak a szempontok o kommunikáció magunkkal 33

Felhasználás - Analízis Emberi erővel vagy (részben) automatizáltan Módszer o Felületes, statikus elemzés o Dinamikus állapottér bejárással modellellenőrzés o Formális állítások bizonyításával Cél o Ellenőrzés, hibák keresése (best effort) o Szolgáltatásbiztonsági kritériumok igazolása (erősebb!) o Jellemzők számítása, tervezése (pl. ütemezés) 34

Felhasználás - Analízis Emberi erővel vagy (részben) automatizáltan Módszer o Felületes, statikus elemzés o Dinamikus állapottér bejárással modellellenőrzés o Formális állítások bizonyításával Cél o Ellenőrzés, hibák keresése (best effort) o Szolgáltatásbiztonsági kritériumok igazolása (erősebb!) o Jellemzők számítása, tervezése (pl. ütemezés) 35

Felhasználás - Származtatás Emberi erővel vagy (részben) automatizáltan Eredmény o programkód, analizálható nyelv, stb. generálása o másik modell finomítás, következő tervezési fázis részaspektus modellek integrációja Lehet tulajdonságmegőrző 36

Felhasználás - Származtatás Emberi erővel vagy (részben) automatizáltan Eredmény o programkód, analizálható nyelv, stb. generálása o másik modell finomítás, következő tervezési fázis részaspektus modellek integrációja Lehet tulajdonságmegőrző 37

Webalkalmazás fejlesztése 38

Okostelefon alkalmazás fejlesztése 39

Validáció Felhasználás: szimuláció o Jót építettem fel? Demonstráció o A kommunikáció eszközeként Kísérlet o Tulajdonságok elemzésére o Mérések o A valóságban költségesen kipróbálható o Elméleti úton előre meg nem határozható 40

Vasúti szoftverek fejlesztése Megoldandó probléma: SIL-4 vasúti alkalmazás fejlesztési lépéseinek és ezek Üzemeltetés, eredményeinek ellenőrzése karbantartás Kihívások: Követelmények elemzése Rsz. validáció tervezés Rendszer validáció Szisztematikus felülvizsgálat Modellezés és formális verifikáció Rendszer specifikálás Architektúra tervezés Modul tervezés Rendszerteszt tervezés Integrációs teszt tervezés Modul teszt tervezés Rendszer verifikáció Rendszer integrálás Modul verifikáció Modul implementáció Folyamat modell minőségbiztosítás 41

Vasúti szoftverek fejlesztése Megoldandó probléma: SIL-4 vasúti alkalmazás fejlesztési lépéseinek és ezek Üzemeltetés, eredményeinek ellenőrzése karbantartás Kihívások: Követelmények elemzése Rsz. validáció tervezés Rendszer validáció Szisztematikus felülvizsgálat Modellezés és formális verifikáció Rendszer specifikálás Architektúra tervezés Modul tervezés Rendszerteszt tervezés Integrációs teszt tervezés Modul teszt tervezés Rendszer verifikáció Rendszer integrálás Modul verifikáció Modul implementáció Folyamat modell minőségbiztosítás 42

Yakindu:állapotdiagram 43

Yakindu:állapotdiagram 44

Modell és modellezés Mire használunk modelleket? Alapfogalmak

Alapfogalmak rendszer és külvilág Nem modellezzük Külvilág Rendszer Kölcsönhatás Fekete doboz Fehér doboz Interfész Specifikáció az több? 46

Alapfogalmak rendszer és külvilág Komponens Külvilág Komponens Kölcsönhatás Komponens 47

Alapfogalmak Finomítás/Absztrakció Finomítás: a modell gazdagítása részletekkel hogy az eredeti modell absztrakció maradjon Inverze: (vertikális) absztrakció Az előbbi dián egy hierarchikus finomítás volt o dobozok kibontása Finomítható más is... o Pl. Halmazfinomítás: változók értékkészlete Jó / rossz helyett Gyors / átlagos / lassú / hiányos / veszélyes 48

Alapfogalmak finomítás 49

Alapfogalmak- finomítás 50

Halmazfinomítás Diszjunkt részhalmazok hozzárendelése elemekhez a 1 a 2 B 1 a 3 B 3 B 2 a i, A, R(a i ) B úgy, hogy R(a i ) R(a j )= i, j 51

Modellezés a tárgyban 52

Modellezés a tárgyban 53