The ključna razlika med SDLC in agilno metodologijo je to SDLC je postopek delitve dela na razvoju programske opreme na različne faze za načrtovanje in razvoj visokokakovostne programske opreme, medtem ko je Agile Methodology model SDLC. Agile Methodology je kombinacija iterativnih in inkrementalnih procesnih modelov, ki se osredotočajo na prilagodljivost procesa in zadovoljstvo kupcev s hitro dobavo delujočega programskega izdelka.
1. Pregled in ključne razlike
2. Kaj je SDLC
3. Kaj je agilna metodologija
4. Razmerje med SDLC in agilno metodologijo
5. Primerjalna primerjava - SDLC proti Agile metodologiji v tabeli
6. Povzetek
SDLC pomeni Življenjski cikel razvoja programske opreme. Pri izdelavi programske opreme obstajajo določene faze, ki jih je treba upoštevati. Vsaka organizacija za razvoj programske opreme sledi programskemu projektu SDLC. V SDLC obstajajo različne faze. Osnovno razumevanje problema je opredeljeno v fazi načrtovanja. V tej fazi se odkrijejo tudi tveganja, povezana s projektom, tehnične težave, sredstva, razvojna prizadevanja.
V fazi potrebe je prva dejavnost zbiranje in analiziranje zahtev. Pridobivanje vložkov za stranke, srečanje s starejšimi direktorji in podrobnosti o prodaji in trženju se dogaja pri zbiranju potreb. Zbrane zahteve je treba ustrezno dokumentirati. Ta dokument je znan kot Specifikacija zahteve za programsko opremo (SRS). Vsebuje zahteve za izdelke, ki jih je treba zasnovati in razviti v življenjskem ciklu projekta.
Zasnova programske opreme izhaja iz SRS. Več kot en oblikovalski pristop k arhitekturi izdelka je predlagan in dokumentiran v dokumentu Specifikacija projektnega dokumenta (DDS). V tej fazi so zasnovani vsi arhitekturni moduli, predstavitev pretoka podatkov z zunanjimi moduli itd.
V izvedbi je projekt izveden z ustreznim programskim jezikom. Za pisanje in testiranje programov je mogoče uporabiti različna orodja za programiranje, kot so prevajalniki, tolmači, urejevalniki kod, IDE in razhroščevalci. Jezik programiranja lahko izberete glede na aplikacijo. V tej fazi se opravi testiranje enote za razviti modul.
Testiranje je postopek preverjanja in potrjevanja, da programski program deluje po pričakovanjih. Uporablja se za ugotovitev, ali je končni projekt izpolnil pričakovane zahteve. Testiranje vključuje integracijsko testiranje, testiranje sistema itd. Integracijsko testiranje je izvajanje testiranja med dvema modulama. Preizkušanje sistema je celoten preizkus projekta.
Slika 01: SDLC
Končno se izdelek sprosti na trg. Glede na povratne informacije strank lahko izdelku dodate nove funkcije. Vzdrževanje in potrebne storitve so na voljo obstoječim kupcem. To so glavne faze SDLC.
Med postopkom razvoja programske opreme je treba upoštevati model življenjskega cikla razvoja programske opreme. Ti modeli so znani kot Model procesa razvoja programske opreme. Vsak postopek sledi določenemu številu korakov, edinstvenih njegovi vrsti, da uspešno zaključi projekt programske opreme. Nekaj primerov modelov SDLC so model slapov, iterativni model, spiralni model, v model, prototipni model, hitri razvoj aplikacij itd..
Agile metodologija je tudi model SDLC. Gre za kombinacijo iterativnih in inkrementalnih modelov procesov. Ta model pomaga pri prilagajanju spremembam zahtev. V tem modelu je projekt razdeljen na več modulov. Predpostavimo, da je projekt razdeljen na tri module kot A, B in C. Prvi modul A gre skozi načrtovanje, zbiranje zahtev in analizo, načrtovanje, izvajanje in testiranje. Ko je končan, se modul B zažene. Prav tako gre skozi isto fazo kot modul A. Ko se B konča, se modul C zažene. Na koncu iteracije lahko stranki zagotovimo delovni modul.
Prednosti Agile je veliko. V tradicionalnem modelu slapov, ko so definirane zahteve, jih ni mogoče spremeniti. Toda v Agileu se lahko zahteve spremenijo. Več je tudi sodelovanja med razvijalcem in kupcem. Izboljša timsko delo in projekt naredi enostavno upravljanje. Na splošno je Agile priljubljen model SDLC zaradi svoje prožnosti in prilagodljivosti. Morda ni primeren za zapleten projekt. Druge pomanjkljivosti so, da lahko stranka vedno spremeni zahteve in da je za vodenje projekta potrebno imeti agilnega vodjo.
SDLC proti agilni metodologiji | |
SDLC je postopek delitve dela na razvoju programske opreme na različne faze za izboljšanje oblikovanja, upravljanja izdelkov in upravljanja projektov. | Agile Methodology je pristop k razvoju programske opreme, v katerem se zahteve in rešitve razvijajo s sodelovalnimi prizadevanji samoorganizirajočih se organizacij in medfunkcijskih skupin ter njihovih končnih uporabnikov. |
Uporaba | |
SDLC se uporablja za organizacijo upravljanja z razvojem programske opreme. | Agile se uporablja za izboljšanje prilagodljivosti in prilagajanje spremembam zahtev projekta. |
Ta članek obravnava razliko med SDLC in Agile. Razlika med SDLC in Agile Methodology je v tem, da je SDLC postopek delitve dela pri razvoju programske opreme na različne faze za načrtovanje in razvoj visokokakovostne programske opreme, medtem ko je Agile Methodology model SDLC..
1. "Proces razvoja programske opreme." Wikipedia, fundacija Wikimedia, 28. marec 2018. Na voljo tukaj
2. "Agilen model SDLC." Www.tutorialspoint.com, Tutorials Point, 8. januar 2018. Dostopno tukaj