Vyučující
|
|
Obsah předmětu
|
1. Úvod ? účel modelování a ověřování výkonnosti a spolehlivosti, základní termíny (chyba, porucha, selhání, dostupnost, výkon, bezpečnost, spolehlivost ...). 2. Modelování systémů - sítě front, markovské modely, časové logiky. 3. Základní spolehlivostní modely (redundance systémů). Generování náhodných čísel. 4. Základy softwarových simulací - základní techniky, kalendář, diskrétní simulace, události a čas v simulaci, tvorba a parametrizace simulačního modelu. 5. Využití simulace pro modelování sítí front a dalších systémů, simulace vícevláknových programů, generování okolí systému. 6. Základy měření výkonnostních parametrů, použití pro simulaci i reálný systém. Druhy a příklady metrik, zajištění opakovatelnosti testů. 7. Zásady tvorby spolehlivého software ? úrovně dostupnosti a spolehlivosti, principy zajištění spolehlivosti, reakce na runtime chyby, rizika, využití spolehlivostních modelů. Normy a architektury pro spolehlivé softwarové systémy (AUTOSAR, MARTE, ISO 50128 a podobné). 8. Benchmarkování, testování výkonnosti reálného HW a SW, příprava zátěže a zátěžových testů, shlukování zátěže. 9. Debugging ? využití debuggeru a profileru pro hledání chyb v aplikaci, izolace chyby, sledování běhu aplikace a využití záznamu v simulačních modelech. 10. Analýza a prezentace výsledků ? druhy statistik, vizualizace výsledků, rizika pro interpretaci výsledků 11. Statická analýza SW - existující nástroje a metody, použití a vhodnost v konkrétních případech, omezení (Spin model checker, Java PathFinder a podobné). 12. Dynamická analýza SW - existující nástroje a metody, použití a vhodnost v konkrétních případech, omezení.
|
Studijní aktivity a metody výuky
|
Přednáška s diskusí, Prezentace práce studentů, Demonstrace dovedností, Studium metodou řešení problémů, Samostatná práce studentů, Samostudium literatury, Přednáška, Přednáška s demonstrací, Cvičení
- Příprava na laboratorní měření, zpracování výsledků [1-8]
- 6 hodin za semestr
- Kontaktní výuka
- 60 hodin za semestr
- Příprava na zkoušku [10-60]
- 40 hodin za semestr
- Vypracování seminární práce v magisterském studijním programu [5-100]
- 50 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
chápat základní problémy síťové komunikace a vzdálené obsluhy požadavků |
porozumět základním konstrukcím matematické analýzy |
rozumět popisům a modelům softwarových systémů |
rozumět základním problémům paralelního programování a jejich řešením |
rozumět základní architektuře počítačových systémů |
Odborné dovednosti |
---|
využívat objektové programování a vhodné vývojové nástroje |
samostatně vyhledávat informace v odborných zdrojích |
provádět objektový návrh a dekompozici problému |
pracovat se základními metodami pravděpodobnosti a statistiky včetně využití nástrojů pro jejich výpočty |
Obecné způsobilosti |
---|
mgr. studium: používají své odborné znalosti, odborné dovednosti a obecné způsobilosti alespoň v jednom cizím jazyce, |
Výsledky učení |
---|
Odborné znalosti |
---|
rozumět metodám návrhu spolehlivostních modelů |
rozumět výsledkům benchmarkových experimentů |
rozumět metodám návrhu analytických modelů systémů hromadné obsluhy |
chápat vlastnosti a omezení simulačních a analytických modelů |
rozumět vlastnostem a omezením generátorů náhodných a pseudonáhodných čísel |
chápat analytické a simulační modely markovských systémů |
rozumět základním metodám statické a dynamické analýzy spolehlivosti software |
vysvětlit a ilustrovat způsoby analýzy, návrhu a tvorby spolehlivých softwarových systémů pracujících s rozsáhlými daty, integrovaných z mnoha komunikujících komponent |
Odborné dovednosti |
---|
implementovat některé typy simulačních modelů (diskrétní událostní simulace, simulace s pravidelným krokem času, celulární automat) a analyzovat v nich získané výsledky |
navrhnout a připravit benchmarkovací experiment, změřit charakteristiky testovaného systému |
navrhnout a připravit experiment pro změření charakteristik testovaného systému při zátěži |
navrhnout a připravit analytický model testovaného systému, interpretovat vypočtené charakteristiky |
vhodně prezentovat výsledky měření v simulaci nebo na reálném systému |
Obecné způsobilosti |
---|
mgr. studium: dle vyvíjejících se souvislostí a dostupných zdrojů vymezí zadání pro odborné činnosti, koordinují je a nesou konečnou odpovědnost za jejich výsledky, |
zhodnotit spolehlivostní a výkonové vlastnosti testovaného software na základě statické analýzy nebo dynamického testování |
Vyučovací metody |
---|
Odborné znalosti |
---|
Cvičení (praktické činnosti), |
Přednáška s demonstrací, |
Přednáška s diskusí, |
Přednáška založená na výkladu, |
Samostudium, |
Odborné dovednosti |
---|
Samostatná práce studentů, |
Samostudium, |
Demonstrace dovedností, |
Řešení problémů, |
Obecné způsobilosti |
---|
Přednáška s demonstrací, |
Hodnotící metody |
---|
Odborné znalosti |
---|
Kombinovaná zkouška, |
Seminární práce, |
Odborné dovednosti |
---|
Demonstrace dovedností (praktická činnost), |
Obecné způsobilosti |
---|
Kombinovaná zkouška, |
Doporučená literatura
|
-
Bernardi, Simona; Merseguer, José; Petriu, Dorina C. Model-driven dependability assessment of software systems. Heidelberg : Springer, 2013. ISBN 978-3-642-39511-6.
-
Hamlet, Dick. Composing Software Components: A Software-testing Perspective. Springer, 2010. ISBN 978-1441971470.
-
Hlavička, Jan. Architektura počítačů. Praha : ČVUT, 1994.
-
Hlavička, Jan. Číslicové systémy odolné proti poruchám. Vyd. 1. Praha : ČVUT, 1992. ISBN 80-01-00852-5.
-
Lyu, Michael R. Handbook of Software Reliability Engineering. Mcgraw-Hill, 1996. ISBN 978-0070394001.
-
Racek, Stanislav; Roubín, Miroslav. Pravděpodobnostní modely počítačů. 1. vyd. Plzeň : ZČU, 1996. ISBN 80-7082-300-3.
|