Sadržaj:
- Definicija - Što znači model životnog ciklusa razvoja softvera (SDLC)?
- Techopedia objašnjava model životnog ciklusa razvoja softvera (SDLC)
Definicija - Što znači model životnog ciklusa razvoja softvera (SDLC)?
Model životnog ciklusa razvoja softvera (SDLC) konceptualni je okvir koji opisuje sve aktivnosti u projektu razvoja softvera, od planiranja do održavanja. Ovaj je proces povezan s nekoliko modela, od kojih svaki uključuje razne zadatke i aktivnosti.
Razvoj softvera težak je posao koji zahtijeva ispravnu identifikaciju zahtjeva, njihovu primjenu i uvođenje softvera. No, aktivnosti tu ne završavaju. Nakon distribucije softvera potrebno je pravodobno osigurati pravilno održavanje.
Ovaj je pojam poznat i kao model procesa razvoja softvera.
Techopedia objašnjava model životnog ciklusa razvoja softvera (SDLC)
Glavne aktivnosti razvoja softvera uključuju:
- Vađenje zahtjeva: Klijent ima nejasnu predodžbu o tome što se traži. Nakon temeljite analize zahtjeva i koraka planiranja za postizanje cilja, apstraktna ideja klijenta provodi u praksi grupa softverskih inženjera.
- Opis softvera: opisuje da je softver sljedeći korak u procesu.
- Sažetak predstavljanja sustava: Stvoren je da potvrdi da ispunjava zahtjeve proizvoda i sučelja s drugim softverskim proizvodima zajedno s osnovnim hardverom.
- Zahtjevi klijenta: Provodi se putem koda koji su programirali softverski inženjeri.
- Testiranje koda: kôd se testira kako bi se osiguralo da nema grešaka i ne udovoljava li zahtjevima klijenta.
- Dokumentacija internog dizajna: Za buduće održavanje i unapređenje proizvoda.
- Održavanje: Izvodi se radi promjene arhitekture sustava prema budućim potrebama. Ovo može zahtijevati dodavanje koda ili izmjenu postojećeg koda.
Gornji razvojni proces pojednostavljen je nizom modela. Razvojni tim odabire najbolji odgovarajući model. Različiti modeli su:
- Model slapa: Razvojni programeri navode zahtjeve, analiziraju ih, određuju rješenje i uokviruju softversku arhitekturu, reprezentaciju sučelja i algoritmičke detalje. Tada razvijaju kod, testiraju ga, raspoređuju softver i održavaju ga. Iako je metoda slapa lako razumljiva i postavlja stabilnost zahtjeva, može stvoriti lažan dojam da ne pruža veliko sudjelovanje kupaca. Glavni problem ovog modela je taj što zahtjev za ispravljanjem pogrešaka treba znati unaprijed i u ranoj fazi. U protivnom, cijeli se postupak može nastaviti u pogrešnom smjeru, što bi moglo negativno utjecati na troškove proizvodnje.
- V Oblikovani model: Varijacija modela vodopada. Naglašava provjeru i validaciju proizvoda. Sve se isporuke mogu ispitati, a napredak pratiti prekretnicama. Ispitivanje se provodi paralelno s razvojnom fazom.
- Model prototipa: Prototip je razvijen u fazi zahtjeva i procijenjen od strane krajnjih korisnika. Na temelju povratnih informacija korisnika, programeri mijenjaju prototip kako bi udovoljili zahtjevima korisnika. Iako ovaj model lako finalizira zahtjeve, njegova upotreba u proizvodnom okruženju može rezultirati pitanjima kvalitete, čime se postupak korekcije nastavlja zauvijek.
- Spiralni model: koristi modele vodopada i prototipa. U model vodopada dodaje programske jezike četvrte generacije, brzo izradu prototipa i analizu rizika. Sistemski zahtjevi su dizajnirani i izrađen je preliminarni dizajn sustava. Početni prototip je dizajniran i testiran. Na temelju procjene rezultata ispitivanja stvara se drugi prototip. Naknadni prototipovi konstruirani su za osiguranje zadovoljstva kupaca. Sustav je stvoren na temelju konačnog prototipa. Konačni sustav ocjenjuje se i testira. Iako ovaj model u velikoj mjeri smanjuje rizik, možda neće ispuniti proračun i primjenjuje se različito za svaku aplikaciju.
- Iterativni i inkrementalni SDLC model: Specificira i implementira dio softvera koji se zatim pregledava te se dodaju i primjenjuju daljnji zahtjevi u skupinama. Svako izdanje isporučuje operativni proizvod koji kupcima prvo predstavlja važne funkcionalnosti, smanjujući početne troškove isporuke. Rizik od promjene zahtjeva uvelike je smanjen i kupcima je omogućeno da reagiraju na svaku izvedbu. Unatoč svojim snagama, ovaj model zahtijeva dobro planiranje i rano definiranje cjelovitog i potpuno funkcionalnog sustava. Također zahtijeva dobro definirana sučelja modula.
- Model agilnog razvoja: koristi se za vremenski kritične primjene u organizacijama koje koriste disciplinirane metode. Ubrzava faze životnog ciklusa i ima smanjeni opseg.
- Model čarobne kutije: Model razvoja web aplikacija. To je najbrži način da projekt završite s najmanje pogrešaka jer pruža priliku za promjenu strukture koda i baze podataka.