Životni ciklus razvoja softvera - SDLC

Životni ciklus razvoja softvera ili SDLC postupak je koji se koristi za razvoj softvera. Postoje različite faze ili faze unutar životnog ciklusa razvoja softvera i u svakoj se fazi odvijaju različite aktivnosti.

SDLC stvara strukturu za razvojne timove kako bi mogli dizajnirati, stvarati i isporučivati ​​visokokvalitetni softver definiranjem različitih zadataka koji se trebaju dogoditi Životni ciklus definira metodologiju za poboljšanje kvalitete softvera i cjelokupnog procesa razvoja.

Namjera SDLC-a je da pomogne u proizvodnji proizvoda koji je isplativ, učinkovit i visokokvalitetan.

SDLC faze

1. Analiza zahtjeva

Životni ciklus razvoja softvera započinje fazom analize zahtjeva, gdje dionici raspravljaju o zahtjevima softvera koji treba razviti da bi se postigao cilj. Cilj faze analize zahtjeva je uhvatiti detalje svakog zahtjeva i osigurati da svi razumiju opseg posla i kako će svaki zahtjev biti ispunjen.

Uobičajena je praksa također raspravljati o tome kako će se testirati svaki zahtjev, pa testeri mogu dodati veliku vrijednost sudjelovanju na sastancima analize zahtjeva.

Ovisno o tome koja se metodologija razvoja softvera koristi, prelaze se iz jedne faze u drugu različiti pristupi. Na primjer, u modelu vodopada ili V, faza analize zahtjeva sprema se u dokument SRS (Specifikacija zahtjeva softvera) i mora biti finalizirana prije nego što se dogodi sljedeća faza.



2. Dizajn

Sljedeća faza SDLC-a je faza dizajna. Tijekom faze dizajniranja, programeri i tehnički arhitekti započinju dizajn softvera i sustava na visokoj razini kako bi mogli ispuniti svaki zahtjev.

Sa dionicima se razgovara o tehničkim detaljima dizajna i preispituju se različiti parametri kao što su rizici, tehnologije koje će se koristiti, sposobnost tima, ograničenja projekta, vrijeme i proračun, a zatim se za proizvod odabire najbolji pristup dizajnu.

Odabrani arhitektonski dizajn definira sve komponente koje treba razviti, komunikaciju s uslugama trećih strana, korisničke tokove i komunikacije s bazama podataka, kao i prednje prezentacije i ponašanje svake komponente. Dizajn se obično čuva u dokumentu s projektnim specifikacijama (DSD)

3. Provedba

Nakon dovršetka zahtjeva i aktivnosti dizajniranja, sljedeća faza SDLC-a je implementacija ili razvoj softvera. U ovoj fazi programeri započinju s kodiranjem u skladu sa zahtjevima i dizajnom razmatranim u prethodnim fazama.

Administratori baze podataka stvaraju potrebne podatke u bazi podataka, front-end programeri stvaraju potrebna sučelja i GUI za interakciju s back-endom, sve na temelju smjernica i postupaka koje je definirala tvrtka.

Programeri također pišu jedinične testove za svaku komponentu kako bi testirali novi kôd koji su napisali, pregledali međusobni kôd, stvorili gradnje i implementirali softver u okruženje. Ovaj se ciklus razvoja ponavlja sve dok se ne ispune zahtjevi.

4. Ispitivanje

Testiranje je zadnja faza životnog ciklusa razvoja softvera prije nego što se softver isporuči kupcima. Tijekom testiranja, iskusni testeri počinju testirati sustav prema zahtjevima.

Cilj testera je pronaći nedostatke u sustavu, kao i provjeriti ponaša li se aplikacija prema očekivanjima i u skladu s onim što je dokumentirano u fazi analize zahtjeva.

Ispitivači mogu ili koristiti testnu skriptu za izvršavanje svakog testa i provjeru rezultata ili upotrijebiti istraživačko testiranje koje je više pristup zasnovan na iskustvu.

Moguće je da se u fazi ispitivanja utvrde nedostaci. Jednom kada se utvrdi kvar, testeri informiraju programere o pojedinostima problema, a ako je to valjani kvar, programeri će popraviti i stvoriti novu verziju softvera koju treba ponovno provjeriti.

Ovaj se ciklus ponavlja sve dok svi zahtjevi nisu testirani i svi nedostaci otklonjeni i softver spreman za isporuku.

5. Razmještanje i održavanje

Nakon što je softver u potpunosti testiran i br pitanja visokog prioriteta da ostanu u softveru, vrijeme je za implementaciju u proizvodnju gdje kupci mogu koristiti sustav.

Jednom kad se verzija softvera pusti u proizvodnju, obično postoji tim za održavanje koji se brine o bilo kakvim problemima u postprodukciji.

Ako se u produkciji naiđe na problem, obavijesti se razvojni tim i ovisno o ozbiljnosti problema, možda će biti potreban hitni popravak koji se kreira i isporučuje u kratkom vremenskom roku ili ako nije vrlo ozbiljan, može pričekati do sljedeće verzije softvera.

Zaključak

Sve gore definirane faze u životnom ciklusu razvoja softvera primjenjive su na bilo koju metodologiju razvoja softvera, ali trajanje i aktivnosti u svakoj fazi ovise o tome slijedite li V metodologiju razvoja modela ili Agile.

U Agileu je trajanje isporuke ispravnog softvera obično između 2 i 4 tjedna, pa se svaka od gore navedenih faza skraćuje. Također agilno, to je cjelovit timski pristup u koji su uključeni programeri i testeri koji zajedno rade na stvaranju visokokvalitetnog proizvoda.