Životní cyklus vývoje software Flashcards

1
Q

Proč potřebujeme definovat proces vývoje

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Vývoj SW se dělí na 2 typy:

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Co je to Informační strategie

A

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)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Úvodní studie životního cyklu

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

globální analýza a návrh

A

Když jdeme dělat projekt jdeme se bavit o určeni scopu – techmologie, modely a kdy se budou implementovat

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Detailní analýza a návrh

A

Návrhy UI a workflow, může trvat i měsíc, navrhujeme všechno

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Implementace

A

Realizace kódu vytvoření dokumentace

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Testování

A

Unit testy, skripty a otestovani

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Zavádění do provozu

A

Instalace technického a programového vybavení – povolit firewally, JRE, MYSQL, appka nastavit,
Provoz, údržba, podpora

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Vodopádový proces vývoje softwaru

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Problémy vodopádu

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Příčina problému u vodopádu:

A

š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č

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Agilní metodiky

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Vodopád vs Agile zaměření:

A

Vodopád je zaměřen na procesy, předpokládá jejich opakovatelnost
Agilní princip – Zaměřen na lidi – motivace komunikace prvořadá

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Iterativní přístup při vývoji SW

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Vodopád vs Iterativní přístup

A

Vodopad: po roce dodam „hotovou aplikaci“
Agile: Pruběžne dodavam věci a třeba po týdnu dodám registračku kde zaměstnanci naplni data a mužu z toho něco generovat

17
Q

Rízení rizik ve vodopadu a agilu

A

Agile: vyvojaři nejsou zkušeni v technologii ale napišu si to do rizik a vím co tam je potencionalne jako riziko. U vodopadu sepišu specku jedu dál a pak na mě vybafne nějaky impl problém