Předmět: Výkonnost a spolehlivost programových systémů

« Zpět
Název předmětu Výkonnost a spolehlivost programových systémů
Kód předmětu KIV/VSS-E
Organizační forma výuky Přednáška + Cvičení
Úroveň předmětu Magisterský
Rok studia nespecifikován
Semestr Letní
Počet ECTS kreditů 6
Vyučovací jazyk Angličtina
Statut předmětu nespecifikováno
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Dostupnost předmětu Předmět je nabízen přijíždějícím studentům
Vyučující
  • Trapp Michal, Ing. Ph.D.
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.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr