Fasen en modellen van de levenscyclus van softwareontwikkeling (SDLC).

Wat is SDLC?

SDLC is een systematisch proces voor het bouwen van software dat de kwaliteit en juistheid van de gebouwde software garandeert. Het SDLC-proces heeft tot doel software van hoge kwaliteit te produceren die voldoet aan de verwachtingen van de klant. De systeemontwikkeling moet binnen het vooraf gedefinieerde tijdsbestek en de vooraf gedefinieerde kosten voltooid zijn. SDLC bestaat uit een gedetailleerd plan waarin wordt uitgelegd hoe specifieke software moet worden gepland, gebouwd en onderhouden. Elke fase van de SDLC-levenscyclus heeft zijn eigen proces en resultaten die bijdragen aan de volgende fase. SDLC staat voor Levenscyclus van softwareontwikkeling en wordt ook wel de Application Development-levenscyclus genoemd.

Waarom SDLC?

Hier volgen de belangrijkste redenen waarom SDLC belangrijk is voor het ontwikkelen van een softwaresysteem.

  • Het biedt een basis voor projectplanning, planning en schatting
  • Biedt een raamwerk voor een standaardreeks activiteiten en resultaten
  • Het is een mechanisme voor het volgen en controleren van projecten
  • Vergroot de zichtbaarheid van de projectplanning voor alle betrokken belanghebbenden bij het ontwikkelingsproces
  • Verhoogde en verbeterde ontwikkelingssnelheid
  • Verbeterde klantrelaties
  • Helpt u de projectrisico's en de overhead van het projectmanagementplan te verminderen

 

SDLC-fasen

Het gehele SDLC-proces is onderverdeeld in de following SDLC-stappen:

SDLC-fasen
SDLC-fasen
  • Fase 1: Verzameling en analyse van vereisten
  • Fase 2: Haalbaarheidsstudie
  • Fase 3: Ontwerp
  • Fase 4: Coderen
  • Fase 5: Testen
  • Fase 6: Installatie/implementatie
  • Fase 7: Onderhoud

In deze tutorial heb ik al deze levenscyclusfasen van softwareontwikkeling uitgelegd

Fase 1: Verzameling en analyse van vereisten

De vereiste is de eerste fase in het SDLC-proces. Het wordt uitgevoerd door de senior teamleden met inbreng van alle belanghebbenden en domeinexperts in de sector. Plannen voor de kwaliteitsborging Ook in deze fase vindt het stellen van eisen en het onderkennen van de risico's plaats.

Deze fase geeft een duidelijker beeld van de reikwijdte van het hele project en de verwachte problemen, kansen en richtlijnen die tot het project hebben geleid.

In de fase van het verzamelen van vereisten moeten teams gedetailleerde en precieze vereisten krijgen. Dit helpt bedrijven om de benodigde tijdlijn af te ronden om het werk van dat systeem af te ronden.

Fase 2: Haalbaarheidsstudie

Zodra de fase van de vereistenanalyse is voltooid, is de volgende sdlc-stap het definiëren en documenteren van de softwarebehoeften. Dit proces wordt uitgevoerd met behulp van het 'Software Requirement Specification'-document, ook wel bekend als het 'SRS'-document. Het omvat alles wat tijdens de levenscyclus van het project moet worden ontworpen en ontwikkeld.

Er zijn hoofdzakelijk vijf soorten haalbaarheidscontroles:

  • economisch: Kunnen we het project binnen het budget voltooien of niet?
  • Juridische: Kunnen we dit project afhandelen als cyberwetgeving en ander regelgevend kader/compliances?
  • Operahaalbaarheid: Kunnen we creëren operaWat verwacht de klant?
  • Technische: Moet controleren of het huidige computersysteem de software kan ondersteunen
  • Programma: Bepaal of het project binnen het gegeven schema kan worden voltooid of niet.

Fase 3: Ontwerp

