Futásidőbeli verifikáció
|
|
- Domokos Mészáros
- 8 évvel ezelőtt
- Látták:
Átírás
1 Futásidőbeli verifikáció Szoftverellenőrzési technikák előadás Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
2 Tartalomjegyzék Definíció és motiváció Használati esetek Futásidőbeli verifikációs technikák o Verifikáció referencia automata alapján o Verifikáció temporális logikai követelmények alapján o Verifikáció LSC követelmények alapján o Verifikáció scenario követelmények alapján Implementációs tapasztalatok 2
3 Mit jelent a futásidejű verifikáció? Definíció: o Rendszerek viselkedésének ellenőrzése o működés közben (on-line), o formálisan specifikált követelmények alapján Motiváció o Megbízhatósági és biztonsági elvárások IT infrastruktúra: Szolgáltatási szint szerződések (SLA) Biztonságkritikus rendszer: Elviselhető hibagyakoriság (THR) o Futásidőbeli hibák elkerülhetetlenek Hardver komponensek véletlen hibái Szoftver tervezési, implementációs, konfigurálási hibák 3
4 Cél: Futásidőbeli hibadetektálás Futásidőbeli hibadetektálás a hibakezelés alapja o Klasszikus: Hibadetektálás a forráskód (referencia) alapján Pl. CFG ellenőrzés (watchdog processzorok) Csak működési hibákra, implementáció alapján o Ellenőrzés a követelmények alapján Szisztematikus (tervezési, kódolási, konfigurációs) hibákra is o Futásidőbeli verifikáció formalizált követelmények alapján Precíz követelmény megfogalmazás Automatikus ellenőrző (monitor) szintézis lehetősége Példa: Reaktív hibakezelés o Hibadetektálás majd beavatkozás (pl. helyreállítás, biztonságos állapot beállítása, ) 4
5 Futásidőbeli verifikáció Használati eset 1: Futásidőbeli verifikáció Monitorok használata futásidőbeli hibadetektálásra o Formalizált követelmények ellenőrzése Pl. reaktív hibakezelés támogatása o A működési, konfigurációs és környezeti hibák detektálása Követelmények Monitor szintézis Működő rendszer Monitor 1 Monitor 2 Monitor n 5
6 Teszt oracle Használati eset 2: Teszt kimenet értékelése Monitorok használata mint teszt oracle o Teszt követelmények teljesítésének kiértékelése o Tervezési és megvalósítási hibák detektálása Követelmények Monitor szintézis Teszt végrehajtó Tesztelt rendszer (SUT) Monitor 1 Monitor 2 Monitor n 6
7 Ellenőrzési módszerek Kihívások o Követelmények formalizálása o Verifikációs algoritmusok kidolgozása Felműszerezés o Ellenőrzéshez szükséges információ megfigyelhetővé tétele o Erőforrásigény minimalizálása Elméleti eredmények gyakorlati aspektusai o Monitor szintézis o Kis erőforrásigényű, skálázható megvalósítás Alkalmazás beágyazott biztonságkritikus rendszerekben 7
8 Kihívások Ellenőrzési módszerek o Követelmények formalizálása ovégrehajtási Ellenőrzési algoritmusok szekvencia (trace) és ezek alapján megvalósítása specifikált temporális tulajdonságok ellenőrzése Felműszerezés Temporális logikák Referencia automaták o Ellenőrzéshez szükséges információ megfigyelhetővé tétele o Overhead Reguláris minimalizálás kifejezések Szerződés (design-by-contract) alapú monitorozás Kiértékelhető állítások (executable assertions) Elméleti eredmények mérnöki aspektusai Általános (specification-less) elvárások monitorozása o Monitor szintézis Konkurens végrehajtás követelményei (pl. holtpont, versenyhelyzet, sorosíthatósági konfliktus detektálása) o Kis erőforrás igényű, skálázható megvalósítás o Alkalmazás beágyazott biztonságkritikus rendszerekben 8
9 Kihívások Ellenőrzési módszerek o Követelmények formalizálása o Ellenőrzési algoritmusok és ezek megvalósítása Felműszerezés o Ellenőrzéshez szükséges információ megfigyelhetővé tétele oaktív Overhead és passzív minimalizálás felműszerezés Aktív: kódrészletek beillesztése Passzív: beavatkozás nélküli megfigyelés Elméleti eredmények mérnöki aspektusai Aktív felműszerezés megvalósítási technológiák Aspektus-orientált programozás (AOP) Tracematch: AspectJ kiterjesztés esemény-mintákhoz o Monitor szintézis o Kis erőforrás igényű, skálázható megvalósítás Szinkron és aszinkron monitorozás o Alkalmazás beágyazott biztonságkritikus rendszerekben 10
10 Példa: Keretrendszer monitor szintézishez MOP: Monitoring-Oriented Programming o FSM -- Finite State Machines o ERE -- Extended Regular Expressions o CFG -- Context Free Grammars o PTLTL -- Past Time Linear Temporal Logic o LTL -- Linear Temporal Logic o PTCaRet -- Past Time LTL with Calls and Returns o SRS -- String Rewriting Systems
11 Az itt bemutatott megoldások Alkalmazás: Beágyazott rendszerekben o Állapot alapú, eseményvezérelt viselkedés o Biztonsági funkciókhoz (biztonsági protokollokhoz) Hierarchikus (skálázható) futásidőbeli verifikáció o Lokális: Egy-egy komponens (vezérlő, ECU) viselkedése Referencia automata: vezérlési és egyszerű adathibák Lokális temporális logikai (TL) követelmények o (Al)rendszerszintű: Komponensek interakciója Rendszerszintű temporális követelmények Scenario (LSC) alapú követelmények Kapcsolódás a modellvezérelt fejlesztéshez o Modell alapú kódgenerálás, felműszerezéssel 13
12 Hierarchikus monitorozás Rendszerkövetelmények Modellellenőrzés LSC monitor szintézis TL monitor szintézis Rendszerszintű monitorok Formális modell Tervezési verifikáció CFG monitor szintézis Automatikus kódgenerálás Felműszerezés Lokális vezérlési folyam monitorok Felműszerezett komponens Futásidőbeli verifikáció 15
13 Futásidejű verifikáció referencia automaták alapján Időzített automata modell alapján Állapottérkép modell alapján
14 Hierarchikus monitorozás Rendszerkövetelmények Modellellenőrzés LSC monitor szintézis TL monitor szintézis Rendszerszintű monitorok Formális modell Tervezési verifikáció CFG monitor szintézis Automatikus kódgenerálás Felműszerezés Lokális vezérlési folyam monitorok Felműszerezett komponens Futásidőbeli verifikáció 17
15 Monitorozás időzített automata alapján Monitor komponens Időzített automata Működési hibák (tranziens) (Kézi kódolás hibái) Interakciók (szinkron kommunikáció) Belső megvalósítás Automatikus felműszerezés: Jelzőszámok az állapotokról 18
16 Automatikus kódgenerálás Időzített automata (formalizmus) Formális szintaxis (metamodell) Formális szemantika (jelentés) Konkrét modell reprezentáció Forráskód minták Platform szolgáltatások Olvassa és bejárja Összeállítja Hivatkozza Kódgenerátor 19
17 Felműszerezés a forráskódban Inicializálás Rendszerciklus Felműszerezés Belépő függvény Állapotváltozók beállítása Csatornák figyelése Időzítések beállítása... + Jelzőszámok kiküldése Várakozó függvény Felműszerezés Kilépő függvény Automata szint Állapot szint 20
18 Jelzőszám alapú monitorozás Komponens Felműszerezés Jelzőszámok: állapotok Detektálható hibák: Hibás állapot / átmenet szekvencia Leragadás (timeout) Időzítések megsértése Lokális vezérlési folyam monitor Referencia automata Kódgenerálás alapja Referencia automata 21
19 Monitorozás állapottérkép alapján Monitor komponens Állapottérkép referencia Működési hibák (tranziens) (Kézi kódolás hibái) Eseménysor Állapottérkép megvalósítás Automatikus felműszerezés: Jelzőszámok az állapotokról, átmenetekről, akciókról,... 22
20 Ellenőrzés állapottérkép referencia alapján Szisztematikus transzparens felműszerezés: o Explicit jelzések a monitor számára Elhagyott állapotok, belépett állapotok Végrehajtott akciók o Megvalósítási példa: Aspektus-orientált programozás Run-time Monitor ObservedApp Monitor RTCContext TransitionContext 24
21 Ellenőrzés állapottérkép referencia alapján Szisztematikus transzparens felműszerezés: o Explicit jelzések a monitor számára Elhagyott állapotok, belépett állapotok Végrehajtott akciók Átmenet tüzelése Starting transition üzenet Forrás konfiguráció elhagyása o Megvalósítási példa: Aspektus-orientált programozás Akciók végrehajtása ObservedApp Run-time MessageQueue msgq Monitor Cél konfigurációba Run-time + Monitor sendtrstarting Monitor való belépés Monitor Transition finished üzenet RTCContext TransitionContext 25
22 Ellenőrzés állapottérkép referencia alapján Szisztematikus transzparens felműszerezés: o Explicit jelzések // Define a monitor pattern matching számára Elhagyott állapotok, belépett állapotok Végrehajtott akciók Extra kód átmenet tüzeléséhez (Java AOP) public aspect BehavioralMonitoring { pointcut firingtransitionpattern call (StatechartBase+.fireTransition(Transition t)); // Define instrumentation to be applied around(): firingtransitionpattern() { msgq.sendtrstarting(...); proceed(); Run-time Monitor ObservedApp msgq.sendtrfinishing(...); Monitor RTCContext } } o Megvalósítási példa: Aspektus-orientált programozás TransitionContext 26
23 Ellenőrzés állapottérkép referencia alapján Szisztematikus transzparens felműszerezés: o Explicit jelzések a monitor számára Elhagyott állapotok, belépett állapotok Végrehajtott akciók o Megvalósítási példa: Aspektus-orientált üzenetek programozás ObservedApp Run-time Monitor Monitor RTC kontextus Inicializálás Esemény-feldolgozás kezdete és vége (állapotok) Átmenet kontextus részére RTCContext Állapotátmenet kontextus Állapotból kilépés, állapotba belépés, akciók TransitionContext 27
24 Run-to-completion context (RTCContext) initstarting initfinishing[ifok] Uninitialized Initialization Stable initentry [ieok] evtprocstarting [epsok] evtprocfinishing [epfok] trstarting [tsok] / createtrctx Transient dispatch 28
25 Run-to-completion context (RTCContext) Uninitialized Inicializálás közben initentry: A megfigyelt alkalmazás belépett egy kezdőállapotba ieok őrfeltétel: (i) az állapot a kezdő állapotkonfigurációba tartozik, (ii) inaktív volt és (iii) minden szülő állapota is aktív. initstarting initfinishing[ifok] Initialization Stable initentry [ieok] evtprocstarting [epsok] evtprocfinishing [epfok] trstarting [tsok] / createtrctx Transient dispatch 29
26 Run-to-completion context (RTCContext) initstarting initfinishing[ifok] Stable Uninitialized Inicializálás befejezése A megfigyelt alkalmazás initentry [ieok] belépett a kezdő állapotkonfigurácóba. Initialization ifok őrfeltétel: A kezdő állapotkonfiguráció minden állapota aktív. evtprocstarting [epsok] evtprocfinishing [epfok] trstarting [tsok] / createtrctx Transient dispatch 30
27 Run-to-completion context (RTCContext) initstarting initfinishing[ifok] Uninitialized Initialization Stable initentry [ieok] evtprocstarting [epsok] evtprocfinishing [epfok] Eseményfeldolgozás indul A megfigyelt alkalmazás elkezdett feldolgozni egy eseményt. trstarting [tsok] / createtrctx Transient dispatch 31
28 Run-to-completion context (RTCContext) initstarting initfinishing[ifok] Átmenet tüzelése A megfigyelt alkalmazás elkezdte egy átmenet tüzelését. tsok őrfeltétel: (i) a trigger esemény az éppen feldolgozott esemény, (ii) forrás állapotok aktívak, (iii) prioritások és őrfeltételek Uninitialized megfelelőek. createtrctx akció: új átmenet kontextus létrehozása (transition context). Ebben folytatódik az ellenőrzés (dispatch adja át az információt) Initialization Stable initentry [ieok] evtprocstarting [epsok] evtprocfinishing [epfok] trstarting [tsok] / createtrctx Transient dispatch 32
29 Run-to-completion context (RTCContext) initstarting initfinishing[ifok] Stable Uninitialized Eseményfeldolgozás vége A megfigyelt alkalmazás befejezte az Initialization eseményfeldolgozást. epfok őrfeltétel: minden átmenet tüzelése befejeződött initentry [ieok] evtprocstarting [epsok] evtprocfinishing [epfok] trstarting [tsok] / createtrctx Transient dispatch 33
30 Hibadetektálás az RTCContext esetén Hibadetektálás Őrfeltétel hamis, vagy nem várt üzenet jön initstarting initfinishing[ifok] Uninitialized Initialization Stable evtprocstarting [!epsok] initentry [ieok] evtprocstarting [epsok] evtprocfinishing [epfok] initfinishing[!ifok] initentry [!ieok] trstarting [tsok] / createtrctx Transient evtprocfinishing [!epfok] Fault detected trstarting [!tsok] dispatch 34
31 Állapotátmenet kontextus (TransitionContext) Exiting states exitstate [xsok] / markinactive trassociated [taok] Entering states enterstate [esok] / markactive trfinishing [tfok] 35
32 Állapotátmenet kontextus (TransitionContext) Állapot elhagyása A megfigyelt alkalmazás elhagyott egy állapotot átmenet tüzelés közben. Őrfeltétel: (i) az állapot az átmenet forrása vagy ennek finomítása, (ii) az állapot aktív, (iii) egy finomítása sem aktív. Akció: a konfiguráció frissítése. Exiting states exitstate [xsok] / markinactive trassociated [taok] Entering states enterstate [esok] / markactive trfinishing [tfok] 36
33 Állapotátmenet kontextus (TransitionContext) Exiting states Az átmenet akciójának végrehajtása A forrás állapotok elhagyása megtörtént és az akció végrehajtása valósul meg. Őrfeltétel: Minden forrásállapot elhagyása exitstate [xsok] / markinactive megtörtént és a megfelelő akció zajlik. trassociated [taok] Entering states enterstate [esok] / markactive trfinishing [tfok] 37
34 Állapotátmenet kontextus (TransitionContext) Belépés a cél állapotokba A megfigyelt átmenet belép egy állapotba a tüzelése során.. Őrfeltétel: (i) az állapot exitstate a célállapotok [xsok] / egyike, (ii) inaktív és (iii) minden markinactive szülő állapota aktív. Akció: az állapotkonfiguráció frissítése. Exiting states trassociated [taok] Entering states enterstate [esok] / markactive trfinishing [tfok] 38
35 Állapotátmenet kontextus (TransitionContext) Exiting states exitstate [xsok] / markinactive trassociated [taok] Entering states Az átmenet tüzelés befejezése A megfigyelt átmenet tüzelése befejeződik. Őrfeltétel: minden célállapot enterstate [esok] / aktív lett az új állapotkonfiguráció szerint. markactive trfinishing [tfok] 39
36 Hibadetektálás a TransitionContext esetén Exiting states Hibadetektálás Őrfeltétel hamis, vagy nem megfelelő üzenet érkezik. exitstate [xsok] / markinactive exitstate [!xsok] trassociated [taok] trassociated [!taok] Fault detected Entering states trfinishing [tfok] enterstate [esok] / markactive enterstate [!esok] trfinishing [!tfok] 40
37 Futásidejű verifikáció temporális követelmények alapján Általános lineáris temporális logikai követelmények UPPAAL CTL követelmények (teszteléshez is)
38 Hierarchikus monitorozás Rendszerkövetelmények Modellellenőrzés LSC monitor szintézis TL monitor szintézis Rendszerszintű monitorok Formális modell Tervezési verifikáció CFG monitor szintézis Automatikus kódgenerálás Felműszerezés Lokális vezérlési folyam monitorok Felműszerezett komponens Futásidőbeli verifikáció 42
39 TL követelmények ellenőrzése TL követelmények Felműszerezés Felműszerezés Felműszerezés Komponens 1 Komponens 2 Komponens 3 Trace: Jelzőszámok: atomi kijelentések elemei (állapotok, változók, órák) TL monitor szintézis TL monitor 44
40 Monitorozás LTL kifejezések alapján Egy LTL kifejezés ellenőrzése a trace egy lépése esetén o Függőség az aktuális lépéstől: Boole logikai operátorok a lokális atomi kijelentéseken + lokális ( jelen idejű ) része a temporális operátoroknak o Függőség jövőbeli lépésektől: jövő idejű része a temporális operátoroknak A temporális kifejezés újraírása: Részkifejezések elválasztása o Az aktuális lépésben (Boole operátorokkal) kiértékelhető részkifejezések o A következő lépésben (egy X operátor után) kiértékelhető részkifejezések exp1 U exp2 = exp2 (exp1 X(exp1 U exp2)) Következő állapotra vonatkozó kifejezések 45
41 Kifejezések újraírása Definíció: Csatlakoztatási normálforma o A kifejezésben szereplő összes UNTIL (U) temporális operátor valamely NEXT (X) temporális operátor hatókörében van, és o a kifejezés minden olyan része, amely nem esik NEXT temporális operátor hatókörébe, kizárólag AND, valamint NOT operátorokat tartalmaz Átalakítás csatlakoztatási normálformára o Boole operátorokra: De Morgan azonosságok o Temporális operátorokra: Visszavezetés X és U operátorokra Átalakítás: P U Q = Q (P X(P U Q)) = ( Q (P X(P U Q)))
42 Kiértékelő blokkok Belső logika: Az aktuális lépés kiértékelése (Boole logika) Kimenet: A trace jelen lépésében a kifejezés kiértékelése Bemenetek: o Lokális atomi kijelentések o Következő lépésben történő kiértékelés eredménye Ez a trace következő lépésében, az X operátor utáni kifejezéseket kiértékelő blokkok kimenete lesz (így blokkok láncolata képezhető) G(r (pud)) r d p T X(pUd) X(TU(rÙÙ(pUd))) 48
43 Kifejezések kiértékelése a trace lépésein 1 2 s 0 s 1 s 2 d r d Ù d pud Ù G(r (pud)) Ù Ù Ù T X(TU(rÙÙ(pUd))) Ù p X(pUd) Ù X(pUd) pud Ù Ù X(pUd) p p r d TU(rÙÙ(pUd)) Ù Ù Ù Ù T X(TU(rÙÙ(pUd))) d Ù X(pUd) p pud Ù Ù X(pUd) p r TU(rÙÙ(pUd)) Ù Ù Ù Ù T X(TU(rÙÙ(pUd))) d Ù X(pUd) 49 p Példa: G(r (pud)) felírása A G operátor definíciója Az U operátor felbontása e 1 Ue 2 = e 2 (e 1 X(e 1 Ue 2 )) = ( e 2 (e 1 X(e 1 Ue 2 ))) Normál forma: U csak X argumentumaként r Ù d G(r (pud)) Ù Ù p Ù T X(TU(rÙÙ(pUd))) Ù X(pUd)
44 A blokkok optimalizálása Ismétlődő részkifejezések egyszeri kiértékelése
45 Háromértékű logika Blokk belseje: Háromértékű (ternáris) logika o A következő lépésben történő kiértékelés eredménye ismeretlen o Az ismeretlen legkésőbb a trace végén feloldható Műveletek háromértékű logikával:
46 Blokk típusok azonosítása G(r (pud)) s 0 r p d X(pUd) X(TU(r (pud))) 1 s 1 r p d pud TU(r (pud)) X(pUd) X(TU(r (pud))) 2 s 2 r p d pud TU(r (pud)) X(pUd) X(TU(r (pud))) 52
47 A blokk típusok meghatározása 53
48 Működési logika: 1. lépés G(r (pud)) r, p s 0 L(s 0 ) r d p T X(pUd) X(TU(rÙÙ(pUd))) False Unknown True
49 Működési logika: 2. lépés G(r (pud)) r, p s 0 L(s 0 ) r d p T X(pUd) X(TU(rÙÙ(pUd))) pud TU(rÙÙ(pUd)) p r T s 1 L(s 1 ) d p X(pUd) X(TU(rÙÙ(pUd))) False Unknown True
50 Működési logika: 3. lépés (trace vége) G(r (pud)) r, p s 0 L(s 0 ) r d p T X(pUd) X(TU(rÙÙ(pUd))) pud TU(rÙÙ(pUd)) p r T s 1 L(s 1 ) d p X(pUd) X(TU(rÙÙ(pUd))) pud TU(rÙÙ(pUd)) False Unknown True d s 2 L(s 2 ) r d p T X(pUd) X(TU(rÙÙ(pUd)))
51 Működési logika: Ismeretlenek feloldása G(r (pud)) r, p s 0 L(s 0 ) r d p T X(pUd) X(TU(rÙÙ(pUd))) pud TU(rÙÙ(pUd)) p r T s 1 L(s 1 ) d p X(pUd) X(TU(rÙÙ(pUd))) pud TU(rÙÙ(pUd)) False Unknown True d s 2 L(s 2 ) r d p T X(pUd) X(TU(rÙÙ(pUd)))
52 Monitor szintézis LTL alapú monitorozáshoz Monitor szintézis lépései o Kiértékelő blokk típusok generálása az LTL kifejezés átírása alapján (csatlakoztatási normál forma) o A kiértékelő blokk típusok belső logikájához tartozó forráskód generálása (adatstruktúra és kiértékelő fügvények háromértékű logikával) o Kiértékelő kontextus generálása a kiértékelő blokk típusok futásidőbeli példányosítására (a blokkok láncának építése) A monitorozás memóriaigénye o Legfeljebb lineáris a trace hosszával o Ismétlődő blokkok redukálhatók Összevetés más implementációkkal: o Symbolic term-rewriting: szor lassabb o Alternating automata: szer lassabb 59
53 CTL alapú monitorozás (UPPAAL TCTL) Használható trace-ek halmazának ellenőrzésére o Útvonal kvantorok: A: Minden útvonal, E: Létezik útvonal A monitorok mint teszt oracle használhatók egy teszt készlet esetén a lefutások halmazának ellenőrzésére o Speciális események: <New trace>, <End of last trace> Monitor szintézis o Egy trace ellenőrzése: Mint az LTL alapú ellenőrzés o Trace-ek sorozatának ellenőrzése (test suite): Megfigyelő automata Példa: Megfigyelő automata AF temporális operátorhoz 62
54 Futásidejű verifikáció LSC követelmények alapján Live Sequence Charts követelmények verifikációja
55 Hierarchikus monitorozás Rendszerkövetelmények Modellellenőrzés LSC monitor szintézis TL monitor szintézis Rendszerszintű monitorok Formális modell (időzített automaták) Tervezési verifikáció CFG monitor szintézis Automatikus kódgenerálás Felműszerezés Lokális vezérlési folyam monitorok Felműszerezett komponens Futásidőbeli verifikáció 64
56 LSC alapú követelmények Cél: Interakciók ellenőrzése intuitív leírás alapján o Szinkronizáció, üzenetek küldése és fogadása, lokális feltételek Formalizmus: Live Sequence Charts variáns o Message Sequence Chart kiterjesztése (Damm és Harel, 2001) o Precíz szemantika (UPPAAL: korlátozásokkal) o LSC alaptípusok, aktiválási módok, hideg és forró feltételek Prechart Main chart 65
57 LSC követelmények ellenőrzése LSC követelmények Felműszerezés Felműszerezés Felműszerezés Komponens 1 Komponens 2 Komponens 3 Trace: Jelzőszámok: interakciók elemei (üzenetek, állapotok, változók, órák) LSC monitor szintézis LSC monitor 66
58 LSC monitor szintézise A A B 2 C B C 5 C B 4 67
59 LSC monitorok végrehajtása Ütemező (végrehajtási környezet) szükséges o Egy-egy monitor indítása, leállítása o Visszajelzések kiértékelése, továbbítása LSC alaptípusok támogatása o Egzisztenciális: minta viselkedés (lefutásokra) o Univerzális: szükséges viselkedés (minden lefutásra) LSC aktiválási módok támogatása o Kezdeti o Invariáns o Iteratív 69
60 Futásidejű verifikáció scenario követelmények alapján Kontextusfüggő viselkedés monitorozása
61 Speciális kihívások Autonóm rendszerek (pl. robotok) ellenőrzése o Kontextusfüggő viselkedés (környezet érzékelése) o Adaptív rendszer (célok, végrehajtási stratégia) Követelmények specifikálása: Scenariok o Viselkedés: Események és akciók szekvenciája; Feltétel rész és kötelező (assert) rész o Hivatkozások a kontextusra (szituációkra) Kontextusfüggő viselkedés monitorozása: o Megfigyelni a futásidőbeli kontextus változásait o Ellenőrizni a rendszer viselkedését 71
62 A monitorozás szerepe vagy Követelmények Valós környezet Megfigyelt események, akciók, kontextus változások Futási trace-ek Szimulátor Kihívás: Egy-egy trace hatékony ellenőrzése a scenario követelmények alapján Kiértékelés a monitorral 72
63 Követelmények formalizálása MSC (vagy LSC) alapú esemény- és akció szekvenciák Kiterjesztve kontextus hivatkozásokkal Kontextus (objektumok és relációk) egy adott lépésben Események az érzékelőktől Akciók a beavatkozók felé CF2 sd REQ2 Perception SUT : Robot Actuators SUT : Robot tooclose L : LivingBeing AE : AppearEvent assert loop(0,*) { Context: CF2 } hornbell Referencia egy kontextus fragmensre CF3 SUT : Robot near L : LivingBeing { Context: CF3 } Kontextus nézet (kontextus fragmensek) Scenario nézet (események és akciók sorozata) 73 Kötelező viselkedés
64 A monitor feladatai Megfigyelt trace: Események és akciók a SUT-tól A kontextus konkrét konfigurációi sd REQ2 Perception SUT : Robot Actuators CF2 sd REQ2 assert { Context: CF2 } SUT : Robot tooclose L : LivingBeing assert loop(0,*) hornbell AE : AppearEvent loop(0,*) CF3 { Context: CF3 } SUT : Robot near L : LivingBeing Események, akciók illesztése: Megfigyelő automata Kontextus fragmensek illesztése: Gráfminta illesztés 74
65 A megfigyelő automata konstrukciója Egy-egy megfigyelő automata a követelmény scenariokhoz o Állapotok: vágások a diagramon (mint az LSC esetén) o Tranzíciók: események, akciók, kontextus változások o Állapot típusok: teljesítve / megsértve / nem triggerelt sd REQ1 alt assert SUT : Robot { Context: CF1 humandetected animaldetected stop 0 1 t5:?humandetected t4:?animaldetected 2 3 t6: true 4 5 t9:!stop t1: true t2: context(cf1) t3: ~(?humandetected) ~(?animaldetected) t7: true t8: ~(!stop) A követelmény nem triggerelt A követelmény megsértve, ha itt áll meg A követelmény teljesítve, ha itt áll meg 75
66 Gráfminta illesztés A trace-ben megfigyelt kontextus szekvencia illesztése o A kontextusok gráf alapú reprezentálása o Gráf minták (követelmény kontextus fragmensek) illesztése gráf szekvenciákhoz (megfigyelt kontextus a trace-ben) Kontextus fragmens (követelmény): CF3 SUT : Robot near L : LivingBeing Megfigyelt kontextus sorozat: robot1 chair23 robot1 chair23 robot1 chair23 human2 table23 dog4 table23 dog4 table23 76
67 Megoldandó problémák Minden követelmény scenario illesztése egy trace-hez o A kontextus fragmensek dekompozíciója a közös részek egyszeres tárolásához és illesztéséhez A követelmény kontextus fragmensek illesztése egy trace minden lépésében o Konkurens monitorok indítása, amennyiben illeszkedik Az absztrakt relációk (pl. közel ) és az objektum hierarchia (pl. az asztal egy bútor ) feloldása o A trace előfelfolgozása az absztrakt relációk származtatásához o A típusok kompatibilitásának kezelése a kontextus elemek illesztésekor 77
68 Megvalósítási tapasztalatok Erőforrásigények felmérése
69 Megvalósítás Beágyazott platformokon o mitmót moduláris beágyazott rendszer vezetéknélküli kommunikációval Ipari esettanulmány: bit szinkronizációs protokoll o mbed mikrokontroller gyors prototípuskészítéshez Oktatási demonstrátor környezet 80
70 Jellemző erőforrásigények Az ellenőrzés időigénye (mbed platform) ( state change) Kisebb, mint 12% többletidő ( state change) Nagy overhead gyors vezérlési funkciókra 81
71 Jellemző erőforrásigények Kódméret növekedés (mbed platform) Kisebb, mint 5% kódméret növekedés 82
72 Scenario alapú monitorozás Prototípus megvalósítás o Scenario követelmények: Eclipse UML2 alapon o Monitor (teszt oracle): Java alkalmazás Komplexitás: a gráfminták illesztése o Legjobb eset: O(IM), legrosszabb eset: O(NI M M 2 ) N: a követelmény gráf minták száma M: a követelmény gráf minták átlagos mérete I: a trace-ben illesztendő kontextus gráf csúcsainak száma o A követelmény gráf minták (kontextus fragmensek) általában kicsik (így M értéke alacsony) 83
73 Összefoglalás Monitor szintézis futásidőbeli verifikációhoz o Automata alapú referencia viselkedés ellenőrzés Időzített automata modellek alapján UML állapottérkép modellek alapján: Monitorozás precíz szemantika szerint o LTL követelmények hatékony verifikációja Ellenőrző blokkok konstrukciója és példányosítása o LSC követelmények futásidőbeli verifikációja o Kontextusfüggő viselkedés ellenőrzése scenario követelmények alapján Események, akciók és kontextus fragmensek illesztése 85
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
RészletesebbenForrá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
RészletesebbenIdő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
RészletesebbenMagasabb 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ű
RészletesebbenA 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
RészletesebbenAlapszintű 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,
RészletesebbenMagasabb 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ű
RészletesebbenBánsághi Anna anna.bansaghi@mamikon.net. 1 of 67
SZOFTVERTECHNOLÓGIA Bánsághi Anna anna.bansaghi@mamikon.net 5. ELŐADÁS - RENDSZERTERVEZÉS 1 1 of 67 TEMATIKA I. SZOFTVERTECHNOLÓGIA ALTERÜLETEI II. KÖVETELMÉNY MENEDZSMENT III. RENDSZERMODELLEK IV. RENDSZERARCHITEKTÚRÁK
RészletesebbenTartalom Kontextus modellek Viselkedési modellek Adat-modellek Objektum-modellek CASE munkapadok (workbench)
8. Rendszermodellek Kérdések Miért kell a rendszer kontextusát már a követelménytervezés során modellezni? Mi a viselkedési modell, az adatmodell és az objektum-modell? Milyen jelöléseket tartalmaz az
RészletesebbenTERMÉKTERVEZÉS PANDUR BÉLA TERMÉKTERVEZÉS
TERMÉKTERVEZÉS A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA Szoftverfejlesztés: magában foglalja mindazon elveket, módszereket és eszközöket, amelyek célja a programok megbízható és hatékony elkészítésének támogatása.
RészletesebbenIBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.
IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.kiadás IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere
RészletesebbenA SZOFTVERTECHNOLÓGIA ALAPJAI
A SZOFTVERTECHNOLÓGIA ALAPJAI Objektumorientált tervezés 8.előadás PPKE-ITK Tartalom 8.1 Objektumok és objektumosztályok 8.2 Objektumorientált tervezési folyamat 8.2.1 Rendszerkörnyezet, használati esetek
Részletesebben2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA
2.Szoftverfejlesztés 2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA Szoftverfejlesztés: magában foglalja mindazon elveket, módszereket és eszközöket, amelyek célja a programok megbízható és hatékony elkészítésének
RészletesebbenA 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)
RészletesebbenMODELL ALAPÚ MEGKÖZELÍTÉS TESZT ÚJRAFELHASZNÁLÁSHOZ INTELLIGENS OTTHON ESETÉN
Fehér Péter José M. Conejero, Pedro J. Clemente, Roberto Rodríguez-Echeverría, Juan Hernández és Fernando Sánchez-Figueroa cikke alapján MODELL ALAPÚ MEGKÖZELÍTÉS TESZT ÚJRAFELHASZNÁLÁSHOZ INTELLIGENS
Részletesebben4. Programozási nyelvek osztályozása. Amatőr és professzionális
4. Programozási nyelvek osztályozása. Amatőr és professzionális programozási nyelvek. Számítási modellek (Neumann-elvű, automataelvű, funkcionális, logikai). Programozási nyelvekkel kapcsolatos fogalmak
RészletesebbenA 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)
RészletesebbenOBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető
RészletesebbenRé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
RészletesebbenIsmeretanyag Záróvizsgára való felkészüléshez
Ismeretanyag Záróvizsgára való felkészüléshez 1. Információmenedzsment az információmenedzsment értelmezése, feladatok különböző megközelítésekben informatikai szerepek, informatikai szervezet, kapcsolat
RészletesebbenMérő- és vezérlőberendezés megvalósítása ARM alapú mikrovezérlővel és Linux-szal
Mérő- és vezérlőberendezés megvalósítása ARM alapú mikrovezérlővel és Linux-szal Fuszenecker Róbert Budapesti Műszaki Főiskola Kandó Kálmán Műszaki Főiskolai Kar 2007. július 18. A mérőberendezés felhasználási
RészletesebbenA TANTÁRGY ADATLAPJA
A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș-Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika 1.3 Intézet Magyar Matematika és Informatika 1.4 Szakterület
RészletesebbenSzoftverprototípus készítése. Szoftverprototípus készítése. Szoftverprototípus készítése 2011.10.23.
Szoftverprototípus készítése Dr. Mileff Péter A prototípus fogalma: a szoftverrendszer kezdeti verziója Mi a célja? Arra használják, hogy bemutassák a koncepciókat, kipróbálják a tervezési opciókat, jobban
RészletesebbenModell 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
Részletesebben3. Az univerzális szabályozó algoritmusai.
3. Az univerzális szabályozó algoritmusai. Az UC teljes nevén UNIVERZÁLIS MIKROPROCESSZOROS PID SZABÁLYOZÓ. Tulajdonképpen a hosszú név felesleges, mert amelyik szabályozó nem univerzális, nem mikroprocesszoros
RészletesebbenTeszt generálás webes alkalmazásokhoz
Teszt generálás webes alkalmazásokhoz Írásos összefoglaló Pan Liu, Huaikou Miao, Hongwei Zeng és Linzhi Cai An Approach to Test Generation for Web Applications [1] c. munkájáról. Készítette: Doktor Tibor
RészletesebbenObjektum Orientált Szoftverfejlesztés (jegyzet)
Objektum Orientált Szoftverfejlesztés (jegyzet) 1. Kialakulás Kísérletek a szoftverkrízisből való kilábalásra: 1.1 Strukturált programozás Ötlet (E. W. Dijkstra): 1. Elkészítendő programot elgondolhatjuk
RészletesebbenSzálkezelés. Melyik az a hívás, amelynek megtörténtekor már biztosak lehetünk a deadlock kialakulásában?
Szálkezelés 1. A szekvencia diagram feladata az objektumok egymás közti üzenetváltásainak ábrázolása egy időtengely mentén elhelyezve. Az objektumok életvonala egy felülről lefelé mutató időtengely. A
RészletesebbenR3-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
RészletesebbenRé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?
RészletesebbenInformáció-architektúra
Információ-architektúra IEEE 1471: Ipari szabvány szerint a szoftver architektúra kulcs fontosságú fogalmai Rendszer 1 Architektúra 1..n Érintett fél 1..n 1 Architektúra leírás 1..n 1..n Probléma 1..n
RészletesebbenModellalkotás UML-ben
Modellalkotás UML-ben Modellalkotás UML-ben A Unified Modeling Language (UML) egy grafikus modellező nyelv, amely lehetőséget nyújt egy megoldandó probléma specifikációjának leírására absztrakt szinten,
RészletesebbenBook Template Title. Author Last Name, Author First Name
Book Template Title Author Last Name, Author First Name Book Template Title Author Last Name, Author First Name I. rész - Szoftver technológia 1. fejezet - Esettanulmány Bevezetés Az alkalmazás fejlesztésére
RészletesebbenJAVA PROGRAMOZÁS 3.ELŐADÁS
Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 3.ELŐADÁS 2014-2015 tavasz Polimorfizmus, absztrakt osztályok, interfészek 2 Példa - Hengerprogram 3 Példa - Hengerprogram 4 Példa - Hengerprogram
RészletesebbenBiztonsági kézikönyv. PFF-HM31A decentralizált biztonsági vezérlés MOVIPRO -hoz
Hajtástechnika \ Hajtásautomatizálás \ Rendszerintegráció \ Szolgáltatások Biztonsági kézikönyv PFF-HM31A decentralizált biztonsági vezérlés MOVIPRO -hoz Kiadás: 2012. 05. 19388977 / HU SEW-EURODRIVE Driving
RészletesebbenRIA Rich Internet Application
Áttekintés RIA Rich Internet Application Komplex felhasználói felülettel rendelkező web-alkalmazások Bevezető Flex áttekintés ActionScript Felhasználói felület tervezése Események Szerver oldali szolgáltatásokkal
RészletesebbenMielıtt használná termékünket 702008035. Az eltérı környezeti körülmény elektromos áramütést, tüzet, hibás mőködést vagy. okozhat.
. Adatlap G rogrammable ogic Controller GOFA-GM Sorozat GM-DR20/0/0/0A Mielıtt használná termékünket 02000 Olvassa el ezt az adatlapot figyelmesen különösen ügyelve a kezelésre, beépítésre, beszerelésre
RészletesebbenA szolgáltatásbiztonság alapfogalmai
A szolgáltatásbiztonság alapfogalmai Majzik István majzik@mit.bme.hu http://www.inf.mit.bme.hu/edu/courses/szbt 1 Tartalomjegyzék A szolgáltatásbiztonság fogalma A szolgáltatásbiztonságot befolyásoló tényezők
Részletesebben15. Programok fordítása és végrehajtása
15. Programok fordítása és végrehajtása Programok fordítása és végrehajtása. (Fordítás és interpretálás, bytecode. Előfordító, fordító, szerkesztő. A make. Fordítási egység, könyvtárak. Szintaktikus és
RészletesebbenXML sémanyelvek Jeszenszky, Péter
XML sémanyelvek Jeszenszky, Péter XML sémanyelvek Jeszenszky, Péter Publication date 2010 Szerzői jog 2010 Jeszenszky Péter A tananyag a TÁMOP-4.1.2-08/1/A-2009-0046 számú Kelet-magyarországi Informatika
RészletesebbenWebes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)
Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 8. előadás (ASP.NET WebAPI) 2016 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto A webszolgáltatás
RészletesebbenAz 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
RészletesebbenRelációs algebra áttekintés és egy táblára vonatkozó lekérdezések
Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.4. Relációs algebra (áttekintés) 5.1.
RészletesebbenTemporális logikák és modell ellenırzés
Temporális logikák és modell ellenırzés Temporális logikák Modális logika: kijelentések különböző módjainak tanulmányozására vezették be (eredetileg filozófusok). Ilyen módok: esetleg, mindig, szükségszerűen,
RészletesebbenKö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
RészletesebbenSzámítógép Architektúrák
Cache memória Horváth Gábor 2016. március 30. Budapest docens BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu Már megint a memória... Mindenről a memória tehet. Mert lassú. A virtuális
RészletesebbenC# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18
C# Nyelvi Elemei Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei 2013 1 / 18 Tartalomjegyzék 1 Object 2 Típusok 3 String 4 RegEx Tóth Zsolt (Miskolci Egyetem) C# Nyelvi
RészletesebbenMerlin Gerin. Katalógus. Védelem, automatika és irányítástechnika Sepam készülékcsalád Sepam 2000 Sepam 1000 + Sepam 100
Merlin Gerin Katalógus 2002 Védelem, automatika és irányítástechnika Sepam készülékcsalád Sepam 2000 Sepam 000 + Sepam 00 Tartalom Sepam koncepciója 2 Digitális csúcstechnológia 2 Fõbb elõnyök 2 Teljes
Részletesebbenaxióma alapú automatizált teszteléssel
.NET programok minőségi mutatóinak javítása axióma alapú automatizált teszteléssel Doktori értekezés Szerző: Biczó Mihály Témavezető: Dr. Porkoláb Zoltán Eötvös Loránd Tudományegyetem Informatika Doktori
RészletesebbenNyílt hozzáférésű informatikai rendszerek BME VIMM 5294
Nyílt hozzáférésű informatikai rendszerek BME VIMM 5294 Übelhart István ubelhart@mit.bme.hu Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszéke Nyílt rendszerek
RészletesebbenCsak felvételi vizsga: csak záróvizsga: közös vizsga: Mérnökinformatikus szak BME Villamosmérnöki és Informatikai Kar. 2015. május 27.
Név, felvételi azonosító, Neptun-kód: MI pont(45) : Csak felvételi vizsga: csak záróvizsga: közös vizsga: Közös alapképzéses záróvizsga mesterképzés felvételi vizsga Mérnökinformatikus szak BME Villamosmérnöki
RészletesebbenZárójelentés. Az autonóm mobil eszközök felhasználási területei, irányítási módszerek
Zárójelentés Az autonóm mobil eszközök felhasználási területei, irányítási módszerek Az autonóm mobil robotok elterjedése növekedést mutat napjainkban az egész hétköznapi felhasználástól kezdve az ember
Részletesebben1.1 Szakdolgozat témája... 2. 1.2 A Program célja... 2. 1.4 A használt technológiák ismertetése... 2. 2 A program megtervezése...
1 Bevezető... 2 1.1 Szakdolgozat témája... 2 1.2 A Program célja... 2 1.3 Fejlesztői környezet... 2 1.4 A használt technológiák ismertetése... 2 2 A program megtervezése... 4 2.1 Az ablak kinézetének megtervezése:...
RészletesebbenWebSphere Adapters. 6. változat 2. alváltozat. WebSphere Adapter for SAP Software felhasználói kézikönyv 6. változat 2. kiadás
WebSphere Adapters 6. változat 2. alváltozat WebSphere Adapter for SAP Software felhasználói kézikönyv 6. változat 2. kiadás Megjegyzés Az információk és a tárgyalt termék használatba vétele előtt feltétlenül
RészletesebbenOperációs rendszerek 1. 8. előadás Multiprogramozott operációs rendszerek
Operációs rendszerek 1. 8. előadás Multiprogramozott operációs rendszerek Soós Sándor Nyugat-magyarországi Egyetem Faipari Mérnöki Kar Informatikai és Gazdasági Intézet E-mail: soossandor@inf.nyme.hu 2011.
RészletesebbenLÉTRADIAGRAM FORDÍTÓK ELMÉLETE PLC VEZÉRLÉSEK SZÁMÁRA II.
V. Évfolyam 1. szám - 2010. március Deák Ferenc deak@nct.hu LÉTRADIAGRAM FORDÍTÓK ELMÉLETE PLC VEZÉRLÉSEK SZÁMÁRA II. Absztrakt A létradiagram egyszerű, programozási képzettséggel nem rendelkező szakemberek
RészletesebbenKonfigurációkezelés (2B)
Budapesti Műszaki és Gazdaságtudományi Egyetem Intelligens rendszerfelügyelet (VIMIA370) Konfigurációkezelés (2B) Házi feladat Horányi Gergő (IMJ7FZ) 2011. április 9. 1 Bevezető A házi feladat során egy
RészletesebbenAlapszintű 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
RészletesebbenVLT Micro Drive. Kis frekvenciaváltó maximális terherbírás és megbízhatóság
1 VLT Micro Drive Kis frekvenciaváltó maximális terherbírás és megbízhatóság IP 20-as mechanikai védettség A hűtőventilátor közvetlenül nem szellőzteti át az elektronikát Minőségi kondenzátorok Működés
RészletesebbenBudapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék. Önálló laboratórium
Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék Önálló laboratórium (BMEVIIIA355) Téma: Eaton-Moeller PLC-k alkalmazástechnikája
RészletesebbenA Szekszárdi I. Béla Gimnázium Helyi Tanterve
A Szekszárdi I. Béla Gimnázium Helyi Tanterve Négy évfolyamos gimnázium Informatika Készítette: a gimnázium reál munkaközössége 2015. Tartalomjegyzék Alapvetés...3 Egyéb kötelező direktívák:...6 Informatika
RészletesebbenGyakorló 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
RészletesebbenVégh János Bevezetés a Verilog hardver leíró nyelvbe INCK??? előadási segédlet
1 Debreceni Egyetem Informatikai Kara Végh János Bevezetés a Verilog hardver leíró nyelvbe INCK??? előadási segédlet V0.30@14.11.07 Tartalomjegyzék (folyt) 2 Tartalomjegyzék I. Alapfogalmak 1.. A digitális
RészletesebbenTranszformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben. Ráth István
Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben Ráth István rath@mit.bme.hu A grafikus nyelvek... mindenhol ott vannak: Grafikus felületek (Visual Studio) Relációs sémák (dbdesign)
RészletesebbenC# gyorstalpaló. Készítette: Major Péter
C# gyorstalpaló Készítette: Major Péter Adattípusok Logikai változó Egész szám (*: előjel nélküli) Lebegőponto s szám Típus Típusnév másképpen (egyenértékű) Helyigény (bit) Példa bool Boolean 8 (!) true,
RészletesebbenModellellenő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észletesebbenAlapszintű 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
RészletesebbenMagas szintű programozási nyelvek 2 Előadás jegyzet
Magas szintű programozási nyelvek 2 Előadás jegyzet 1. Rendszerfejlesztés 0. lépés: Elemzés (analízis) 1. lépés: Tervezés a, technológia független rész b, technológia függő rész 2. lépés: Megvalósítás
RészletesebbenBevezetés, platformok. Léczfalvy Ádám leczfalvy.adam@nik.bmf.hu
Bevezetés, platformok Léczfalvy Ádám leczfalvy.adam@nik.bmf.hu Mobil készülékek és tulajdonságaik A mobil eszközök programozása, kihívások, nehézségek Mobilprogramozási platformok Java Micro Edition.NET
Részletesebben(11) Lajstromszám: E 006 221 (13) T2 EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA
!HU000006221T2! (19) HU (11) Lajstromszám: E 006 221 (13) T2 MAGYAR KÖZTÁRSASÁG Magyar Szabadalmi Hivatal EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA (21) Magyar ügyszám: E 0 7178 (22) A bejelentés napja:
RészletesebbenXXI. Országos Ajtonyi István Irányítástechnikai Programozó Verseny
evopro systems engineering kft. H-1116 Budapest, Hauszmann A. u. 2. XXI. Országos Ajtonyi István Dokumentum státusza Közétett Dokumentum verziószáma v1.0 Felelős személy Kocsi Tamás / Tarr László Jóváhagyta
Részletesebben2. fejezet Hálózati szoftver
2. fejezet Hálózati szoftver Hálózati szoftver és hardver viszonya Az első gépek összekötésekor (azaz a hálózat első megjelenésekor) a legfontosabb lépésnek az számított, hogy elkészüljön az a hardver,
RészletesebbenObjektumorientált tesztelés
Objektumorientált tesztelés OO tesztelés OO tesztelés funkcionális modell Az objektumok különálló komponensként nagyobbak, mint az egyszerű függvények A rendszernek nincsen egyértelmű teteje (az alrendszerekbe
RészletesebbenNorway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.
Norway Grants AKKUMULÁTOR REGENERÁCIÓS ÉS Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai Kakuk Zoltán, Vision 95 Kft. 2017.04.25. Rendszer szintű megoldás
RészletesebbenAz IBM WebSphere Multichannel Bank Transformation Toolkit V7.1 felgyorsítja a többcsatornás alkalmazásfejlesztést
IBM Európa, Közel-Kelet és Afrika szoftverbejelentés ZP11-0164, kelt: 2011. május 17. Az IBM WebSphere Multichannel Bank Transformation Toolkit V7.1 felgyorsítja a többcsatornás alkalmazásfejlesztést Tartalomjegyzék
RészletesebbenSZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS
SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS 2.ELŐADÁS A VB programozási nyelv Az Excel programozása 2 A VB programozási nyelv Adattípusok Adatok kezelése Vezérlőszerkezetek Adattípusok és műveletek Egész adattípusok
RészletesebbenBosch Video Client. Kezelési útmutató
Bosch Video Client hu Kezelési útmutató Bosch Video Client Tartalomjegyzék hu 3 Tartalomjegyzék 1 Bevezetés 6 1.1 Rendszerkövetelmények 6 1.2 Szoftvertelepítés 6 1.3 Az alkalmazásban használt jelölések
RészletesebbenElőzmények 2011.10.23.
Előzmények Dr. Mileff Péter A 80-as évek közepétől a szoftverek komplexitása egyre növekszik. Megjelentek az OO nyelvek. Az OO fejlesztési módszerek a rendszer különböző nézőpontú modelljeit készítik el.
RészletesebbenModellellenő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észletesebbenSzoftverminő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
RészletesebbenProgramozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.
Programozás III CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van a fejlesztő környezet és az osztálykönyvtárak is: rt.jar fájl
RészletesebbenA TANTÁRGY ADATLAPJA
A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babes-Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4
RészletesebbenSzámítógépes képelemzés projektmunkák 2012
Számítógépes képelemzés projektmunkák 2012 Automatikus panorámakép készítés Készíts néhány képet a Dóm térről (vagy a város más területéről) úgy hogy a képek között legalább 20% átfedés legyen, és a kívánt
RészletesebbenSzoftver-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
RészletesebbenTRIMx-EP DIGITÁLIS SZINKRON KAPCSOLÁS TRANSZFORMÁTOROK. Alkalmazási terület
TRIMx-EP DIGITÁLIS SZINKRON KAPCSOLÁS VEZÉRLŐ KÉSZÜLÉK TRANSZFORMÁTOROK BEKAPCSOLÁSI ÁRAMLÖKÉSÉNEK CSÖKKENTÉSÉRE Alkalmazási terület A TRIMx-EP készülék feladata a transzformátorok bekapcsolási áramlökésének
RészletesebbenMonitorok automatikus szintézise elosztott beágyazott rendszerek futásidőbeli verifikációjához
Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Méréstechnika és Információs Rendszerek Tanszék Monitorok automatikus szintézise elosztott beágyazott rendszerek futásidőbeli
Részletesebbeneseményvezérelt megoldások Vizuális programozás 5. előadás
Programozási architektúrák, eseményvezérelt megoldások Vizuális programozás 5. előadás Komponens-alapú programozás Kezdelteges formája, az első komponensek: DLL-ek Black box ujrahasznosítható kód Függvényeket
RészletesebbenProgramozás II. ATM példa Dr. Iványi Péter
Programozás II. ATM példa Dr. Iványi Péter 1 ATM gép ATM=Automated Teller Machine Pénzkiadó automata Kezelő szoftvert szeretnénk írni Objektum-orientált módon 2 Követelmények Egyszerre csak egy embert
RészletesebbenWebszolgáltatások kommunikációs overhead-jének becslése
Webszolgáltatások kommunikációs overhead-jének becslése Simon Balázs, sbalazs@iit.bme.hu Dr. Goldschmidt Balázs, balage@iit.bme.hu Dr. Kondorosi Károly, kondor@iit.bme.hu Budapesti Műszaki Egyetem, Irányítástechnika
Részletesebben2. Laborgyakorlat. Step7 programozási környezet bemutatása
2. Laborgyakorlat Step7 programozási környezet bemutatása A gyakorlat célja A Siemens valamint a Siemens alapokra épített PLC-k (pl. VIPA) programozására fejlesztették a Stpe7 programozási környezetet.
RészletesebbenOperációs rendszerek
Operációs rendszerek 2. EA Regiszter: A regiszterek a számítógépek központi feldolgozó egységeinek (CPU-inak), illetve mikroprocesszorainak gyorsan írható-olvasható, ideiglenes tartalmú, és általában egyszerre
RészletesebbenModellellenő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
RészletesebbenPlena VAS configuration
Plena VAS configuration Configuration Software hu Software manual Plena VAS configuration Tartalomjegyzék hu 3 Tartalomjegyzék 1 A kézikönyvről 5 1.1 Az útmutató célja 5 1.2 Digitális dokumentum 5 1.3
RészletesebbenOAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1.
OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1. Feladat Szimuláljuk különféle élőlények túlélési versenyét. A lények egy pályán haladnak végig, ahol váltakozó viszonyok vannak. Egy lénynek
RészletesebbenOperációs rendszerek. A Windows NT felépítése
Operációs rendszerek A Windows NT felépítése A Windows NT 1996: NT 4.0. Felépítésében is új operációs rendszer: New Technology (NT). 32-bites Windows-os rendszerek felváltása. Windows 2000: NT alapú. Operációs
Részletesebben!!" KÉSZÍTK: ERDÉLYI LAJOS KOLLÁR NÁNDOR WD6OGW BUK8Y7
!!" KÉSZÍTK: ERDÉLYI LAJOS KOLLÁR NÁNDOR WD6OGW BUK8Y7 #$%#&'( 1. Bevezet... 4 1.1. Feladatkiírás:... 4 1.2. Specifikáció... 4 2. A kidolgozás munkafázisai, szakaszai... 6 3. Fejlesztési irányelvek...
RészletesebbenCsak felvételi vizsga: csak záróvizsga: közös vizsga: Mérnök informatikus szak BME Villamosmérnöki és Informatikai Kar. 2010. január 4.
Név, felvételi azonosító, Neptun-kód: MI pont(90) : Csak felvételi vizsga: csak záróvizsga: közös vizsga: Közös alapképzéses záróvizsga mesterképzés felvételi vizsga Mérnök informatikus szak BME Villamosmérnöki
RészletesebbenUtasítások. Excel VII. Visual Basic programozás alapok. A Visual Basic-kel megoldható feladatok típusai Objektumok, változók Alprogramok
Alkalmazott Informatikai Intézeti Tanszék MŰSZAKI INFORMATIKA Dr.Dudás László 0. Excel VII. Visual Basic programozás alapok A Visual Basic-kel megoldható feladatok típusai Objektumok, változók Alprogramok
RészletesebbenIDAXA-PiroSTOP HI1 Hurokkezelő 1 intelligens hurokhoz 2004/0177/063 Terméklap
IDAXA-PiroSTOP HI Hurokkezelő intelligens hurokhoz 24/77/63 Terméklap Hexium Kft. HI Terméklap Rev 2 2 Tartalomjegyzék. ISMERTETŐ... 3 2. HARDVER... 4 2. LED... 5 2.2 KAPCSOLAT A VEZ EGYSÉG FELÉ... 5 2.3
RészletesebbenTeszttervezé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
Részletesebben