WhatsApp Facebook Twitter LinkedIn Mail

Waterfall: geschikte methodologie voor software-ontwikkeling?

Waterfall is een projectontwikkelmethode die veel wordt toegepast bij de ontwikkeling van software. Het is niet de enige bestaande methode, maar wel één van de meest toegepaste. Veel mensen zijn met de waterfall-methode bekend.

Bij ICT-projecten die volgens de watervalmethode worden uitgevoerd, wordt het project opgedeeld in fases. Er wordt pas een nieuwe fase ingegegaan zodra de vorige fase is afgerond. Het gaat dus om een sequentiële aanpak, de ene stap volgt de andere op. Dit in tegenstelling tot bijvoorbeeld de Agile-methode, waarbij verschillende fases door elkaar heen lopen.

fases waterfall methode

Een typisch ‘waterfall-project’ doorloopt de volgende fases:

  1. Analyse van de wensen en eisen: er wordt een document opgesteld waarin wordt beschreven wat de software precies moet kunnen, maar nog niet op welke manier dat zou moeten gebeuren.
  2. Ontwerp: er wordt een basisontwerp gemaakt voor de te ontwikkelen software. Hierin is terug te vinden hoe de software technisch gezien zal functioneren, bijvoorbeeld in welke programmeertaal er zal worden ontwikkeld. In deze fase wordt de theorie dus eigenlijk vertaald naar de praktijk.
  3. Programmeren: in deze fase wordt de software daadwerkelijk geprogrammeerd. Hierbij worden de instructies in de voorgaande twee fases nauwgezet opgevolgd.
  4. Testen: programmeurs en toekomstige gebruikers gaan met de software aan de slag en op zoek naar ‘bugs’. Dit kunnen fouten zijn in de software, waardoor bepaalde functionaliteiten niet goed werken. Het gaat om kleine correcties van fouten, niet om het volledig herprogrammeren van de software.
  5. Operationele fase: de software gaat ‘live’. De software wordt uitgerold binnen een bedrijf, alle medewerkers kunnen ermee aan de slag. Ook het toekomstige onderhoud van de software valt binnen deze fase.

De voordelen van de Waterfall-methode

Veel mensen zijn met de methode bekend, omdat het een traditionele manier van werken is.

Feitje: de watervalmethode werd al in 1970 geïntroduceerd, en is in de jaren die volgden erg populair geworden.

Een ander voordeel is dat alle fases nauwkeurig worden gedocumenteerd. Kennisoverdracht is dus relatief eenvoudig te realiseren. Mocht een bepaalde ontwikkelaar bijvoorbeeld geen deel meer uitmaken van een project, dan is de opvolger relatief snel vertrouwd met de manier waarop de software is ontwikkeld. Dit in tegenstelling to nieuwere projectmethodes, zoals het eerder genoemde Agile. Daarbij speelt documentatie een ondergeschikte rol.

Het herstellen van fouten tijdens het project is relatief eenvoudig. Er wordt geen nieuwe fase gestart voordat de oude is afgerond, dus er kunnen zich geen grote ‘rampen’ afspelen. In die zin is het dus een behoudende methode.

Wat zijn de nadelen van Waterfall?

Bedrijven zijn door de jaren heen steeds dynamischer geworden. Wensen en eisen veranderen voortdurend. De Waterfall-methode gaat ervan uit dat eenmaal het software-ontwerp klaar is, deze definitief is. In de praktijk blijken bedrijven ook tijdens de ontwikkelfase nog dingen te willen aanpassen. Bijvoorbeeld door nieuwe inzichten, of veranderende bedrijfsprocessen.

De methode is niet ontworpen voor snelheid. De software-ontwikkelaars kunnen pas aan de slag zodra de ontwerpfase volledig is afgerond. Dit terwijl ze al best hadden kunnen beginnen met het programmeren van bepaalde delen die al uitgedacht zijn. Tijdverspilling ligt dus op de loer.

De watervalmethode is degelijk, want alles wordt uitgebreid gedocumenteerd, maar daarom ook niet geschikt voor kleinere projecten. Daarnaast staat er veel druk op het moment van testen, omdat de eerste test pas wordt uitgevoerd zodra de bouw van een systeem af is. Bij andere methodes wordt er vaker en meer getest, waardoor bijsturen gemakkelijker is mocht er iets niet helemaal goed gaan.

Waterfall: geschikt of ongeschikt voor uw project?

Deze vraag kan in de meeste gevallen vrij eenvoudig worden beantwoord. Gaat het om een groot project waarvan de aanvankelijke wensen en eisen niet snel zullen veranderen? Moet kennis over de techniek achter de software eenvoudig (intern) overdraagbaar zijn? Kunnen beide vragen met ja worden beantwoord, dan zou de waterfall-methode zomaar eens in aanmerking kunnen komen. Toch kijken steeds meer bedrijven naar nieuwere methodes zoals Agile of Scrum.

Dit artikel als bron gebruiken? Klik en kopieer.

European Knowledge Center for Information Technology (Ed.). (2018, 20 februari). Waterfall: geschikte methodologie voor software-ontwikkeling? ICT Portal. https://www.ictportal.nl/ict-lexicon/waterfall-methode