Publicaties

Design Thinking: een hybride vorm van waterval en Agile

We willen allemaal Agile werken, als tegenhanger van de watervalmethode, maar vergeten vaak eigenlijk hoe we zo efficiënt en effectief mogelijk kunnen samenwerken. Vaak bestaan er organisatieonderdelen die niet geschikt zijn om Agile te organiseren. Ontwikkeling van nieuwe applicaties gaat daarom vaak maar moeizaam. Zou een hybride vorm van de watervalmethode en Agile de ultieme oplossing hiervoor zijn? 

Bedrijven die bewust langdurig een mix of hybride structuur kiezen, hebben meestal als doel meer efficiëntie en effectiviteit te creëren voor onderdelen van de organisatie die kort-cyclisch werken, veel innovatie leveren en tegelijkertijd de voordelen van de watervalmethode willen behouden voor andere organisatieonderdelen. Een hybride vorm van de watervalmethode en Agile wordt daarom ook wel als interessant gezien voor bedrijven die zowel in de hardware als software zitten.

 

Wat is de watervalmethode? 

De watervalmethode is voor ontwikkeling van software, waarin de ontwikkeling vaak vloeiend door een aantal fasen naar beneden loopt, namelijk:

  1. definitiestudie/analyse

  2. basisontwerp

  3. implementatie

  4. testen

  5. beheer en onderhoud

De watervalmethode

 

Deze manier van werken zorgt ervoor dat je werk in verschillende fasen opdeelt. Elke fase dient eerst afgesloten te zijn voordat naar de volgende fase gegaan kan worden. Wanneer in een van de voorafgaande fasen een fout wordt ontdekt moet men eerst helemaal terug om die fase te corrigeren. In de praktijk komt het erop neer dat alles eerst op papier wordt gezet (goed gedocumenteerd) voordat er daadwerkelijk wordt gestart met de bouw van de applicatie. Hierdoor worden de wensen van de klant zo volledig mogelijk vooraf in kaart gebracht. Dit kan echter wel zorgen voor de nodige vertragingen in de planning van softwareontwikkeling. 

Maar wat zijn de voordelen van watervalmethode eigenlijk? De watervalmethode staat ook wel bekend om zijn gestructureerde procesflow, wat het mogelijk maakt om een kwalitatief hoog product te ontwikkelen. Maar daarnaast kent het ook andere voordelen, waaronder: 

  • Wanneer in het begin van het project een fout wordt ontdekt, kost het weinig inspanning om deze fout te herstellen.

  • Bij de watervalmethode ligt de nadruk op documentatie, hierdoor wordt alles zo uitvoerig mogelijk vastgelegd om misverstanden te voorkomen.

  • Doordat vooraf concrete fasen zijn gedefinieerd loopt het verloop van het project vrij gestructureerd.

  • Het gebruik van mijlpalen maakt het makkelijk om in te schatten wat de status van het project is. 

Naast deze voordelen, kent de watervalmethode ook een aantal nadelen, waaronder:

  • Het duurt lang voordat er resultaat zichtbaar is.

  • Geformuleerde requirements zijn lastig te veranderen tijdens het project.

  • Doordat het lastig is om tijdens projecten aanpassingen te maken, wordt er vaak maar met een select groepje stakeholders samengewerkt waardoor de kans groter is dat iets wordt opgeleverd dat niet voldoet aan de wensen van de klant.

  • Het is lastig om in te schatten hoeveel tijd en wat de kosten zullen zijn, doordat het project zo gefaseerd loopt.

  • Binnen een project zijn teamleden vaak gespecialiseerd, waardoor ze afhankelijk zijn van anderen gedurende de verschillende fasen.

 

Wat is Agile?

Naast de watervalmethode is Agile de laatste jaren erg populair bij bedrijven. Agile staat bekend om zijn flexibiliteit, waardoor organisaties wendbaarder worden. Bij Agile wordt tijdens de ontwikkeling een project of functionaliteit (in geval van softwareontwikkeling) opgebroken in kleine stukjes, ook wel iteraties of sprints genoemd. De bedoeling hiervan is om iedere sprint een tastbaar product op te leveren. Nadat het product is getoond en getest, wordt het product en proces beoordeeld. Door deze aanpak gaat men ervan uit dat de omstandigheden tijdens de ontwikkeling kunnen veranderen, weet men hier beter op in te spelen en zorgt het ervoor dat het eindresultaat niet in gevaar komt. Op basis van bevindingen die hieruit kunnen voortvloeien samen met projectprioriteiten, wordt de volgende sprint in het ontwikkelproces bepaald.

