Watervalmethode vs Scrum

Scrum is geliefd bij veel software-ontwikkelaars. Zo ook bij ons; wij houden echt van scrummen. Maar soms – heel soms – werken wij nog volgens de watervalmethode. Dit doen wij vooral bij projecten waarbij de projectleider aan de klantzijde geen beslissingsbevoegdheid heeft en elk stap aan een leidinggevende, het management of een stuurgroep moet worden verantwoord. Soms is de watervalmethode ook meer geschikt voor website waarop content centraal staat en al in een vroeg stadium helder is hoe de website ingedeeld moet worden en moet werken.

Doordat wij veel met beiden veel ervaring hebben, weten we inmiddels wat de voordelen en de valkuilen zijn. Een tussenstand.  

Wat is de Watervalmethode?

Werken volgens de watervalmethode betekent dat alle ontwikkelingsfases na elkaar plaatsvinden. Dit gebeurt als een vloeiende waterval. De fases die daarbij worden doorlopen bestaan uit:

Voordat je aan een nieuwe fase begint, moet de oude worden afgesloten. Ontdek je een fout in een eerdere fase? Dan moet je terug naar de fase waarin de fout optrad. Je lost het probleem op en doorloopt weer alle fases. Bij de watervalmethode stel je vooraf de scope van het project en het eindresultaat vast.

Voordelen  Watervalmethode

Na iedere fase heb je als klant een beslissingsmoment. Je kunt dit resultaat uit een fase gemakkelijk delen en voorleggen aan collega’s om tot gezamenlijke feedback te komen.

  • Het is een duidelijk methode, vanwege de heldere splitsing in fases. Je hebt een goed overzicht van overzicht van de voortgang van het project.
  • Over het algemeen gaat de watervalmethode gepaard met meer documentatie over het project. Nieuwe mensen op het project kunnen zich daardoor sneller inwerken.
  • Je weet precies wat je krijgt voor welke prijs.

Valkuilen Watervalmethode

  • Tijdens de bouw kan je als klant van inzicht veranderen. De watervalmethode gaat er vanuit dat de wensen van de klant niet veranderen. Wil je toch iets aanpassen? Dan moet je terug naar de tekentafel. En dit heeft weer gevolgen voor de planning; deze loopt uit. Ook kost de aanpassing extra geld.
  • Het testen gebeurt aan het eind van het project, tussendoor wordt niet getest.
  • De doorlooptijd van het project is langer. Dit komt mede door de hoeveelheid documentatie die wordt aangelegd. De gemiddelde doorlooptijd is drie tot vier maanden.
  • Bij elke ontwikkelingsfase zijn andere partijen betrokken. De ontwerper levert een steengoed grafisch ontwerp af. De front-ender zet dit ontwerp om in valide HTML. En de programmeur nemen de CMS-implementatie voor hun rekening. Hoe goed je iedereen ook brieft, de uitwerking van het ontwerp is toch altijd dan vooraf bedacht is. Elke discipline heeft andere verwachtingen bij het product.
  • In het functioneel ontwerp worden alle functies vastgelegd. Het komt regelmatig voor dat de bedachte functies in de praktijk niet nodig zijn. Er wordt dus overbodig veel gebouwd.
  • De uitwerking van het functioneel ontwerp laat te wensen over, waardoor gedurende het project discussie ontstaat over wat wel en wat niet gemaakt zou worden.

Wat is scrum? 

Scrum is een flexibele manier van projectaanpak ontwikkelt in 1995 in de Verenigde Staten. Een multidisciplinair team van programmeurs, front-enders en designers werkt in korte sprints van doorgaans twee weken gezamenlijk aan een website of webapplicatie. Tijdens de sprint is een klant – hij heet dan product owner - altijd op kantoor aanwezig om te testen, mee te denken en beslissingen te nemen.

Bij de scrummethode begin je met het maken van een lijst van alle gewenste functionaliteit in de vorm van user stories. Een voorbeeld hiervan is: ‘Als bezoeker moet ik een offerte kunnen aanvragen’. Of ‘Als bezoeker moet ik me kunnen inschrijven op de nieuwsbrief’. Aan die user stories koppelen we taken. Deze worden vooraf besproken en ingeschat. De ingeschatte tijd bepaalt hoeveel user stories in een sprint gemaakt kunnen worden. Prioriteit in wensen aanbrengen is dus essentieel. Aan het eind van elke sprint leveren we een werkend product op en moet in theorie live gezet kunnen worden.

