Hva er SDLC

Det er en planlagt middag på gårdshuset ditt. Når vil du begynne å planlegge for dette? Hva er tilnærmingen du vil følge? Vil du spørre om antall gjester som kommer til å delta på den store festen? Og du vil tilberede en deilig meny (La oss si arkitektur)? Du begynner å tilberede maten, og når den først er tilberedt, vil du teste den, er det ikke? (Bare for å sjekke om det er smak i maten). Jeg håper at vi har gitt deg en grunnleggende ide om hva vi prøver å forklare her, la oss hoppe til temaet vårt. En programvareutviklingslivssyklus (SDLC) er en definert tilnærming og rekke trinn som følges for å utvikle programvare for å oppfylle eller overgå den forventede eller kundekrav.

Faser i SDLC

Det er flere faser i en livssyklus av programvare som er gitt nedenfor:

  • Kravfase
  • Analysefase
  • Designfase
  • Utviklingsfase
  • Testfase
  • Distribusjons- og vedlikeholdsfase

Kravfase:

Dette er det første og grunnleggende trinnet i livssyklusen for programvareutvikling. Det starter med å samle kravene fra kunder eller kunder. I de fleste av organisasjonene blir denne rollen ivaretatt av Business Analysts. En forretningsanalytiker samhandler med kunden / klientene, stiller opp daglige møter, dokumenterer kravene i Business Kravspesifikasjoner (eller Simple Business Specification) og overleverer det endelige dokumenterte kravet til utviklingsteamet. Det er forretningsanalytikeres ansvar at hver detalj blir fanget og dokumentert, og også å sørge for at alle tydelig forstår kundens krav.

Analysefase:

Når fasen for kravsamling er fullført, er neste oppgave å analysere kravene og få den godkjent fra kunden / klientene. Dette oppnås gjennom Software Requirement Specification (SRS) som består av alle kravene samlet og utviklet i løpet av Requirements Gathering-fasen. Denne fasen er hovedsakelig utført av prosjektledere, forretningsanalytikere og konsulenter.

Designfase:

Når analysefasen er over, kommer neste behov for å komme med den mest nøyaktige, robuste, effektive og kostnadseffektive arkitekturen for produktet som må utvikles. Vanligvis foreslås mer enn ett design i denne fasen, og den beste velges basert på forskjellige parametere som robusthet, holdbarhet, tidslinje, kostnadseffektivitet og mange flere! Den forskjellige designarkitekturen er generelt dokumentert i Design Document Specification eller DDS. Denne fasen består av to designtilnærminger:

  • Lavnivådesign : Denne oppgaven utføres av Senior Developers hvor de spesifiserer funksjonen til hver modul i produktarkitekturen som må utvikles.
  • Høynivådesign : Denne oppgaven utføres av Arkitekter / Seniorarkitekter hvor de designer forskjellige mulige arkitekturer av produktet som må utvikles.

Utviklingsfase:

Denne fasen er hvor den faktiske implementeringen av programmeringsspråk og forskjellige rammer blir brukt for utvikling av produktet. I denne fasen er alle utviklere involvert. Det forventes at utviklere følger visse forhåndsdefinerte kodingsstandarder og retningslinjer; de forventes å fullføre prosjektmodulene innen den definerte fristen for prosjektet. Denne fasen er også den lengste og en av de mest kritiske fasene i programvareutviklingens livssyklus. Denne fasen er dokumentert som et Source Code Document (SCD).

Testfase:

Når utviklingsfasen er fullført, er neste trinn å teste den utviklede programvaren. Den utviklede programvaren blir sendt til testteamet der de gjennomfører forskjellige typer testing grundig på programvaren og ser etter feil. Hvis det blir funnet noen feil, registrerer testteamet og dokument som igjen sendes tilbake til utviklingsteamet for fjerning av feil. Denne rollen blir ivaretatt av programvaretestere og kvalitetsanalytikere i selskapet. Testteamet må sørge for at hver komponent av programvaren er feilfri og at den fungerer som forventet.

Distribusjons- og vedlikeholdsfase:

Etter at testfasen er over, blir den første versjonen av programvaren distribuert og levert til kunden for deres bruk. Når kunden begynner å bruke den utviklede programvaren, er det omfanget av feilretting som ikke ble oppdaget i testfasen, da når en stor gruppe av sluttbrukere begynner å bruke programvaren, kan det være en viss sannsynlighet for at få grensesaker kan ha blitt savnet. Det er også rom for å oppgradere programvaren med nyere versjoner og siste sikkerhetsoppdateringer og teknologier. Og til slutt er det også rom for forbedring av programvaren ved å legge til flere funksjoner i den eksisterende programvaren.

Populære SDLC-modeller:

Det er mange forskjellige SDLC-modeller som er designet for implementering i programvareutviklingsprosessen. De viktigste og mest populære er:

  • Fossemodell
  • Iterativ modell
  • Spiralmodell
  • V-modell

Fossemodell:

I fossefallmodellen er hele prosessen med programvareutviklingen delt inn i faser der utgangen fra en fase fungerer som inngangen til neste fase. Neste fase begynner først når forrige fase er fullført.

Iterativ modell:

Denne modellen starter med et mindre sett med krav, og den trenger ikke full kontekst av produktspesifikasjon for å starte SDLC-prosessen. Denne prosessen er repeterende, og på hver iterasjon av SDLC-prosessen lages en nyere versjon av programvaren. Hver iterasjon kan være mellom 2-6 uker. Hver iterasjon utvikler en egen komponent i denne tilnærmingen. Denne modellen krever også en modusressurs enn fossemodellen.

Spiralmodell:

Denne modellen er en kombinasjon av en foss og spiralmodell, og den fungerer på en iterativ måte. Basert på risikoen som er involvert i prosjektet, guider denne modellen teamet til å ta i bruk elementer av en eller flere SDLC-modeller som en foss eller Iterativ modell. Her er livssyklusen til programvare delt inn i mindre deler og ny funksjonalitet kan legges til programvaren selv i de sene stadiene av SDLC.

V-modell:

V-modellen er i utgangspunktet en utvidelse til fossen-modellen der testing og utbyggingsfaser er planlagt parallelt. Den ene siden består av bekreftelsesfasen mens den andre består av valideringsfasen som til slutt blir forbundet med koding. Neste tilstand starter først når den forrige staten er fullført.

Anbefalte artikler

Dette har vært en guide til What Is SDLC. Her har vi diskutert de forskjellige typene SDLC med de populære SDLC-modellene. Du kan også se på følgende artikler for å lære mer -

  1. Programvareutvikling vs Webutvikling
  2. Defekte livssyklus i test av programvare
  3. Unike trinn for å bygge økonomiske modeller (programvare, typer)
  4. Introduksjon av programvareutvikling