Waar software is zijn softwarefouten, ook in SAP. Gestructureerd testen dekt risico’s af en gaandeweg het testproces worden softwarefouten gevonden. Omdat niet alle bevindingen tijdens het testen ‘fouten’ zijn, spreken we over (test)bevindingen. Het is van groot belang om bevindingen goed vast te leggen. Hieronder een top vijf van belangrijke uitgangspunten voor het registreren van testbevindingen.
- Reproduceerbaar of niet?
Tijdens het testen blijkt een functie niet te werken zoals omschreven, verwacht, of voorspeld. Voordat deze ‘fout’ wordt vastgelegd als bevinding, is het belangrijk om te kijken of de bevinding reproduceerbaar is. Wanneer het lukt om steeds hetzelfde verkeerde resultaat te krijgen, bij het doorlopen van steeds dezelfde stappen, is de bevinding reproduceerbaar.
Een bevinding die niet te reproduceren is door de behandelaar die de bevinding moet analyseren en verhelpen, kost veel extra (doorloop)tijd. In veel gevallen komt de bevinding enkele dagen later onopgelost terug bij de tester met het verzoek om meer informatie. De vraag is of de tester dan nog de exacte stappen kan terughalen om de fout na te bootsen…
Het is daarom belangrijk om bij het vinden van een fout direct te proberen de bevinding te reproduceren en de precieze stappen bij te houden. Wanneer de tests worden uitgevoerd aan de hand van uitgewerkte testscripts volstaat in veel gevallen het bijvoegen van dit testscript tezamen met de gebruikte testdata. Bij eventuele foutmeldingen of afwijkende schermen is het bovendien raadzaam om schermprints bij te voegen bij de bevinding. Al deze extra contextinformatie verhoogt de reproduceerbaarheid aan de kant van de (veelal externe) oplossende partij.
- Een heldere omschrijving
Er wordt veel inefficiëntie voorkomen als bevindingen worden voorzien van een heldere omschrijving. Het is hierbij raadzaam om onderscheid te maken tussen een korte en een lange omschrijving. De meeste bevindingentools hanteren ook dit onderscheid.
De korte omschrijving bestaat uit één zin en wordt getoond in de algemene bevindingenlijst. Hierbij is het belangrijk om zowel het probleem te benoemen als de context waarin dit probleem zich voordoet. De korte omschrijving ‘Foutmelding 1423 bij openen zoekscherm Debiteuren’ is vele malen informatiever dan de (te) korte omschrijving ‘Fout in zoekscherm’. Bovendien ontstaat bij te korte omschrijvingen veel onduidelijkheid wanneer iemand een andere foutmelding krijgt bij het zoekscherm, deze lijkt immers al geregistreerd.
De lange omschrijving bevat uitgebreidere informatie over de bevinding en hoe deze gereproduceerd kan worden. Deze omschrijving bevat minimaal de volgende informatie:
- Uitgebreide foutomschrijving
- Manier om de fout te reproduceren
- Het verwachte resultaat wat niet is opgetreden
- Eventueel verwijzing naar documenten of ontwerpen met de correcte werking
Zoals eerder aangegeven is het van grote meerwaarde als het uitgevoerde testscript en/of schermprints worden vastgelegd in de bevinding.
- Prioriteren
Bij een omvangrijk SAP project is het niet uitzonderlijk dat er enkele honderden bevindingen worden vastgelegd. In het begin van de testfase worden sneller nieuwe bevindingen vastgelegd dan dat er bevindingen worden opgelost. Om te voorkomen dat de meest hardnekkige fouten het langst blijven liggen is een prioritering onmisbaar.
Enkele voorbeeld prioriteiten met een mogelijke betekenis:
- Urgent; Blokkerend voor het proces, geen work arounds beschikbaar
- Hoog; Blokkerend voor het proces, workaround mogelijk
- Midden; Niet blokkerend voor het proces
- Laag; Cosmetisch, nice-to-have, etc
Aan iedere bevinding wordt een prioriteit toegekend, waardoor het mogelijk is om de hoogste prioriteit bevindingen het eerst te laten verhelpen. Tevens is het waardevol om in rapportages niet alleen puur te kijken naar de aantallen, maar vooral naar het aantal bevindingen per prioriteit.
- Afhandeling
Nadat de bevinding is gereproduceerd, voorzien van een heldere omschrijving en de juiste prioriteit, dient deze te worden toegewezen aan een ‘behandelaar’. Dit kan een collega zijn voor verdere analyse, een leverancier/implementatiepartner of een functionaris uit de business. Afhankelijk van de omvang van de testfase en het aantal bevindingen is het aan te bevelen om een test coördinator aan te stellen die nieuwe bevindingen beoordeeld op volledigheid (zie punt 1, 2 en 3) en de bevinding vervolgens toewijst aan een behandelaar. Dit wordt ook wel ‘dispatching’ van bevindingen genoemd.
Naast de behandelaar is het belangrijk om de actuele status van de bevinding bij te houden. Voorbeelden van statussen zijn:
- Nieuw; Wacht op beoordeling en toewijzing aan behandelaar.
- In behandeling; Toegewezen en/of opgepakt door behandelaar.
- Hertest; Opgelost en opnieuw aangeboden voor test.
- Opgelost; Hertest geslaagd, de bevinding is opgelost.
- Afgewezen; Works as designed, wens, RFC, etc.
Het is daardoor mogelijk om te rapporteren over bevindingen per status én per prioriteit. Uiteraard is dit rijtje nog verder uit te breiden met andere statussen die relevant zijn om op te rapporteren of te sturen. Zorg er voor dat het aantal statussen beperkt en te overzien blijft.
- Traceerbaarheid
Het vinden en (laten) oplossen van bevindingen komt over het algemeen ten goede aan de kwaliteit van het systeem richting de Go Live. Met iedere opgeloste bevinding bevat het systeem immers minder fouten. Echter, de gevonden bevindingen zeggen ook in algemenere zin iets over de kwaliteit.
Onderdelen van het systeem met veel fouten – of het nu om maatwerk transacties, interfaces of rapportages gaat – zijn wellicht van een mindere kwaliteit ten opzicht van onderdelen met geen of weinig bevindingen. Wanneer veel urgente (zie ook ‘Prioriteren’) bevindingen worden gevonden op een voor de business belangrijk systeemonderdeel, is het verstandig om dit onderdeel nader onder de loep te nemen.
Om deze reden is het van belang om bevindingen te ‘koppelen’ aan het systeemonderdeel (requirement, SAP transactie, interface, rapportage, etc) waarop ze van toepassing zijn. Dit draagt bij aan het inzicht in de algehele kwaliteit, welke nodig is om richting de Go Live een positief advies te geven.
In de praktijk?
In een gemiddeld SAP project worden al snel meer dan honderd bevindingen vastgelegd. Wanneer moet worden samengewerkt met verschillende afdelingen of zelfs externe partijen, voldoen de meeste ‘lijstjes’ niet meer. Er zijn eenvoudige bevindingen beheer tools op de markt (zie bijvoorbeeld Defectsuite www.defectsuite.nl) die met name op het gebied van afhandeling via workflows en traceerbaarheid veel toevoegen ten opzichte van traditionele lijstjes in Excel, Sharepoint of andere oplossingen.