Fáze a modely životního cyklu vývoje softwaru (SDLC).

Co je SDLC?

SDLC je systematický proces vytváření softwaru, který zajišťuje kvalitu a správnost vytvořeného softwaru. Proces SDLC si klade za cíl produkovat vysoce kvalitní software, který splňuje očekávání zákazníků. Vývoj systému by měl být dokončen v předem definovaném časovém rámci a nákladech. SDLC se skládá z podrobného plánu, který vysvětluje, jak plánovat, budovat a udržovat konkrétní software. Každá fáze životního cyklu SDLC má svůj vlastní proces a výstupy, které vstupují do další fáze. Zkratka SDLC znamená Životní cyklus vývoje softwaru a je také označován jako životní cyklus vývoje aplikací.

Proč SDLC?

Zde jsou hlavní důvody, proč je SDLC důležité pro vývoj softwarového systému.

  • Nabízí základ pro plánování, plánování a odhady projektů
  • Poskytuje rámec pro standardní sadu činností a výstupů
  • Je to mechanismus pro sledování a kontrolu projektu
  • Zvyšuje viditelnost plánování projektu pro všechny zúčastněné strany procesu vývoje
  • Zvýšení a zvýšení rychlosti vývoje
  • Zlepšené vztahy s klienty
  • Pomáhá vám snížit riziko projektu a režijní náklady plánu řízení projektu

 

Fáze SDLC

Celý proces SDLC rozdělen do následujících kroků SDLC:

Fáze SDLC
Fáze SDLC
  • Fáze 1: Sběr a analýza požadavků
  • Fáze 2: Studie proveditelnosti
  • Fáze 3: Design
  • Fáze 4: Kódování
  • Fáze 5: Testování
  • Fáze 6: Instalace/nasazení
  • Fáze 7: Údržba

V tomto tutoriálu jsem vysvětlil všechny tyto fáze životního cyklu vývoje softwaru

Fáze 1: Sběr a analýza požadavků

Požadavek je první fází procesu SDLC. Je řízena vedoucími členy týmu se vstupy od všech zainteresovaných stran a expertů v oboru. Plánování pro zabezpečování jakosti V této fázi se také provádí požadavky a rozpoznání souvisejících rizik.

Tato fáze poskytuje jasnější obrázek o rozsahu celého projektu a očekávaných problémech, příležitostech a směrnicích, které projekt spustily.

Požadavky Fáze shromáždění potřebuje týmy, aby získaly podrobné a přesné požadavky. To pomáhá společnostem dokončit nezbytnou časovou osu k dokončení práce tohoto systému.

Fáze 2: Studie proveditelnosti

Po dokončení fáze analýzy požadavků je dalším krokem sdlc definování a zdokumentování softwarových potřeb. Tento proces byl proveden s pomocí dokumentu 'Software Requirement Specification', známého také jako dokument 'SRS'. Zahrnuje vše, co by mělo být navrženo a vyvinuto během životního cyklu projektu.

Existuje hlavně pět typů kontrol proveditelnosti:

  • Hospodářský: Dokážeme projekt dokončit v rámci rozpočtu nebo ne?
  • Právní: Můžeme tento projekt řešit jako kybernetické právo a další regulační rámec/soulady?
  • Operaproveditelnost: Můžeme vytvářet operace, které klient očekává?
  • Technický: Je třeba zkontrolovat, zda aktuální počítačový systém podporuje software
  • Program: Rozhodněte, zda může být projekt dokončen v daném harmonogramu či nikoli.

Fáze 3: Design

V této třetí fázi se připraví dokumentace návrhu systému a softwaru podle dokumentu specifikace požadavků. To pomáhá definovat celkovou architekturu systému.

Tato fáze návrhu slouží jako vstup pro další fázi modelu.

V této fázi jsou vytvořeny dva druhy návrhových dokumentů:

Design na vysoké úrovni (HLD)

  • Stručný popis a název každého modulu
  • Přehled o funkčnosti každého modulu
  • Vztah rozhraní a závislosti mezi moduly
  • Databázové tabulky identifikované spolu s jejich klíčovými prvky
  • Kompletní schémata architektury spolu s technologickými detaily

Nízkoúrovňový design (LLD)

  • Funkční logika modulů
  • Databázové tabulky, které zahrnují typ a velikost
  • Kompletní detail rozhraní
  • Řeší všechny typy problémů se závislostmi
  • Výpis chybových zpráv
  • Kompletní vstupy a výstupy pro každý modul

Fáze 4: Kódování

Jakmile skončí fáze návrhu systému, další fází je kódování. V této fázi začnou vývojáři budovat celý systém psaním kódu pomocí zvoleného programovacího jazyka. Ve fázi kódování jsou úkoly rozděleny do jednotek nebo modulů a přiděleny různým vývojářům. Je to nejdelší fáze procesu životního cyklu vývoje softwaru.

V této fázi musí vývojář dodržovat určité předem definované pokyny pro kódování. Je třeba je také použít programovací nástroje jako kompilátor, interpreti, debugger pro generování a implementaci kódu.

Fáze 5: Testování

Jakmile je software dokončen a je nasazen v testovacím prostředí. Testovací tým začíná testovat funkčnost celého systému. To se provádí za účelem ověření, že celá aplikace funguje podle požadavků zákazníka.

