Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Hasonló dokumentumok
Alapszintű formalizmusok

Valószínűségi modellellenőrzés Markov döntési folyamatokkal

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Modellezési alapismeretek

Részletes szoftver tervek ellenőrzése

Modellezési alapismeretek

Automatikus tesztgenerálás modell ellenőrző segítségével

Modellellenőrzés a vasút automatikai rendszerek fejlesztésében. XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő

Gyakorló feladatok: Formális modellek, temporális logikák, modellellenőrzés. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Formális verifikáció Modellezés és modellellenőrzés

Formális modellezés és verifikáció

Modellek ellenőrzése és tesztelése

Modellezési alapismeretek

Szoftver-modellellenőrzés absztrakciós módszerekkel

BPEL nyelvű üzleti folyamatok modellezése és formális ellenőrzése

Részletes tervek ellenőrzése

Modell alapú tesztelés mobil környezetben

Sztochasztikus temporális logikák

Szoftverminőségbiztosítás

Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok

Modellezési alapismeretek

Hatékony technikák modellellenőrzéshez: Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Informatikai technológiák szakirány Rendszertervezés ágazat

Modell alapú tesztelés: célok és lehetőségek

Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések

Temporális logikák és modell ellenırzés

Alapszintű formalizmusok

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

A fejlesztési szabványok szerepe a szoftverellenőrzésben

Biológiai rendszerek modellellenőrzése bayesi megközelítésben

Rendszermodellezés: házi feladat bemutatás

Szoftver karbantartási lépések ellenőrzése

Verifikáció és validáció Általános bevezető

A modell-ellenőrzés gyakorlata UPPAAL

Elérhetőségi analízis Petri hálók dinamikus tulajdonságai

Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések

A formális módszerek szerepe

Időzített rendszerek és az UPPAAL II

Informatikai rendszertervezés

Követelmények formalizálása: Temporális logikák. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Autóipari beágyazott rendszerek. Kockázatelemzés

2.előadás. alapfogalmak, formális definíció

Mikrorendszerek tervezése

Az UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Rendszertervezés ágazat

Formális módszerek. A formális modellezés és a formális verifikáció alapjai. dr. Bartha Tamás BME Közlekedés- és Járműirányítási Tanszék

Monitorok automatikus szintézise elosztott beágyazott rendszerek futásidőbeli verifikációjához

Formális módszerek. A formális modellezés és a formális verifikáció alapjai. dr. Bartha Tamás BME Közlekedés- és Járműirányítási Tanszék

Elosztott adatbázis-kezelő formális elemzése

Szoftver értékelés és karbantartás

Informatikai rendszertervezés

Nagy bonyolultságú rendszerek fejlesztőeszközei

Összeállította Horváth László egyetemi tanár

Zárthelyi mintapéldák. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Modell alapú tesztelés

2. gyakorlat: Részletes tervek és forráskód ellenőrzése

Modell alapú tesztelés

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Hatékony technikák modellellenőrzéshez: Szimbolikus technikák (ROBDD)

Specifikáció alapú teszttervezési módszerek

Automatikus kódgenerálás helyességének ellenőrzése

Formális módszerek GM_IN003_1 Bevezetés

Szoftverminőségbiztosítás

Egy egyszerű, gyors és szabad újratelepítő eszköz: upi

Specifikáció alapú teszttervezési módszerek

Petri-hálók és produkciós hálók közötti kapcsolat

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK A TESZT FEJLESZTÉSI FOLYAMATA A TESZTTERVEZÉSI TECHNIKÁK KATEGÓRIÁI

A formális módszerek szerepe a rendszerek biztonságának növelésében

Szoftver karbantartás

Logisztikai szimulációs módszerek

Időzített átmeneti rendszerek

Folyamatmodellezés. Rendszermodellezés Budapesti Műszaki és Gazdaságtudományi Egyetem. Hibatűrő Rendszerek Kutatócsoport

Hibatűrés. Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Kategória Összeg Búr Márton A Sik Tamás Dávid A Balangó Dávid B Barta Ágnes B Cseppentő Lajos B Gönczi Tamás B 50000

Tesztelési feladatok és kihívások a FALCON projektben

A programozó matematikus szak kredit alapú szakmai tanterve a 2004/2005. tanévtől, felmenő rendszerben

Hatékony technikák modellellenőrzéshez: Szimbolikus technikák (ROBDD)

Modellezési alapismeretek

Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben. Ráth István

Modell alapú tesztelés

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

Modellek fejlesztése

Múlt és jövő: Új algoritmusok lineáris temporális tulajdonságok szaturáció-alapú modellellenőrzésére

Modellek fejlesztése

Programtervezés. Dr. Iványi Péter

A formális módszerek szerepe

Felhők teljesítményelemzése felhő alapokon

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Bevezetés a programozásba

Digitális technika (VIMIAA02) Laboratórium 4

Nagy Gábor compalg.inf.elte.hu/ nagy

Elosztott biztonságkritikus rendszerek xtuml alapú modellvezérelt fejlesztése

Aszinkron rendszerek modellellenőrzése párhuzamos technikákkal

Újfajta, automatikus, döntési fa alapú adatbányászati módszer idősorok osztályozására

