Huis Software Wat is een software-ontwikkelingslevenscyclusmodel (sdlc)? - definitie van techopedia

Wat is een software-ontwikkelingslevenscyclusmodel (sdlc)? - definitie van techopedia

Inhoudsopgave:

Anonim

Definitie - Wat betekent Software Development Life Cycle Model (SDLC)?

Een SDLC-model (Software Development Life Cycle) is een conceptueel raamwerk dat alle activiteiten in een softwareontwikkelingsproject beschrijft, van planning tot onderhoud. Dit proces is gekoppeld aan verschillende modellen, elk met een verscheidenheid aan taken en activiteiten.


Softwareontwikkeling is een omslachtige activiteit die een juiste identificatie van de vereisten, hun implementatie en software-implementatie vereist. Daar stoppen de activiteiten echter niet. Na de distributie van de software moet tijdig het juiste onderhoud worden uitgevoerd.


Deze term staat ook bekend als software-ontwikkelingsprocesmodel.

Techopedia verklaart Software Development Life Cycle Model (SDLC)

De belangrijkste software-ontwikkelingsactiviteiten omvatten:

  • Vereistextractie: de klant heeft een vaag idee van wat nodig is. Na een grondige analyse van de vereisten en planningsstappen om het doel te bereiken, wordt het abstracte klantidee in de praktijk gebracht door een groep software-ingenieurs.
  • Softwarebeschrijving: beschrijft dat de software de volgende stap in het proces is.
  • Abstracte systeemrepresentatie: is gemaakt om te bevestigen dat het voldoet aan de vereisten van het product en interfaces met andere softwareproducten samen met de onderliggende hardware.
  • Klantvereisten: geïmplementeerd via de code die is geprogrammeerd door software-ingenieurs.
  • Codetest: de code wordt getest om te controleren of deze vrij is van bugs en voldoet aan de clientvereisten.
  • Documentatie van het interne ontwerp: voor toekomstig productonderhoud en verbetering.
  • Onderhoud: het wordt uitgevoerd om de systeemarchitectuur aan te passen aan toekomstige behoeften. Dit kan de toevoeging van code of een wijziging van de bestaande code vereisen.

Het bovenstaande ontwikkelingsproces wordt gestroomlijnd door een reeks modellen. Het ontwikkelteam selecteert het best geschikte model. De verschillende modellen zijn:

  • Waterfall-model: ontwikkelaars beschrijven de vereisten, analyseren ze, bepalen een oplossing en ontwerpen een software-architectuur, interface-weergave en algoritmische details. Vervolgens ontwikkelen ze de code, testen de code, implementeren de software en onderhouden deze. Hoewel de waterval-methode gemakkelijk te begrijpen is en stabiliteit vereist, vereist het een verkeerde indruk dat er niet veel klantparticipatie is. Het grootste probleem met dit model is dat de eis om fouten te corrigeren vooraf en in een vroeg stadium bekend moet zijn. Anders kan het hele proces in een verkeerde richting doorgaan, wat de productiekosten negatief kan beïnvloeden.
  • V-vormig model: is een variant van het watervalmodel. Het benadrukt de verificatie en validatie van het product. Alle resultaten zijn testbaar en de voortgang wordt gevolgd door mijlpalen. Testen wordt parallel met de ontwikkelingsfase uitgevoerd.
  • Prototypemodel: een prototype wordt ontwikkeld in de behoeftefase en geëvalueerd door eindgebruikers. Op basis van gebruikersfeedback wijzigen ontwikkelaars het prototype om aan de gebruikersvereisten te voldoen. Hoewel dit model eenvoudig aan de vereisten voldoet, kan het gebruik ervan in de productieomgeving leiden tot kwaliteitsproblemen, waardoor het correctieproces voor altijd doorgaat.
  • Spiraalmodel: maakt gebruik van zowel waterval- als prototypemodellen. Het voegt 4e generatie programmeertalen, snelle applicatieontwikkeling prototyping en risicoanalyse toe aan het watervalmodel. De systeemvereisten zijn ontworpen en er is een voorlopig systeemontwerp gemaakt. Een eerste prototype is ontworpen en getest. Op basis van de evaluatie van testresultaten wordt een tweede prototype gemaakt. Daaropvolgende prototypes worden gebouwd om klanttevredenheid te garanderen. Het systeem is gemaakt op basis van het uiteindelijke prototype. Het definitieve systeem wordt geëvalueerd en getest. Hoewel dit model het risico in grote mate vermindert, voldoet het mogelijk niet aan het budget en wordt het voor elke toepassing anders toegepast.
  • Iteratief en incrementeel SDLC-model: specificeert en implementeert een deel van de software, die vervolgens wordt beoordeeld en verdere vereisten worden toegevoegd en geïmplementeerd in groepen. Elke release levert een operationeel product op waarbij de klanten eerst belangrijke functionaliteiten krijgen, waardoor de initiële leveringskosten dalen. Het risico van veranderende vereisten wordt aanzienlijk verkleind en klanten mogen op elke build reageren. Ondanks zijn sterke punten vereist dit model een goede planning en vroege definitie van het complete en volledig functionele systeem. Het vereist ook goed gedefinieerde module-interfaces.
  • Agile ontwikkelingsmodel: wordt gebruikt voor tijdkritische toepassingen in organisaties die gedisciplineerde methoden gebruiken. Het versnelt de levenscyclusfasen en heeft een beperkte reikwijdte.
  • Magic box-model: is een ontwikkelingsmodel voor webtoepassingen. Het is de snelste manier om het project met de minste bugs te voltooien, omdat het de kans biedt om de code- en database-structuren te wijzigen.
Wat is een software-ontwikkelingslevenscyclusmodel (sdlc)? - definitie van techopedia