Během této fáze může QA a testovací tým najít nějaké chyby/defekty, které sdělí vývojářům. Vývojový tým chybu opraví a pošle zpět do QA k opětovnému testu. Tento proces pokračuje, dokud nebude software bezchybný, stabilní a nebude fungovat podle obchodních potřeb daného systému.

Fáze 6: Instalace/nasazení

Jakmile skončí fáze testování softwaru a v systému nezůstanou žádné chyby nebo chyby, začne proces konečného nasazení. Na základě zpětné vazby poskytnuté projektovým manažerem je finální software uvolněn a zkontrolován na případné problémy s nasazením.

Fáze 7: Údržba

Jakmile je systém nasazen a zákazníci začnou vyvinutý systém používat, proběhnou následující 3 činnosti

  • Oprava chyb – chyby jsou hlášeny kvůli některým scénářům, které nejsou vůbec testovány
  • Upgrade – Upgrade aplikace na novější verze Softwaru
  • Vylepšení – Přidání některých nových funkcí do stávajícího softwaru

Hlavním cílem této fáze SDLC je zajistit, aby byly i nadále uspokojovány potřeby a aby systém nadále fungoval podle specifikace uvedené v první fázi.

Populární SDLC modely

Zde jsou některé z nejdůležitějších modelů životního cyklu vývoje softwaru (SDLC):

Model vodopádu v SDLC

Vodopád je široce přijímaný model SDLC. V tomto přístupu je celý proces vývoje softwaru rozdělen do různých fází SDLC. V tomto SDLC modelu funguje výsledek jedné fáze jako vstup pro další fázi.

Tento model SDLC je náročný na dokumentaci, přičemž dřívější fáze dokumentují, co je třeba provést v následujících fázích.

Inkrementální model v SDLC

Inkrementální model není samostatný model. Je to v podstatě řada vodopádových cyklů. Požadavky jsou na začátku projektu rozděleny do skupin. Pro každou skupinu se při vývoji softwaru postupuje podle modelu SDLC. Proces životního cyklu SDLC se opakuje, přičemž každé vydání přidává další funkce, dokud nejsou splněny všechny požadavky. V této metodě funguje každý cyklus jako fáze údržby pro předchozí verzi softwaru. Modifikace inkrementálního modelu umožňuje překrývání vývojových cyklů. Poté může následný cyklus začít před dokončením předchozího cyklu.

V-Model v SDLC

U tohoto typu testování a vývoje SDLC modelu je fáze plánována paralelně. Takže existují ověřovací fáze SDLC na straně a fáze ověřování na druhé straně. V-Model se připojuje fází kódování.

Agilní model v SDLC

Agilní metodologie je praxe, která podporuje pokračující interakci vývoje a testování během procesu SDLC jakéhokoli projektu. V agilní metodě je celý projekt rozdělen do malých inkrementálních sestavení. Všechny tyto sestavení jsou poskytovány v iteracích a každá iterace trvá jeden až tři týdny.

Spirálový model

Spirální model je model procesu řízený rizikem. Tento testovací model SDLC pomáhá týmu přijmout prvky jednoho nebo více procesních modelů, jako je vodopád, přírůstek, vodopád atd.

Tento model přebírá nejlepší vlastnosti prototypového modelu a vodopádového modelu. Spirálová metodologie je kombinací rychlého prototypování a souběžnosti v designových a vývojových činnostech.

Model velkého třesku

Model velkého třesku se zaměřuje na všechny typy zdrojů ve vývoji softwaru a kódování, s žádným nebo velmi malým plánováním. Požadavky jsou pochopeny a implementovány, když přijdou.

Tento model funguje nejlépe pro malé projekty s menším vývojovým týmem, které spolupracují. To je také užitečné pro akademické projekty vývoje softwaru. Je to ideální model tam, kde nejsou známy požadavky nebo není uvedeno konečné datum vydání.

Shrnutí

  • Životní cyklus vývoje softwaru (SDLC) je systematický proces vytváření softwaru, který zajišťuje kvalitu a správnost vytvořeného softwaru.
  • Plná forma SDLC je Software Development Life Cycle nebo Systems Development Life Cycle.
  • SDLC v softwarovém inženýrství poskytuje rámec pro standardní sadu činností a výstupů
  • Sedm různých fází SDLC je 1) Shromažďování a analýza požadavků 2) Studie proveditelnosti: 3) Návrh 4) Kódování 5) Testování: 6) Instalace/nasazení a 7) Údržba
  • Vedoucí členové týmu řídí analýza požadavků fáze
  • Fáze studie proveditelnosti zahrnuje vše, co by mělo být navrženo a vyvinuto během životního cyklu projektu
  • Ve fázi návrhu jsou dokumenty návrhu systému a softwaru připraveny podle dokumentu specifikace požadavků
  • Ve fázi kódování začnou vývojáři budovat celý systém psaním kódu pomocí zvoleného programovacího jazyka
  • Testování je další fází, která se provádí za účelem ověření, že celá aplikace funguje podle požadavků zákazníka.
  • Instalace a rozmístění začíná, když testování softwaru fáze je u konce a v systému nezůstaly žádné chyby nebo chyby
  • Opravy chyb, upgrady a akce zapojení zahrnuté v údržbě
  • Waterfall, Incremental, Agile, V model, Spiral, Big Bang jsou některé z oblíbených SDLC modelů v softwarovém inženýrství.
  • SDLC v testování softwaru sestává z podrobného plánu, který vysvětluje, jak plánovat, budovat a udržovat konkrétní software