Životní cyklus vývoje software Flashcards
Proč potřebujeme definovat proces vývoje
U vývoji SW nemáme tvrdá fakta, proto stavíme na zkušenostech
Proces říká co,jak a kdy dělat při vývoji SW
Best practices
Role, aktivity, artefakty, techniky, nástroje
Začneme tím že sepíšeme requirementy ->
uděláme Design ->
nakodujeme to ->
otestujeme ->
nasadíme do produkce
Vývoj SW se dělí na 2 typy:
Vývoj bez příme spoluprace s budoucími uživateli WINDOWS
Specifikace požadavku ve spolupraci s budoucími uživateli IS:
Vývoj na míru |customizace -> Transformace úspěšné verze na konfigurovatelný SW
Co je to Informační strategie
Vychází z globální podnikove strategie, plánů a zjištěných nedostatků v podpoře
Určují se architektury IS(mam team Javistu a tlačím tam dotnet tak to moc neprojde)
Úvodní studie životního cyklu
Posouzení realizovatelnosti jednoho vybraného systému
Odhad nákladu, přínosů, návrh I/O.
Kolik to stoji a jak dlouho to bude trvat aby to nahoře mohli schválit
globální analýza a návrh
Když jdeme dělat projekt jdeme se bavit o určeni scopu – techmologie, modely a kdy se budou implementovat
Detailní analýza a návrh
Návrhy UI a workflow, může trvat i měsíc, navrhujeme všechno
Implementace
Realizace kódu vytvoření dokumentace
Testování
Unit testy, skripty a otestovani
Zavádění do provozu
Instalace technického a programového vybavení – povolit firewally, JRE, MYSQL, appka nastavit,
Provoz, údržba, podpora
Vodopádový proces vývoje softwaru
Grafická podoba totohle: Sepišu požadavky ->
Udělám analýzu ->
Použiju tyhle a tyhle technologie ->
Implementace kódu ->
testování ->
zavedení do produkce
Problémy vodopádu
Zazačatku vpohode, jde to podle prádu ale když dojdem do implementace tak se začneme točit v kruhu code -> fix -> code a deadline je dál a dál
Udělame požadavky nazačatku a už se s nim nebavim
Když ten systém je velký tak to paralyzujeme, vodopad nepočita s tim ž tam budou rozhrani
Pozdni odhaleni chyb vychazi z toho že testujeme až nakonec
Problem s buildem a releasem – jak to nainstalovat, má tam vůbec servery? Kde. Má tma třeba více verzi javy
Příčina problému u vodopádu:
šlatna specifikace požadavků, slabá komunikace s zákazníkem, špatně definovana architektura.
Přílišná složitost systému, nedostatečné testování
Důsledky: 20% rysů softwarových aplikací je vždy nebo velmi často používání
80% práce přijde vniveč
Agilní metodiky
Je lepší se pobavit se zákazníkem než mít ultimatni tool
Spolupráce se zákazníkem je lepší než sjednávaní smluv
Chceme implementovat reakci na změnu
Chceme abychom co nejrychleji dostali zpětnou vazbu od zákazníka, chceme vyvíjet iterativně
Vede to k tomu „jo pojdme“ to udělat a ne „Nejde to“
Kontinuální zpětná vazba
Vodopád vs Agile zaměření:
Vodopád je zaměřen na procesy, předpokládá jejich opakovatelnost
Agilní princip – Zaměřen na lidi – motivace komunikace prvořadá
Iterativní přístup při vývoji SW
Snažíme se to rozsekat na hodně malých částí.
Udělám si hodně iterací ve kterých mužu paralelně dělat požadavky, implementaci.testovani
Upravovat podle toho projekt