Systems Development Life Cycle (SDLC)

Systems Development Life Cycle (SDLC) - toolshero

In dit artikel wordt de Systems Development Life Cycle (SDLC) praktisch uitgelegd. Na het lezen begrijp je de basis van deze krachtige tool voor internettechnologie.

Wat is de Systems Development Life Cycle (SDLC)?

De Systems Development Life Cycle (SDLC) wordt ook wel de levenscyclus van applicatieontwikkeling genoemd. Het is een proces voor het plannen, ontwikkelen, testen en implementeren van bepaalde informatiesystemen. De System Development Life Cycle is van toepassing op een reeks software en hardware configuraties, en kent doorgaans zes verschillende fasen. Deze fasen zijn: analyse, ontwerp, ontwikkeling, testen, implementatie, documentatie en evaluatie.

Waar is de Systems Development Life Cycle (SDLC) ontstaan?

De term SDLC werd voor het eerst in zijn volledigheid gedefinieerd in de jaren zeventig van de vorige eeuw. In de jaren zestig kwamen mainframecomputers de consumentenmarkt op, en werden hele huiskamers gevuld met grote systemen. Er groeide een dringende behoeften om grote bedrijfssystemen te bouwen, maar de consumenten en gebruikers waren in deze tijd veel minder veeleisend. Zij hadden immers nog geen volledig beeld wat de mogelijkheden waren op de korte termijn. De technologie is door de jaren heen verder ontwikkeld, en de systemen zijn complexer geworden. Gebruikers zijn gewend geraakt aan goedwerkende technologie, en verschillende methoden en tools zorgen ervoor dat bedrijven door de levenscyclus van systeemontwikkeling geloodst worden.

Wat is een systeem?

Om het SDLC-concept goed te begrijpen, moet eerst systeem gedefinieerd worden. Een systeem is in ieder geval een component, en mogelijk een combinatie van verschillende componenten van informatietechnologie. Het gaat hierbij om software en hardware. Elk systeem wordt een keer ontwikkeld, en doorloopt dan een bepaalde cyclus. Sommige methodologieën bieden een specifiek kader om dit proces te begeleiden om kostbare fouten te voorkomen, of de ontwikkeling te versnellen. Alle methoden zijn er echter op gericht om de systemen door de verschillende fasen te verplaatsen.

Kwaliteitsmanagement en SDLC

Een effectief SDLC zorgt ervoor dat het te ontwikkelen systeem van hoge kwaliteit is, en aan alle verwachtingen van de klant voldoet. Tevens zorgt dit kader ervoor dat het systeem ontwikkeld wordt binnen de grenzen van tijd en kosten. Ook wordt dankzij SDLC het nieuwe systeem feilloos geïmplementeerd in de huidige en toekomstige IT-infrastructuur van een organisatie.

De fasen van de Software Development Life Cycle (SDLC)

SDLC is een meerstappenproces, en tevens iteratief. Het raamwerk is op een methodische manier gestructureerd, en wordt gebruikt om een kader te bieden voor de ontwikkeling en afstemming van technische en niet-technische onderdelen van een kwaliteitssysteem.

Traditioneel bestond de cyclus van SDLC uit vijf fasen. Ondertussen is dit verhoogd naar zeven fasen. Door de toevoeging van verschillende nieuwe stappen konden ontwikkelaars duidelijkere en effectievere acties definiëren om specifieke doelstellingen te bereiken. Het totaal van zeven stoppen wordt hieronder toegelicht.
fasen van de Software Development Life Cycle - toolshero

Fase 1: analyse

In deze eerste fase wordt het bestaande of huidige systeem geëvalueerd. Hierin worden officieel tekortkomingen vastgesteld. Deze tekortkomingen waren waarschijnlijk al langer aan de orde, dus een goede manier om hier achter te komen is door het interviewen van ondersteunend personeel.

