Software testen heeft de laatste jaren een stormachtige ontwikkeling doorgemaakt. Zo is de volledig handmatige wijze van werken van voor de eeuwwisseling vervangen voor een steeds meer geïndustrialiseerde aanpak. Model Based Testen (MBT) heeft een belangrijke positie in deze ontwikkeling. Inmiddels is MBT het gesprek van de dag onder testprofessionals. En organisaties vragen steeds meer om gecertificeerde Model Based Testers. Hoe anders is Model Based Testen werkelijk? Doet de gecertificeerde MBT'er nu wezenlijk iets anders dan traditionele testers?
Laten we eerst eens kijken wat de essentie van Model Based Testen (MBT) is. Het centrale thema is natuurlijk het woord ‘Model’. Googlen op ‘model’ levert je uren leeswerk op. ‘Vereenvoudigde weergave van de werkelijkheid’ is wel de grootste gemene deler. In het kader van MBT betekent dat het model eenduidig en formeel is. Eenduidig houdt in dat het model geautomatiseerd verwerkt kan worden. En formeel geeft aan dat er regels zijn die aan de basis van het model staan. Daarmee kunnen verschillende personen vanuit één uitgangspunt tot hetzelfde model komen.
Stroomdiagrammen en pseudocode zijn voorbeelden van veel gebruikte modellen. Een model hoeft dus niet per definitie grafisch te zijn. Uiteindelijk is de essentie van Model Based Testen uit modellen testgevallen geautomatiseerd afleiden en uitvoeren.
Revolutie?
Met dit gegeven in ons achterhoofd vraag ik me af of Model Based Testen een revolutie is. De geschiedenis van deze manier van werken gaat terug naar de jaren negentig van de vorige eeuw. Ook toen al maakte de tester een model van het te testen systeem. Misschien niet altijd uitgeschreven of uitgetekend. Maar op zijn minst mentaal in zijn of haar hoofd. In vergelijking met toen zijn er de laatste jaren wel opvallende verschillen. Zo is de ondersteuning met de inzet van tools vele malen beter dan afgelopen decennia. Met de opkomst van Domain Specific Languages is ook de focus verbreed. We hebben nu de beschikking over tooling die bestaande requirements modellen als uitgangspunt nemen in plaats van (een set van) specifieke testmodellen.
Daarnaast wordt het testen uiteraard ook beïnvloed door andere trends en ontwikkeling in ons it-vak. De roep om het sneller in de markt zetten van nieuwe producten (time-to-market verkorten) en de inzet van agile development hebben grote invloed op de rol van de Model Based Tester. Hij bemoeit zich nu meer dan ooit met het opstellen van de ontwerpdocumentatie. Niet langer beperkt de tester zich tot het constateren van (gebrek aan) kwaliteit, roepend dat je ‘kwaliteit er niet aan het einde in kunt testen’. De testprofessional beschouwt zichzelf als onderdeel van het team dat een oplossing voor de klant levert. Hij of zij is medeverantwoordelijk voor de uiteindelijk opgeleverde kwaliteit. Daarmee verschuift de positie van de MBT’er in het ict-speelveld van laatste man naar een prominente veldspeler. Als laatste man mag je alle fouten van de rest van het team opvangen. De tester schuift nu op naar de rol van verdedigende middenvelder of zelfs naar die van een spelverdeler!
Dit actief meedoen als spelverdelende deelnemer van het ontwikkelteam is wellicht de echte grote revolutie in testland. Uiteraard maakt de meer geïndustrialiseerde aanpak van Model Based Testen deel uit van deze veranderingen. Industrialisatie van testen zonder Model Based Testen is vandaag de dag moeilijk voor te stellen. Volgens mij moeten we dus concluderen dat het één niet zonder het ander kan. Kortom, actief meedoen zou niet mogelijk zijn geweest zonder de revolutionaire mogelijkheden van Model Based Testen.
Ben Visser, senior consultant testen en kwaliteitszorg bij Sogeti
Testingconferentie
Meer weten over Model Based Testen (MBT)? Kom naar de ‘tmapdag’, de grootste testingconferentie van ons land op 1 oktober 2013 in Bussum.