Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell -...
Transcript of Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell -...
![Page 1: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/1.jpg)
1Budapesti Műszaki és Gazdaságtudományi EgyetemMéréstechnika és Információs Rendszerek Tanszék
Budapesti Műszaki és Gazdaságtudományi EgyetemMéréstechnika és Információs Rendszerek Tanszék
Modellezési alapismeretek
Rendszermodellezés
![Page 2: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/2.jpg)
2
“Motiváció”
▪ Stunts autóverseny, 1990.o Distinctive Games/Brøderbund Softwareo https://en.wikipedia.org/wiki/Stunts_(video_game)
▪ Versenyzés + pályaszerkesztés (!)o Tkp. egy “szakterület specifikus modell”
![Page 3: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/3.jpg)
3
Kép: http://www.abandonia.com/games/73/Stunts.htm
“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?
“Valósághű”-e egy pálya?Alkalmas-e versenyzésre?
Milyen elemek kombinálhatóak?Milyen pályák állíthatóak elő?
Szeretnék új típusú pályaelemet, mi kell ehhez?
![Page 4: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/4.jpg)
4
Tartalom
Modell és modellezés
Mire használunk modelleket?
Alapfogalmak
![Page 5: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/5.jpg)
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
![Page 6: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/6.jpg)
6
![Page 7: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/7.jpg)
7
Tudományos és mérnöki modellek▪ Tudományos modell - deskriptív (leíró)
o Newton törvénye nem illeszkedik fekete lyukra→ rossz modell
▪ Mérnöki (tervezési) modell - preskriptívo Nem illeszkedik → "valóság" rossz
![Page 8: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/8.jpg)
8
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?
▪ Hasznao kisebb (véges)
o áttekinthetőbb
Mikor lehetés érdemesfelhasználni?
![Page 9: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/9.jpg)
9
Mi NEM a modell?
▪ A modell nem a valóság!
▪ A modell nem a diagram.o az csak egy nézet…
![Page 10: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/10.jpg)
10
Modell vs. valóság: értelmezhetőség?
Modell-analízis
Modell-analízis
![Page 11: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/11.jpg)
11
Matematikai modell vs. valóság
▪ Minden modell: zárt világo Hatások, faktoroko 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őreo Emberi döntéso Generált modellek
▪ Megoldás validációja
▪ Normál működéso Peremfeltételek:• Gyár, ahol mindig van elég
anyag• Minden rendelés elkészül
határidőre
o Célfüggvény:• Költségminimum
▪ Rendkívüli eseto Peremfeltétel• Anyaghiány
o Célfüggvény:1. Minél több rendelés
határidőre2. Költségminimum
![Page 12: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/12.jpg)
12
Matematikai modell vs. valóság
▪ Minden modell: zárt világo Hatások, faktoroko 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őreo Emberi döntéso Generált modellek
▪ Megoldás validációja
▪ Normál működéso Peremfeltételek:• Gyár, ahol mindig van elég
anyag• Minden rendelés elkészül
határidőre
o Célfüggvény:• Költségminimum
▪ Rendkívüli eseto Peremfeltétel• Anyaghiány
o Célfüggvény:1. Minél több rendelés
határidőre2. Költségminimum
![Page 13: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/13.jpg)
13
Példa: biztonságkritikus SW
▪ Repülőgép fékezése: kerékfék + sugárfordító
![Page 14: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/14.jpg)
14
1993 Varsó: Lufthansa 2904
▪ (SW) védelem:(mindkét főfutó terhelt)
OR(egy kerék gyorsan forog)→ (gép a leszállópályán)→ (PILÓTA FÉKEZHET)
Kerék a levegőben
Kerék csúszik
![Page 15: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/15.jpg)
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
![Page 16: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/16.jpg)
16
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
![Page 17: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/17.jpg)
17
Páncélozás? →Wald Abraham
![Page 18: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/18.jpg)
18
Páncélozás? →Wald Abraham
![Page 19: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/19.jpg)
19
Modell és modellezés
Mire használunk modelleket?
Alapfogalmak
![Page 20: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/20.jpg)
20
Modellezés a gyakorlati életben?
Pl.: [svéd cég] webes konyhatervezője
![Page 21: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/21.jpg)
21
Modellezés a gyakorlati életben?
Pl.: [svéd cég] webes konyhatervezője
![Page 22: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/22.jpg)
22
Ez is modellezési nyelv! ☺
▪ Verilog – szakterület specifikus, hardver leíró
![Page 23: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/23.jpg)
23
Ez is modellezési nyelv…
▪ Verilog – szakterület specifikus, hardver leíró
![Page 24: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/24.jpg)
24
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…
![Page 25: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/25.jpg)
25
Modellezési nyelvek
▪ A cél a kommunikáció o Modell megértése szükségeso Modellezési nyelvek
▪ Szintaxis: hogyan írom le a modellt? “pl. C nyelven”o „Matematikai struktúra”: absztrakt szintaxiso 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ágo Tervezési konvenciók (csapatonként változhat)
Biztos ez a legjobb?
![Page 26: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/26.jpg)
26
A modellezési nyelv modellje
Konkrét pálya: modellPálya elemei: metamodell
![Page 27: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/27.jpg)
27
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
o Adatbázis táblao XML dokumentum o Relációs adatbázissémao C++ objektumoko C++ program
![Page 28: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/28.jpg)
28
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
o Adatbázis tábla → relációs adatbázissémao XML dokumentum → XML séma (vagy DTD)o Relációs adatbázisséma → Egyed-kapcsolat (ER) modello C++ objektumok → C++ osztályoko C++ program → C++ programnyelv specifikáció
![Page 29: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/29.jpg)
29
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
o Adatbázis tábla → relációs adatbázissémao XML dokumentum → XML séma (vagy DTD)o Relációs adatbázisséma → Egyed-kapcsolat (ER) modello C++ objektumok → C++ osztályoko C++ program → C++ programnyelv specifikáció
Diák Kurzushallgat
KódNeptun-kód
TeremÁtlag
![Page 30: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/30.jpg)
30
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
o Adatbázis tábla → relációs adatbázissémao XML dokumentum → XML séma (vagy DTD)o Relációs adatbázisséma → Egyed-kapcsolat (ER) modello C++ objektumok → C++ osztályoko C++ program → C++ programnyelv specifikáció
![Page 31: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/31.jpg)
31
Felhasználás – Dokumentáció
▪ A modell egyszerűbbo könnyebben elmondható,
mint a teljes valóságo fokozatosan finomítható (ld.
később)
▪ Kommunikáció, szemléltetéso demonstráció (ld. később)o érthető szöveges nyelvo szemléletes diagram
▪ Gondolkodás, tervezés támogatásao hasonlóak a szempontoko „kommunikáció
magunkkal”
![Page 32: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/32.jpg)
32
Felhasználás – Dokumentáció
▪ A modell egyszerűbbo könnyebben elmondható,
mint a teljes valóságo fokozatosan finomítható (ld.
később)
▪ Kommunikáció, szemléltetéso demonstráció (ld. később)o érthető szöveges nyelvo szemléletes diagram
▪ Gondolkodás, tervezés támogatásao hasonlóak a szempontoko „kommunikáció
magunkkal”
![Page 33: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/33.jpg)
33
„A kód dokumentáció is egyben”
Margaret Hamilton
![Page 34: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/34.jpg)
34
Felhasználás - Elemzés
▪ Emberi erővel vagy (részben) automatizáltan
▪ Módszero Statikus ellenőrzéso Tesztelés támogatásao Dinamikus modellellenőrzéso Formális állítások
bizonyításával
▪ Céloko Megengedett és elvárt
viselkedés vizsgálata→Modell helyes legyeno Jellemzők számítása
(pl. ütemezés)→ Rendszer követelményei
![Page 35: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/35.jpg)
35
Felhasználás - Elemzés
▪ Emberi erővel vagy (részben) automatizáltan
▪ Módszero Statikus ellenőrzéso Tesztelés támogatásao Dinamikus modellellenőrzéso Formális állítások
bizonyításával
▪ Céloko Megengedett és elvárt
viselkedés vizsgálata→Modell helyes legyeno Jellemzők számítása
(pl. ütemezés)→ Rendszer követelményei
![Page 36: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/36.jpg)
36
Felhasználás: szimuláció
▪ Validációo „Jót építettem fel?”
▪ Demonstrációo A kommunikáció
eszközeként
▪ Kísérleto Tulajdonságok elemzéséreo Méréseko A valóságban költségesen kipróbálhatóo Elméleti úton előre meg nem határozható
![Page 37: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/37.jpg)
37
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ásao másik modell
• finomítás, következő tervezési fázis• részaspektus• modellek integrációja
o lehet tulajdonságmegőrző
▪ Pl: abszolútérték
n/-
[n>=0] -/n
[n<0] -/n*(-1)
int n;
scanf("%d",&n);
if (n>=0) {
printf("%d",n);
} else {
n=n*(-1);
printf(„%n",a);
}
![Page 38: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/38.jpg)
38
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ásao másik modell
• finomítás, következő tervezési fázis• részaspektus• modellek integrációja
o Lehet tulajdonságmegőrző
▪ Pl: abszolútérték
n/-
[n>=0] -/n
[n<0] -/n*(-1)
int n;
scanf("%d",&n);
if (n>=0) {
printf("%d",n);
} else {
n=n*(-1);
printf(„%n",a);
}
![Page 39: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/39.jpg)
39
Webalkalmazás fejlesztése
![Page 40: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/40.jpg)
40
Okostelefon alkalmazás fejlesztése
![Page 41: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/41.jpg)
41
Reverse engineering
▪ Modell visszafejtése a rendszer alapján
![Page 42: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/42.jpg)
42
Vasúti rendszerek fejlesztése
Megoldandó probléma: SIL-4 vasúti alkalmazás fejlesztési lépéseinek és ezek eredményeinek ellenőrzése
Kihívások:• Szisztematikusfelülvizsgálat• Modellezés és
formális verifikáció
Követelmények
elemzése
Rendszer
specifikálás
Architektúra
tervezés
Modul
tervezés
Modul
implementáció
Modul teszt
tervezés
Integrációs
teszt tervezés
Rendszerteszt
tervezés
Rsz. validáció
tervezés
Modul
verifikáció
Rendszer
integrálás
Rendszer
verifikáció
Rendszer
validáció
Üzemeltetés,
karbantartás
Követelmények
elemzése
Rendszer
specifikálás
Architektúra
tervezés
Modul
tervezés
Modul
implementáció
Modul teszt
tervezés
Integrációs
teszt tervezés
Rendszerteszt
tervezés
Rsz. validáció
tervezés
Modul
verifikáció
Rendszer
integrálás
Rendszer
verifikáció
Rendszer
validáció
Üzemeltetés,
karbantartás
Folyamat →modell →minőségbiztosítás
![Page 43: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/43.jpg)
43
Vasúti rendszerek fejlesztése
Megoldandó probléma: SIL-4 vasúti alkalmazás fejlesztési lépéseinek és ezek eredményeinek ellenőrzése
Kihívások:• Szisztematikusfelülvizsgálat• Modellezés és
formális verifikáció
Követelmények
elemzése
Rendszer
specifikálás
Architektúra
tervezés
Modul
tervezés
Modul
implementáció
Modul teszt
tervezés
Integrációs
teszt tervezés
Rendszerteszt
tervezés
Rsz. validáció
tervezés
Modul
verifikáció
Rendszer
integrálás
Rendszer
verifikáció
Rendszer
validáció
Üzemeltetés,
karbantartás
Követelmények
elemzése
Rendszer
specifikálás
Architektúra
tervezés
Modul
tervezés
Modul
implementáció
Modul teszt
tervezés
Integrációs
teszt tervezés
Rendszerteszt
tervezés
Rsz. validáció
tervezés
Modul
verifikáció
Rendszer
integrálás
Rendszer
verifikáció
Rendszer
validáció
Üzemeltetés,
karbantartás
Folyamat →modell →minőségbiztosítás
![Page 44: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/44.jpg)
44
Yakindu:állapotdiagram
![Page 45: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/45.jpg)
45
Yakindu:állapotdiagram
![Page 46: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/46.jpg)
46
Yakindu→3D szimulációJárműkövető/távolságtartó rendszer interaktív 3D szimulációja
Interactive 3D Visualization and Simulation with State Machines, Benjamin Bolte, 2017.https://blogs.itemis.com/en/interactive-3d-visualization-and-simulation-with-state-machines
![Page 47: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/47.jpg)
47
Modell és modellezés
Mire használunk modelleket?
Alapfogalmak
![Page 48: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/48.jpg)
48
Alapfogalmak – rendszer és külvilág
Rendszer Kölcsönhatás
Külvilág
Nem modellezzük teljesen→forgatókönyvek,interakciók
•Interfész•Specifikáció
• Szintén modell
•Fekete doboz•Fehér doboz
![Page 49: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/49.jpg)
49
Alapfogalmak – rendszer és külvilág
Kölcsönhatás
KülvilágAlrendszer
Alrendszer
Alrendszer
![Page 50: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/50.jpg)
50
Alapfogalmak – Finomítás/Absztrakció
▪ Finomítás: a modell gazdagítása részletekkel…Pl. rendszer felbontása alrendszerekre
▪ …hogy az eredeti modell absztrakció maradjonPl. az alrendszerekre együtt ugyanazokat az elvárásokat teljesítik
▪ Inverze: absztrakcióPl. alrendszerek összevonása
▪ Az előbbi dián egy hierarchikus finomítás volto „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
![Page 51: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/51.jpg)
51
Modellezés a képzésben
![Page 52: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/52.jpg)
52
IMSC KITEKINTÉS: ABSZTRAKCIÓ PONTOSABBAN
![Page 53: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/53.jpg)
53
Absztrakció
(Több definíció lehetséges.)
▪ Az absztrakció helyes, ha az eredeti rendszer minden eleméhez hozzárendelhető az absztrakt rendszer egy eleme.
▪ Az absztrakció teljes a vizsgált tulajdonságra nézve, ha a rendszer összes jellemzője megjelenik, amely a vizsgált tulajdonságot befolyásolja.
![Page 54: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/54.jpg)
54
Galois kapcsolat
▪ Galois kapcsolat (𝑟)o 𝐴,⊆ , (𝐵, ⊆) részben rendezett halmazoko 𝑓: 𝐴 → 𝐵, 𝑔: 𝐵 → 𝐴o 𝑓 𝑎 ⊆ 𝑏 ↔ 𝑎 ⊆ 𝑔 𝑏 ↔ 𝑟 𝑎, 𝑏
▪ Absztrakcióo⊆ − tartalmazáso Befoglaló rész visszavetítve
tartalmazza az eredetit
Fedő modell:
Absztrakt
tartomány
Konkrét
tartomány
Konkrét modell
Visszavetített:
Absztrakt modell:
![Page 55: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/55.jpg)
55
Galois kapcsolat - példa
▪ Jogosultsági szintek (több szint is elképzelhető)Olvasás: Teljes jogosultság > Részleges jogosultság > Nincs jogosultság
Írás: Teljes jogosultság > … > Nincs jogosultság
▪ Mely jogosultságok kompatibilisek egymással?o Ha egy mezőt tudunk írni, olvasni is tudnunk kell!o X mezőt írnám → Részleges olvasási jog kell (de teljes is jó)o Részleges olvasási jogom van → Legfeljebb részleges írási jogom
lehet (vagy semmi)
▪ Kompatibilitás: Galois reláció
Bizonyos attribútumok (pl. ID) elrejtése
![Page 56: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/56.jpg)
56
Refactor példa
▪ Számok rendezéseo Növekvő sorban: 18,23,131,247,1925o Csökkenő sorban: 1925,247,131,23,18o ABC rendben: 131,18,1925,23,247
▪ Kód (minimumkiválasztás):
void rendezes_novekvo(int* tomb, int meret){
int i, j;
for(i = 0; i<meret; i++){
int minimumhely = i;
for(j= i + 1; j<meret; j++){
if(tomb[j] < tomb[minimumhely])
minimumhely= j;
}
int tmp = *i;
*i = *minimumhely;
*minimumhely = tmp;
}
}
Miben különbözik a másik két sorrendhez
tatozó kód?
![Page 57: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/57.jpg)
57
Refactor példa
▪ Számok rendezéseo Növekvő sorban: 18,23,131,247,1925o Csökkenő sorban: 1925,247,131,23,18o ABC rendben: 131,18,1925,23,247
▪ Kód (minimumkiválasztás):
void rendezes_novekvo(int* tomb, int meret){
int i, j;
for(i = 0; i<meret; i++){
int minimumhely = i;
for(j= i + 1; j<meret; j++){
if(tomb[j] < tomb[minimumhely])
minimumhely= j;
}
int tmp = *i;
*i = *minimumhely;
*minimumhely = tmp;
}
}
Miben különbözik a másik két sorrendhez
tatozó kód?
![Page 58: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/58.jpg)
58
Refactor példa
▪ Ötlet: Az összehasonlítást tegyük külön függvénybe
Kódduplikáció elkerülése
void rendezes(int* tomb, int size, bool (*hasonlit)(int,int)){
int i, j;
for(i = 0; i<meret; i++){
int minimumhely = i;
for(j= i + 1; j<meret; j++){
if( (*hasonlit)(tomb[j],tomb[minimumhely]) )
minimumhely= j;
}
int tmp = *i;
*i = *minimumhely;
*minimumhely = tmp;
}
}
Mit lehet még újrafelhasználni ebből
a kódból?
![Page 59: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/59.jpg)
59
Refactor példa
▪ Ötlet: Az összehasonlítást tegyük külön függvénybe
Kódduplikáció elkerülése
void rendezes(int* tomb, int size, bool (*hasonlit)(int,int)){
int i, j;
for(i = 0; i<meret; i++){
int minimumhely = i;
for(j= i + 1; j<meret; j++){
if( (*hasonlit)(tomb[j],tomb[minimumhely]) )
minimumhely= j;
}
int tmp = *i;
*i = *minimumhely;
*minimumhely = tmp;
}
}
Mit lehet még újrafelhasználni ebből
a kódból?
![Page 60: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/60.jpg)
60
Absztrakció szerepe a kódolásban
▪ Észrevétel: o Kiválasztásos rendezőalgoritmus: absztrakcióo Különböző hasonlító függvények ( → sorrendek):
konkretizálás
▪ Jó kód:o Algoritmusok paramétereseno Különböző célok → külön példányosításo Pl. ez az algoritmus használható szavak sorrendezésére
![Page 61: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/61.jpg)
61
Absztrakciófinomítás
Multihalmaz(Bag)
Lista Halmaz
Sorrend FINO
MÍTÁ
S
Rendezett halmaz
Az elemek csak egyszer
szerepelhetnek.
![Page 62: Rendszermodellezés - inf.mit.bme.hu · 7 Tudományos és mérnöki modellek Tudományos modell - deskriptív (leíró) oNewton törvénye nem illeszkedik fekete lyukra →rossz modell](https://reader033.fdocument.pub/reader033/viewer/2022050303/5f6c271f9ba4f654805e76b0/html5/thumbnails/62.jpg)
62
FCA-k, hálók
http://www.upriss.org.uk/fca/examples
▪ Háló (lattice)▪ FCA (Formal Concept Analysis)