AI kan testgevallen voorstellen, maar ook daarin kunnen situaties ontbreken. Laat daarom beoordelen of de tests de afgesproken werking daadwerkelijk controleren. Een geslaagde test zegt alleen iets over wat er is getest.
Neem bijvoorbeeld een kortingsfunctie. De berekening kan correct zijn, terwijl de korting verkeerd op de factuur terechtkomt. Test daarom de volledige verwerking: van invoer en berekening tot opslag, weergave en eventuele correctie.
Maak daarbij onderscheid tussen ontwikkelaarstests en QA. De ontwikkelaar controleert de technische werking van de wijziging. Een afzonderlijke QA-beoordeling toetst het resultaat aan de eisen en onderzoekt afwijkende situaties.
Betrek ook de toekomstige gebruikers bij de acceptatie. Kunnen zij hun werkzaamheden uitvoeren? Zijn meldingen begrijpelijk? En kunnen zij een fout herstellen? Die controle maakt zichtbaar of de functie in de praktijk bruikbaar is.
oud wijzigingen beheersbaar
Beoordeel de gevolgen voor bestaande software.
Een wijziging kan op zichzelf goed werken en toch invloed hebben op andere onderdelen. Laat daarom bij iedere uitbreiding beoordelen welke schermen, koppelingen en processen geraakt worden.
Denk aan een nieuw veld in een orderformulier. Wordt dat veld ook verwerkt in rapportages, exports en gekoppelde systemen? En wat gebeurt er met bestaande orders waarin die informatie ontbreekt?
Controleer daarnaast of de code begrijpelijk is opgebouwd en aansluit op de bestaande technische inrichting. Dat helpt ontwikkelaars om later wijzigingen door te voeren en fouten te onderzoeken.
Test aanpassingen eerst in een aparte omgeving en leg vast hoe de productieversie wordt bijgewerkt. Zorg ook voor een passende herstelmogelijkheid als een release problemen veroorzaakt. Zo krijgt sneller ontwikkelen een vervolg in zorgvuldig testen, opleveren en beheren.