Rendszermodellezés

VIMIAA00  |  Mérnökinformatikus BSc  |  Félév: 2  |  Kredit: 4

A tantárgy célkitűzése

A tantárgy tematikusan az informatikai rendszerek tervezési folyamatának modell alapú megközelítését tárgyalja.

Célkitűzése a későbbi tantárgyak által megtanítandó specializált modellezési paradigmák előkészítése, az alapvető modellezési feladatok és eszközök bemutatásával. Egyúttal bemutat néhány olyan fogalmilag tiszta és egyszerűen kezelhető eszközt is, amelyek segítségével a tervezés alapvető aspektusait a hallgatók készség szinten elsajátíthatják és egyszerű, működő alkalmazásokat is tudnak tervezni.

A hallgatók megismerik a magas szintű, grafikus eszközökre épülő, folyamat alapú rendszermodellezés, a helyességbizonyítás, teljesítményanalízis és szolgáltatásbiztonság alapfogalmait és megjelenésüket a modellezésben. A korábbi automataelméleti és rendszertechnikai ismereteikre építve megismerik a szabatos rendszertervezés alapjait. A hallgatók a modellezés munkafolyamatain keresztül elsajátítják az informatikai rendszerek implementációjának egyes munkafogásait. Jártasságot szereznek a szimulációs rendszervizsgálatokban és a mérési adatok vizuális elemzésében.

A tárgy kiemelt didaktikai célja a hallgatók absztrakciós készségének fejlesztése és a későbbi szakmai tárgyak fogalmi és motivációs előkészítése.

A tantárgy követelményeit eredményesen teljesítő hallgatók:

  1. megismerik a modellalkotás folyamatát és a modellalapú tervezés alapjait,
  2. képesek az informatikai rendszerekkel szembeni követelmények szabatos megfogalmazására, működési környezetük és architektúrájuk modellezésére,
  3. jártasságot szereznek a diszkrét rendszerek szimuláció alapú helyességbizonyításában,
  4. képesek a tervezett rendszerek szűk keresztmetszeteinek feltárására, megoldási alternatívák összehasonlító elemzésére,
  5. betekintést nyernek a számítógéprendszerek gyakorlati méréstechnikájának alapjaiba,
  6. képesek egyszerű alkalmazások automatikus kódgenerálással történő modell alapú fejlesztésére.

 

Gönczy László
Gönczy László

tanszékvezető, docens

tárgyfelelős

A tantárgy részletes tematikája

1-2. hét: Modellezési alapok
Célkitűzés: az alapvető fogalomkészlet és kontextus megadása
Alapfogalmak: Modellezés célja, modellek felhasználása rendszertervezésben. Szöveges, grafikus és formális specifikáció. Kezdeti modellek megalkotása, követelmény, tervezési, analízis, konfigurációs modellek.
Modell szemantika és szintaxis. Modellezés alapműveletei, modellfinomítás. Többaspektusú modellezés. Hierarchia, taxonómia fogalma, szerepe a rendszertervezésben. Bonyolultságkezelés (Hierarchikus modellezés, absztrakció). Eszköz: MindMap modellező.

3-4. hét: Strukturális modellek, adatmodellezés
Meta-modellek és modellek kapcsolata. Koncepció/példány kérdése, öröklés, polimorfizmus. Modellstruktúrák vizualizációja, Modellhelyesség kritériumai, típushelyesség, példányosítás/alosztályok, tranzitív kapcsolatok. Eszköz: MindMap + Táblázatkezelő.

5-6. hét Állapotmodellezés
Állapotgráfok, állapottérképek. Hierarchia modellezése, konkurencia kezelése. Üzenetkezelés és várakozási sor fogalma. Determinisztikus/nem-determinisztikus modellezés. Eszköz: Egyszerű állapotgráf-állapottér eszköz.

7-8. hét: Viselkedésmodellek (állapot/szekvencia/protokollok)
Discrete Event System Specification (DEVS) megközelítés. Adatfolyam modellezés. Folyamatmodell, szekvencia/trace modell, idődiagram. Felhasználási területek: protokoll definíció, tesztesetek, forgatókönyvek. Modellellenőrzés intuitív bevezetése. Eszköz: DEVS eszköz.

9-10. hét: Modellek fejlesztése
Esemény/folyamatorientált modellezés, időzítés-fogalom. Szimuláció alapjai. Modellek tesztelése/javítása, alapvető teljesség/helyességellenőrzés. Paraméterek hangolása, iteratív modellezési folyamat. Felépítési és viselkedési kritériumok megfogalmazása (pl. invariánsok).
Benchmarkok használata. Legyűjtendő adatok, logelemzés, méréstervezés. Folyamatok erőforráshasználata. QoS, extra-funkcionális aspektusok. Eszköz: Egyszerű szimulátor.

11. hét: Vizuális adatelemzés és modellalkotás
Vizuális analízis célja, eszközei, alapvető statisztikai fogalmak informális bevezetése.
Méréskiértékelés és rendszermodellezés kapcsolata, átmenet minőségi/mennyiségi modellek közt. Vizuális elemzés felhasználása rendszer magas szintű modelljének megalkotásakor. Eszköz: drag and drop vizuális elemző.

12-13. hét: Mennyiségi analízis, teljesítménymodellezés
Teljesítménymodellek fogalmai. Szimulációs eredmények értelmezése. Felhasználási területei: teljesítménymérések, szoftverhangolás, rendszer kiépítésének (deployment) tervezése.

14. hét Kitekintés: Konstruktív modellezés, kódgenerálás, fejlesztési módszerek
Általános célú és szakterület-specifikus nyelvek. Végrehajtható modellek, fUML, Alf. Szemantika jelentése, bemutatása gyakorlati példákon (kódgenerálás Yakinduban).
Szakterületi modellek/modellezési nyelvek használata. Miből áll egy modellezési nyelv, mi a szerepe a szakterületspecifikus támogatásnak. UML profilok.
DSE példák: Verilog, Matlab. Tervezési környezetek, fejlesztési támogatás (validáció, kódgenerálás, tervezőeszköz, modellkezelés, perzisztencia, stb.). Tervezési minták.
Szabályalapú modellek. Következtetés, szabályformák, alkalmazási területek (üzleti, monitorozás, stb.). Szabályok fejlesztése, döntési táblák.

A gyakorlati órák tartalma:
A hallgatók az alábbi témákból végeznek el (számítógépes vagy tantermi) gyakorlatot:
Szöveges specifikációtól a modellig: Modellezés, modellfinomítás, követelmények leírása
Adatséma modellezés.
Állapotmodellezés.
Komplex dinamikus rendszermodell elkészítése.
Modellek fejlesztése, statikus és dinamikus ellenőrzések, szimuláció bevezetése.
Teljesítményelemzés analitikus módszerekkel, feltáró vizuális adatelemzés használata a teljesítményelemzésben.

Emellett a gyakorlati órákon biztosítunk lehetőséget házi feladat konzultációra.