‘Nu business-afdelingen zelf apps bouwen, is ook het testen van die software lang niet altijd meer een it-aangelegenheid’, zegt Siegfried Huijgen, Benelux-directeur van Tricentis. ‘Quality assurance, ofwel kwaliteitsborging, door de business zelf is van cruciaal belang voor bedrijven, zeker nu meer opensource-libraries worden gebruikt. Veel klassieke test-tools zijn echter nog niet klaar voor deze veranderingen.’
‘We hebben er lang over gepraat en geschreven, maar uiteindelijk zijn veel bedrijven aan hun digitale transformatie begonnen’, vertelt Siegfried Huijgen. ‘Dit betekent dat ze nieuwe digitale kanalen opzetten om aan klanten te verkopen en klanten te ondersteunen. Om dat voor elkaar te krijgen, moeten zij ook hun interne processen automatiseren. Elk bedrijf is een softwarebedrijf geworden, want de digitalisering berust vooral op software. Dus implementeren ze pakketsoftware als SAP, ServiceNow, Salesforce en Oracle, maar schrijven ze ook heel veel op maat gemaakte software. Ieder probleem wordt opgelost met een stukje software. En low-code tools hebben het programmeren gedemocratiseerd, waardoor het voor de business zelf veel makkelijker geworden is om software te schrijven.’
De kwaliteit moet omhoog
Het grootste gevaar van deze toename in het applicatielandschap is volgens Huijgen dat vaak middelmatige software in productie gaat. ‘Hoe sneller een bedrijf digitaliseert, hoe meer zijn concurrentiepositie verbetert. Er is dus grote druk om snel software op te leveren. Traditioneel wordt software pas getest net voor ze in productie gaat. Dan dreigt testen een bottleneck te worden en wordt daar soms te weinig tijd voor genomen. Tegelijkertijd kunnen bedrijven zich niet veroorloven om de klant een slechte customer experience te geven. Daarom moet de kwaliteit van software omhoog.’
Eerder testen is hierbij een belangrijk hulpmiddel, meent Huijgen. ‘Daarom hoor je nu steeds vaker over ‘shift-left’. Tegelijk moet het testen geautomatiseerd worden, en niet manueel gebeuren. Een klant van ons, een verzekeringsmaatschappij, vertelde onlangs dat ze vijf extra testers zouden moeten aannemen voor het handmatig testen van één enkel softwarepakket. Door het testen te automatiseren – in dit geval met Tricentis Tosca – was dat niet nodig. Als elk bedrijf een softwarebedrijf geworden is, dan is het nu de hoogste tijd dat ze ook allemaal een kwaliteitsborgingsbedrijf worden.’
Testen door agile teams
De vraag is of de explosie aan applicaties die we nu zien zal blijven voortduren. Huijgen: ‘We gaan onvermijdelijk naar een consolidatie van het aantal programma’s die binnen een bedrijf draaien. Veel toepassingen overlappen elkaar, of worden na verloop van tijd minder gebruikt. Veel bedrijven hebben nu én Zoom én Microsoft Teams én Slack. Nu bedrijven naar de kosten kijken, kan het niet anders dan dat er gerationaliseerd zal worden. Dat betekent wellicht een grote migratie van data en software. Ook daar zal quality assurance de komende tijd een grote rol spelen.’
Softwareontwikkeling is de afgelopen jaren ingrijpend veranderd. Bedrijven werken agile en hergebruiken al eerder geschreven code of integreren code die zij extern en bij bijvoorbeeld opensource-projecten hebben ontdekt. Dat heeft een stevige impact op het testproces, stelt Huijgen: ‘We zijn inmiddels ver weg van de traditionele waterval-methode, en dat is een goede zaak. Kleine teams werken in korte sprints en leveren snel functionaliteit op. Dit betekent dat testen al in die agile teams moet gebeuren. Ook dat past in de shift-left-beweging.’
Hergebruik van code is een risico
‘Het hergebruiken van stukken code biedt zonder twijfel voordelen om nog sneller nieuwe toepassingen naar de markt te brengen, maar kent ook risico’s. Wat is de kwaliteit van die te hergebruiken code eigenlijk? Dus ook hier is quality assurance pure noodzaak. Niet alleen moeten de regels hergebruikte code goed getest worden, ze moeten ook goed samenwerken met de rest van de applicatie – en het hele applicatielandschap. Veel software maakt ook gebruik van opensourcesoftware-libraries, externe applicaties en externe data. Dat maakt het proces niet makkelijker. Ik heb eerder bij VMware gewerkt, waar virtualisatie natuurlijk hoog op de agenda staat. Ook in quality assurance speelt virtualisatie een grote rol, met name door de samenwerking tussen applicaties te simuleren en die al te testen nog voor die applicaties ook echt met elkaar verbonden zijn.’
Security is voor veel bedrijven een voortdurend punt van aandacht. Quality assurance kan hierbij een belangrijke rol spelen. ‘Niet of slecht geteste software zal meer kwetsbaarheden bevatten dan applicaties die wel goed getest zijn. Ook dat zit in die shift-left-beweging: net zoals testen niet meer aan het einde mag komen van de application development lifecycle, mag ook security niet iets zijn wat je pas op het eind aan je toepassing ‘plakt’. Dit betekent dat developers, testingteams en securityteams veel nauwer moeten samenwerken.’
Met AI bepalen wat als eerste getest moet worden
De vraag is natuurlijk in hoeverre AI hierbij kan helpen door het testproces te versnellen, maar ook kwalitatief te verbeteren. Huijgen is er van overtuigd dat AI een hoofdrol in testprocessen gaat spelen. ‘AI zal de release cycle versnellen door meer intelligentie in het proces te brengen. Het kan testcases met elkaar in verband brengen, waardoor de effectiviteit van het testproces toeneemt. Ai zorgt ook voor ‘self-healing’. Het detecteert dan onverwachte veranderingen in de software en houdt daar rekening mee, in plaats van de testcase te laten mislukken. Bij het testen van microservices zal ai bovendien de latency evalueren en de tester alleen waarschuwen wanneer acceptabele wachttijden zijn overschreden. Met een tool als AI Vision kun je ook nagaan aan welke delen van de software je prioriteit moet geven bij het testen. Daardoor kan je nauwkeuriger testen, want je test dan niet die stukken code waaraan toch niets veranderd is.’
Er is natuurlijk altijd de discussie over de vraag of ai uiteindelijk niet tot het verlies van banen voor testers zal leiden. Datzelfde geldt in zekere zin ook voor de test automation die Tricentis biedt. ‘Automatisch testen maakt het mogelijk dat ontwikkelaars en testers zich kunnen concentreren op zaken die meer waarde bieden voor de gebruiker, bijvoorbeeld door de customer experience te verbeteren. Bovendien ken ik niemand die zijn of haar hele carrière enkel en alleen maar handmatig wil testen. Bij gebruik van AI maak je mensen efficiënter en geef je hen de kans zich te focussen op taken met een groter strategisch belang. Er is nog steeds een tekort aan gekwalificeerd it-personeel, dus hoe meer je kunt automatiseren en hoe meer intelligentie je toevoegt, des te minder moet je meegaan in de ‘war for talent’.’
Voorsprong opbouwen
2023 gaat een interessant jaar worden, meent Huijgen. We leven in een economisch onzekere wereld, waarbij het volgens sommige analisten nog maar de vraag is of bedrijven niet op de rem gaan staan wanneer de it-afdeling nieuwe tools wil aanschaffen. Huijgen is daar niet zo bang voor. ‘Investeren in it is als het kopen van aandelen: je investeert wanneer het slecht gaat. Zo bouw je een voorsprong op voor het moment dat de markt weer aantrekt. Investeren in quality assurance is volgens mij toch vooral investeren in de toekomst.’
“Investeren in it is als het kopen van aandelen: je investeert wanneer het slecht gaat”
“En low-code tools hebben het programmeren gedemocratiseerd, waardoor het voor de business zelf veel makkelijker geworden is om software te schrijven.”
en dan die AI die bepaalt wat als eerste getest gaat worden..
stapt die Siegfried wel eens rond in een echt bedrijf ?
Ach Dino, je laat gewoon je low code applicaties testen door chatGPT en alles komt goed