Na het uitvoeren van bovenstaande moet de gebruiker op zoek naar alternatieve oplossingen. Het is van groot belang dat dit zorgvuldig gedocumenteerd wordt, zodat later de besluitvorming op een adequate manier ondersteund wordt. Analyseer en beschrijf ook de kosten van deze oplossingen, en de implementatie ervan. Op basis van de informatie verkregen uit deze eerste fase wordt later besloten of het systeem wordt gelaten zoals het is, het verbeterd wordt of er een nieuw systeem moet komen.

Fase 2: planning en vereisten

In deze fase worden de nieuwe systeemvereisten gedefinieerd. De tekortkomingen in het bestaande systeem moeten worden aangepakt, en hiervoor moeten concrete voorstellen voor verbetering worden aangedragen. Architecten, ontwikkelaars en productmanagers werken in deze fase samen met andere relevante belanghebbenden.

In het kort omvat deze fase het verzamelen en interpreteren van feiten, diagnoses stellen op probleemgebieden, en verbeteringen aan het systeem voorstellen. Zorg ervoor dat tijdens deze fase in een zo divers mogelijk team gewerkt wordt. Hoe meer mensen aanwezig zijn die het systeem kennen en gebruiken, hoe groter de kans dat een waardevol verbeterpunt wordt opgemerkt. Ongeacht of het team werkt met een document formele vereisten of een zelfgeschreven lijst, iedereen moet elk voorstel en elke opmerking begrijpen om mee te kunnen doen.

Fase 3: design

In deze fase worden de vereisten en gewenste functies tot in detail beschreven, inclusief processchema’s, reglementen en andere documentatie. De derde fase is het moment voor eindgebruikers om hun specifieke informatiebehoeften te bespreken en te bepalen. Het is ook tijdens deze fase dat de essentiële onderdelen van het systeem (hardware, software) en structuur worden overwogen.

Fase 4: ontwikkeling

In de vierde fase begint het zogenaamde echte ontwikkelaarswerk. Dat gebeurt in het bijzonder wanneer een programmeur, ingenieur of databaseontwikkelaar wordt aangetrokken om belangrijk werk aan het project te doen. De werkzaamheden omvatten onder meer het maken van stroomschema’s die ervoor zorgen dat het proces en nieuwe systeem zorgvuldig georganiseerd worden. De ontwikkelingsfase vormt het einde van het eerste deel van de Systems Development Life Cycle (SDLC). Vanaf hier begint de start van het productiegedeelte van het project. De ontwikkelingsfase wordt gekenmerkt door verandering.

Fase 5: integratie & testen

In de vijfde fase wordt het systeem in de productieomgeving geïnstalleerd. Gebruikers kunnen vanaf hier het nieuwe systeem gaan gebruiken. Veel organisatie kiezen ervoor om het systeem eerst ergens anders te testen, in een speciale testomgeving. Indien uitgevoerd in de productieomgeving wordt dit vaak gedaan door een Quality Assurance professional. Hij of zij bepaalt of het voorgestelde ontwerp voldoet aan de bedrijfsdoelen. Het testen moet zo nodig worden herhaald tot de kans op fouten en bugs acceptabel is.

Fase 6: implementatie

De zesde fase begint wanneer het grootste gedeelte van het testen is voltooid. In deze fase wordt het nieuwe systeem daadwerkelijk geïmplementeerd. Dit betekent onder meer dat data en componenten uit het oude systeem verplaatst moeten worden naar het nieuwe systeem. Dit is vaak riskant en gecompliceerd. Om deze reden wordt de verplaatsing uitgevoerd tijdens daluren, zodat de impact op de bedrijfsactiviteiten minimaal is. Zowel de professionals als de eindgebruikers zouden in deze fase de voordelen van het nieuwe systeem moeten kunnen genieten.

Fase 7: evaluatie & onderhoud