Scrum is heel geschikt voor innovatieve projecten waarbij vooraf nog niet helemaal duidelijk is wat er gemaakt moet worden. Uitgebreidere informatie over scrum vind je in onze blog ‘Wat is scrum’.

Voordelen Scrum

  • Als klant zit je bovenop het proces. Je maakt iedere dag de voortgang en mee kan direct reageren en meedenken. Tijdens de realisatie van een user-story kan blijken dat deze op meerdere manieren te maken is. Gaan we voor de eenvoudige oplossing en besteden we meer tijd aan iets anders? Of gaan we voor de complexere oplossing met als gevolg dat dat wel ten koste gaat van een andere user story? Als klant heb jij invloed op dit soort beslissing. Door intensieve samenwerking kom je op het eind niet voor onaangename verrassingen te staan.
  • Een klant kan tussentijds van gedachten veranderen (voortschrijdend inzicht), zonder dat dit gelijk extra kosten met zich meebrengt. Belangrijk is dat de klant goed keuzes kan maken: want als hij voor X kiest, dan heeft dat wel consequenties voor Y.
  • Scrum biedt ruimte om in te springen op recente ontwikkeling. Wordt tijdens de bouw van een webshop een nieuwe betalingsmethode gelanceerd. Met scrum heb je ruimte om hierop in te springen en dit tijdens een sprint te realiseren.
  • De planning kan niet uitlopen: wanneer er tegenslagen zijn kan de planning na overleg omgegooid worden, zodat de deadline behaald wordt.
  • Gedurende project wordt heel de tijd getest. Ook door de klant. Zij weet aan het eind dan ook beter hoe de website werkt, wat het wel en niet kan.
  • Scrum-teams zijn over het algemeen productiever, omdat zij zich direct bij de toepassing betrokken voelen. Dit verantwoordelijkheidsgevoel uit zich in een onverminderd enthousiasme. Bovendien bevordert het scrummen het delen van kennis. Teamleden gaan meer met elkaar in discussie en bespreken uitgebreider hoe ze bepaalde problemen oplossen.
  • Ontwikkelaars hebben – net als de rest van de mensen – de neiging het beste van het beste op te leveren. Maar soms is goed ook goed genoeg. Scrum richt zich volledig op wat nodig is een maximale toegevoegde waarde te creëren. En als dat betekent dat een ingevuld contactformulier niet direct in het CRM komt, maar alleen als mail bij de HR-afdeling, dan is dat goed genoeg. Bij scrum is er geen sprake van overenginering. 

Valkuilen Scrum

  • Scrum brengt meer onzekerheid met zich mee. Je weet namelijk niet precies wat je krijgt of hoe iets eruit komt te zien. Vooral voor stakeholders die graag overzicht hebben, is dit erg lastig.
  • Er is geen ruimte voor een mening voor een grote groep. Bij scrum wordt één product owner vanuit de organisatie aangewezen. Deze heeft alle beslissingsbevoegd. Ook omdat er simpelweg geen tijd is om alle gemaakte functionaliteit langs de leidinggevende, het managementteam en het Raad van Bestuur te laten gaan. Vanuit de organisatie moet er dus veel vertrouwen zijn in de product owner.
  • Soms verzandt het scrummen in een mini-waterval, doordat er tijdens de sprint te veel afhankelijkheden zijn. Het ene teamlid moet dan op het andere teamlid wachten voordat hij verder kan.
  • De uitwerking van de scrum laat binnen het team te wensen over.
    • De user stories zijn te groot, waardoor er geen vooruitgang in het project lijk te zitten.
    • De user stories zijn niet diep genoeg uitgewerkt. Gevolg is die iedereen op aannames werkt en daardoor niet de neuzen dezelfde kant op staan.
    • De user stories worden binnen de sprint niet in de volgorde van prioriteit gemaakt. Onbelangrijke stories krijgen daardoor te veel aandacht.
    • Door de stress om een werkend product op te leveren kan het testen erbij in schieten.

Dus, wat is het verschil tussen Waterval en Scrum?

