Rendszertervezés és -integráció

VIMIMA11  |  Villamosmérnök MSc  |  Félév: 2  |  Kredit: 4

A tárgy oktatói

Majzik István
Majzik István

habilitált docens

tárgyfelelős

A tantárgy részletes tematikája

1. Fejlesztési folyamatok, életciklus modellek és minőségbiztosítás szerepe a rendszertervezés során. A CMMI alapjai.2. Projekttervezés. Követelmények, verziók és konfigurációk kezelése. Gyakorlat: Követelménykezelés (követhetőség), konfigurációmenedzsment és verziókezelés (pl. DOORS, SVN, Trac).3. A V-modell szerinti fejlesztési életciklus lépései. Követelmények analízise.4. Logikai és technikai architektúrák tervezése. Hardver és szoftver együttes tervezés. Modell alapú tervezés (pl. Simulink, Stateflow). Hardver és szoftver komponensek specifikálása, tervezése, megvalósítása és integrációja. Beágyazott rendszerekre jellemző specialitások és megkötések.5. Követelmények és tervek ellenőrzése: Általános elvárások, a teljesség, ellentmondás-mentesség és tesztelhetőség kritériumai. Forráskód ellenőrzés (hibaminta keresés, kódolási szabályok ellenőrzése). Gyakorlat: Forráskód ellenőrzés statikus analízissel. Dokumentáció generálása (DoxyGen).6. Tesztelési alapfogalmak áttekintése (az ISTQB ajánlásai). Komponens szintű (unit) tesztelés specifikáció alapú (funkcionális, fekete doboz) és struktúra alapú (üvegdoboz) tesztelési módszerekkel. Teszt fedettségi mértékek és teszt minőségi jellemzők. A modellalapú teszttervezés lehetőségei. Gyakorlat: Komponens (unit) tesztelés. Teszt fedettség mérése.7. Integrációs és rendszertesztelés: Alulról felfelé és felülről lefelé történő inkrementális tesztelés. A rendszertesztelés és a validációs tesztelés tipikus módszerei. Monitorozás és debuggolás.8. Integrációs tesztelés model-, software-, processor-, hardware-in-the-loop (MIL, SIL, PIL, HIL) módszerekkel. Gyakorlat: HIL tesztelési környezet összeállítása, egy tipikus HIL tesztfejlesztő környezet (pl. NI VeriStand) használatának bemutatása.9. A rendszer- és szoftverbiztonság koncepciója: Baleset, kockázat, biztonság fogalma. A biztonságintegritási szint. A megbízhatóság, rendelkezésre állás és a biztonságosság kritériumai és mérőszámai. Gyakorlat: Biztonsági követelmények specifikálása. Biztonságkritikus rendszerek fejlesztési szabványai (az IEC 61508 alapján).10. Az architektúra tervezés alapelvei és tipikus megoldásai biztonságkritikus rendszerek esetén: A biztonságos működés általános feltételei hibák bekövetkezésekor. Architektúra tervezési minták fail-stop illetve fail-operational jellegű működéshez.11. Hibatűrés állandósult és tranziens hardver hibák esetén (TMR, NMR struktúrák, a hibadetektálás és helyreállítás szoftveres módszerei). Hibatűrés szoftver tervezési hibák esetén (N-verziós programozás, javító blokkok). Az egyes megoldások erőforrás- és időigénye. Gyakorlat: Architektúra tervezési minták használata. Architektúra tervek készítése modellező eszközzel. Egy SCADA rendszer architektúrájának elemzése (mintapélda).12. A veszély analízis módszerei a tervezői döntések elemzéséhez: A veszély analízis alapvető módszereinek áttekintése. Kvalitatív és kvantitatív veszély analízis technikák: Hibafa, eseményfa, ok-következmény analízis, FMEA, FMECA. Kockázati mátrix felépítése az analízis alapján. Az általános kockázatcsökkentési módszerek áttekintése.13. Megbízhatósági analízis módszerek a szolgáltatásbiztonsági követelmények teljesítésének igazolásához: Kombinatorikus modellek használata komponensek független hibái esetén. A megbízhatósági blokk diagram felépítése, soros, párhuzamos, szavazásos struktúrák analízise. Gyakorlat: Hibafa és eseményfa konstrukciója, megbízhatósági blokk diagram összeállítása. Egy SCADA rendszer megbízhatósági analízise (mintapélda).14. A formális modelleken alapuló tervezés, helyességigazolás és kódgenerálás: Formális modellek időfüggő viselkedésű beágyazott vezérlőkhöz. A követelmények formalizálása temporális logikákkal. Formális verifikáció modellellenőrzéssel (mintapélda). Kódgenerálás időzített automata modellek alapján. Monitor szintézis a biztonsági követelmények futásidőbeli ellenőrzéséhez.