07 - Modeli razvoja softvera Flashcards
(18 cards)
što je softverski proces
strukturirani skup aktivnosti potrebnih da bi se razvio novi softverski proizvod ili izmijeni postojeći
što je model softverskog procesa i o čemu ovisi odabir modela
pojednostavljeni prikaz i definicija aktivnosti koje valja provesti tijekom razvoja softverskog proizvoda
- odabir modela ovisi o planiranim ciljevima i motivaciji za razvoj svakog softverskog proizvoda
navedi ad-hoc pristupe (izostanak metodologije)
- model velikog praska
- model kodiraj i ispravi
navedi tradicionalne pristupe (osim ad-hoc)
- vodopadni model
- V model
- inkrementalni model
- iterativni model
- evolucijski model (iterativno inkrementalni model)
- spiralni model
- model prototipa
navedi faze vodopadnog modela
- definiranje zahtjeva
- oblikovanje sustava i implementacija softvera
- implementacija i testiranje dijelova sustava
- integracija i testiranje cijelog sustava
- korištenje i održavanje sustava
koji modeli pripadaju postepenom razvoju softvera
inkrementalni i iterativni modeli, model prototipa
navedi faze spiralnog modela
- planiranje
- analiza rizika
- razvoj prototipa
- evaluacija prototipa
navedi i objasni dva osnovna pristupa korištenju prototipiranja tijekom razvoja softvera
- evolucijsko prototipiranje - polazi od jednostavnog sustava koji demonstrira implementaciju najvažnijih zahtjeva korisnika i nastavlja se iterativno dorađivati dodavanjem ostalih funkcionalnosti
- učini-i-odbaci prototipiranje - prototip se razvija ciljano za profinjenje i pojašnjenje specifikacija sustava, nakon prihvaćanja izrađuje se detaljna specifikacija sustava, a prototip se odbacuje
objasni modele ponovnog korištenja
to su modeli u kojima se razvoj softvera temelji na planiranoj ponovnoj integraciji postojećih komponenti softvera u novi softverski proizvod
navedi prednosti i nedostatke modela ponovnog korištenja
prednosti
- skraćuje vrijeme i trošak razvoja
- smanjuje se mogućnost grešaka u pojedinim funkcionalnostima sustava
nedostaci
- ponekad nisu dostupne sve potrebne komponente
- razvojem vlastitih komponenti gube se prednosti ovog modela
- zamjenom komponenti postojećima, konačni proizvod odstupa od planiranih specifikacija
što je RAD
Rapid Application Development - prva metodologija koja pokušava ubrzati razvoj softverskog proizvoda
- omogućuje ubrzanje procesa razvoja i povećanje kvalitete konačnog softverskog proizvoda
što omogućuju agilne metodologije
ubrzavanje procesa razvoja zahtjeva i potpuno nov pristup softverskom procesu
što je agilni razvoj softvera
skup principa razvoja softvera u kojem rješenja evoluiraju kroz suradnju samoorganizirajućih, unakrsno-funkcionalnih timova
objasni samoorganizirajuće timove
operativno upravljanje radom u timu nije predmetom upravljanja menadžmenta organizacije, već je dopušteno svakom timu
objasni unakrsno-funkcionalne timove
svi članovi tima, iako imaju različite interese i očekivanja od svoje uloge u projektu, usmjereni su na isti cilj
koje pristupe usvaja agilni razvoj softvera
pristup adaptivnog planiranja i pristup kontinuiranog usavršavanja
navedi agilne metodologije
- eXtremeProgramming
- Scrum
- Leanstart-up
- DynamicSystem Developement
- Open SourceSoftware Developement
- AdaptiveSoftware Developement
- FeatureDrivenDevelopement
što je DevOps
skup najboljih praksi koje kombiniraju ukupnost razvoja softverskog proizvoda i upravljanje softverskim projektom