MEMS eszközök redukált rendű modellezése a Smart Systems Integration mesterképzésben Dr. Ender Ferenc

Átírás:

Rendszermodellezés Modellellenőrzés Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Ismétlés: Mire használunk modelleket? Kommunikáció, dokumentáció Gondolkodás, tervezés támogatása Analízis Származtatás Szimuláció belefér egy számítógépbe / emberi agyba

Ismétlés: Felhasználás - Analízis Emberi erővel vagy (részben) automatizáltan Cél o Ellenőrzés, hibák keresése (best effort) o Szolgáltatásbiztonsági kritériumok igazolása (erősebb!) o Jellemzők számítása, tervezése (pl. ütemezés) Módszer o Felületes, statikus elemzés végrehajtás nélkül Formális állítások bizonyításával o Dinamikus (végrehajtva) Szimuláció / teszt (szúrópróba jelleg) Kimerítő állapottér-bejárás, modellellenőrzés

Félreértések eloszlatása Modellellenőrzés Modellek ellenőrzése

MODELLELLENŐRZÉS Modellek kimerítő dinamikus analízise

Modellellenőrzés Adott egy (nemdeterminisztikus) viselkedésmodell o Diszkrét állapotátmenetek ( tranzíciós rendszer ) Adottak formális követelmények o Deadlockmentesség o Biztonsági kritériumok (invariánsok) o Vezérelhetőség o A modell kielégíti-e a követelményeket? o A teljes állapottér felderítésével eldönthető

Motiváció Biztonságkritikus beágyazott rendszerek o Pl. repülőgép/autó fedélzeti elektronika o Hibák előzetes felderítése létfontosságú Modell alapú fejlesztés és kódgenerálás o pl. SCADE adatfolyam alapú fejlesztőeszköz Rockwell Collins esettanulmány o ADGS-2100 Adaptive Display & Guidance System WM o Lockheed Martin Aero robotrepülő vezérlő o komponensenként akár 10 13 méretű állapottér o 0 hibát találtak teszteléssel, 12-t modellellenőrzéssel

Motiváció Miért nem használ mindenki modellellenőrzést? o Nehéz, lassú folyamat o Magas képzettséget igényel Mikor használják mégis? o Biztonságkritikus rendszerek tervezése o Protokollhibák keresése o Programverifikáció Trend o Egyre jobb eszközök o Egyre több célra éri meg

Hogyan ellenőrizzünk? Naiv módszer: állapottér-bejárás Minden elérhető állapotra igazak a kritériumok? Ha igen: siker Ha nem: ellenpélda o Rossz állapot az odavezető úttal együtt o Segít megtalálni a hibát o Elhárítása után új ellenőrzés csak biztonsági kritériumok (invariánsok)

Problémák Exponenciálisan nagy lehet az állapottér! o Állapotváltozók értékkészletének Descartes-szorzata o Ne kézzel, hanem szoftverrel o és ügyes algoritmusokkal, heurisztikákkal Mit kezdünk a nem állapotra felírt kritériumokkal? o Ha A állapotba lép, később elkerülhetetlenül B lesz o Ügyes algoritmus, vagy megkötött nyelv kell Ezért kellenek: MC (Model Checker) eszközök

Kritériumok leírása Egy gyakori formalizmus: temporális logikák Állapotokra vonatkozó állítások Logikai operátorok ( ) Útvonalkvantorok o (néha A) - minden lehetséges esetben o (néha E) - legalább egyféle lefutásban Temporális operátorok o (néha G) végig, állandóan o (néha F) - legalább egyszer

Példa Vezérlőrendszert fejlesztünk egy modellvasúthoz

DEMO UPPAAL 4.0.7 Modell építése o Automaták aszinkron kompozíciója o (csatornákkal lehetne szinkronizálni) Kritériumok megfogalmazása o Leegyszerűsített temporális logika Kritériumok ellenőrzése o Kritérium be nem tartása esetén: Ellenpélda vizsgálata Modell kijavítása

DEMO Kritérium példák Validáció: vonatok száma megmarad o A[] vonatok_szama == foglaltsag[0] + foglaltsag[1] + Vonat nem siklik ki o A[] not Thomas.kisiklott Nincs karambol o A[] forall(sz: szakasz) foglaltsag[sz] < 2 Mindenhova elérhet a vonat o E<> Thomas.s1, stb.

UPPAAL specialitás Időzített automata (timed automaton) o Stopperszerű órák definiálhatóak o Állapotátmenetek indíthatják o Óraintervallum megszabható őrfeltételként o Óralimit megszabható állapot-invariánsként o Vannak azonnali állapotátmenetek is Vizsgálható: időzítések, real-time kényszerek o Elég gyorsan vált-e a szemafor pirosra, hogy a vonat mindig meg tudjon állni a következő sínszakasz előtt?

Formális módszerek Formális módszerek o Matematikailag szabatos eszközök o Mérnöki rendszerek, hardverek és szoftverek Specifikációjára Tervezésére, fejlesztésére Verifikációjára, analízisére BMEVIMIM100 Formális módszerek o Elsőéves MSc tárgy o 3/0/0/f o 4 kredit