Quality assurance (QA) is de discipline die ervoor zorgt dat software betrouwbaar doet wat hij hoort te doen, voordat echte gebruikers ervan afhankelijk zijn. Het is breder dan alleen door een scherm klikken op zoek naar bugs. QA gaat over hoe het werk bij elke stap wordt gecontroleerd, van de eisen tot de uiteindelijke release.
Een mooie vergelijking is een restaurantkeuken waar de chef elk gerecht proeft voordat het de keuken uit gaat. Het koken is de ontwikkeling; het proeven, de check op de presentatie en de receptstandaarden zijn QA. Zonder die controle komt het eten ook op tafel, maar dan hoor je over de te zoute saus van de klant in plaats van van de chef. In software betekent dat: een helder testplan schrijven, dat omzetten in concrete test cases, en checks opnieuw draaien zodat een fix op de ene plek niet stilletjes iets anders breekt.
QA is geen los moment aan het eind. Het loopt mee met de bouw, en juist daarom kost een bug die vroeg wordt gevangen zoveel minder dan eentje die een betalende klant maandagochtend om 9 uur ontdekt.
In de praktijk werkt een mix het best. Geautomatiseerde tests bewaken de saaie, herhaalbare paden, zoals inloggen of afrekenen, en draaien bij elke codewijziging zodat een regressie binnen minuten opvalt. Mensen beoordelen daarna wat een script niet kan: voelt deze flow goed, is de foutmelding duidelijk, hebben we echt gebouwd wat de klant vroeg. De grootste valkuil is een groene testsuite zien als bewijs van kwaliteit. Tests checken alleen wat iemand bedacht heeft op te schrijven, dus een perfect slagende build kan nog steeds een functie opleveren die niemand echt wilde.
Bij TopDevs zien we QA als onderdeel van hoe we bouwen, niet als een vinkje aan het eind, zodat de software die je lanceert zich gedraagt zoals in de demo.