Artikel

Tooling

Wat als testen niet alleen gaat over het controleren van functionaliteit, maar over het begrijpen van waarom software bestaat en welke waarde zij moet leveren? Tijdens het testen redeneren we voortdurend, bewust of onbewust, over wat we zien, wat het betekent en of het voldoet aan verwachtingen. Het model Reasoning in Testing maakt dit denkproces expliciet en helpt testers om systematisch en op meerdere niveaus naar software te kijken.

Tijdens mijn studie Industrieel Ontwerpen aan de TU Delft maakte ik kennis met verschillende design theorieën die ik vertaald heb naar de testwereld. Eerder schreef ik al over Brand Driven Testing (BDT) en binnenkort verschijnt ook mijn blogartikel over Testing for Emotion.

Wat is Reasoning in Testing?

Reasoning in Testing beschrijft hoe testers redeneren van concrete software naar achterliggende gebruikerswaarde, en andersom. Het model onderscheidt twee richtingen:

Analyse (van concreet naar abstract)
Vorm → Eigenschappen → Functie → Behoeften en waarden

Synthese (van abstract naar concreet)
Behoeften en waarden → Functie → Eigenschappen → Vorm

Door beide richtingen te gebruiken, test je niet alleen of iets werkt, maar ook of het zinvol is en waarde levert in de praktijk.

Analyse en synthese

Bij analyse vertrek je vanuit de bestaande software. Je onderzoekt hoe vorm en eigenschappen zich vertalen naar functies en uiteindelijk naar de behoeften die worden vervuld. Dit helpt om te bepalen of de software functioneert zoals bedoeld en past binnen de gebruikscontext.

Synthese werkt andersom. Je start bij de behoeften en waarden van gebruikers en redeneert terug naar de oplossing die daarvoor nodig is. Dit perspectief helpt om te beoordelen of de juiste oplossing wordt gebouwd, niet alleen of deze correct is geïmplementeerd.

Samen maken analyse en synthese testen zowel controlerend als richtinggevend.

 

"Met Reasoning in Testing verbind je technische kwaliteit met echte gebruikerswaarde. Zo test je niet alleen wat software doet, maar vooral waarom het bestaat.”

De vier niveaus van redeneren

Het model onderscheidt vier niveaus die samen een compleet beeld geven van softwarekwaliteit: 

  1. Vorm

De vorm beschrijft hoe de software is gerealiseerd of aangeboden. Dit kan betrekking hebben op verschillende aspecten, zoals:

  • Technische vorm — bijvoorbeeld de gebruikte programmeertaal
  • Functionele vorm — het systeem of platform waarop het draait
  • Leveringsvorm — bijvoorbeeld open source of SaaS
  • Interactievorm — bijvoorbeeld een mobiele app of webapplicatie

Deze keuzes worden grotendeels tijdens ontwerp en ontwikkeling gemaakt, maar blijven relevant tijdens het testen.

  1. Eigenschappen

Uit de gekozen vorm volgen eigenschappen: kenmerken van de software die het gedrag onder bepaalde omstandigheden beschrijven.

Voorbeelden zijn:

  • Functionele eigenschappen (bijv. consistentie)
  • Niet-functionele eigenschappen (bijv. betrouwbaarheid)
  • Structurele eigenschappen (bijv. herbruikbaarheid)
  • Proces- en lifecycle-eigenschappen (bijv. verifieerbaarheid)

Eigenschappen kunnen meetbaar of kwalitatief zijn. Testers richten zich vooral op eigenschappen die onafhankelijk zijn van de omvang van de software, zoals correctheid, robuustheid en betrouwbaarheid.

  1. Functie

Functies beschrijven waarvoor de software bedoeld is; de doelen die gebruikers ermee willen bereiken. In tegenstelling tot eigenschappen zijn functies contextafhankelijk. Verschillende gebruikers kunnen verschillende functies hebben voor hetzelfde product; de behoeften van een hacker – die de software wil uitbuiten om deze te misbruiken – zijn bijvoorbeeld anders dan die van een reguliere gebruiker – die gewoon hun doel wil bereiken.

  1. Behoeften en waarden

Op het hoogste niveau gaat het om de achterliggende behoeften en waarden die met de software worden gerealiseerd. Software is uiteindelijk een middel om iets mogelijk te maken: communicatie, veiligheid, efficiëntie, gemak of verbondenheid.

Wanneer software deze waarden ondersteunt, levert zij daadwerkelijk betekenisvolle waarde voor de gebruiker.

Waarom dit model waardevol is voor testers

Reasoning in Testing helpt testers om verder te kijken dan alleen bugs en functionaliteit. Het ondersteunt bij:

  • Het kiezen van relevante teststrategieën
  • Het begrijpen van gebruikerscontext
  • Het signaleren van risico’s en ontbrekende waarde
  • Het verbinden van technische kwaliteit met gebruikersbehoeften

Je test daarmee niet alleen de software zelf, maar ook de reden waarom zij bestaat.

Methoden die Reasoning in Testing ondersteunen

Verschillende technieken kunnen helpen om deze manier van redeneren in de praktijk toe te passen:

Function Analysis
Helpt om functies systematisch te identificeren en te structureren, zodat duidelijk wordt welke doelen de software moet ondersteunen.

Problem Definition
Maakt expliciet welk probleem de software oplost en voor wie, waardoor testdoelen scherper worden. 

Persona’s
Brengen gebruikers tot leven en maken behoeften, context en verwachtingen concreet. Dit helpt bij het ontwerpen van realistische en relevante testscenario’s.

Tot slot: testen als doordacht redeneren

Reasoning in Testing laat zien dat testen in essentie een denkproces is. Door bewust te schakelen tussen vorm, eigenschappen, functies en waarden ontstaat een testaanpak die zowel technisch als betekenisvol is. Je kijkt niet alleen naar hoe software werkt, maar ook naar waarom zij werkt,  en voor wie. Daardoor sluit het testwerk beter aan op de context, verwachtingen en echte behoeften van gebruikers.

Ik ben benieuwd: herkennen andere testers dit model in hun dagelijkse werk? En gebruiken jullie bewust analyse en synthese tijdens het testen? Laten we ervaringen uitwisselen.

 

BRON: Delft Design Guide, Annemiek va Boeijen, Jaap Daalhuizen, Jelle Zijlstra en Roos van der Schoor.

    Wil je ons nieuwste Paarsz magazine per post ontvangen? Laat dan je gegevens achter.

    Ontwerp zonder titel (19)

    Werken bij Bartosz?

    Vincent Verhelst

    Geïnteresseerd in Bartosz? Dan ga ik graag met jou in gesprek. We kunnen elkaar ontmoeten met een kop koffie bij ons op kantoor. Of tijdens ontbijt, lunch, borrel of diner op een plek die jou het beste uitkomt. Jij mag het zeggen.

    Bijtanken bij Bartosz

    Ketenloos testen. Doe jij al mee?

    Mei28

    De keten voelt vertrouwd, maar eerlijk? De keten zit vaker in de weg dan dat ze ondersteunt.  In een agile omgeving, waar je snel en kort-cyclisch werkt, past een logge keten niet meer. De vraag is dus niet óf je hem loslaat, maar hoe.