De zevende fase van de Systems Development Life Cycle (SDLC) wordt vaak over het hoofd gezien. Deze fase omvat onderhoud en het uitvoeren van regelmatig vereiste updates. Bovendien kunnen kleine bugs die over het hoofd gezien zijn in de testfase ook later pas op de voorgrond treden. Deze worden opgelost in de onderhoudsfase wanneer het hele systeem verfijnd wordt om de prestaties te verbeteren, of te voldoen aan nieuwe eisen. Dit wordt mogelijk gemaakt door het team dat aan het systeem werkt. Het kan voorkomen dat personeel voor dit doeleinde aanvullende training nodig heeft, nieuwe procedures opgesteld moeten worden of upgrades moeten uitvoeren.

Systems Analysis & Design (SAD)

Naast SDLC is er nog een concept dat dient als hoeksteen voor de volledige levenscyclus van product- en systeemplanning. Systems Analysis & Design (SAD) is een proces waarin specifieke informatiesystemen worden ontwikkeld die effectief hardware ondersteunen, software of mensen. Een bestaand systeem wordt hiermee vervangen voor een nieuw systeem door componenten of modules ervan te vervangen zodat het aan nieuwe eisen voldoet. SAD wordt vooral gebruikt om een balans te vinden tussen vereisten op hoog niveau. Vaak zijn er twee of meerdere vereisten die elkaar in de weg zitten.

Voor- en nadelen van SDLC

Voordelen Systems Development Life Cycle (SDLC)

Aan het juist gebruik van de Systems Development Life Cycle (SDLC), zit een groot aantal voordelen verbonden. Het implementeren van een levenscyclus voor een systeem biedt veel mogelijkheden, waaronder de mogelijkheid om gestructureerde fasen en doelen vooraf te plannen en te organiseren. SDLC zijn niet beperkt tot een one-size-fits-all-methode, maar kan worden aangepast aan verschillende behoeften. Verder zorgt SDLC voor:

  • Het baseren van kosten en personeelszaken op concrete informatie
  • Een duidelijk beeld van het gehele project, inclusief betrokken personeel, kostenpersoneelsvereisten, en een gedefinieerde tijdlijn
  • Verificatie, doelen en resultaten behalen
  • Een hoge mate van controle door de iteratieve, gefaseerde aanpak
  • Verbetering van de kwaliteit van het uiteindelijke systeem met verificatie en controle in elke fase

Nadelen Systems Development Life Cycle (SDLC)

Nadelen kunnen zijn:

  • Verder in het project kunnen complicaties optreden als gevolg van verkeerde aannames die aan het begin van het project zijn gedaan
  • Sommige hulptools zijn niet compatibel met SDLC
  • Het is complex om aan het begin van een project de totale kosten in te schatten
  • Ontwikkelingsteams kunnen vertraagd worden door het testen nadat het systeem is voltooid

Methodologieën in combinatie met SDLC

Het SDLC-proces omvat zeven fasen, waaronder planning, ontwerp, testen en onderhoud. Voor elk van de fases kunnen verschillende tools worden ingezet ter ondersteuning van het hoofddoel van de fase. Hieronder worden enkele van deze tools kort toegelicht. Klik op de link om meer informatie te lezen over de betreffende methode.

Waterfall Method

Het watervalmodel was het eerste procesmodel dat werd geïntroduceerd. Het wordt ook wel een lineair-sequentieel levenscyclusmodel genoemd. Het is een eenvoudig model dat makkelijk te begrijpen is. Met een watervalbenadering moet elke fase voltooid worden voordat de volgende fase kan beginnen. Er bestaat geen overlap tussen verschillende fases.

Iterative Model

Het iteratief levenscyclusmodel begint met de implementatie van een kleine set van nieuwe softwarevereisten en verbetert iteratief de evoluerende versies totdat het nieuwe systeem volledig is geïmplementeerd.

Het model begint niet met het samenstellen van een lijst met alle specificaties en eisen van een systeem. In plaats daarvan begint de ontwikkeling met het specifiëren en implementeren van slechts een klein deel van de software. Deze wordt vervolgens beoordeeld om verdere vereisten vast te stellen. Dit proces wordt keer op keer herhaald, waarbij aan het einde van elke iteratie de nieuwe versie van bijvoorbeeld de software wordt geproduceerd.

