Dit zijn ze: de zes aandachtspunten bij het lezen van een functioneel ontwerp

Er is besloten om een nieuwe website/applicatie te bouwen of de huidige uitbreiden met nieuwe functionaliteiten. Wij vinden het belangrijk dat we een helder beeld van de wensen hebben. Dit doen wij met het beschrijven van de functionele eisen.

Functioneel ontwerp

Wanneer een project wordt gestart wordt vaak begonnen met het beschrijven van de functionele eisen in een functioneel ontwerp. Het functioneel ontwerp is immers de blauwdruk van je applicatie of website. Hierin staat precies beschreven wat ontwikkelaars gaan maken. Er zijn ook andere project methodieken bijvoorbeeld Agile, een functioneel ontwerp is dan niet aanwezig. Met een Agile aanpak wordt de software ontwikkeld in korte periodes, waarbij na iedere periode een stukje functionaliteit wordt uitgedacht en gebouwd. Wij zullen ons in deze blog alleen richten op beschrijvingen in een functioneel ontwerp, hoewel je jezelf dezelfde vragen kunt stellen bij een functionele beschrijving in een Agile proces als in een functioneel ontwerp traject.

Waarom een functioneel ontwerp?

De reden waarom wij het bij Suneco belangrijk vinden om de wensen en eisen uit te werken in een functionele beschrijving heeft te maken met een stukje verwachtingsmanagement. Want als iedereen precies weet wat er gebouwd gaat worden, is de kans kleiner dat achteraf dingen aangepast moeten worden. Soms lijkt een wijziging klein en dan is het gemakkelijk om te denken: ‘Ach, dat is toch maar zo’n kleine wijziging? Dat kan toch wel gauw even gebouwd worden?’ Hier zullen veel mensen het mee eens zijn. Toch kan zelfs de kleinste wijziging veel keuzes met zich meebrengen.

Voorbeeld: “Een opdrachtgever heeft aangegeven dat hij een knop wil tonen op de homepagina, zodat gebruikers zich kunnen aanmelden voor de nieuwsbrief.”

Voor deze functionaliteit kunnen we zo al de volgende gevolgen bedenken:

Wat gebeurt er als ik klik op de knop?
Ga ik naar een interne of externe pagina? In een nieuw tabblad, of in hetzelfde scherm?
Wordt er een formulier in een pop-up scherm getoond? Bestaat het te tonen formulier?
Wat voor informatie moet er op de knop komen te staan?
Alleen een titel of een zin? Wellicht beide?
Moet deze knop ook voorzien zijn van een afbeelding.
Hoe wordt de gebruiker aangemeld aan de nieuwsbrief? Met een formulier? En waar worden de gegevens van die gebruiker opgeslagen?
Moet de knop aanpasbaar zijn? Vaker te gebruiken? Of alleen op één plek op de website? Moet de knop altijd hetzelfde doen? En zo zijn er meerdere keuzes te bedenken bij iedere functionaliteit. Het is heel belangrijk om vooraf deze keuzes al uitgedacht te hebben om achteraf niet teleurgesteld te worden. Het zou jammer zijn als er achteraf nog veel aangepast moet worden.

Het functioneel ontwerp beschrijft dus wat er werkelijk gebouwd gaat worden. Voor jou als opdrachtgever is het dus belangrijk dat je weet waarom het functioneel ontwerp gemaakt wordt, voor wie het bedoeld is en hoe dit gelezen moet worden.

De zes aandachtspunten

Omdat het lezen van een functioneel ontwerp best lastig kan zijn hebben wij 6 aandachtspunten voor het lezen van het functioneel ontwerp op een rij gezet:

Begrijp ik wat er staat of heeft dit meer uitleg nodig?
Per functie is het goed om na te gaan of je daadwerkelijk begrijpt wat hiermee bedoeld wordt. Stel jezelf vragen als: ‘Snap ik de betekenis van een woord?’ of ‘Kan ik dit op meerdere manieren interpreteren?’ Een goed voorbeeld van het dubbel interpreteren van een beschrijving is:

My wife said:

“Please go to the store and buy a carton of milk. And if they have eggs, get six.”

I came back with six cartons of milk

She said: “Why in the hell did you buy six cartons of milk?”

“They had eggs”

De functioneel ontwerper houdt hier zoveel mogelijk rekening mee, maar het kan altijd zijn dat er bij sommige functionaliteiten meer informatie benodigd is om goed te begrijpen wat er nu daadwerkelijk gemaakt gaat worden en waarom dit op deze wijze is uitgedacht.
Klopt het met wat ik zelf in gedachten heb? Of zou ik dingen anders willen zien?
Naast goed begrijpen wat er staat is het ook van belang dat de gegeven oplossing ook past bij jouw eigen idee. Er is een reden waarom je een bepaalde functie in de website wilt hebben. Klopt de beschrijving in het functioneel ontwerp met het idee dat jij voor ogen hebt? En zo nee, zou je hierin dingen anders willen zien? Als we hierin terugkijken naar die knop op de homepagina voor de nieuwsbrief kan het zijn dat de functioneel ontwerper heeft begrepen dat je een knop wilt die verwijst naar een interne pagina met een formulier. Terwijl jij liever een knop met een tekstveld voor het invullen van een e-mailadres had gezien.
Brengt de beschreven functionaliteit mij nu nog tot nieuwe inzichten?
Het kan zijn dat wanneer jouw idee is uitgewerkt op papier je ineens tot andere inzichten komt. Deze nieuwe inzichten zijn van belang voor een functioneel ontwerper. Het functioneel ontwerp is tenslotte de bouwtekening van de website, dus als jij iets liever toch anders zou zien is dit het moment om aanpassingen te maken.
Kan ik met de beschreven functionaliteiten het doel dat ik voor ogen heb behalen?
Tijdens het lezen van het functioneel ontwerp is het van belang dat je het doel of meerdere doelen van de website niet uit het oog verliest. Als jij een webshop wilt laten bouwen, zal de nadruk op de producten op je website liggen en wil je functies hebben die hierin ondersteunen.
Past het bij de doelgroep(en) die ik voor ogen heb?
De ene doelgroep zal je anders benaderen dan een andere. Wanneer je je website richt op jonge technici zal de website een andere gebruikerservaring hebben dan wanneer je deze richt op ouderen. Als je website gericht is op bezoekers met weinig ervaring zou deze bezoeker meer baat hebben bij een versimpelde gebruikerservaring en informatieve blokken met uitleg.
Verwacht je nog dingen die niet zijn benoemd in het functioneel ontwerp?
Het laatste punt is het meest lastige punt, namelijk het functioneel ontwerp beoordelen op functionaliteit die er niet in staat. Om dit te toetsen werkt het prettig om een lijst met wensen en eisen bij te houden. Deze lijst wordt ook wel een requirementsinventarisatie genoemd. Aan de hand van deze lijst is het gemakkelijk om te controleren of al jouw wensen in het functioneel ontwerp zijn beschreven.

Met bovenstaande vragen heb je heel gericht kunnen nadenken over de beschreven functionaliteit. Dit kan als gevolg hebben dat onderdelen aangepast moeten worden en het is dan ook juist wenselijk om dat in dit stadium van het project te doen. Zo kunnen aanpassingen tijdens of na de bouw van de website voorkomen worden. Uiteraard staan wij ook klaar om jou te helpen bij het lezen en begrijpen van het functioneel ontwerp.