In het digitale tijdperk gaat de aandacht vooral uit naar transformatie en nieuwe businessmodellen. En dat is zeker terecht. Maar er zijn meer onderwerpen die extra aandacht verdienen. ‘Digital’ vraagt bijvoorbeeld ook om snelle en flexibele ontwikkeling van software. Ook daar geven we de nodige aandacht aan met bijvoorbeeld methodes zoals Scrum en Agile. Maar waarom wordt er nog steeds volgens oude ideeën getest?
Laten we niet vergeten dat de customer experience de ultieme uiting is van de kwaliteit van onze dienstverlening. Fouten in software en niet goed werkende systemen berokkenen dus ernstige schade. ‘FF-testen’ kan anno nu dan ook echt niet meer. Waarom heeft kwaliteitsborging van onze systemen en software door middel van professioneel testen de evolutieboot gemist?
Uit onderzoek blijkt dat vandaag de dag tijdens de pretest van systemen nog niet eens 10 procent van de fouten gevonden wordt. Pas tijdens de systeemtest, de integratietest en de regressietest komt 70 procent van de fouten aan het licht. Dat is mooi, zou je zeggen. Maar het betekent wel dat 20 procent (!) van de fouten pas gevonden wordt tijdens de acceptatietest. De gevolgen daarvan zijn naast een veelal geirriteerde business, klanten die langer op een goed werkend systeem moet wachten en reparatiewerkzaamheden die tijd, geld en inspanning kosten. Blijkbaar heeft men daar mee leren leven. De schokkende waarheid is namelijk dat de meeste bedrijven niet eens voldoen aan de vereisten van testen in een traditionele ontwikkeling, laat staan aan die van het digitale tijdperk. En de nieuwe Agile methoden maken het nog complexer om de kwaliteit van digitale producten te waarborgen.
Geen oog voor samenhang
Bij veel ondernemingen wordt het testen van systemen er meestal ‘even bij gedaan’. Er zijn geen gespecialiseerde testers in dienst, er bestaat geen speciale testomgeving en als er getest wordt is de focus helemaal gericht op dat ene individuele project, zonder oog te hebben voor enige samenhang. Testen wordt veelal handmatig gedaan, waarbij geen sprake is van beleid of standaarden. De gevolgen van deze decentrale aanpak van testen zijn dat het veel meer geld en inspanning kost voor de hele organisatie. Kortom: testen staat bij veel organisaties echt nog in de kinderschoenen. Het besef moet postvatten dat professioneel testen essentieel is om de flexibiliteit van de business te borgen. En dat de traditionele methoden van projectmanagement en kwaliteitsbewaking niet langer toereikend zijn. Maar hoe moeten we dat dan aanpakken?
In elk geval door de introductie van een bedrijfsbrede unit die verantwoordelijk is voor alle elementen van testen. Die werkt aan de hand van standaarden voor aanpak, ontwerp, en het uitvoeren van de testen, tot en met documentatie en voortdurend onderhoud van een database met testresultaten en ‘known flaws’. Zo’n centraal testteam is het vaste aanspreekpunt voor iedereen binnen de onderneming voor alle facetten van testen, noem het een testing center of excellence. Op dit moment heeft ongeveer een kwart van de bedrijven zo’n centraal team operationeel, vaak gedreven door het besef dat de voortgaande transformatie er toe noopt om ook hun quality assurance naar een hoger niveau te brengen.
Inhuren is makkelijker
Zoals op dit moment eigenlijk bij elke businessbeslissing, is ook de verbetering van de kwaliteit een make-or-buy besluit. Waarom zou je zelf investeren in het opbouwen van een gespecialiseerd team met een gespecialiseerde omgeving? Het is veel gemakkelijker die in te huren als het nodig is, voor gedeeltelijke of gehele testtrajecten. Een externe partner heeft de nodige specialisten in huis en kan zorgen voor geautomatiseerde tests, wat de gehele test life cycle versnelt en inhoudelijk verbetert. Een test lifecycle automation framework (tla) is dan ook het antwoord op alle uitdagingen rond quality assurance. Een tla is een testtool gebaseerd op modellen, feitelijk parsing software die de onderliggende structuur van een servicemodel kan begrijpen. Het werken met testscenario’s scheelt een hoop tijd en geld: veel testen zijn op onderdelen hetzelfde en hoeven niet telkens opnieuw in zijn geheel te worden uitgevoerd. Bovendien genereert het systeem automatiseringsscripts voor de uitvoering van testen. Geautomatiseerd testen is veel veiliger dan handwerk: er komen minder fouten voor, het gaat veel sneller en het werk is lichter.
Met een tla loopt kwaliteitsborging weer in de pas met de ontwikkelingen, met the digital age. Zodat elk klantcontact uit kan groeien tot een ‘magic moment’.
Timo Fine, directeur Benelux bij Wipro
Definieer kwaliteit.
Gezien de uitgebreide analyses achteraf die hier steeds verschijnen leg ik hier dus even de nadruk op omdat er wat verschillende benaderingen zijn. Zo heb je als eerste de fit-for-use welke onvolkomenheden niet als showstopper beschouwd terwijl dit bij het voldoen aan de specificaties vaak wel het geval is. En zo zijn er nog wat invullingen van het begrip kwaliteit waarbij mate van voldoening de meest risicovolle is, hier komen we in de verwachtingen.
Aangaande verwachtingen is constatering dat er steeds vaker op testen beknibbeld wordt een terechte, met name als het om de ‘off-the-shelf’ oplossingen gaat die uiteindelijk met (agile) maatwerk geïntegreerd moeten worden. Devops is wat dat betreft dus gewoon het voortschrijdende inzicht aangaande QA, ben benieuwd in hoeverre TLA hiermee eigenlijk een overlap heeft.