De waterval- en scrummethode zijn twee totaal verschillende manieren van projectaanpak. Dit blijkt wel uit bovenstaande definities en de genoemde voordelen en valkuilen. Hieronder zetten we de belangrijkste 5 verschillen op een rijtje:

Waterval-methode

Scrum-methode

Werken na elkaar

Werken met elkaar

Klant maakt niet actief deel uit van team

Klant maakt actief deel uit van team

Lange doorlooptijd

Doorlooptijd beperkt (in vergelijking met watervalmethode)

Bij tekenen offerte weet je precies wat je krijgt

Bij tekenen offerte weet je nog niet precies wat je krijgt

Niet flexibel in omgang met nieuwe ontwikkelingen en wensen

Gemakkelijk flexibel omgaan met nieuwe ontwikkelingen en wensen 


Voorbeeld projecten Insyde

Voorbeeld project Waterval

C2W, Royal Sens, Cafe du Midi. Zo maar een greep uit onze watervalprojecten.  Het meest recente project dat we middels de watervalmethode ontwikkeld hebben is website van het recruitmentbureau Jurczik | DeBlauw. We kwamen tot dit besluit vanwege 2 redenen: (1) er waren meerdere lagen van de organisatie bij de ontwikkeling betrokken (2) vooraf was al helemaal duidelijk uit welke onderdelen de website moest bestaan en hoe deze ingevuld moesten worden. De ontwikkeling verliep dan ook voorspoedig. Verbeterpuntjes waren we het beter afsluiten van de fases. Het kwam regelmatig voor dat in een latere fase problemen uit een eerdere fases verholpen moesten worden.

Voorbeeld project Scrum

Scrummen hebben we heel veel gedaan. Quizworks, Thuisafgehaald, Gezondheidsplein, Lean Library, WintersportLive. Bijna te veel om op te noemen. Graag lichten we er een uit: Thuisafgehaald. Daar hebben we inmiddels 31 keer voor gesprint. Een absoluut record.

Het sprinten werkt voor deze webapplicatie optimaal omdat het team volledig op elkaar is ingespeeld, inclusief de product owner. Die is inmiddels getraind in het maken van soms lastige beslissingen. En hoewel we heel vaak hebben gesprint, blijven er punten van aandacht. Zo moeten we er scherp op zijn dat we de stories wel voldoende uitdiepen. Het gevaar van gemakzucht ligt op de loer. Gelukkig hebben we dat altijd nog op tijd weten te tackelen.

Door het scrummen is Thuisafgehaald gegroeid van platform waarop je alleen maaltijden kon delen en afhalen tot een volwaardige platform binnen de social sharing economy met een legio aan functionaliteit. 

Geschreven door Caroline de Vor

Projectleider

Blijf up-to-date en ontvang updates in je mailbox

Lees ook deze interessante blogs

Kiezen van een webdesignbureau: waar moet je op letten?

Je wilt een nieuwe website en bent op zoek naar een goed webdesignbureau. In Nederland zijn er zeker honderd webdesignbureaus en een groot aantal ZZP’ers die websites maken. Allemaal pretenderen ze goed te zijn. Maar hoe scheid je het kaf van het koren en kies je een bureau die bij jouw organisatie past? Wij zetten 14 punten op een rij waar op je moet letten bij de keuze van een webdesignbureau.

Totaalpakket: grondig renoveren website, inclusief teksten en beelden

Het besluit is genomen: je wilt een nieuwe website voor je bedrijf. Dit besluit is meteen de startpunt van een reeks volgende beslissingen. Wat te doen met de content – foto’s en teksten – op de huidige site? Passen deze nog bij de nieuwe weg die je in wilt slaan? Of doen deze juist afbreuk aan de nieuwe website en de communicatieboodschap die je wilt uitdragen? En wat als nieuwe teksten nodig zijn: zelf schrijven of iemand anders? En zo ja, wie dan? Oftewel: keuzes,...

Is mijn website mobielvriendelijk?

Eerder schreven we al over het verchil tussen een mobiele website, een responsive website en een mobiele app. In dit artikel zoomen we wat verder in wat mobielvriendelijk eigenlijk is, waarom het belangrijk is en waar je op moet letten. Oké. Laten we van start gaan!

Een offerte aanvragen

Heb je een duidelijk beeld van je wensen en wil je weten wat het kost om dit te laten maken?