Tantárgy » BMEVIMIMA00
Modell alapú rendszertervezés
Model-based Systems Design
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
—
| Tantárgy neve (magyarul, angolul) |
Modell alapú rendszertervezés
Model-based Systems Design
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIMIMA00 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | vizsga | ||||||||||||
| Tantárgy kreditértéke | 4 | ||||||||||||
| Tantárgyfelelős |
DR. Semeráth Oszkár
beosztás: egyetemi docens
elérhetőség:
semerath.oszkar@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Mesterséges Intelligencia és Rendszertervezés Tanszék
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | http://www.inf.mit.bme.hu/ | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzés
Tantárgyprogram
Az előadások tematikája:
Előadás | Előadás anyaga |
1. | Bevezetés: Szakterület-specifikus nyelvek és modelltranszformációk szerepe kritikus rendszerek modellvezérelt tervezésében. A nyílt forráskódú tervezőrendszerek szerepe. |
2. | Modellezési nyelvek tervezése és technológiái: Metamodellezés/Ontológiák (EMF, OWL/RDF). Származtatott modellelemek. Absztrakció és hierarchia szerepe a modellezésben. UML Profile-ok felépítése. |
3. | Modellezési nyelvek tervezése és technológiái: Modell-lekérdező nyelvek, (OCL, gráfminták), Jólformáltsági kényszerek, Kiértékelési stratégiák (inkrementális vs. lokális keresés). Esettanulmány (DSM). |
4. | Modellezési nyelvek tervezése és technológiái: Nézetek, nézőpontok, Grafikus és szöveges nyelv. Absztrakt és konkrét szintakszis. definíciója és kapcsolata. Szöveges és grafikus szintakszist támogató keretrendszerek. Esettanulmány (DSM) |
5. | Modell alapú módszerek: Automatikus modelltranszformációk; Modelltranszformációk csoportosítása. A model-to-model (M2M) és model-to-text (M2T) transzformációk. Szabványos / népszerű modelltranszformációs nyelvek. Inkrementális modell-szinkronizáció. Modell-szimuláció szerepe viselkedésleíró nyelvekben. |
6. | Automatikus kódgenerátorok: Minta (template) alapú kódgenerátorok. Közvetett kódgenerátorok (M2M + nyelvtan alapú formázás). Inkrementális kódgenerátorok. Kódgenerátorok tanúsítványozása. Esettanulmány |
7. | Kritikus rendszertervezés: Követelmény, funkcionális és strukturális modellezés; a kapcsolódó szabványos nyelvek és profile-ok (UML MARTE, SysML) áttekintése, modellezési best practice-ek, esettanulmány. |
8. | Kritikus rendszertervezés: Platform modellezés, Architekturális tervezési minták; Redundancia és hibatűrés; a kapcsolódó szabványos nyelvek és profile-ok (UML MARTE) áttekintése, modellezési best practice-ek, esettanulmány. |
9. | Kritikus rendszertervezés: Erőforrás partícionálás, Esemény- és idővezérelt rendszerek; Extra-funkcionális paraméterek modell alapú analízise. Munkafolyamat szemléletű allokációs folyamat. Nyomonkövethetőség |
10. | Kritikus rendszertervezés: Tervezési tér felderítés; Konfigurációtervezés; Tervezési variánsok szisztematikus előállítása és kiértékelése |
11. | Kollaboratív modellezés: Csoportosítás: offline (SVN, CVS) és online (pl. GoogleDocs) megközelítések. Modellek összehasonlítása. Eszközintegráció: célja, kihívásai; Munkafolyamat szemléletű eszközintegráció |
12. | Üzleti folyamatok modellezése és analízise: BPMN alapú modellezés és szimuláció alapú analízis. Modellezési best practice-ek, esettanulmány. |
13. | Szabály alapú rendszerek: Prioritások és konfliktusok kezelése, szabályok ütemezés. Komplex eseményfeldolgozás (Complex Event Processing): események fogalma, (időablakozott) feldolgozása. |
14. | Modell alapú fejlesztési folyamat (Modell menedzsment; költségbecslés; agilis MDE) |
A gyakorlatok tematikája:
Gyakorlat | Gyakorlat anyaga |
1. | Szakterület specifikus nyelvek: metamodellezés (EMF) |
2. | Szakterület specifikus nyelvek: jólformáltsági kényszerek, nézetek (OCL EMF-IncQuery) |
3. | Modelltranszformációk és kódgenerátorok (Xtend) |
4. | Kritikus rendszerek tervezése: funkcionális, architektúra és platform modellezés (Papyrus UML + MARTE Profile) |
5. | Kritikus rendszerek tervezése: erőforrás partícionálás, konfiguráció tervezés (Papyrus UML + MARTE Profile) |
6. | Szabály alapú rendszerek (Drools) |
Napjainkra a modell alapú szoftver- és rendszertervezés az informatika számos területén (pl. autóipar, repülőgépipar, üzleti folyamatok) tekinthető az egyik vezető fejlesztési módszertannak. A magasszintű, precíz, szabványos és szakterület-specifikus modellek megalkotásával és ellenőrzésével a tervezés korai fázisaiban kiszűrhető számos ellentmondás és tervezési hiba, melyek egy kódcentrikus fejlesztési folyamat esetében csak a tesztelés során deríthetők fel. Modellszimulációk segítségével előzetesen megbecsülhető a rendszer várható teljesítménye, megbízhatósága vagy rendelkezésre állása is. Automatikus kódgenerátorok és modelltranszformációk segítségével pedig automatizálhatóvá válik az implementáció számos kritikus lépése, mint a forráskód, a konfigurációs leírók vagy a dokumentáció elkészítése.
A hatékony modellalapú tervezéshez elengedhetetlenek a modern, egyedi tervező- és ellenőrzőeszközök is, ezért a tárgy bemutatja azok kifejlesztéséhez szükséges alaptechnológiákat, többek között a szakterület specifikus modellezési nyelvek, modell-lekérdezések és transzformációk, és kódgenerátorok tervezési technológiáit. Betekintést ad továbbá a modell alapú tervezés fejlesztési módszertanának legfontosabb kérdéseibe is.
A tantárgy célja, hogy egy szoftverfejlesztési házi feladat tervezésén és implementációján keresztül egyszerre mutassa be a modell alapú módszerek alapjait, az ipari környezetben használatos technológiákat és a kapcsolódó tervezési módszertanokat. Ennek keretében a hallgatók részletesen megismerik
a kritikus rendszerek tervezésének komplex feladataival és módszereivel (platform modellezés, hibatűrő tervezési minták, allokáció, ütemezés, optimalizáció, szolgáltatásbiztonsági paraméterek),
az ezt támogató szakterület-specifikus tervezőeszközök fejlesztési alapjaival (metamodellezés, grafikus és szöveges nyelvek, nézetek, nézőpontok),
az automatizálást támogató modell alapú módszereket és technológiákat (modell-lekérdezése, modelltranszformációk, kódgenerátorok) valamint,
a modell alapú fejlesztési folyamat során használt főbb elvekkel.
A tárgy elvégzésével a hallgatók olyan ismeretekre tesznek szert, amelyek segítségével képesek lesznek egy komplex informatikai rendszer projekt modell alapú tervezésére továbbá az egyes lépések hiányzó automatizált eszköztámogatásának a kifejlesztésére is.
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
előadás és gyakorlat
Tanulástámogató anyagok
Online források
Marco Brambilla, Jordi Cabot, Manuel Wimmer: Model Driven Software Engineering in Practice. Morgan&Claypool Publishers, 2012.; J. Holt, S. Perry: SysML for Systems Engineering, 2008.;
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Tudás típusú kompetenciák
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Alapvető programozási (Java, C, C++) és rendszermodellezési ismeretek
Képesség típusú kompetenciák
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Alapvető programozási (Java, C, C++) és rendszermodellezési ismeretek
Általános szabályok
Követelmények:
A szorgalmi időszakban: A félév végi aláírás feltétele a tárgy anyagát felölelő házi feladat (otthoni feladat) önálló, megfelelő színvonalú elkészítése. A házi feladat kiadása legkésőbb a 4. oktatási héten, beadása pedig a 14. oktatási héten történik. A félév folyamán a házi feladat előrehaladását rendszeresen ellenőrizzük.
A vizsgaidőszakban: A hallgatók a tárgyból szóbeli vizsgát tesznek. A vizsga feltétele az aláírás megszerzése, a megszerzett aláírás 3 évig érvényes. A félévközi házi feladat (otthoni feladat) értékelése 50% súllyal számít bele a vizsgajegybe.
Elővizsga: Nincs.
Pótlási lehetőségek:
A házi feladat (otthoni feladat) határidőn túl a pótlási héten adható be (vagy javítható), a vizsgaidőszakban pótlás már nem lehetséges.A vizsga egyszeri javítására minden hallgató jogosult, ekkor az érvényes eredmény a legutolsó alkalommal elért osztályzat.
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Nincs megadva.
Ajánlott tantárgyak
-
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantárgykövetelmények hatályosságának kezdete:
—
Tantárgykövetelmények hatályosságának vége:
—
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.