„Rendszermodellezés” változatai közötti eltérés

Nagy Marcell (vitalap | szerkesztései)
a autoedit v2: fájlhivatkozások egységesítése, az új közvetlenül az adott fájlra mutat
74. sor: 74. sor:


== Segédanyagok ==
== Segédanyagok ==
* Tanszéki jegyzet: [[:File:Remo_jegyzet_20160720.pdf|pdf]] - [http://docs.inf.mit.bme.hu/remo-jegyzet/ online (legújabb)]
* Tanszéki jegyzet: [[Media:Remo_jegyzet_20160720.pdf|pdf]] - [http://docs.inf.mit.bme.hu/remo-jegyzet/ online (legújabb)]
* Előadások diái 2016:
* Előadások diái 2016:
** [[:File:Remo_dia_2015-16-2_1.pdf|Modellezési alapismeretek]]
** [[Media:Remo_dia_2015-16-2_1.pdf|Modellezési alapismeretek]]
** [[:File:Remo_dia_2015-16-2_2.pdf|Strukturális modellezés]]
** [[Media:Remo_dia_2015-16-2_2.pdf|Strukturális modellezés]]
** [[:File:Remo_dia_2015-16-2_3.pdf|Állapot alapú modellezés]]
** [[Media:Remo_dia_2015-16-2_3.pdf|Állapot alapú modellezés]]
** [[:File:Remo_dia_2015-16-2_4.pdf|Folyamatmodellezés]]
** [[Media:Remo_dia_2015-16-2_4.pdf|Folyamatmodellezés]]
** [[:File:Remo_dia_2015-16-2_5.pdf|Teljesítménymodellezés I.]]
** [[Media:Remo_dia_2015-16-2_5.pdf|Teljesítménymodellezés I.]]
** [[:File:Remo_dia_2015-16-2_6.pdf|Teljesítménymodellezés II.]]
** [[Media:Remo_dia_2015-16-2_6.pdf|Teljesítménymodellezés II.]]
** [[:File:Remo_dia_2015-16-2_7.pdf|Modellek ellenőrzése]]
** [[Media:Remo_dia_2015-16-2_7.pdf|Modellek ellenőrzése]]
** [[:File:Remo_dia_2015-16-2_8.pdf|Vizuális adatelemzés]]
** [[Media:Remo_dia_2015-16-2_8.pdf|Vizuális adatelemzés]]
** [[:File:Remo_dia_2015-16-2_9.pdf|Modellek végrehajtása, kódgenerálás]]
** [[Media:Remo_dia_2015-16-2_9.pdf|Modellek végrehajtása, kódgenerálás]]
** [[:File:Remo_dia_2015-16-2_10.pdf|Szimuláció]]
** [[Media:Remo_dia_2015-16-2_10.pdf|Szimuláció]]
** [[:File:Remo_dia_2015-16-2_11.pdf|Modellek fejlesztése]]
** [[Media:Remo_dia_2015-16-2_11.pdf|Modellek fejlesztése]]


== Házi feladat ==
== Házi feladat ==
97. sor: 97. sor:
* Olyan nyíl (állapotátmenet), amire nincs semmi írva (nincs őrfeltétel, mindig lefut).
* Olyan nyíl (állapotátmenet), amire nincs semmi írva (nincs őrfeltétel, mindig lefut).
Ha a modelledben ezeket használod, az oldal nem fogja elfogadni a házidat. Két módon lehet megoldani a hibát:
Ha a modelledben ezeket használod, az oldal nem fogja elfogadni a házidat. Két módon lehet megoldani a hibát:
[[Fájl:Remo_modelltipusok_20160720.png|thumb|Szekvenciális programozásra hasonlító (balra), és helyes állapotalapú (jobbra) modellek]]
[[File:Remo_modelltipusok_20160720.png|thumb|Szekvenciális programozásra hasonlító (balra), és helyes állapotalapú (jobbra) modellek]]
* <code>after 0s</code> használata. Gyorsabb, de ez csak egy kiskapu, nem segíti a tanulást.
* <code>after 0s</code> használata. Gyorsabb, de ez csak egy kiskapu, nem segíti a tanulást.
* Meg kell érteni az állapotalapú modellezés alapját. Sokan úgy próbálják felépíteni a modellt, mint egy C nyelvben írt programot, ahol egymás után hajtódnak végre a feladatok, és az állapot egy művelet végrehajtásának felel meg. Ez hibás gondolkozás, mert állapotmodellezésre van szükség, és nem folyamatmodellezésre! Eseményvezérelt felépítés kell. A kép oldalt illusztrálja a kettő közötti különbséget. A hagyományos programozási módszer használatával keletkezik egy olyan állapotátmenet, aminek nincs kiváltó eseménye. Az állapotalapú modellezésnél ilyet ne csináljunk, mert a ChangeSettings nem egy olyan állapot, ami tartósan jellemezné a modellünket, hiszem a <code>whiteMoves = true</code> művelet elvégzése után azonnal bekövetkezik egy újabb állapotváltás, így a ChangeSettings csak egy pillanatig, és nem egy valamekkora időegységig jellemezte a modellt. Ha viszont a műveleteket nem az állapot belsejébe írjuk, hanem egy hurokélre, akkor valójában nem történik állapotváltás (ugyan oda térünk vissza), a művelet mégis végrehajtódik! Többnyire igaz, hogy úgy kell megtervezni a modellt, hogy az élekre kerülnek a változók módosításai, az állapotokra pedig az, ami megjelenik a képernyőn, lásd a képet. Ez természetesen nem mindig van így, de ha eszerint próbálod meg megtervezni a modelled felépítését, kiküszöbölheted az üres élek problémáját.
* Meg kell érteni az állapotalapú modellezés alapját. Sokan úgy próbálják felépíteni a modellt, mint egy C nyelvben írt programot, ahol egymás után hajtódnak végre a feladatok, és az állapot egy művelet végrehajtásának felel meg. Ez hibás gondolkozás, mert állapotmodellezésre van szükség, és nem folyamatmodellezésre! Eseményvezérelt felépítés kell. A kép oldalt illusztrálja a kettő közötti különbséget. A hagyományos programozási módszer használatával keletkezik egy olyan állapotátmenet, aminek nincs kiváltó eseménye. Az állapotalapú modellezésnél ilyet ne csináljunk, mert a ChangeSettings nem egy olyan állapot, ami tartósan jellemezné a modellünket, hiszem a <code>whiteMoves = true</code> művelet elvégzése után azonnal bekövetkezik egy újabb állapotváltás, így a ChangeSettings csak egy pillanatig, és nem egy valamekkora időegységig jellemezte a modellt. Ha viszont a műveleteket nem az állapot belsejébe írjuk, hanem egy hurokélre, akkor valójában nem történik állapotváltás (ugyan oda térünk vissza), a művelet mégis végrehajtódik! Többnyire igaz, hogy úgy kell megtervezni a modellt, hogy az élekre kerülnek a változók módosításai, az állapotokra pedig az, ami megjelenik a képernyőn, lásd a képet. Ez természetesen nem mindig van így, de ha eszerint próbálod meg megtervezni a modelled felépítését, kiküszöbölheted az üres élek problémáját.


== 1. ZH ==
== 1. ZH ==
* [[:Media:ReMo_mintazh1_2015tavasz_v2.pdf | 2015 tavasszal kiadott mintaZH]] + [[:Media:ReMo_mintazh1_2015tavasz_v2_mo.pdf | beugrókérdések megoldva]]
* [[Media:ReMo_mintazh1_2015tavasz_v2.pdf | 2015 tavasszal kiadott mintaZH]] + [[Media:ReMo_mintazh1_2015tavasz_v2_mo.pdf | beugrókérdések megoldva]]
* [[Rendszermodellezés_1._ZH/Igaz_Hamis_kikérdező|Igaz-Hamis kikérdező]] (előző ZH-k alapján) - '''csak az igaz állításokat kell bejelölni!'''
* [[Rendszermodellezés_1._ZH/Igaz_Hamis_kikérdező|Igaz-Hamis kikérdező]] (előző ZH-k alapján) - '''csak az igaz állításokat kell bejelölni!'''


== 2. ZH ==
== 2. ZH ==
* [[:Media:ReMo_mintazh2_20150509.pdf | 2015 tavasszal kiadott mintaZH]] + [[:Media:ReMo_mintazh2_20150509_kiskerdesek_megoldva.pdf | beugrókérdések megoldva]]
* [[Media:ReMo_mintazh2_20150509.pdf | 2015 tavasszal kiadott mintaZH]] + [[Media:ReMo_mintazh2_20150509_kiskerdesek_megoldva.pdf | beugrókérdések megoldva]]
* [[Rendszermodellezés_2._ZH/Rendszermodellezés|Igaz-Hamis kikérdező]] (előző ZH-k alapján) - '''csak az igaz állításokat kell bejelölni!'''
* [[Rendszermodellezés_2._ZH/Rendszermodellezés|Igaz-Hamis kikérdező]] (előző ZH-k alapján) - '''csak az igaz állításokat kell bejelölni!'''


A lap eredeti címe: „https://vik.wiki/Rendszermodellezés