Agile

Het Agile-model bestaat al lang, en is nog steeds zijn kracht niet verloren. De laatste wordt het model veelvuldig aangenomen door organisaties, en blijkt het een drijvende kracht achter softwareontwikkeling. Sommige bedrijven zien zoveel waarde in het model dat het zelfs gebruikt wordt voor andere projecten, inclusief niet-technische projecten en activiteiten.

Lean

Het Lean-model wordt ook veelvuldig ingezet voor softwareontwikkelingsdoeleinden. De zeven Lean-principes blijven hetzelfde: afval elimineren, leren, laat beslissen, snel leveren, team versterken, integriteit bouwen en het geheel overzien. Lees meer over Lean hier.

Lean gaat alleen over het werken aan iets waaraan op dat moment moet worden gewerkt. Er bestaat met Lean geen ruimte voor multitasking. Projectteam zijn gefocust op het vinden van mogelijkheden om afval te verminderen, het laten vallen van onnodige zaken als vergaderingen, en het verminderen van documentatie. Het verschil met de Agile-benadering in softwareontwikkeling is de focus op klanttevredenheid gedurende de hele levensduur van een systeem.

Nu is het jouw beurt

Wat denk jij? Herken jij de uitleg over Systems Development Life Cycle (SDLC)? Heb jij ervaring met het ontwikkelen van software en het gebruik van tools als SDLC? Wordt SDLC in jouw werkomgeving gebruikt? Denk jij dat SDLC ondanks de jaren nog steeds relevant is? Welke andere softwareontwikkelingsbenaderingen ken jij nog meer? Heb jij vragen of opmerkingen?

Deel jouw kennis en ervaring via het commentaar veld onderaan dit artikel.

Als je het artikel handig of praktisch vond voor jouw eigen kennis, deel dit vooral met jouw netwerk of meld je aan voor onze gratis nieuwsbrief. Je kunt ons ook vinden op Facebook, LinkedIn, Twitter en Youtube.

Meer informatie

  1. Alexander, I. F., & Maiden, N. (Eds.). (2005). Scenarios, stories, use cases: through the systems development life-cycle. John Wiley & Sons.
  2. Mantei, M. M., & Teorey, T. J. (1989). Incorporating behavioral techniques into the systems development life cycle. Mis Quarterly, 257-274.
  3. Ruparelia, N. B. (2010). Software development lifecycle models. ACM SIGSOFT Software Engineering Notes, 35(3), 8-13.
  4. Zhang, P., Carey, J., Te’eni, D., & Tremaine, M. (2005). Integrating human-computer interaction development into the systems development life cycle: A methodology. Communications of the Association for Information Systems, 15(1), 29.

Citatie voor dit artikel:
Janse, B. (2020). Systems Development Life Cycle (SDLC). Retrieved [insert date] from toolshero: https://www.toolshero.nl/informatie-technologie/systems-development-life-cycle/

Wilt u linken naar dit artikel, dat kan!
<a href=”https://www.toolshero.nl/informatie-technologie/systems-development-life-cycle/”>toolshero: Systems Development Life Cycle (SDLC)</a>

Interessant artikel?

Geef je waardering of deel het artikel via social media!

Gemiddelde beoordeling 5 / 5. Totaal aantal beoordelingen: 1

Dit artikel is nog niet beoordeeld! Wees de eerste met jouw beoordeling.

We vinden het jammer dat het artikel niet waardevol voor je was

Laat ons dit artikel verbeteren!

Vertel ons wat er beter kan aan het artikel? Wat mis je bijvoooebeeld of wat kan worden aangevuld?

Word lid en ontvang onbeperkt toegang

Door lid te worden van ons learning platform, krijg je onbeperkt toegang tot alle artikelen (1000+), templates, video's en meer!

Tagged:

Geef een reactie