In deze derde fase worden de systeem- en softwareontwerpdocumenten opgesteld volgens het vereistenspecificatiedocument. Dit helpt bij het definiëren van het algehele systeem archistructuur.

Deze ontwerpfase dient als input voor de volgende fase van het model.

Er worden in deze fase twee soorten ontwerpdocumenten ontwikkeld:

Ontwerp op hoog niveau (HLD)

  • Korte beschrijving en naam van elke module
  • Een overzicht van de functionaliteit van elke module
  • Interfacerelatie en afhankelijkheden tussen modules
  • Databasetabellen geïdentificeerd samen met hun belangrijkste elementen
  • Volledige architectuurdiagrammen samen met technologie details

Ontwerp op laag niveau (LLD)

  • Functionele logica van de modules
  • Databasetabellen, inclusief type en grootte
  • Volledige details van de interface
  • Behandelt alle soorten afhankelijkheidsproblemen
  • Lijst met foutmeldingen
  • Volledige in- en uitgangen voor elke module

Fase 4: Coderen

Zodra de systeemontwerpfase voorbij is, is de volgende fase het coderen. In deze fase beginnen ontwikkelaars met het bouwen van het hele systeem door code te schrijven in de gekozen programmeertaal. In de codeerfase worden de taken verdeeld in eenheden of modules en toegewezen aan de verschillende ontwikkelaars. Het is de langste fase van het softwareontwikkelingslevenscyclusproces.

In deze fase moet de ontwikkelaar bepaalde vooraf gedefinieerde coderingsrichtlijnen volgen. Ze moeten ook gebruiken programmeertools zoals compiler, tolken, debugger om de code te genereren en te implementeren.

Fase 5: Testen

Zodra de software voltooid is, wordt deze geïmplementeerdyed in de testomgeving. Het testteam begint de functionaliteit van het hele systeem te testen. Dit wordt gedaan om te verifiëren dat de gehele applicatie werkt volgens de eisen van de klant.

Tijdens deze fase kunnen het QA- en testteam enkele bugs/defecten ontdekken die ze aan de ontwikkelaars doorgeven. Het ontwikkelingsteam repareert de bug en stuurt deze terug naar QA voor een nieuwe test. Dit proces gaat door totdat de software bugvrij en stabiel is en werkt volgens de zakelijke behoeften van dat systeem.

Fase 6: Installatie/implementatie

Zodra de softwaretestfase voorbij is en er geen bugs of fouten meer in het systeem zitten, begint het laatste implementatieproces. Op basis van de feedback van de projectmanager wordt de definitieve software vrijgegeven en gecontroleerd op eventuele implementatieproblemen.

Fase 7: Onderhoud

Zodra het systeem is geïmplementeerdyed, en klanten gaan het ontwikkelde systeem gebruiken, following Er vinden 3 activiteiten plaats

  • Bugfixing – bugs worden gerapporteerd vanwege sommige scenario's die helemaal niet zijn getest
  • Upgrade – Het upgraden van de applicatie naar de nieuwere versies van de Software
  • Verbetering – Het toevoegen van enkele nieuwe functies aan de bestaande software

De belangrijkste focus van deze SDLC-fase is ervoor te zorgen dat aan de behoeften blijft worden voldaan en dat het systeem blijft presteren volgens de in de eerste fase genoemde specificatie.

Populaire SDLC-modellen

Hier zijn enkele van de belangrijkste modellen van Software Development Life Cycle (SDLC):

Watervalmodel in SDLC

De waterval is een algemeen geaccepteerd SDLC-model. Bij deze aanpak is het hele proces van softwareontwikkeling verdeeld in verschillende fasen van SDLC. In dit SDLC-model fungeert de uitkomst van de ene fase als input voor de volgende fase.

Dit SDLC-model is documentatie-intensief, waarbij eerdere fasen documenteren wat er in de volgende fasen moet worden uitgevoerd.

Incrementeel model in SDLC

