|
|
|
|
|
|
|
|
|
|
|
Počet tutoriálů / semestr
|
|
|
|
|
|
|
|
|
Programming Ruby: The Pragmatic Programmers' Guide: Thomas D., Fowler C., Hunt A.
OOP Objektově orientované programování bez předchozích znalostí: Keogh J., Giannini M.
|
|
|
|
Cílem předmětu je poskytnout studentům kontextové znalosti ve sféře procesů a organizace vývoje softwaru (přednášky) s spolu s vysvětlením a procvičením principů objektově orientovaného programování (semináře). Předmět je orientován především na problémy, které musí řešit vývojový tým při realizaci projektů. Důraz je rovněž kladen na pochopení základních principů, detailnější znalosti získají studenti v dalších kurzech.
|
|
-
Kick start
co je "software", co je proces vývoje software a proč je nezbytné se jím zabývat, na co naráží současné vývojové projekty (statistiky úpěšnosti), co vše musí "umět" společnost zabývající se vývojem softwaru, přehled trhu.
-
Základní požadavky na softwarové produkty
kvalita, kvantita, termín, rozpočet - detailní vysvětlení, dobré a špatné příklady z konkrétních projektů. Jaká jsou rizika při softwarovém vývoji. Pochopení, že úspěšný projekt dokáže vyvážit proti sobě jdoucí faktory KKTR.
-
Znalosti při vývoji softwaru
technologie, proces, business, prostředí zákazníka, softskills - detailní vysvětlení, nutnost vyváženosti znalostí. Pochopení, že neúpěšný je ten, kdo nemá v daném kontextu znalosti v požadované proporci. Příklady projektů, které selhaly v důsledku chybějícího typu znalosti.
-
Metodika vývoje softwaru - jak se řídí projekt
co je metodika a metodologie, co jí obvykle tvoří, jak se ve společnosti využívá. Historický kontext pohledu na metodiku (vodopádový model, ... ). Pochopení, že metodika je pouze základem, který je nutno uzpůsobit (rozšířit, omezit, upravit) pro konkrétní situaci. Příklad konkrétní implementované metodiky.
-
Přehled současných "metodik" I
RUP, XP, ITIL, CMMI, PRINCE2 atd. Vysvětlení, jaké existují metodiky (procesní frameworky, atd.), jaký je mezi nimi vztah (tradiční vs. agilní, atd.), na co je lze použít. Cílem je pouze kontextová znalost a základní pojmy.
-
Přehled současných "metodik" II
dokončení předchozí části, shrnutí.
-
Rational Unified Process
základní model (R)UPu (aktivity, artefakty, role, ...), organizace RUPu (disciplíny, fáze, ...), hlavní přínosy RUPu jako tradiční metodiky vývoje software. 6 nejlepších praktik. UES jako implementace myšlenek RUPu. Konkrétní příklad projektu v implementaci RUPu. Rozšíření AUP, EUP, atd.
-
Fáze a disciplíny vývoje softwaru
vysvětlení, jaké časové a věcné dimenze má vývojový projekt a jak jimi iterativně prochází (úvodní studie, technický projekt, implmenetace, nasazení).
-
Správa požadavků
co obnáší komunikace se zákazníkem, jaké jsou typy požadavků a jakým způsobem je lze zachycovat. Principy případů užití. Vysvětlení, jaké vlastnosti musí mít analytik/správce požadavků.
-
Návrh a implementace
jak se postupuje při hledání řešení (realizace požadavků) v konkrétním prostředí. Principy UML a agilního modelování (UUBML). CASE nástroje. Modelovací antipatterny. Na co vše je třeba dbát při návrhových rozhodnutích.
-
Testování
principy verifikace a validace na softwarových projektech. Co vše lze testovat, kdo testuje, jaké jsou nástroje, co lze automatizovat. Pochopení, že testování je nedílnou součástí každého vývoje.
-
Configuration management a deployment
jak probíhá nasazování a integrace systémů, co je správa verzí a jaké přináší problémy.
|
|
|
|
|
|