Modellellenőrző szoftverek
|
|
- Elek Vass
- 3 évvel ezelőtt
- Látták:
Átírás
1 Modellellenőrző szoftverek Dr. Németh L. Zoltán Első előadás SZTE, Informatikai Tanszékcsoport 2008/2009 I. félév Modell 1 1
2 Az előadás vázlata A modellellenőrzés jelentőssége, alapjai A SPIN és használata A PROMELA nyelv szintaktikája, szemantikája (példák) Helyességi kritériumok megfogalmazása (LTL logika) Komplex konkurens modellezési példák Időzített rendszerek és időzített automaták Az UPPAAL modellellenőrző Példák időzített rendszerek ellenőrzése Modell 1 2
3 Motivációk ICT(Information and Communication Thechnology) rendszerek mindennapjainkban renszerek vezérlése (mindenhol) internet: e-bankok, e-vásársárlás, e-ügyintézés, e- beágyazott rendszerek (embedded systems): intelligens kártyák, mobilok, autók, szórakoztató elektronika, orvosi műszerek, stb. Egyre nő az igény az ICT rendszerek megbízhatóságára (A,,Ha a Microsoft autókat gyártana vicc nagyon komoly! ) Ugyanakkor a rendszerek komplexitása, elképesztően gyorsan nő (komponensek száma, funkcionalitása, interaktivitás, környezettől való függés, nem determinisztikusság, időfüggés, elosztottság, stb. ) Ma már intuitív eszközökkel komplex rendszerek nem tervezhetők/készíthetők => a formális (matemetikai( matemetikai) ) módszerek m térht rhódítása mind a tervezésben mind az ellenőrz rzésben Modell 1 3
4 Sajnos Arine 5 rakéta (1996) indítás után 36 másodpercel felrobbant egy 64 bites lebegőpontos sebesség-adat 16 bites egésszé való hibás konvertálása miatt A Terrac-25 radioterápiás készülék balesetei ( ) 6 ember halt meg túladagolás miatt A varsói légiszerencsétlenség (1993) Mars Pathfinder (1997) A megbízható működés elengedhetetlen biztonsági és anyagi okokból Modell 1 4
5 Ellellenőrzés Egy (szoftver) rendszer helyes, ha megfelel a vele szemben tervezéskor támasztott elvárásoknak. Ebben mindenki egyetért, de hogyan lehet ezt ellenőrizni? Szoftver ellenőrzési techikák: Tesztelés Peer reviewing (társak általi ellenőrzés) Formális módszerek Hardver ellenőrzési techikák: - Szerkezeti elemzés (Structural Analysis) - Emuláció - Szimuláció Modell 1 5
6 Tesztelés Minden szoftvertervezési projekt része A költségek 30-50%-át fordítják rá!!! Tesztgenerálás és futtatás (félig) automatikusan Az összehasonlítást általában ember végzi A tesztelés általában nem képes ezt miden esetet kimerítően bizonyítani. Csak általános, tipikus szituációkat vizsgál. Nehéz megmondani, hogy mikor érdemes abbahagyni,,a A program tesztelés s csak a hibák k kimutatására használhat lható,, de sohasem azok hiány nyának nak igazolására ra. (Dijkstra) Modell 1 6
7 Peer Reviewing Szoftverfejlesztők (ideális esetben nem a készítők!) elemzik a kódot, annak végrehajtása nélkül Annak ellenére, hogy manuális módszer meglehetősen hatékony: A hibák 31-93%-át (átlagban 60%-át) lehet így felefedezni Szoftverfejlesztési projektek közel 80%-ban alkalmazzák De a nehezen észrevehető hibák sokszor továbbra is megmaradnak Modell 1 7
8 Konkurens rendszerek este Egyidejű (konkurens) rendszerekre tervezése és ellenőrzése különösen nehéz!!! az folyamatok végrehajtási sorrendje nemdeterminisztikus legalább is nem megfigyelhető / kontrollálható Pl. a folyamatok ütemezés egyidejűleg egy nagy hálózat különböző egymástól távoli processzorain törtéhet. tesztelésnél a javításhoz a hibát reprodukálni kell tudni! De pontosan ugyanazt a futást, ami a nemdeterminisztikus környezettől is függhet hogyan ismételjük meg? Modell 1 8
9 Konkurencia mindenütt Áruházban a vevők (áruk, pénztárak), a bejáratnál: 2 udvarias vagy 2 törtető ember találkozása Telefonközpont mi van, ha ketten egyszerre hívják egymást? Közlekedés (elsőbbségadás) jobbkézszabály, körforgalom, táblák, lámpák Osztott rendszerek, többfelhasználós rendszerek, adtbázisok stb Modell 1 9
10 Formális módszerek ellenőrzésre Formális módszer,,alkalmazott matematika ICT rendszerek modellezésére és elemzésére A rendszer helyességét matematikai szigorral bizonyítják A fejlesztés korai fázisában alkalmazhatók, már a tervezéskor Modell alalpú módszerek modell alapú szimuláció modellellenőrzés modell alapú tesztelés Deduktív módszerek tétel bizonyítók (theorem proovers) bizonyítás ellenőrzők (proof checkers) Modell 1 10
11 Modellellenőrzés Adott a rendszer (program) egy véges állapotú modelljét készítjük el: (M) Egy logikai tulajdonság (p) írja le a specifikációt (a kívánt viselkedést) A modellellenőrzés egy olyan automatikus módszer, mely szisztematikusan ellenőrzi, hogy e tulajdonság fennáll-e a rendszerben. Ha a tulajdonság nem teljesül, akkor a modellellenőrző egy ellenpéldát ad, ami alapján a hiba javítható Modell 1 11
12 A modellelenőrzés végeletei verifikáció: bizonyítsuk be, hogy a tervezés alatt álló rendszer M modellje teljesíti a követelményekben megfogalmazott p tulajdonságo(ka)t hibakutatás (debugging): keressünk hibákat az M rendszermodellben Persze a p tulajdonságnak helyesen kell leírni a specifikációt. A specifikációtól elvárás, hogy - zárt/teljes (minden esetre kiterjedő) és - ellentmondásmentes legyen Modell 1 12
13 Verifikácó - validáció Maga a modellellenőrzés, a verifikáció csak akkor ér valamit, ha 1. a modell helyesen írja le a rendszert és 2. a specifikáció helyesen írja le a követelményeket Ezért ezt is ellenőrizni kell, ezt szokták validációnak hívni. Másként fogalmazva: validáció: Jó rendszert építünk-e? (tényleg erre van-e szükség?) verifikáció: Jól építjük-e a rendszert? (a modell teljesíti-e a már validált specifikációt) Modell 1 13
14 Alkalmazási területek Biztonságkritikus rendszerek: orvosi berendezések repülésirányítás katonaság Missziókritikus rendszerek: űrkutatás Adatvédelmi rendszerek: bank rendszerek orvosi nyilvátartás De sokszor ipari alkalmazásoknál is kifizetődő - processor gyártás (Pl. Intel Pentium FDIV Bug) - szórakozatató elektronika - autóelektronika stb Modell 1 14
15 Modellellenőrzés a rendszerfejlesztésben Modell 1 15
16 Klasszikus modellellenőrzés Modell 1 16
17 Modern modellellenőrzés Középpontban: absztrakció (szándékos információvesztés) az állapottérrobbanást elkerülendő Ebben a kurzusban: csak a klasszikus megközelítés lesz De pl. a SPIN támogatja a C programokból automatikus modellextrahálást is Modell 1 17
18 A klasszikus modellellenőrzés folyamata I. Modellezési fázis (modeling phase) II. a vizsgált rendszer modelljének megalkotása modelleíró + modellellenőrző szoftver segítségével a rendszer vizsgálata/javítása néhány szimulációval az ellenőrizendő tulajdonságok megadása valamilyen specifikáció leíró nyelvben Futtatási fázis (running phase) a modellellenőrző futattása sorra a tulajdonságok ellenőrzésére Modell 1 18
19 A klasszikus modellellenőrzés folyamata II. III. Elemzési fázis (analysis phase) a tulajdonság teljesül? -> ellenőrizzük a következőt (ha még van) a tulajdonság nem teljesül? -> 1. analizáljuk a kapott ellenpéldát szimulációval 2. tervezési/modellezési hiba -> módosítsuk a modellt VAGY a kért tulajdonságban van a hiba -> módosítsuk a specifikációt 3. ismételjük meg az ellenőrzést (azaz vissza II-re) elfogyott a memória? próbáljuk ki a modellellenőrző más beállításait (a modell szimmetria tulajdonságainak kihasználása, szimbólikus technikák) alkalmazzunk erősebb absztrakciót a modellezésben, esetleg csak külön ehhez a tulajdonsághoz elégedjünk meg sok véletlenül választott és nem az összes lehetséges állapot vizsgálatával Modell 1 19
20 A modellellenőrzés előnyei általános verifikációs technika (hw, sw, beágyazott) paricális verifikáció támogatása, azaz a specifikációnak nem kell teljesnek lennie a hibákat valószínűségüktől függetlenül deríti fel diagnosztikus információt (ellenpédát) is ad az ellenőrzés automatikus, gombnyomásra megy gyorsan terjed ipari alkalmazásokban is könnyen integrálható a meglevő rendszerfejlesztési ciklusba szilárd matematikai alapokra épül (gráf algoritmusok, adatszerkezetek, logika) Modell 1 20
21 A modellellenőrzés hátrányai elsősorban vezérlés-központú rendszerkebn alkalmazható, nem adat-központúakban eldönthetőségi kérdésektől függhet (pl. végtelen állapottér, absztakt adattípusok esetén) csak a renszer modelljét ellenőrzi, nem deríti fel a gyártási (hw) és kódolási (sw) hibákat, (tesztelés is kell!). csak a megfogalmazott tulajdonságokat ellenőrzi, melyek nem feltétlenül teljesek (azaz minden esetre kiterjedőek) az állapottér robbanás komoly memória korlátokat ad a helyes absztrakció megtalálása szakértelmet igényel maga a modellellenőrző szoftver is hibás lehet az ellenőrzés nem általánosítható (tetszőleges paraméterekre és komponens számra) Modell 1 21
22 Az egyik szoftver a SPIN. Miért pont a SPIN? modern modellellenőrző eszköz (egyidejű) szoftver fejlesztésre specializált új elméleti eredmények hatékony implementációjára épül ingyenes jól dokumentált folyamatosan fejlesztett több mint 2000 felhasználó, számuk gyorsan bővül könnyen kezelhető grafikus interfész: XSPIN vagy JSPIN elismert: ACM Software System Award Modell 1 22
23 Modell 1 23
24 Az Xspin dióhéjban Az Xspin szolgáltatásai: Promela modellek szerkesztése (+ szintaxisellenőrzés) szimulációja véletlen (random) interaktív irányított (guided) verifikációja kimerítő (exhaustive) bitstate hashing mód (nem garantál 100%-os bizonyítást) További szolgáltatások bármely processz automatájának felrajzolása LTL formula szerkesztő Súgó(verifikációs és szimulációs támpontok) Modell 1 24
25 SPIN - Bevezetés SPIN (= Simple Promela Interpreter) konkurens rendszerek, különösen kommunikációs protokollok logikai konzisztenciáját ellenőrző eszköz modellezési nyelve: Promela Promela (= Protocol/Process Meta Language) konkurens processzek dinamikus létrehozása kommunikáció csatornákon keresztül: szinkron (azaz randevú), vagy aszinkron (azaz pufferelt). szintaxisában a C programozási nyelvre hasonlít specifikációs nyelv véges állapotú rendszerek modellezésére Modell 1 25
26 Egy példa A Pathfinder 1997, Július 4-én landolt a Marson Egy kis terepjárót bocsátott útjára Elképesztő fizikai és mechanikai problémákat kellett leküzdeni A vezérlőprogram hibája miatt néha előre nem látható pillanatokban megszakadt a kapcsolat a Földdel Modell 1 26
27 A hibás programrész Két egyidőben futó (konkurens) folyamat: A: a gyűjtött adatok memóriába való továbbítását végzi B: a memóriában lévő adatokat a Földre küldi Két egyszerű szabály: Kölcsönös kizárás: a memóriához egyszerre csak az egyik folyamat férhet hozzá megvalósítása egy mutex lock (lakat) változó segítségével Prioritási szabály: a B folyamatnak mindig elsőbbsége van az A folyamattal szemben, azaz A csak akkor futhat, ha B munka nélküli (idle) állapotban van Modell 1 27
28 A folyamatok működése unlock tétlen fut lock vár Modell 1 28
29 A SPIN Model mtype = { free, busy, idle, waiting, running }; mtype h_state = idle; mtype l_state = idle; mtype mutex = free; active proctype high() /* can run at any time */ { end: do :: h_state = waiting; atomic { mutex == free -> mutex = busy }; h_state = running; /* critical section - consume data */ atomic { h_state = idle; mutex = free } od } Modell 1 29
30 A SPIN Model II. active proctype low() provided (h_state == idle) /* scheduling rule */ { end: do :: l_state = waiting; atomic { mutex == free -> mutex = busy}; l_state = running; } /* critical section - produce data */ atomic { l_state = idle; mutex = free } od Modell 1 30
31 Ellenőzése: $ spin a pathfinder $ gcc o pan pan.c $./pan hint: this search is more efficient if pan.c is compiled -DSAFETY pan: invalid end state (at depth 4) pan: wrote pathfinder.trail (Spin Version February 2004) Warning: Search not completed + Partial Order Reduction Modell 1 31
32 Full statespace search for: never claim - (none specified) assertion violations + acceptance cycles - (not selected) invalid end states + State-vector 20 byte, depth reached 4, errors: 1 5 states, stored 1 states, matched 6 transitions (= stored+matched) 0 atomic steps hash conflicts: 0 (resolved) (max size 2^18 states) Modell 1 32
33 A hiba felderítése: $ spin t p pathfinder 1: proc 1 (low) line 40 "pathfinder" (state 1) [l_state = waiting] 2: proc 1 (low) line 41 "pathfinder" (state 2) [((mutex==free))] 2: proc 1 (low) line 41 "pathfinder" (state 3) [mutex = busy] 3: proc 1 (low) line 42 "pathfinder" (state 5) [l_state = running] 4: proc 0 (high) line 27 "pathfinder" (state 1) [h_state = waiting] 5: proc 0 (high) line 28 "pathfinder" (state 2) [((mutex==free))] transition failed spin: trail ends after 5 steps #processes: 2 h_state = waiting l_state = running mutex = busy 5: proc 1 (low) line 46 "pathfinder" (state 8) 5: proc 0 (high) line 28 "pathfinder" (state 2) 2 processes created Modell 1 33
34 A hiba egy lehetséges javítása active proctype low() provided (h_state == idle) { end: do :: l_state = waiting; (h_state == idle ) atomic { mutex == free -> mutex = busy}; l_state = running; /* critical section - produce data */ atomic { l_state = idle; mutex = free } od} Őrfeltétel, csak akkor lépheti át a folyamat, ha igaz Modell 1 34
Az előadás vázlata. A SPIN modellellenőrző rendszer. Motivációk. (,,Ha a Microsoft autókat gyártana )
Az előadás vázlata A SPIN modellellenőrző rendszer Németh L. Zoltán (zlnemeth@inf.u-szeged.hu) A modellellenőrzés jelentőssége, alapjai A SPIN használata A PROMELA nyelv szintaktikája, szemantikája (példák)
RészletesebbenA SPIN használata, példák II
A SPIN használata, példák II Dr. Németh L. Zoltán (zlnemeth@inf.u-szeged.hu) SZTE, Informatikai Tanszékcsoport 2008/2009 I. félév 2008.10.18/2 MODELL 9 1 2. példa: Egy osztott algoritmus Pl. legyen ez
RészletesebbenRendszermodellezé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,
RészletesebbenAutomatikus 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
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é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észletesebbenSzoftverminő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
RészletesebbenVerifiká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
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észletesebbenValó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
RészletesebbenAutó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
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é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észletesebbenAbsztrakció a szoftvertervezésben az Alloy specifikációs nyelv segítségével
Absztrakció a szoftvertervezésben az Alloy specifikációs nyelv segítségével Németh L. Zoltán Számítástudomány Alapjai Tanszék SZTE, Informatikai Tanszékcsoport 2009. szeptember 15. Tartalom Röviden a formális
RészletesebbenBUDAPESTI MÛSZAKI EGYETEM Méréstechnika és Információs Rendszerek Tanszék. SPIN Mérési útmutató. Készítette: Jávorszky Judit
BUDAPESTI MÛSZAKI EGYETEM Méréstechnika és Információs Rendszerek Tanszék SPIN Mérési útmutató Készítette: Jávorszky Judit Tartalomjegyzék 1. Bevezetés. 2 1.1. Általános leírás. 2 1.2. Módszertan. 3 1.3.
RészletesebbenFormá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
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észletesebbenBiztonsági folyamatirányító. rendszerek szoftvere
Biztonsági folyamatirányító rendszerek szoftvere 1 Biztonsági folyamatirányító rendszerek szoftvere Tartalom Szoftverek szerepe a folyamatirányító rendszerekben Szoftverek megbízhatósága Szoftver életciklus
RészletesebbenRendszermodellezé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
RészletesebbenIntervenció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
RészletesebbenA fejlesztési szabványok szerepe a szoftverellenőrzésben
A fejlesztési szabványok szerepe a szoftverellenőrzésben Majzik István majzik@mit.bme.hu http://www.inf.mit.bme.hu/ 1 Tartalomjegyzék Biztonságkritikus rendszerek A biztonságintegritási szint Az ellenőrzés
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észletesebbenMiskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert
Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája Készítette: Urbán Norbert Szoftver-minőség A szoftver egy termelő-folyamat végterméke, A minőség azt jelenti,
RészletesebbenAutóipari beágyazott rendszerek. Kockázatelemzés
Autóipari beágyazott rendszerek Kockázatelemzés 1 Biztonságkritikus rendszer Beágyazott rendszer Aminek hibája Anyagi vagyont, vagy Emberéletet veszélyeztet Tipikus példák ABS, ESP, elektronikus szervokormány
RészletesebbenSzámítógép-rendszerek fontos jellemzői (Hardver és Szoftver):
B Motiváció B Motiváció Számítógép-rendszerek fontos jellemzői (Hardver és Szoftver): Helyesség Felhasználóbarátság Hatékonyság Modern számítógép-rendszerek: Egyértelmű hatékonyság (például hálózati hatékonyság)
RészletesebbenDigitá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
RészletesebbenOpenCL 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
RészletesebbenBokor Péter. DECOS Nemzeti Nap október 15. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
Beépített diagnosztika Bokor Péter Tartalom 1. Elosztott diagnosztika: a feladat 2. A diagnosztika kihívása 3. A tagság mint diagnosztika 4. A DECOS diagnosztikai szolgáltatások 5. Kapcsolódó feladatok:
Részletesebben... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.
Párhuzamos programok Legyen S parbegin S 1... S n parend; program. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Folyamat
RészletesebbenProcesszusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)
1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)
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é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észletesebbenA formális módszerek szerepe a rendszerek biztonságának növelésében
A formális módszerek szerepe a rendszerek biztonságának növelésében Dr. Bartha Tamás BME Közlekedésmérnöki és Járműmérnöki Kar Közlekedés- és Járműirányítási Tanszék A formális módszerek rövid bemutatása
RészletesebbenA 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
RészletesebbenIntelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.
Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft. Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.
RészletesebbenOsztott rendszer. Osztott rendszer informális definíciója
Osztott rendszer Osztott rendszer informális definíciója Egymástól elkülönülten létező program-komponensek egy halmaza. A komponensek egymástól függetlenül dolgoznak saját erőforrásukkal. A komponensek
RészletesebbenNagy 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ő
RészletesebbenBevezetés a programozásba
Bevezetés a programozásba A szoftverfejlesztés folyamata PPKE-ITK Tartalom A rendszer és a szoftver fogalma A szoftver, mint termék és készítésének jellegzetességei A szoftverkészítés fázisai: Az igények
RészletesebbenProcesszusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)
1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)
RészletesebbenBevezetés a kvantum informatikába és kommunikációba Féléves házi feladat (2013/2014. tavasz)
Bevezetés a kvantum informatikába és kommunikációba Féléves házi feladat (2013/2014. tavasz) A házi feladatokkal kapcsolatos követelményekről Kapcsolódó határidők: választás: 6. oktatási hét csütörtöki
RészletesebbenSzenzorhálózatok programfejlesztési kérdései. Orosz György
Szenzorhálózatok programfejlesztési kérdései Orosz György 2011. 09. 30. Szoftverfejlesztési alternatívák Erőforráskorlátok! (CPU, MEM, Energia) PC-től eltérő felfogás: HW közeli programozás Eszközök közvetlen
RészletesebbenCsoportos üzenetszórás optimalizálása klaszter rendszerekben
Csoportos üzenetszórás optimalizálása klaszter rendszerekben Készítette: Juhász Sándor Csikvári András Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Automatizálási
RészletesebbenMiskolci Egyetem Általános Informatikai Tanszék
Software tesztelés Miskolci Egyetem Általános Informatikai Tanszék Software tesztelés SWTESZT / 1 A tesztelés feladata Két alapvető cél rendszerben található hibák felderítése annak ellenőrzése, hogy a
RészletesebbenA tesztelés feladata. Verifikáció
Software tesztelés Miskolci Egyetem Általános Informatikai Tanszék Software tesztelés SWTESZT / 1 A tesztelés feladata Két alapvető cél rendszerben található hibák felderítése annak ellenőrzése, hogy a
RészletesebbenSzoftver-technológia I.
Szoftver technológia I. Oktatók Sziray József B602 Heckenast Tamás B603 2 Tananyag Elektronikus segédletek www.sze.hu/~sziray/ www.sze.hu/~heckenas/okt/ (www.sze.hu/~orbang/) Nyomtatott könyv Ian Sommerville:
RészletesebbenModellezé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
RészletesebbenA 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
RészletesebbenAz értékelés során következtetést fogalmazhatunk meg a
Az értékelés során következtetést fogalmazhatunk meg a a tanuló teljesítményére, a tanulási folyamatra, a célokra és követelményekre a szülők teljesítményére, a tanulási folyamatra, a célokra és követelményekre
RészletesebbenÉlettartam teszteknél alkalmazott programstruktúra egy váltóvezérlő példáján keresztül
Élettartam teszteknél alkalmazott programstruktúra egy váltóvezérlő példáján keresztül 1 Tartalom Miről is lesz szó? Bosch GS-TC Automata sebességváltó TCU (Transmission Control Unit) Élettartam tesztek
Részletesebben2 0 1 4 2 0 1 5 I I. H é t f ő Óra IR 011 3 IR 012 3
H é t f ő Óra IR 011 3 IR 012 3 GPGPU: Grafikus processzorok felhasználása általános célú számításokra előadás Nagy A., Varga L. H[12 14] Szenzorhálózatok Kincses Z., SARCEVIC P. H[13 15] GPGPU: Grafikus
RészletesebbenHatékony iteratív fejlesztési módszertan a gyakorlatban a RUP fejlesztési módszertanra építve
Hatékony iteratív fejlesztési módszertan a gyakorlatban a RUP fejlesztési módszertanra építve Kérdő Attila, ügyvezető, INSERO Kft. EOQ MNB, Informatikai Szakosztály, HTE, ISACA 2012. május 17. Módszertanok
RészletesebbenKözösség, projektek, IDE
Eclipse Közösség, projektek, IDE Eclipse egy nyílt forráskódú (open source) projekteken dolgozó közösség, céljuk egy kiterjeszthető fejlesztői platform és keretrendszer fejlesztése, amely megoldásokkal
RészletesebbenModellezé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
RészletesebbenProgramozási nyelvek (ADA)
Programozási nyelvek (ADA) Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 3. előadás Programozási nyelv felépítése szabályok megadása Lexika Milyen egységek építik fel? Szintaktikus szabályok
RészletesebbenProgramfejlesztési Modellek
Programfejlesztési Modellek Programfejlesztési fázisok: Követelmények leírása (megvalósíthatósági tanulmány, funkcionális specifikáció) Specifikáció elkészítése Tervezés (vázlatos és finom) Implementáció
RészletesebbenA 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
RészletesebbenModell 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
RészletesebbenOperációs rendszerek II. Folyamatok ütemezése
Folyamatok ütemezése Folyamatok modellezése az operációs rendszerekben Folyamatok állapotai alap állapotok futásra kész fut és várakozik felfüggesztett állapotok, jelentőségük Állapotátmeneti diagram Állapotátmenetek
RészletesebbenSzolgáltatásintegráció (VIMIM234) tárgy bevezető
Szolgáltatásintegráció Szolgáltatásintegráció (VIMIM234) tárgy bevezető Gönczy László gonczy@mit.bme.hu A tárgyról A tantárgy célja a hallgatók megismertetése a komplex informatikai rendszerek integrációs
RészletesebbenFormá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
RészletesebbenHARDVER- ÉS SZOFTVERRENDSZEREK VERIFIKÁCIÓJA
Írta: ÉSIK ZOLTÁN GOMBÁS ÉVA NÉMETH L. ZOLTÁN HARDVER- ÉS SZOFTVERRENDSZEREK VERIFIKÁCIÓJA Egyetemi tananyag 2 COPYRIGHT: 2 26, Dr. Ésik Zoltán, Dr. Gombás Éva, Dr. Németh L. Zoltán, Szegedi Tudományegyetem
RészletesebbenDigitális technika VIMIAA01 9. hét Fehér Béla BME MIT
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges
RészletesebbenDigitális technika VIMIAA01 9. hét
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges
Részletesebben8.3. AZ ASIC TESZTELÉSE
8.3. AZ ASIC ELÉSE Az eddigiekben a terv helyességének vizsgálatára szimulációkat javasoltunk. A VLSI eszközök (közöttük az ASIC) tesztelése egy sokrétűbb feladat. Az ASIC modellezése és a terv vizsgálata
RészletesebbenModellező 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
RészletesebbenKorlá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
RészletesebbenHardver é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
RészletesebbenFejlesztés kockázati alapokon 2.
Fejlesztés kockázati alapokon 2. Az IEC61508 és az IEC61511 Szabó Géza Szabo.geza@mail.bme.hu 1 A blokk célja Áttekintő kép a 61508-ról és a 61511-ről, A filozófia megismertetése, Nem cél a követelmények
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (8) Szoftverminőségbiztosítás Szoftvertesztelési folyamat (folyt.) Szoftvertesztelési ráfordítások (Perry 1995) Tesztelésre fordítódik a projekt költségvetés 24%-a a projekt menedzsment
RészletesebbenOperációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:
Operációs rendszerek MS Windows NT (2000) folyamatok Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: szálak ütemezése végrehajtásra
RészletesebbenHardver é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
RészletesebbenIK Algoritmusok és Alkalmazásaik Tsz, TTK Operációkutatás Tsz. A LEMON C++ gráf optimalizálási könyvtár használata
IKP-9010 Számítógépes számelmélet 1. EA IK Komputeralgebra Tsz. IKP-9011 Számítógépes számelmélet 2. EA IK Komputeralgebra Tsz. IKP-9021 Java technológiák IK Prog. Nyelv és Ford.programok Tsz. IKP-9030
RészletesebbenSzoftver-mérés. Szoftver metrikák. Szoftver mérés
Szoftver-mérés Szoftver metrikák Szoftver mérés Szoftver jellemz! megadása numerikus értékkel Technikák, termékek, folyamatok objektív összehasonlítása Mér! szoftverek, programok CASE eszközök Kevés szabványos
Részletesebben(kernel3d vizualizáció: kernel245_graph.mpg)
(kernel3d vizualizáció: kernel245_graph.mpg) http://www.pabr.org/kernel3d/kernel3d.html http://blog.mit.bme.hu/meszaros/node/163 1 (ml4 unix mérés boot demo) 2 UNIX: folyamatok kezelése kiegészítő fóliák
RészletesebbenFormá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
RészletesebbenPárhuzamos programozási platformok
Párhuzamos programozási platformok Parallel számítógép részei Hardver Több processzor Több memória Kapcsolatot biztosító hálózat Rendszer szoftver Párhuzamos operációs rendszer Konkurenciát biztosító programozási
RészletesebbenModell 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
Részletesebbenalkalmazásfejlesztő környezete
A HunGrid infrastruktúra és alkalmazásfejlesztő környezete Gergely Sipos sipos@sztaki.hu MTA SZTAKI Hungarian Academy of Sciences www.lpds.sztaki.hu www.eu-egee.org egee EGEE-II INFSO-RI-031688 Tartalom
RészletesebbenUtolsó módosítás:
Utolsó módosítás: 2012. 09. 06. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 Forrás: Gartner Hype Cycle for Virtualization, 2010, http://premierit.intel.com/docs/doc-5768
RészletesebbenDigitális technika (VIMIAA02) Laboratórium 4
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 4 Fehér Béla Raikovich Tamás,
RészletesebbenProgramtervező informatikus MSc nappali tagozat ajánlott tanterv 2018
Előadás Előadás Programtervező informatikus MSc nappali tagozat ajánlott tanterv 2018 Szoftvertechnológia specializáció (törzsanyaggal együtt) Törzsanyag IPM-18KMTGY Kutatásmódszertan 0 2 Gy 1 3 1 0+2+1
RészletesebbenKOMPUTER-ALGEBRA RENDSZEREK VERIFIKÁCIÓJA
KOMPUTER-ALGEBRA RENDSZEREK VERIFIKÁCIÓJA Szoftver Verifikáció és Validáció, 2015 Ősz Vaitkus Márton Tartalom Motiváció Maple MiniMaple MiniMaple típusellenőrzése MiniMaple formális specifikációja MiniMaple
RészletesebbenProgramtervező informatikus MSc nappali tagozat ajánlott tanterv 2018
Előadás Előfeltétel Előadás Előfeltétel Programtervező informatikus MSc nappali tagozat ajánlott tanterv 018 Szoftvertechnológia specializáció (törzsanyaggal együtt) Törzsanyag IPM-18KMTGY Kutatásmódszertan
RészletesebbenJava programozási nyelv
Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék
RészletesebbenDr. Schuster György október 30.
Real-time operációs rendszerek RTOS 2015. október 30. Jellemzők ONX POSIX kompatibilis, Jellemzők ONX POSIX kompatibilis, mikrokernel alapú, Jellemzők ONX POSIX kompatibilis, mikrokernel alapú, nem kereskedelmi
RészletesebbenUnit 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
RészletesebbenPodoski Péter és Zabb László
Podoski Péter és Zabb László Bevezető Algoritmus-vizualizáció témakörében végeztünk kutatásokat és fejlesztéseket Felmértük a manapság ismert eszközök előnyeit és hiányosságait Kidolgoztunk egy saját megjelenítő
RészletesebbenLaborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)
Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Kombinációs LABOR feladatok Laborfeladat: szavazatszámláló, az előadáson megoldott 3 bíró példája Szavazat példa specifikáció Tervezz
RészletesebbenSPECIÁLIS CÉLÚ HÁLÓZATI
SPECIÁLIS CÉLÚ HÁLÓZATI MEGOLDÁSOK KÜLÖNLEGES KÖRNYEZETBEN Gyakorlat Németh Zoltán 2016. december 9., Budapest Áttekintés Előző kérdések: SRD protokollok energiahatékonysága SRD protokollok IoT támogatása
RészletesebbenDigitális technika (VIMIAA02) Laboratórium 4
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 4 Fehér Béla Raikovich Tamás,
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észletesebbenEmber és robot együttműködése a gyártásban Ipar 4.0
Helyszín: MTA Székház, Felolvasóterem Időpont: 2017. November 7. Ember és robot együttműködése a gyártásban Ipar 4.0 Dr. Erdős Ferenc Gábor MTA SZTAKI Fejlett robotika ígérete A fejlett robotika és az
RészletesebbenForgalmi modellezés BMEKOKUM209
BME Közlekedésüzemi és Közlekedésgazdasági Tanszék Forgalmi modellezés BMEKOKUM209 Szimulációs modellezés Dr. Juhász János A forgalmi modellezés célja A közlekedési igények bővülése és a motorizáció növekedése
RészletesebbenFormá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
RészletesebbenBánsághi Anna anna.bansaghi@mamikon.net. 2014 Bánsághi Anna 1 of 31
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 9. ELŐADÁS - OOP TERVEZÉS 2014 Bánsághi Anna 1 of 31 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív paradigma
RészletesebbenProgramozási módszertan
1 Programozási módszertan 1. Alapfogalmak Feldhoffer Gergely 2012 Féléves tananyag terve 2 Program helyességének bizonyítása Reprezentáció Logikai-matematikai eszköztár Programozási tételek bizonyítása
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észletesebbenElérhetőségi analízis Petri hálók dinamikus tulajdonságai
Elérhetőségi analízis Petri hálók dinamikus tulajdonságai dr. Bartha Tamás Dr. Pataricza András BME Méréstechnika és Információs Rendszerek Tanszék Petri hálók vizsgálata Az elemzés mélysége szerint: Vizsgálati
RészletesebbenKommunikációs rendszerek teljesítőképesség-vizsgálata
Kommunikációs rendszerek teljesítőképesség-vizsgálata (3. előadás) Dr. Lencse Gábor lencse@sze.hu https://www.tilb.sze.hu/cgi-bin/tilb.cgi?0=m&1=targyak&2=krtv 1 Miről lesz szó? Az OMNeT++ diszkrét idejű
RészletesebbenBevezetés a párhuzamos programozási koncepciókba
Bevezetés a párhuzamos programozási koncepciókba Kacsuk Péter és Dózsa Gábor MTA SZTAKI Párhuzamos és Elosztott Rendszerek Laboratórium E-mail: kacsuk@sztaki.hu Web: www.lpds.sztaki.hu Programozási modellek
Részletesebben