Agile methode voor ontwikkeling

Ook Agile heeft zijn voor- en nadelen. Agile maakt organisaties wendbaar, maar daardoor is het ook complex. Andere voordelen van Agile werken zijn:

  • Bijsturen is makkelijker als de omgeving verandert.

  • De klant is koning, er wordt altijd geluisterd naar de wensen van de klant.

  • Snelle releases en daardoor ook snellere productoplevering en dus resultaat.

  • Hechte samenwerking tussen team-/projectleden.

  • Constante doorontwikkeling in sprints.

Maar Agile kent ook een aantal nadelen:

  • De traditionele rollen moeten herzien worden, bijvoorbeeld het ophalen van de requirements behoort niet meer tot de verantwoordelijkheid van de analist. Agile kent een (multidisciplinair) ontwikkel team.

  • Een lange implementatie tijd van deze manier van werken, wat organisatieverandering vereist.

  • Hoge commitment vanuit de business vereist.

 

Waterval + Agile = Design Thinking methode

De huidige literatuur praat bij een mix van de watervalmethode en Agile over ‘wet Agile’, ‘the Agile waterfall’ en ‘the Agile-waterfall hybrid’. Maar om precies te kunnen ontwikkelen wat de klant echt nodig heeft, is de Design Thinking methode van toepassing. Deze aanpak focust zich op het co-creëren van een product samen met de klant, waarbij er intensief wordt samengewerkt tussen business en IT. De business blijft uiteindelijk eigenaar van het product. Je begint bij het omarmen van je klant, voordat je iets geweldigs bedenkt.

Blog Design thinking, agile en de watervalmethode

In de eerste iteraties wordt samen met de eindgebruiker het gewenste product vormgegeven. Vervolgens wordt deze tijdens ontwikkelsprints verder uitgewerkt en aangescherpt. De Design Thinking methode impliceert dat de tijd die je normaal kwijt bent voor het verwerven van functionaliteiten in de watervalmethode geminimaliseerd kan worden door dit te doen tijdens sprints, anderzijds kan zo ook richting worden gegeven aan toekomstige sprints. Daarnaast geeft het de mogelijkheid om tijdens korte gestructureerde experimenten te testen of het idee potentie heeft. En mocht het toch mis lopen, dan leer je hier weer van!

Gedurende dit proces blijft het flexibele karakter van Agile behouden en wordt het resultaat door de gebruiker zelf vormgegeven. Doordat je kort-cyclisch ontwikkelt en de eindgebruiker in de gelegenheid stelt om mee te kijken en te denken, bouw je een product dat uiteindelijk breed geaccepteerd zal worden.

 

Praktijkvoorbeeld: hoe de Design Thinking methode kan werken

Al jarenlang zijn bedrijven bezig met het automatiseren van verschillende processen, waaronder die van Sales, HR en IT. Om deze processen te kunnen automatiseren worden er verschillende applicaties gebouwd met behulp van Agile en de watervalmethode. Maar het blijft vaak lastig om te achterhalen wat een interne medewerker nou echt nodig heeft. Vaak werken systemen niet naar behoren of blijkt het heel erg lastig te zijn om achteraf aanpassingen aan te brengen. Daarnaast moet men vaak met verschillende afdelingen samenwerken, wat het verloop van de ontwikkeling kan belemmeren. 

Bij een groot aantal bedrijven heeft Design Thinking er echter wel toe geleid dat in complexe omgevingen succesvol geïmplementeerd kon worden. Doordat er expliciet werd gekeken naar de wensen en behoeftes van de klant kon er zo op een efficiënte wijze geïmplementeerd worden, ondanks dat deze organisaties niet zo wendbaar waren als een startup. Organisaties hoeven dus niet te kiezen voor alleen Agile of alleen de watervalmethode, maar kunnen beter kiezen voor een hybride vorm. Daarnaast is de Design Thinking methode voor meerdere domeinen geschikt (bijv. Architectuur) en niet beperkt tot software ontwikkeling.

Wil je meer weten over hoe Design Thinking jouw organisatie kan helpen? Neem dan contact op met Vikash Badal.

 

Tweeten
Delen

Gerelateerd