Vyučující
|
-
Melichar Petr, doc. Ing. MSc., Ph.D.
|
Obsah předmětu
|
Přehled témat přednášek (nejedná se o rozpis do výukových týdnů). 1. Motivace k předmětu. Etika a profesionalita v sw inženýrství. 2. Softwarový proces a jeho části, speciální případy, vztah/kontext k systémovému inženýrství a řízení jakosti sw. 3. Modely životního cyklu software, diskuse jejich vlastností. Iterativní vývoj software - prvky, postupy, fáze. Příklady konkrétních metodik - Scrum, RUP, V-model, DevOps. 4. Základy měření v oblasti software. Plánování a řízení vývoje sw, plán projektu a iterace. Odhady, měření a úpravy postupu. 5. Činnosti při definování produktu. Definice účelu sw produktu. Metody získávání, analýzy a dokumentace požadavků. Podrobná analýza a definice požadavků (funkční, mimofunkční), případy užití a user stories, související modely. 6. Architektura softwarového systému - prvky, pohledy, související dokumenty a modely. Souvislost požadavků a návrhu sw. Ověření architektury, spustitelná architektura. 7. Činnosti při konstrukci produktu. Konfigurační řízení - základní pojmy. Správa změn, verzí a sestavení, související postupy a vzory, podpůrné nástroje. Souvislost konfiguračního řízení s ostatními disciplinami ve vývoji sw systémů. 8. Předání produktu a uzávěrka projektu. Činnosti při nasazení produktu, provozu a údržbě, související nástroje a činnosti z oblasti IT governance. Průběžné dodávání a nasazování (CD, DevOps). Vyřazení produktu z provozu. 9. Kvalita v softwarovém inženýrství. Metody související s QA: metriky, verifikace a validace, reviews. QA systémy a normy pro oblast software (mj. CMMI, EN 50128, ISO 26262). 10. Zvaná přednáška (použití konkrétní metodiky nebo technik v praxi, případová studie vývoje sw systému, apod.).
|
Studijní aktivity a metody výuky
|
Přednáška s aktivizací, Skupinová konzultace, Demonstrace dovedností
- Kontaktní výuka
- 32 hodin za semestr
- Vypracování seminární práce v magisterském studijním programu [5-100]
- 10 hodin za semestr
- Projekt týmový [20-60 / počet studentů]
- 90 hodin za semestr
- Příprava na zkoušku [10-60]
- 24 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
přehledově znát notaci UML, její možnosti a typy diagramů, s podrobnějšími znalostmi nejčastěji používaných částí |
umět vysvětlit principy práce databázových a webových aplikací |
vysvětlit základní součásti životního cyklu softwarového systému, klíčové postupy a metody používané při tvorbě větších softwarových systémů |
rozumět významu kvality software a umět vysvětlit způsoby jejího zajištění |
popsat způsoby modelování a dokumentace software |
znát způsoby použití nástrojů pro efektivní tvorbu programového kódu |
chápat význam a způsoby využití informatiky ve společnosti jako celku i jednotlivých oborových oblastech |
Předpokládané znalosti lze získat např. absolvováním KIV/DB1, KIV/ZSWI a KIV/OKS. |
Odborné dovednosti |
---|
efektivně programovat alespoň v jednom vyšším programovacím jazyce, včetně práce s knihovnami, návrhovými vzory a vývojovými prostředími |
pracovat jako člen týmu se samostatnou odpovědností za konkrétní součást rozsáhlého systému |
realizovat a dokončit samostatný projekt podle konkrétního zadání |
vytvářet srozumitelnou dokumentaci k programovým dílům, včetně UML diagramů tříd a případů užití |
testovat i složitější počítačový či informační systém, nalézt v něm chybu a najít kroky k jejímu odstranění |
utřídit, zpracovat a prezentovat získané informace písemnou i ústní formou v českém i anglickém jazyce; vytvořit dokumentaci k realizovanému dílu nebo jeho součásti |
Předpokládané dovednosti lze získat např. absolvováním KIV/DB1, KIV/ZSWI a KIV/OKS. |
Obecné způsobilosti |
---|
mgr. studium: používají své odborné znalosti, odborné dovednosti a obecné způsobilosti alespoň v jednom cizím jazyce, |
vyhledat, utřídit, zpracovat a prezentovat získané informace písemnou i ústní formou v českém i anglickém jazyce; vytvořit dokumentaci k realizovanému dílu nebo jeho součásti |
Výsledky učení |
---|
Odborné znalosti |
---|
vysvětlit postupy plánování a řízení softwarových projektů, využití konkrétních meziproduktů, postupů a nástrojů pro tuto činnost. Diskutovat rozdílné druhy metodik vývoje (sekvenční, iterativní, agilní) a jejich vhodné použití v konkrétním kontextu |
vysvětlit různé způsoby popisu uživatelských požadavků na softwarový systém, návrhu jeho technického řešení a ověření kvality. Rozumět souvislostem s prostředím a oblastí působnosti zákazníka |
popsat a ilustrovat postupy a vzory pro řízení konfigurace během vývoje a údržby softwarového produktu, rozumět využití souvisejících nástrojů |
charakterizovat způsoby komunikace s různými rolemi souvisejícími s vývojem a provozem softwarových systémů |
rozumět principům měření software, popsat základní metriky produktové a procesní |
charakterizovat možnosti, podmínky a omezení využití poznatků informatiky v dalších oborech. Uvědomovat si význam a přínosy i negativní vlivy moderních informačních a komunikačních technologií na společnost |
charakterizovat vlastnosti programů a algoritmů |
Odborné dovednosti |
---|
sbírat, analyzovat, třídit a popisovat požadavky na softwarový systém s ohledem na business cíle zákazníka; prakticky aplikovat UML a dokumentaci (Vize, Specifikace požadavků) v tomto kontextu |
vhodně vybrat a použít metriky pro analýzu kvantitativních a kvalitativních charakteristik vyvíjeného produktu či vývojového postupu |
analyzovat a navrhnout varianty vhodného technologického řešení pro projektovaný systém a doporučit konkrétní volbu |
samostatně navrhovat nebo rozšiřovat rozsáhlé softwarové systémy s různými druhy architektur (samostatné, webové, servisně orientované). Vytvořit kvalitní dokumentaci k realizovanému dílu či návrhu architektury ještě projektovaného systému |
vhodně zvolit metodiku vedení projektu včetně potřebných technických prací a související podpůrné nástroje s ohledem na jeho kontext, sledovat postup projektu a reagovat na situace v jeho průběhu |
efektivně používat postupy a nástroje pro správu změn a správu verzí při vývoji software. Umět demonstrovat vývoj projektu na základě nasbíraných dat správy změn, včetně propojení správy změn a verzí |
analyzovat i nestandardní požadavky a situace a zpravidla navrhnout řešení postavené na netriviální modifikaci stávajících postupů a komponent |
komunikovat s lidmi jak z oblasti ICT tak z jiných oborů, a to jak partnery (členy týmu), tak i se zákazníky |
Obecné způsobilosti |
---|
samostatně a odpovědně se na základě rámcového zadání rozhodují v souvislostech jen částečně známých. Dle rámcového zadání a přidělených zdrojů koordinují činnost týmu, nesou odpovědnost za jeho výsledky |
mgr. studium: srozumitelně a přesvědčivě sdělují odborníkům i širší veřejnosti vlastní odborné názory, |
Vyučovací metody |
---|
Odborné znalosti |
---|
Přednáška s aktivizací studentů, |
Demonstrace dovedností, |
Skupinová konzultace, |
Samostudium, |
Odborné dovednosti |
---|
Projektová výuka, |
Skupinová konzultace, |
Obecné způsobilosti |
---|
Přednáška s aktivizací studentů, |
Hodnotící metody |
---|
Odborné znalosti |
---|
Průběžné hodnocení, |
Individuální prezentace, |
Kombinovaná zkouška, |
Odborné dovednosti |
---|
Výstupní projekt, |
Průběžné hodnocení, |
Obecné způsobilosti |
---|
Kombinovaná zkouška, |
Doporučená literatura
|
-
Ambler, S., Lines, M. Choose your WoW: A Disciplined Agile Delivery Handbook. Project Management Institute, 2020. ISBN 978-1628256505.
-
Berczuk, Stephen P.; Appleton, Brad. Software configuration management patterns : effective teamwork, practical integration. Boston : Addison-Wesley, 2003. ISBN 0-201-74117-2.
-
Cohn, Mike. Succeeding with agile : software development using Scrum. Upper Saddle River : Addison-Wesley, 2010. ISBN 978-0-321-57936-2.
-
Humble, Jez; Farley, David. Continuous delivery : reliable software releases through build, test, and deployment automation. 2011. ISBN 978-0-321-60191-9.
-
Karl Wiegers. Software requirements. 2003. ISBN 0-7356-1879-8.
-
Kroll, Per; Kruchten, Philippe. The Rational unified process made easy : a practitioner's guide to the RUP. Boston : Addison-Wesley, 2003. ISBN 0-321-16609-4.
-
Larman, Craig. Agile and iterative development : a manager's guide. Boston : Addison-Wesley, 2004. ISBN 0-13-111155-8.
|