Ketentest

Het aantal ketentesten neemt toe

De verdergaande digitalisering van processen bij overheden, bedrijven en non-profit organisaties stelt steeds hogere eisen aan de informatiseringsystemen. Vandaar dat bij het ontwikkelen van zowel nieuwe systemen als het uitbreiden van bestaande koppelvlakken er meer en meer gebruikt gemaakt wordt van interfaces tussen de verschillende systemen. Deze systemen kunnen zich volledig binnen één organisatie bevinden of het kan gaan om koppelingen met andere organisaties.

Waarom is het wenselijk een ketentest uit te voeren?

Zowel bij nieuwbouw als bij aanpassing op bestaande systemen is het zaak om in de test zo “productie-like” mogelijk te testen. De beoogde werking in productie moet nagespeeld worden en is daarom een belangrijke, complexe, nauwkeurige en tijdrovende activiteit. Om te valideren of deze bedrijfsprocessen adequaat op elkaar afgestemd zijn wordt een ketentest uitgevoerd en aangezien het afbreukrisico groot is, is het dus verstandig een ketentest uit te voeren.

Het voorbereiden van de ketentest

Aangezien een ketentest een belangrijke stap is richting in productie name, is een gedegen voorbereiding van belang. Aanbevolen wordt om voor de ketentest een apart testplan te maken, zeker als de geraakte systemen van verschillende bedrijfsonderdelen of van verschillende organisaties zijn. Zodoende kan middels dit testplan niet alleen binnen het (project)team maar binnen alle organisaties duidelijk vastgelegd worden wat de exacte opdracht is. En zeker zo belangrijk op te schrijven wat er niet in scope is, dit om teleurstellingen te  voorkomen. Ook ten aanzien van het maken van goede testgevallen (zeker gelet op de verscherpte privacy eisen) is afstemming in een vroeg stadium mogelijk. Derde belangrijke aspect wat in de documentatie naar voren moet komen is een planning wie wanneer een bepaalde activiteit oppakt, met name het vooraf inregelen van firewalls, koppelvlakken en het valideren van deze koppelvlakken vóór de start van de ketentest kunnen grote vertraging op cruciale momenten voorkomen.

Het V-model en de ketentest

In de ideale situatie wordt de ketentest na de systeemtest uitgevoerd maar voor de Gebruikers Acceptatie Test, met als belangrijkste reden dat je de gebruikers een werkend systeem zonder (al te veel) handmatige ingrepen wilt laten testen, immers zij moeten in de GAT beoordelen of het nieuwe systeem de werkprocessen (inclusief de gehele keten) ondersteunt. In de praktijk komt het met name vanwege (management) druk voor dat de uitloop van de functionele testen wordt ondervangen door een deel van de hertesten in de testperiode uit te voeren. Dit zorgt voor onnodige vertraging en frustratie omdat er dan fouten uitgehaald worden die in een veel eerder stadium eruit gehaald hadden kunnen en moeten worden.

Het vergroten van de slagingskans van de ketentest

Uit bovenstaande tekst zijn diverse aanbevelingen te halen: Goede voorbereiding, tijdige voorbereiding, heldere opdrachtomschrijving, haarscherpe out-of-scope beschrijving en meer van dat soort zaken. Praegus heeft ervaring en kennis en hierbij enkele van onze tips om een ketentest tot een succes te maken:

  • Zorg voor afstemming tussen de testers van de diverse organisaties, zij zitten vaker beter in de materie en de benodigdheden voor de (infrastructuur van de) ketentest dan een projectleider;
  • Het borgen van de uitgangsdocumentatie aangezien in een keten van systemen de koppelvlak beschrijving nog wel eens wil wijzigen en het belangrijk is om 100% zeker te weten dat zowel ontvangende als versturende partij tegen dezelfde versie van het berichtenschema hebben gebouwd en getest;
  • Het vooraf te onderzoeken of de keten in delen “geknipt” kan worden, zodat je tussenresultaten kunt beoordelen. Als je de keten namelijk als black-box zou beschouwen en er is niet het verwachte eindresultaat weet je niet waar het fout gegaan is, dus is controle van de tussenstapjes essentieel om ook hier niet te veel tijd te verliezen;
  • Geef per organisatie (of afdeling) heldere exit-criteria aan zodat objectief en volledig helder bepaald kan worden of de diverse partijen klaar zijn met hun eigen (test)werkzaamheden en dus klaar zijn voor de ketentest;
  • Is in een Agile project ook noodzakelijk. Hierbij dient de ketentest ingepland te worden in één of meer sprints om te borgen dat de test de juiste prioriteit krijgt.