Bits&Chips

Model- en risicogebaseerd testen voeren boventoon op Nederlandse Testdag

Auteur: Mariëlle Stoelinga
20 december 2011 

Met testen valt veel winst te behalen, maar in de praktijk is het vaak een kostbaar, lastig en ondergewaardeerd proces. Dit geldt des te meer voor snel veranderende, dynamisch configureerbare software. Evolvability was dan ook het onderwerp van de zeventiende Nederlandse Testdag. Mariëlle Stoelinga beschrijft de hoogtepunten die onlangs de revue passeerden tijdens dit congres op de Universiteit Twente.

Modelgebaseerd testen (MBT) blijft hot. Juist in systemen met steeds veranderende requirements betaalt de investering in het opstellen van een systeemmodel zich snel uit; testsuites genereren we immers automatisch uit het model, waardoor we flink besparen op testonderhoud. Deze visie zette Kim Larsen van de Universiteit Aalborg en het Center for Embedded Software Systems, eveneens in Aalborg, neer tijdens zijn keynote op de zeventiende Nederlandse Testdag. De Universiteit Twente was eind november gastheer voor dit landelijke academisch-industriële congres op het gebied van testen van (embedded) software.

Larsen brak een lans om ook de voor embedded systemen zo belangrijke kwantitatieve systeemeisen modelgebaseerd te testen. Juist voor complexe aspecten zoals realtime gedrag, geheugengebruik en bandbreedte biedt MBT door zijn grondigheid veel voordelen. State-of-the-art is hier het testen van performancegerelateerde eisen, zoals systeembelasting, throughput en jitter. Dit soort aspecten zijn het best te modelleren in een kanstheoretisch kader. Larsen en zijn team hebben hiervoor een toolset ontwikkeld die in hoog tempo testcases afleidt en uitvoert op basis van de kansmodellen en daarmee automatische performancetesting vergemakkelijkt.

Belangrijkste obstakel bij de inzet van MBT is het opstellen van de benodigde modellen; dit vereist inspanning en expertise. Onderzoeker Faranak Heidarian van de Radboud Universiteit Nijmegen presenteerde een methode om de inspanning te verlagen door de modellen automatisch te genereren uit regressietests. Gebruikte techniek is machine learning, een innovatieve methode uit de kunstmatige intelligentie om patronen te voorspellen. Machine learning wordt veel gebruikt in de spraakherkenning, maar kan bijvoorbeeld ook een nieuw boek suggereren op basis van een reeks eerder gekochte titels. Aan de hand van experimenten met het biometrische paspoort liet Heidarian zien dat de methode ook geschikte modellen genereert voor MBT. Een beperkt aantal geslaagde en falende testcases vormt de basis voor een geschikt model voor het totale systeemgedrag.

Zeer goed ontvangen werd het verhaal van Laquso-onderzoeker Joost Gabriels over Tracevis, een tool om softwareartifacten te visualiseren. Gabriels liet zien hoe dit hulpmiddel is in te zetten om requirements, design, code en testcases aan elkaar te relateren: met een muisklik laat Tracevis zien welke requirements, designcomponenten en coderegels corresponderen met een testcase. Dit vergemakkelijkt het opsporen van hiaten in de testsuite: requirements die door geen enkele testcase - of zelfs code – worden gedekt, zijn in een oogopslag te ontdekken. Kleurcoderingen markeren meer geavanceerde relaties tussen de softwareartifacten. Risico‘s, prioriteiten en hiërarchieën binnen de artifacten geven meer inzicht in de structuur van de software.

Verfrissend

Jeanne Hofmans van Improve Quality Services stelde op het congres dat risicogebaseerd testen (RBT) nog steeds de belangrijkste focus zou moeten zijn binnen het testproces, maar dat de aanpak in de praktijk te weinig wordt gebruikt. Voor testers is het heel natuurlijk om in termen van risico‘s te denken, maar dit moet wel expliciet, en vanaf de start, de aandacht hebben van het projectmanagement, en dus worden ingebed gedurende het gehele ontwikkeltraject. Kernvraag bij RBT is wat we beter moeten testen: risico‘s met een lage kans maar een hoge impact of risico‘s met een hoge kans maar een lage impact. Beide leveren immers een gemiddeld risiconiveau. Hofmans pleitte voor het eerste: middels testen moeten we de echt ernstige fouten (hoge impact) zo snel mogelijk ontdekken; fouten met een hoge kans maar een geringe impact manifesteren zich toch wel.

Hoe de risico‘s te kwantificeren, was het onderwerp dat Ed Brandt van Refis aansneed in zijn presentatie over Topaas. Deze gevalideerde methode schat de faalkansen van softwarecomponenten in en neemt daarbij zowel de requirements als de proces-, product-, test- en operationele risico‘s mee. Gezamenlijk bepalen deze aspecten de faalkans van de software. Topaas is ontwikkeld met het oog op besturingssoftware voor veiligheidskritieke systemen, maar heeft ook veel potentie voor andere toepassingen.

Tijdens de zeventiende Nederlandse Testdag viel op dat de discussie rond het testen van evolvable systemen een verfrissende back to basics teweegbracht, met een focus op de state of the art in model- en risicogebaseerd testen en het hanteren van goede abstracties. Hypes als Agile, Scrum, rapid software testing en testgedreven ontwikkeling kwamen minder voor het voetlicht – ondanks dat technieken als MBT en RBT zich uitstekend lenen voor inpassing in Agile en Scrum. Hoe? Dat lijkt mij een goed thema voor de volgende Nederlandse Testdag.

Mariëlle Stoelinga is werkzaam aan de Universiteit Twente als universitair hoofddocent op het gebied van risicomanagement voor ICT. Zij was medeorganisator van de zeventiende Nederlandse Testdag. Het programmaboekje, de presentaties en andere informatie over het congres zijn te vinden op www.testdag.nl.

Abonneer direct op onze nieuwsbrief

abonneren

Time management in innovation

2 oktober - 1 november

Eindhoven

Advanced motion control

5 november - 11 november

Eindhoven