A modellellenőrzés egy alkalmazása: Tesztgenerálás modellellenőrzővel
|
|
- Boglárka Natália Jónás
- 4 évvel ezelőtt
- Látták:
Átírás
1 A modellellenőrzés egy alkalmazása: Tesztgenerálás modellellenőrzővel Majzik István Micskei Zoltán BME Méréstechnika és Információs Rendszerek Tanszék 1
2 Bevezetés: Szintézis feladatok megoldása modellellenőrzővel 2
3 Bevezetés: Szintézis feladat Cél: Egy lépéssorozat meghatározása a probléma modelljében Gyártási folyamat: milyen lépésekkel készül el a termék? Protokoll, számítás: milyen lépésekkel terminál? Játék, rejtvény: milyen lépésekkel van megoldás? Modellellenőrző: minden lehetséges lépéssorozatot vizsgál; ezek közül kell a számunkra érdekeset lekérni Ha ellenpélda keresés a modellellenőrző célja: A keresett lépéssorozat legyen megfeleltethető egy várt ellenpéldának Ha tanú (witness) keresés a modellellenőrző célja: A keresett lépéssorozat elérhetősége legyen vizsgálva Egyszerű esetek: Lépéssorozat célállapotának megadásával Lépéssorozat generálás ellenpélda kereséssel: EF <célállapot> Lépéssorozat generálás tanú kereséssel: EF <célállapot> Legrövidebb, leggyorsabb lépéssorozat meghatározása Ha az ellenpélda vagy tanú elvárt tulajdonsága beállítható Pl. UPPAAL: legrövidebb vagy leggyorsabb trace 3
4 Bevezető mintapélda: Cryptica játék megoldása Cél: Templom kövek a célpontjaikba kerüljenek Egy lépés: Minden templom és blokkoló követ (amit lehet) balra vagy jobbra vagy felfelé vagy lefelé kell mozgatni A pálya széle vagy beépített kő egy-egy követ megállít, de a többi kő mozgatását nem hiúsítja meg 4
5 Bevezető mintapélda: Cryptica játék modellje Adatstruktúrák Pálya modellje: Beépített kövek és célpontok helye Játékállás modellje: Templom és blokkoló kövek elhelyezkedése Dinamikus működés: Lehetséges lépések felvételek Lépés balra / jobbra / felfelé / lefelé: játékállást módosító függvények a pálya modellje alapján A modellben megjelenik minden lehetséges lépés (a kívánt lépéssorozatot keresi a modellellenőrző) Legegyszerűbb automata: 5
6 Bevezető mintapélda: Cryptica játék modellje Célszerűbb modell: Lépések követhetővé tétele Az utolsó lépést jelzi a lépéssel elért állapot neve 6
7 Bevezető mintapélda: Cryptica játék modellellenőrzés Modellellenőrzés: Kirakható-e a játék? Legkevesebb hány lépésben kerülhetnek helyükre a templom kövek? Célállapot meghatározás: iscorrectdistribution() logikai függvény (csak akkor igaz, ha a templom kövek a helyükön vannak) Temporális logikai követelmény: E<> iscorrectdistribution() A legrövidebb tanú trace keresése A kirakás lépései a szimulátorban megjelenített állapotszekvencián követhetők 7
8 Tesztgenerálás modellellenőrzővel 8
9 Tesztgenerálás: Szerepe a modell alapú fejlesztésben Formális verifikáció (modellellenőrzés) Automatikus kódgenerálás Formális rendszermodell (forráskód specifikációja) Kézi kódolás Implementáció (forráskód) Tesztgenerálás Futtatható tesztkészlet Specifikációnak megfelelő tesztek 9
10 Tesztgenerálás: Használati esetei Kézi kódolás esetén: Konformancia ellenőrzés Modell tesztgenerálás Absztrakt tesztesetek kézi kódolás Implementáció (automatikus) tesztelés leképzés Konkrét tesztesetek Automatikus kódgenerálás esetén: Validáció kódgenerálás Modell Implementáció tesztgenerálás kézi validálás Absztrakt tesztesetek leképzés Konkrét tesztesetek 10
11 Előfeltételek és használat Állapot alapú, eseményvezérelt működés KS, LTS, KTS, TA az alapszintű formalizmusok Fedési kritériumok szerinti tesztelés Állapotfedés: A tesztekkel járjunk be minden állapotot Átmenetfedés: A tesztekkel járjunk be minden átmenetet Alapötlet: Egy teszt: Egy megfelelő lépéssorozat az állapottérben Cél: A modellellenőrző keresse ezt az állapottérben Irányítsuk úgy, hogy a modellellenőrző által generált ellenpélda legyen a teszteset Teszt elfogadhatósági kritérium Modell mint referencia alapján származtatható 11
12 Hogyan használható a modell ellenőrző? Állapot fedettség: LineWeak állapotra A modellellenőrző ellenpéldával demonstrálja, hogy a kritérium nem teljesül, az állapot elérhető. keyon LineOk keyrdy PowerOff Error Ready keyoff Kritérium megadása: A LineWeak állapotot soha sem lehet elérni: EF LineWeak LineWeak keyack Ez viszont pontosan egy, a LineWeak állapotot lefedő teszteset! 12
13 A rendszer modelljét egy modellellenőrző bemeneti nyelvére transzformáljuk. Automatikus tesztgenerálás Mérnöki modell Matematikai modell A kiadódó ellenpéldák egy-egy tesztesetet adnak meg. Modellellenőrző Teszteset Tesztelési kritérium TL formulák A fedési kritériumokat temporális logikai formulákkal fogalmazzuk meg. Például: Legyen minden egyes állapot lefedve tesztek által. Olyan futást akarunk, ahol teljesül a kritérium, ezért a formulák negáltjait ellenőriztetjük. 13
14 Egy megvalósítás UML állapottérkép UPPAAL modell Modellellenőrző XML teszteset Fedési kritérium CTL formulák 14
15 Vezérlés alapú fedettségi kritériumok Minden állapot illetve átmenet azonosítva: Egyedi L(s) címke illetve (a) akció Állapot fedés: KS vagy KTS modellen Minden s állapotra: EF L(s) vagy EF (L(s) EF start) start egy megfelelő állapot címkéje a következő teszt indításához Átmenet fedés: LTS vagy KTS modellen Minden t átmenetre, ahol (s,a,s ) : EF (a) 15
16 Korlátozások Modellellenőrző: Csak egy ellenpéldát generál Célja a hatékony állapottér bejárás: Nem feltétlenül a legrövidebb tesztesetet kapjuk! Sok modellellenőrző konfigurálható: Legrövidebb ellenpélda kérhető Szélességi bejárás kérhető (így rövid teszteset lesz) Mélységi bejáráshoz mélységkorlát megadható (teszt hossz korlát) Rövidebb ellenpélda iteratívan kereshető (hosszadalmas lehet) Legrövidebb illetve minimális tesztkészlet kiválasztása: NP-teljes Absztrakt és konkrét tesztesetek közt leképezés kell Absztrakt teszt eset: A modell bejárása (ellenpélda) Konkrét teszt eset: Hívási szekvencia adott teszt környezetben Nemdeterminisztikus modellek esetén nehézségek 16
17 Példa: Tesztgenerálási eredmények (állapotfedés) Options (compile or run-time) Time required for test generation Length of the test sequences -i 22m 32.46s 17 -dbfs 11m 48.83s 17 -i -m1000 4m 47.23s 17 -I 2m 48.78s 25 default 2m 04.86s 385 -I -m1000 1m 46.64s 22 -m m 25.48s 97 -m200 -w s 17 Mobiltelefon vezérlését leíró modell 10 állapot, 21 átmenet Paraméterek a SPIN modellellenőrzőhöz: -i iteratív, -I közelítő iteratív -dbfs: szélességi keresés -m mélységi keresés korlátja -w hash tábla korlátja 17
18 Példa: Szinkronizációs protokoll tesztelése Bitek szinkronizálása egy elosztott rendszerben 5 objektum, 31 állapot, 174 átmenet 2e+08 bejárandó állapot Más technikák is kellenek: Mélységkorlát bevezetése a kereséshez Szűkítések a modellben: FIFO kommunikációs csatorna méretének korlátozása Korábban lefedett kritériumok kihagyása További heurisztikák alkalmazása: Mélyen fekvő állapotok lefedése előbb Állapottér levágása 18
19 Példa: Teljes állapotfedésű tesztek Szinkronizációs protokoll 19
20 Kiterjesztés valósidejű rendszerekre Óra változók: Időfüggő viselkedést modellezhetünk Időzített automaták használata Modellellenőrző: UPPAAL 20
21 Példa: Generált tesztek State: ( input.sending mobile.poweron mobile1.lineok mobile2.callwait ) t=0 inputevent=28 outputevent=14 in_poweron=1 #depth=5 Delay: 6 A teszt időzítési viszonyok is szerepelnek a generált tesztesetben State: ( input.sending mobile.poweron mobile1.lineok mobile2.callwait ) t=6 inputevent=28 outputevent=14 in_poweron=1 #depth=5 Transitions: input.sending->input.sendinput { 1, inputchannel!, 1 } mobile2.callwait->mobile2.voic { inputevent == evkeyyes && t > 5 && in_poweron, inputchannel?, 1 } 21
22 Tesztgenerálás korlátos modellellenőrzővel Logikai függvény konstruálása: Állapottér kibontása k lépésben a kezdőállapotból Teszt kritérium megadása: TG formula, pl.: Adott állapot elérése Adott állapotátmenet végrehajtása Adott modellrészlet bejárása, k SAT ( ) path(, s,..., ) I s s s TG FSHELL FQL nyelv teszt célokhoz: in /code.c/ Kezdőállapot Állapottér kibontása Teszt cél Ha található behelyettesítés, akkor az egy tesztet ad: A teszt teljesíti a TG kritériumot A legrövidebb teszt 0-ról induló iteráció során található meg 22
23 Példa eszközök: UPPAAL CoVer UPPAAL COVER UPPAAL CoVer is a tool for creating test suites from UPPAAL models with coverage specified by coverage observers a.k.a. observer automata. 23
24 Példa eszközök: UPPAAL CoVer UPPAAL COVER UPPAAL CoVer is a tool for creating test suites from UPPAAL models with coverage specified by coverage observers a.k.a. observer automata. 24
25 Példa eszközök: UPPAAL TRON UPPAAL TRON: Testing Real-time Systems Online UPPAAL TRON is a testing tool, based on UPPAAL engine, suited for black-box conformance testing of timed systems, mainly targeted for embedded software commonly found in various controllers. By online we mean that tests are derived, executed and checked simultaneously while maintaining the connection to the system in real-time. 25
26 Példa eszközök: UPPAAL TRON UPPAAL TRON: Testing Real-time Systems Online UPPAAL TRON is a testing tool, based on UPPAAL engine, suited for black-box conformance testing of timed systems, mainly targeted for embedded software commonly found in various controllers. By online we mean that tests are derived, executed and checked simultaneously while maintaining the connection to the system in real-time. Relativized Timed I/O Conformance 26
27 Összefoglalás Tesztgenerálás fedési kritériumokhoz Állapotok fedése Átmenetek fedése Klasszikus modellellenőrzők használata Fedési kritériumhoz temporális logikai kifejezéskészlet Ellenpéldák adják a teszt eseteket A modellellenőrző konfigurálása fontos SAT alapú (korlátos) modellellenőrző használata Fedési kritérium (teszt cél) mint predikátum SAT eredménye (behelyettesítés) adja a teszt esetet 27
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 Majzik István Micskei Zoltán BME Méréstechnika és Információs Rendszerek Tanszék 1 Modell alapú fejlesztési folyamat (részlet)
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 Majzik István Micskei Zoltán BME Méréstechnika és Információs Rendszerek Tanszék 1 Modell alapú fejlesztési folyamat (részlet)
Automatikus tesztgenerálás modell ellenőrző segítségével
Méréstechnika és Információs Rendszerek Tanszék Automatikus tesztgenerálás modell ellenőrző segítségével Micskei Zoltán műszaki informatika, V. Konzulens: Dr. Majzik István Tesztelés Célja: a rendszerben
Modell alapú tesztelés
Szoftver- és rendszerellenőrzés (VIMIMA01) Modell alapú tesztelés Majzik István és Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/
Modell alapú tesztelés
Modell alapú tesztelés Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Motiváció Tartalomjegyzék Modellek (informális) szerepe a tesztelésben Modell alapú tesztgenerálás Tesztgenerálás
Modell alapú tesztelés
Modell alapú tesztelés Majzik István és Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/ 1 Motiváció Tartalomjegyzék
Modell alapú tesztelés
Modell alapú tesztelés Majzik István és Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/ 1 Motiváció Tartalomjegyzék
Alapszintű formalizmusok
Alapszintű formalizmusok dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Mit szeretnénk elérni? Informális tervek Informális követelmények Formális modell Formalizált követelmények
Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Korlátos modellellenőrzés dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Hol tartunk most? Alacsony szintű formalizmusok (KS, LTS, KTS) Magasabb szintű formalizmusok Temporális
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
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 1 Hol tartunk most? Alacsony szintű formalizmusok (KS, LTS, KTS)
Részletes tervek ellenőrzése
Szoftverellenőrzési technikák Részletes tervek ellenőrzése Majzik István http://www.inf.mit.bme.hu/ 1 Tartalomjegyzék Áttekintés Milyen szerepe van a részletes terveknek? Milyen ellenőrzési módszerek vannak?
Modell alapú tesztelés mobil környezetben
Modell alapú tesztelés mobil környezetben Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék A terület behatárolása Testing is an activity performed
Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
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,
Szoftver-modellellenőrzés absztrakciós módszerekkel
Szoftver-modellellenőrzés absztrakciós módszerekkel Hajdu Ákos Formális módszerek 2017.03.22. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 BEVEZETŐ 2
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 1 Mit szeretnénk elérni? Informális vagy félformális tervek Informális követelmények Formális modell: KS, LTS, TA
Részletes szoftver tervek ellenőrzése
Részletes szoftver tervek ellenőrzése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.mit.bme.hu/~majzik/ Tartalomjegyzék A részletes
Specifikáció alapú teszttervezési módszerek
Szoftverellenőrzési technikák Specifikáció alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Klasszikus tesztelési feladat A tesztelendő program beolvas 3 egész
Specifikáció alapú teszttervezési módszerek
Szoftverellenőrzési technikák Specifikáció alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Klasszikus tesztelési feladat A tesztelendő program beolvas 3 egész
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 1 Mit szeretnénk elérni? Informális vagy félformális tervek Informális követelmények Formális modell: KS, LTS, TA
Valószínűségi modellellenőrzés Markov döntési folyamatokkal
Valószínűségi modellellenőrzés Markov döntési folyamatokkal Hajdu Ákos Szoftver verifikáció és validáció 2015.12.09. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek
Modell alapú tesztelés: célok és lehetőségek
Szoftvertesztelés 2016 Konferencia Modell alapú tesztelés: célok és lehetőségek Dr. Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika
Rendszermodellezés: házi feladat bemutatás
Rendszermodellezés: házi feladat bemutatás Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement
Az UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Az UPPAAL egyes modellezési lehetőségeinek összefoglalása Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Résztvevők együttműködése (1) Automaták interakciói üzenetküldéssel Szinkron
Formális verifikáció Modellezés és modellellenőrzés
Formális verifikáció Modellezés és modellellenőrzés Rendszertervezés és -integráció előadás dr. Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
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
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 modellek használata és értelmezése Formális modellek
Alapszintű formalizmusok
Alapszintű formalizmusok dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Modellek a formális ellenőrzéshez Leképzések Mérnöki modellek Magasabb szintű formalizmusok PN, CPN, DFN,
Felhasználói felületek tesztelése
Szoftverellenőrzési technikák Felhasználói felületek tesztelése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/ Motiváció
Felhasználói felületek tesztelése
Szoftverellenőrzési technikák Felhasználói felületek tesztelése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/ Motiváció
Automatikus kódgenerálás helyességének ellenőrzése
Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Automatikus kódgenerálás helyességének ellenőrzése Készítette: Jeszenszky Balázs, V. Inf., jeszyb@gmail.com Konzulens:
Szoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (13) Szoftverminőségbiztosítás Szoftverminőség és formális módszerek Formális módszerek Formális módszer formalizált módszer(tan) Formális eljárások alkalmazása a fejlesztésben
Formális modellezés és verifikáció
Formális modellezés és verifikáció Rendszertervezés és -integráció előadás dr. Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék BME-MIT Célkitűzések
Forráskód generálás formális modellek alapján
Forráskód generálás formális modellek alapján dr. Majzik István Horányi Gergő és Jeszenszky Balázs (TDK) BME Méréstechnika és Információs Rendszerek Tanszék 1 Modellek a formális ellenőrzéshez Hogyan használhatók
MODELL ALAPÚ AUTOMATIKUS
MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK MODELL ALAPÚ AUTOMATIKUS TESZTGENERÁLÁS DIPLOMATERV Micskei Zoltán Műszaki informatika szak Konzulens: Dr. Majzik István Budapest 2005. május Modell alapú
R3-COP. Resilient Reasoning Robotic Co-operating Systems. Autonóm rendszerek tesztelése egy EU-s projektben
ARTEMIS Joint Undertaking The public private partnership in embedded systems R3-COP Resilient Reasoning Robotic Co-operating Systems Autonóm rendszerek tesztelése egy EU-s projektben Micskei Zoltán Budapesti
A formális módszerek szerepe
A formális módszerek szerepe dr. Majzik István dr. Bartha Tamás dr. Pataricza András BME Méréstechnika és Információs Rendszerek Tanszék 1 Matematikai technikák, Formális módszerek elsősorban diszkrét
Modellellenőrzés a vasút automatikai rendszerek fejlesztésében. XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő
Modellellenőrzés a vasút automatikai rendszerek fejlesztésében XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő 2018.04.25-27. Tartalom 1. Formális módszerek state of the art 2. Esettanulmány
Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése
Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése Somogyi Ferenc Attila 2016. December 07. Szoftver verifikáció és validáció kiselőadás Forrás Mathijs Schuts and Jozef
Alapszintű formalizmusok
Alapszintű formalizmusok dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Mit szeretnénk elérni? Informális tervek Informális követelmények Formális modell Formalizált követelmények
Teszttervezés. Majzik István, Micskei Zoltán. Integrációs és ellenőrzési technikák (VIMIA04) Méréstechnika és Információs Rendszerek Tanszék
Integrációs és ellenőrzési technikák (VIMIA04) Teszttervezés Majzik István, Micskei Zoltán Méréstechnika és Információs Rendszerek Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és
Bevezetés az informatikába
Bevezetés az informatikába 6. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
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
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 1 Mire kellenek a temporális logikák? 2 Motivációs mintapélda: Kölcsönös kizárás 2
Teszttervezés. Majzik István, Micskei Zoltán. Integrációs és ellenőrzési technikák (VIMIA04) Méréstechnika és Információs Rendszerek Tanszék
Integrációs és ellenőrzési technikák (VIMIA04) Teszttervezés Majzik István, Micskei Zoltán Méréstechnika és Információs Rendszerek Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és
Mesterséges intelligencia alapú regressziós tesztelés
Mesterséges intelligencia alapú regressziós tesztelés Gujgiczer Anna, Elekes Márton* * AZ EMBERI ERŐFORRÁSOK MINISZTÉRIUMA ÚNKP-16-1-I. KÓDSZÁMÚ ÚJ NEMZETI KIVÁLÓSÁG PROGRAMJÁNAK TÁMOGATÁSÁVAL KÉSZÜLT
2. gyakorlat: Részletes tervek és forráskód ellenőrzése
2. gyakorlat: Részletes tervek és forráskód ellenőrzése A gyakorlaton a részletes tervek ellenőrzésével és a forráskód verifikációját végző statikus ellenőrző eszközökkel fogunk foglalkozni. Részletes
Hatékony technikák modellellenőrzéshez: Szimbolikus technikák (ROBDD)
Hatékony technikák modellellenőrzéshez: Szimbolikus technikák (ROBDD) dr. Majzik István dr. Pataricza András dr. Bartha Tamás BME Méréstechnika és Információs Rendszerek Tanszék 1 Hol tartunk? Alacsony
Hatékony technikák modellellenőrzéshez: Szimbolikus technikák (ROBDD)
Hatékony technikák modellellenőrzéshez: Szimbolikus technikák (ROBDD) dr. Majzik István dr. Pataricza András dr. Bartha Tamás BME Méréstechnika és Információs Rendszerek Tanszék 1 Hol tartunk? Alacsony
Informatikai rendszertervezés
Informatikai rendszertervezés Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
Szoftver modul/unit tesztelés
Szoftver modul/unit tesztelés Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.mit.bme.hu/ 1 Szoftvermodul tesztelés Szoftvermodultesztelés
Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok
Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok Program verifikálás Konkurens programozási megoldások terjedése -> verifikálás szükséges, (nehéz) logika Legszélesebb körben alkalmazott
Informatikai rendszertervezés
Informatikai rendszertervezés Dr. Varró Dániel Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs
A KUTATÁS EREDMÉNYEI ZÁRÓJELENTÉS 2004-2006.
ÖNELLENŐRZÉS ÉS FUTÁSIDEJŰ VERIFIKÁCIÓ SZÁMÍTÓGÉPES PROGRAMOKBAN OTKA T-046527 A KUTATÁS EREDMÉNYEI ZÁRÓJELENTÉS 2004-2006. Témavezető: dr. Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem
Szoftver karbantartási lépések ellenőrzése
Szoftverellenőrzési technikák (vimim148) Szoftver karbantartási lépések ellenőrzése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/
Szoftverminőségbiztosítás
NGB_IN003_1 SZE 2017-18/2 (9) Szoftverminőségbiztosítás Specifikáció alapú (black-box) technikák A szoftver mint leképezés Szoftverhiba Hibát okozó bement Hibás kimenet Input Szoftver Output Funkcionális
Zárthelyi mintapéldák. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Zárthelyi mintapéldák Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Elméleti kérdések Indokolja meg, hogy az A (X Stop F Start) kifejezés szintaktikailag helyes kifejezés-e CTL illetve
Struktúra alapú teszttervezési módszerek
Szoftver- és rendszerellenőrzés (VIMIMA01) Struktúra alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Teszttervezés módszerei I. Specifikáció alapú A rendszer mint
A formális módszerek szerepe
A formális módszerek szerepe dr. Majzik István dr. Bartha Tamás dr. Pataricza András BME Méréstechnika és Információs Rendszerek Tanszék 1 Mik azok a formális módszerek? Matematikai technikák, elsősorban
Mesterséges intelligencia 2. laborgyakorlat
Mesterséges intelligencia 2. laborgyakorlat Keresési módszerek A legtöbb feladatot meg lehet határozni keresési feladatként: egy ún. állapottérben, amely tartalmazza az összes lehetséges állapotot fogjuk
Struktúra alapú teszttervezési módszerek
Szoftverellenőrzési technikák Struktúra alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Teszttervezés módszerei I. Specifikáció alapú A rendszer mint fekete doboz
Verifikáció és validáció Általános bevezető
Verifikáció és validáció Általános bevezető Általános Verifikáció és validáció verification and validation - V&V: ellenőrző és elemző folyamatok amelyek biztosítják, hogy a szoftver megfelel a specifikációjának
Modellek ellenőrzése és tesztelése
Modellek ellenőrzése és tesztelése Rendszermodellezés imsc gyakorlat Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika
Autóipari beágyazott rendszerek. Komponens és rendszer integráció
Autóipari beágyazott rendszerek és rendszer integráció 1 Magas szintű fejlesztési folyamat SW architektúra modellezés Modell (VFB) Magas szintű modellezés komponensek portok interfészek adattípusok meghatározása
Modellezési alapismeretek
Modellezési alapismeretek Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések
Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések 1. Az informatikai rendszereknél mit ellenőriznek validációnál és mit verifikációnál? 2. A szoftver verifikációs technikák
Elosztott adatbázis-kezelő formális elemzése
Elosztott adatbázis-kezelő formális elemzése Szárnyas Gábor szarnyas@mit.bme.hu 2014. december 10. Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és
Tesztelési feladatok és kihívások a FALCON projektben
Tesztelési feladatok és kihívások a FALCON projektben Búr Márton Szoftver Verifikáció és Validáció 2016.12.07. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
A Feldspar fordító, illetve Feldspar programok tesztelése
A Feldspar fordító, illetve Feldspar programok tesztelése [KMOP-1.1.2-08/1-2008-0002 társfinanszírozó: ERFA] Leskó Dániel Eötvös Loránd Tudományegyetem Programozási Nyelvek és Fordítóprogramok Tanszék
Mesterséges Intelligencia MI
Mesterséges Intelligencia MI Problémamegoldás kereséssel ha sötétben tapogatózunk Dobrowiecki Tadeusz Eredics Péter, és mások BME I.E. 437, 463-28-99 dobrowiecki@mit.bme.hu, http://www.mit.bme.hu/general/staff/tade
Nagy bonyolultságú rendszerek fejlesztőeszközei
Nagy bonyolultságú rendszerek fejlesztőeszközei Balogh András balogh@optxware.com A cég A BME spin-off-ja A Hibatűrő Rendszerek Kutatócsoport tagjai alapították Tisztán magánkézben Szakmai háttér Hibatűrő
A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom
A szoftver-folyamat Szoftver életciklus modellek Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 4. Roger S. Pressman: Software Engineering, 5th e. chapter 2. 2 A szoftver-folyamat Szoftver
Magasabb szintű formalizmus: Állapottérképek (statecharts) dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Magasabb szintű formalizmus: Állapottérképek (statecharts) dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Modellek a formális ellenőrzéshez Mivel nyújt többet egy magasabb szintű
A szoftver tesztelés alapjai
Szoftverellenőrzési technikák A szoftver tesztelés alapjai Micskei Zoltán, Majzik István http://www.inf.mit.bme.hu/ 1 Hol tartunk a félévi anyagban? Követelményspecifikáció ellenőrzése Ellenőrzések a tervezési
A modell-ellenőrzés gyakorlata UPPAAL
A modell-ellenőrzés gyakorlata UPPAAL Uppsalai Egyetem + Aalborgi Egyetem közös fejlesztése; 1995. első verzió megjelenése; részei: - grafikus modellt leíró eszköz (System editor) - szimulátor (Simulator)
Algoritmizálás, adatmodellezés tanítása 6. előadás
Algoritmizálás, adatmodellezés tanítása 6. előadás Tesztelési módszerek statikus tesztelés kódellenőrzés szintaktikus ellenőrzés szemantikus ellenőrzés dinamikus tesztelés fekete doboz módszerek fehér
Robusztusság tesztelés
Szoftverellenőrzési technikák (vimim148) Robusztusság tesztelés Majzik István és Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/
Modellek ellenőrzése
Modellek ellenőrzése Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems
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
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 dr. Majzik István Dr. Pataricza András BME Méréstechnika és Információs
Digitális eszközök típusai
Digitális eszközök típusai A digitális eszközök típusai Digitális rendszer fogalma Több minden lehet digitális rendszer Jelen esetben digitális integrált áramköröket értünk a digitális rendszerek alatt
A formális módszerek szerepe
A formális módszerek szerepe dr. Majzik István dr. Bartha Tamás dr. Pataricza András BME Méréstechnika és Információs ek Tanszék 1 Mik azok a formális módszerek? 2 Matematikai technikák Formális módszerek
Időt kezelő modellek és temporális logikák
Időt kezelő modellek és temporális logikák Valósidejű rendszerek követelményeinek formalizálása és ellenőrzése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs
Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008
Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus hálók
Folyamatmodellezés (BPMN), adatfolyamhálók
Folyamatmodellezés (BPMN), adatfolyamhálók Rendszermodellezés 2015. Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika
Modellezési alapismeretek
Modellezési alapismeretek Rendszermodellezés Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs
Szoftver értékelés és karbantartás
Szoftver értékelés és karbantartás Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.mit.bme.hu/~majzik/ Emlékeztető: Biztonsági követelmények
A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai
A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási
Időzített átmeneti rendszerek
Időzített átmeneti rendszerek Legyen A egy ábécé, A = A { (d) d R 0 }. A feletti (valós idejű) időzített átmeneti rendszer olyan A = (S, T,,, ) címkézett átmeneti rendszert ( : T A ), melyre teljesülnek
Szoftver karbantartás
Szoftver karbantartás Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.mit.bme.hu/~majzik/ Áttekintés Követelményspecifikálás Architektúra
Formális módszerek GM_IN003_1 Bevezetés
Formális módszerek GM_IN003_1 Formális módszerek Formális módszer! formalizált módszer(tan) Formális eljárások alkalmazása a fejlesztésben nincs olyan formális eljárás, ami egy komplex rendszer minden
2.előadás. alapfogalmak, formális definíció
2.előadás Források: -Molnár Ágnes: Formális módszerek az informatikában (1), NetAkadámia Tudástár -dr. Pataricza András, dr. Bartha Tamás: Petri hálók: alapfogalmak, formális definíció Validáció és verifikáció
Futásidőbeli verifikáció
Futásidőbeli verifikáció Szoftver- és rendszerellenőrzés előadás dr. Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Tartalomjegyzék Célkitűzések
OO rendszerek jellemzői
OO rendszerek jellemzői Problémák forrása lehet teszteléskor: Problémák feldarabolása. Adatrejtés. Az OO rendszerek nagyszámú, egymással aktívan kapcsolatban levő, együttműködő komponensekből állnak. A
Modellező eszközök, kódgenerálás
Modellező eszközök, kódgenerálás Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek
OpenCL alapú eszközök verifikációja és validációja a gyakorlatban
OpenCL alapú eszközök verifikációja és validációja a gyakorlatban Fekete Tamás 2015. December 3. Szoftver verifikáció és validáció tantárgy Áttekintés Miért és mennyire fontos a megfelelő validáció és
Petri hálók: Alapelemek és kiterjesztések
Petri hálók: Alapelemek és kiterjesztések dr. Bartha Tamás dr. Pataricza András dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Modellek a formális ellenőrzéshez Mivel nyújt többet
Unit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22
Unit Teszt Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) Unit Teszt 2013 1 / 22 Tartalomjegyzék 1 Bevezetés 2 Unit Teszt 3 Példa Tóth Zsolt (Miskolci Egyetem) Unit Teszt 2013 2 / 22 Szoftvertesztelés
Feladat. Bemenő adatok. Bemenő adatfájlok elvárt formája. Berezvai Dániel 1. beadandó/4. feladat 2012. április 13. Például (bemenet/pelda.
Berezvai Dániel 1. beadandó/4. feladat 2012. április 13. BEDTACI.ELTE Programozás 3ice@3ice.hu 11. csoport Feladat Madarak életének kutatásával foglalkozó szakemberek különböző településen különböző madárfaj
Összefoglaló. Modell alapú automatikus tesztgenerálás
Összefoglaló A szoftverfejlesztés során a tesztelés mindig is a folyamat fontos feladata, mely sok idıt és erıforrást igényel. A klasszikus tesztelési módszerek kezdeti lépése a tesztek megtervezése, a
MIÉRT KELL TESZTELNI?
Unrestricted MIÉRT KELL TESZTELNI? MIÉRT KELL TESZTELNI? A termékminőség fejlesztése...hogy megtaláljuk a hibákat, mert azok ott vannak... MIÉRT KELL TESZTELNI? Hogy felderítsük, mit tud a szoftver MIÉRT
Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések
Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések 1. Az informatikai rendszereknél mit ellenőriznek validációnál és mit verifikációnál? 2. A szoftver verifikációs technikák
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
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 dr. Majzik István Dr. Pataricza András BME Méréstechnika és Információs
2011.11.29. JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése
Tartalom Integrált fejlesztés Java platformon JUnit JUnit használata Tesztelési technikák Demo 2 A specifikáció alapján teszteljük a program egyes részeit, klasszikus V-modell szerint Minden olyan metódust,