Het incrementele model is geen afzonderlijk model. Het is in wezen een reeks watervalcycli. Bij aanvang van het project worden de eisen in groepen verdeeld. Voor elke groep wordt het SDLC-model gevolgd om software te ontwikkelen. Het SDLC-levenscyclusproces wordt herhaald, waarbij elke release meer functionaliteit toevoegt totdat aan alle vereisten is voldaan. Bij deze methode fungeert elke cyclus als onderhoudsfase voor de vorige softwarerelease. Door aanpassingen aan het incrementele model kunnen ontwikkelingscycli elkaar overlappen. Daarna kan de volgende cyclus beginnen voordat de vorige cyclus voltooid is.

V-model in SDLC

Bij dit soort SDLC-modeltesten en de ontwikkeling wordt de fase parallel gepland. Er zijn dus verificatiefasen van SDLC aan de ene kant en de validatiefase aan de andere kant. V-Model sluit zich aan via de codeerfase.

Agile-model in SDLC

Agile-methodologie is een praktijk die promoDeze continue interactie van ontwikkeling en testen tijdens het SDLC-proces van elk project. Bij de Agile-methode wordt het hele project opgedeeld in kleine incrementele builds. Al deze builds worden in iteraties aangeboden en elke iteratie duurt één tot drie weken.

Spiraal Model

Het spiraalmodel is een risicogedreven procesmodel. Dit SDLC-testmodel helpt het team elementen van een of meer procesmodellen over te nemen, zoals een waterval, incrementeel, waterval, enz.

Dit model neemt de beste eigenschappen van het prototyping-model en het watervalmodel over. De spiraalmethodologie is een combinatie van rapid prototyping en gelijktijdigheid in ontwerp- en ontwikkelingsactiviteiten.

Big bang-model

Het Big Bang-model richt zich op alle soorten bronnen bij softwareontwikkeling en -codering, met geen of zeer weinig planning. De vereisten worden begrepen en geïmplementeerd wanneer ze zich voordoen.

Dit model werkt het beste voor kleine projecten met een kleiner ontwikkelingsteam dat samenwerkt. Het is ook nuttig voor academische softwareontwikkelingsprojecten. Het is een ideaal model waarbij de vereisten onbekend zijn of de definitieve releasedatum niet wordt gegeven.

Samengevat

  • De Software Development Life Cycle (SDLC) is een systematisch proces voor het bouwen van software dat de kwaliteit en correctheid van de gebouwde software garandeert.
  • De volledige vorm SDLC is Software Development Life Cycle of Systems Development Life Cycle.
  • SDLC in software-engineering biedt een raamwerk voor een standaardreeks activiteiten en resultaten
  • Zeven verschillende SDLC-fasen zijn 1) Verzameling en analyse van vereisten 2) Haalbaarheidsstudie: 3) Ontwerp 4) Codering 5) Testen: 6) Installatie/implementatie en 7) Onderhoud
  • De senior teamleden leiden de behoefteanalyse fase
  • De fase van de haalbaarheidsstudie omvat alles wat tijdens de levenscyclus van het project moet worden ontworpen en ontwikkeld
  • In de ontwerpfase worden de systeem- en softwareontwerpdocumenten opgesteld volgens het vereistenspecificatiedocument
  • In de codeerfase beginnen ontwikkelaars met het bouwen van het hele systeem door code te schrijven in de gekozen programmeertaal
  • Testen is de volgende fase die wordt uitgevoerd om te verifiëren dat de gehele applicatie werkt volgens de eisen van de klant.
  • Installatie- en implementatiegezicht begint wanneer de software testen fase is voorbij en er zijn geen bugs of fouten meer in het systeem
  • Bugfixatie, upgradeen betrokkenheidsacties die in het onderhoudsgezicht worden behandeld
  • Waterval, Incrementeel, Agile, V-model, Spiraal, Big Bang zijn enkele van de populaire SDLC-modellen in software-engineering
  • SDLC bij het testen van software bestaat uit een gedetailleerd plan waarin wordt uitgelegd hoe specifieke software moet worden gepland, gebouwd en onderhouden