Op maat gemaakte software is als een goed maatpak: het helpt om toegang te krijgen tot al jouw data, waardevolle rapportages te maken, informatie te bewerken en is ook nog eens veilig. Het roept echter ook vragen op. Hoe houd je de kosten onder controle?
De ontwikkeling van software ontstaat meestal vanuit nieuwe behoeften in jouw bedrijfsprocessen. Welke behoeften dat precies zijn is niet altijd gelijk even duidelijk. Onderstaande afbeelding maakt dit op een grappige manier duidelijk. Een pijnlijke situatie voor zowel de klant als ook de ontwikkelaar.

Om de geschetste situatie uit de afbeelding te voorkomen is het stellen van veel en de juiste vragen een eerste stap. Maar de antwoorden op die vragen zijn voor eenieder voor interpretatie vatbaar en leiden vaak tot verwarring en onduidelijkheid, zeker bij de ontwikkeling van maatwerk software. Deze verwarring en onduidelijkheid draagt zeker niet bij tot kostenbeheersing en een korte doorlooptijd.
Een modern en veel gebruikt hulpmiddel om bij de ontwikkeling van maatwerk software deze verschillende interpretaties tegen te gaan, is het gebruik van prototyping. Aan de hand van gesprekken met jou én jouw eindgebruikers, beeld een ontwerper de klantwensen uit in interactieve afbeeldingen waarmee direct kan worden gecontroleerd of datgene wat bedoeld wordt ook goed is geïnterpreteerd.
Het doel van een prototype is om gebruikers van de software in staat te stellen de voorstellen van ontwikkelaars voor het ontwerp van het uiteindelijke product continu te evalueren. Dit is mogelijk doordat het ontwerp visueel kan worden beoordeeld en kan worden uitgeprobeerd, in plaats dat het ontwerp moet worden geïnterpreteerd en geëvalueerd op basis van een beschrijving. Ook geeft een prototype eindgebruikers inzicht in de aanwezige en eventueel ontbrekende functies van de software. Dit proces staat in contrast met de traditionele ontwikkelingscyclus waarbij eerst het hele programma werd gebouwd en vervolgens eventuele inconsistenties tussen bedoeling en implementatie werden opgelost.
Voordelen van prototyping
Het gebruik van prototyping bij softwareontwikkeling heeft veel voordelen:
- Kortere doorlooptijd – door eerder ontbrekende functionaliteit te ontdekken en direct toe te voegen. Latere wijzigingen vertragen het ontwikkelproces;
- Minder kosten – prototyping kan de kwaliteit van de eisen en specificaties die aan ontwikkelaars worden verstrekt, verbeteren. Klanten weten niet altijd wat ze willen totdat ze het zelf zien. Verwarring en onduidelijkheid wordt in een vroeg stadium voorkomen. Latere wijzigingen kosten immers meer;
- Verbeterde en verhoogde gebruikersbetrokkenheid – prototyping vereist betrokkenheid van de gebruiker en stelt hen in staat een prototype te zien en ermee te werken waardoor er een betere en completere feedback over de benodigde specificaties wordt gegeven.
Wanneer prototyping gebruiken?
Vernieuwen – Bij veel van onze klanten komen wij applicaties tegen die al jaren dienstdoen en waar men functioneel gezien redelijk tevreden mee is. Echter is de wijze waarop de applicatie gebruikt wordt veroudert en/of inefficiënt. Een nieuwe gebruikersinterface, door middel van prototyping, kan dan uitkomst bieden. Moderne technieken maken het mogelijk om applicaties te voorzien van een nieuwe gebruikersinterface zonder dat de onderliggende businesslogica en dataopslag ingrijpend wordt gewijzigd of vervangen.
Ontwikkelen – De ontwikkeling van een hele nieuwe maatwerk applicatie kent vele onzekerheden. Als de gebruikers snel feedback kunnen krijgen over hun vereisten, kunnen ze deze mogelijk al vroeg in de ontwikkeling van de software verfijnen. Wijzigingen aanbrengen in een vroeg stadium van de ontwikkelingscyclus is buitengewoon kosteneffectief, aangezien er dan nog niets opnieuw hoeft te worden gedaan. Als een project wordt gewijzigd nadat er een aanzienlijke hoeveelheid werk is verricht, kunnen kleine wijzigingen grote inspanningen vergen en extra kosten met zich meebrengen, aangezien softwaresystemen veel afhankelijkheden hebben.
Op deze manier heb je als klant een kosteneffectief middel om zowel naar ons als IT-leverancier, als ook de eigen stakeholders in de organisatie (voorafgaand aan de meer kostbare ontwikkelfase) te toetsen of de nieuwe klantwensen de behoeften afdekken.
Kijkend naar de vele voordelen, is prototyping dan altijd de beste oplossing? Nee dat niet, er kleven namelijk ook een aantal nadelen aan. Indien je een maatwerk applicatie wilt laten maken of uitbreiden dient er een afweging gemaakt te worden of prototyping een goed middel is. In elk van onderstaande situaties is prototyping een zeer goede oplossing:
- Als de eisen aan de applicatie nog niet volledig duidelijk zijn voor het team;
- Als de eisen snel kunnen veranderen of variabel zijn;
- Als er complexe systemen zijn waarbij moet worden geëxperimenteerd en met zo min mogelijk risico’s;
- Grote projecten met strakke tijdlijnen en deliverables
Overzicht van het prototypingproces
Het proces van prototyping omvat de volgende stappen:
- Identificeren fundamentele eisen – Bepaal de basisvereisten, inclusief de gewenste invoer- en uitvoerinformatie. Details, zoals beveiliging, kunnen doorgaans worden genegeerd.
- Bepalen vormgeving – Het op basis van basisvereisten en organisatie huisstijl bespreken van de vormgeving van de applicatie (bijv. kleurgebruik, navigatiestijl en -diepte)
- Prototype ontwikkelen.
- Evaluatie – De klanten, inclusief eindgebruikers, evalueren het prototype en geven feedback over mogelijke toevoegingen of wijzigingen.
- Verbeteren prototype – Met behulp van de feedback kunnen zowel de specificaties als het prototype worden verbeterd. Onderhandelingen over wat binnen de reikwijdte van het contract/ product valt, kan nodig zijn. Als er wijzigingen worden aangebracht, kan het nodig zijn de stappen 4 en 5 te herhalen.
Wil je meer lezen over op maat gemaakte software? Lees dan ons blog: ‘Op maat gemaakte software: niet meer afhankelijk zijn van één software ontwikkelaar‘.