You are on page 1of 3

April 2010

Hoe Model Based Testen het testvak gaat veranderen


Deel 2: Waar staat Model Based Testen vandaag Peter Kalmijn, Rijswijk

MBT vandaag: de stand van zaken Traditioneel onafhankelijke modellen


Bij de traditionele en op waterral methodieken
In deel 1 van de serie hebben wij gekeken naar de gebaseerde aanpak gaat de traditionele
positie van Model Based Testing (MBT) binnen de testvoorbereiding uit van de eerder opgestelde
huidige ontwikkelingen rondom moderne requirements (requirements based testing). De
applicatieontwikkeling. requirements liggen dan ook vast voor het verdere
verloop van het project en bieden een veilige basis om
In dit deel van de serie zullen wij ingaan op de huidige dit te doen. Men ziet ook een sterke functionele
ontwikkelingen en stand van MBT vandaag. Hierbij scheiding tussen ontwikkelen en testen, waarbij testen
zullen wij ook kijken naar verschillende initiatieven om de rol van poortwachter vervult zodat geen software met
MBT verder te ontwikkelen en de resultaten, die zij tot fouten of van mindere kwaliteit wordt opgeleverd. Dit
nu toe hebben bereikt. impliceert onafhankelijkheid en een onafhankelijke
Voordat wij dieper ingaan op Model Based Testen als meningsvorming. Voor de hand ligt dan ook dat deze
zodanig tippen wij een fundamentele discussie aan, die benadering niet wil uitgaan van de implementatie
rondom MBT speelt. Deze discussie komt voort uit de specificaties, die in het design model van de
veel diepere vraag hoe onafhankelijk of afhankelijk MBT implementatie zijn vastgelegd, maar een eigen
mag zijn van software ontwikkeling. Wij komen daarmee testmodel gaat opstellen op basis van de requirements,
op het terrein waar ook de discussie wordt gevoerd over die zijn afgesproken met de klant. Hierdoor komen
de onafhankelijke beoordeling van de productkwaliteit, interpretatieverschillen, die tot een foute uitwerking in
zoals die van ouds door de meer traditionele het design model leiden aan het licht.
ontwikkelmethoden (b.v. SDM) en traditionele Een groot voordeel van een onafhankelijk model is juist
testmethoden (b.v. Tmap en TestFrame) wordt geleerd. de onafhankelijkheid van de ontwikkeling van het
Daar tegen staat de Agile benadering en methodieken product. Een groot nadeel is de dubbele onderhoudslast
(b.v. SCRUM, Spiral, Christal en XP), waarbij testen als bij wijzigende requirements. Zo moet het testmodel na
geïntegreerd element van software ontwikkeling wordt elke release van bijgestelde specificaties opnieuw
beschouwd en de beoordeling van de productkwaliteit handmatig worden gescreend en bijgesteld. Dit is een
een gezamenlijke teamverantwoordelijkheid is. foutgevoelige activiteit, al te snel wordt een aanpassing
Deze twee fundamenteel verschillende benaderingen over het hoofd gezien en niet verwerkt in het testmodel.
hebben ook hun invloed op de modellering activiteiten
en op de aard van de modellen zelf. De toekomst zal
uitwijzen of er een keuze voor een van de twee De benadering met onafhankelijke modellen komt het
benaderingsrichtingen zal ontstaan, dan wel beide beste tot zijn recht in situaties, waarbij de onafhankelijke
benaderingsrichtingen voor specifieke project situaties product kwaliteit beoordeling belangrijk is en de
en/of product typen hun eigen bestaansecht hebben. requirements redelijk stabiel zijn en niet al te vaak
Ook sluit ik niet uit dat de toekomst ons hybride wijzigen.
benaderingen of zelfs nog heel andere benaderingen
laat zien. Deze zullen hoogst waarschijnlijk ontstaan
door het inzicht dat op verschillende niveaus (van het V-
model) andere behoeften spelen. Dit kan tot een
gedifferentieerde strategie en aanpak leiden.
April 2010

Hoe Model Based Testen het testvak gaat veranderen


Deel 2: Waar staat Model Based Testen vandaag Peter Kalmijn, Rijswijk

Geintegreerd model Genereren of programmeren


Bij een Agile aanpak staat teamwork voorop. Dat Wordt met behulp van het model de applicatie
betekend dat naast de testrol ook alle andere rollen in gegenereerd, dan is het natuurlijk zinloos om te
het team mede verantwoordelijk zijn voor de verifiëren dat de applicatie juist is gegenereerd. Immers
beoordeling van de productkwaliteit. Het ligt dan ook de applicatie generator is een commercieel product en
voor de hand dat testen een volledig geïntegreerde daarvan mag worden uitgegaan dat het de
aangelegenheid is. Stromingen als test driven gespecificeerde applicatie correct genereert of
development [10] (TDD) stellen zelfs dat testen een geinstantieerd. De vraag verschuift van ‘wordt de
leidende discipline is. Een onafhankelijk model zou in applicatie juist gegenereerd’ naar ‘wordt de juiste
deze situaties enorm remmend werken doordat applicatie gegenereerd’. En dat heeft zeker invloed op
veranderingen zowel in het testmodel als ook in het de manier waarop MBT moet ingezet worden.
designmodel – en synchroon - moeten worden Bij offshoring zullen door MBT beide de vragen
doorgevoerd. Doordat nagenoeg alle teamleden geacht beantwoord moeten worden: ‘is de applicatie juist
worden om aan het design model bij te dragen zou dit geprogrammeerd’ en ook de vraag ‘is de juiste
ook voor het testmodel gelden. Dit pleit dan ook om applicatie geprogrammeerd’? Dit betekend natuurlijk
efficiëntie en effectiviteit redenen voor een geïntegreerd ook meer testwerk dan nodig zou zijn bij code generatie
ontwikkel- en testmodel. Doordat een werkelijk Agile of instancieren van applicaties.
projectteam doorgaans uit ervaren en gedisciplineerde
professionals bestaat is dit geen bezwaar. Waar staan de spelers?
Een groot voordeel van het geïntegreerde model zijn de
collaboratieve aspecten en de invloed, die de Model Based Testing is op dit moment bij vele
testtoevoegingen in het model hebben op het vroegtijdig ondernemingen een hot thema. Niet onterecht gezien de
ontdekken van afwijkingen en interpretatieverschillen. geclaimde voordelen en reeds gerealiseerde resultaten.
Immers het verband tussen het design en de manier Zo wordt door Atos Origin een hoge besparing op
waarop het getest gaat worden is impliciet gegeven. Het testkosten genoemd van 50 tot 75% en een besparing
eerder in deel 1 genoemde UML 2.0 Testing Profile[8] op projecten van meer dan 15% door meer in -een-
past. keer-goed bouwen. Dat is zeer interessant in het licht
van de huidige financiële crisis, waarin alle bedrijven
dan ook goed in de methodische ondersteuning van goed naar hun kosten moeten kijken. Wellicht geldt dit
deze benadering. nog niet voor elk project en in elke situatie, maar de
Een nadeel is dat de functiescheiding tussen indicaties zijn zeer veelbelovend.
ontwikkelen en testen niet volledig is. Maar dat is ook In dit gedeelte maken wij een ronde om te zien waar de
een natuurlijke zaak bij Agile aangevlogen projecten. ontwikkelingen plaats vinden en wie in Nederland op
Wat wordt getest? welke wijze actief aan het onderwerp bijdragen.
Het is belangrijk te realiseren wat het doel is van een
bepaalde vorm van MBT. De zin van het testmodel is
daarbij zowel gelegen in de validatie en verificatie van
requirements, als ook in de mogelijkheid om snel en
efficiënt test cases te kunnen genereren voor bepaalde
testdoelen.
April 2010

Hoe Model Based Testen het testvak gaat veranderen


Deel 2: Waar staat Model Based Testen vandaag Peter Kalmijn, Rijswijk

Case studie
In samenwerking met Smartesting®, Borland en HP
heeft Atos Origin een Case studie gedaan. Hierover is
door Elise Greveraars een whitepaper[9] gepubliceerd.
De case studie was gericht op de testniveaus ‘system
testing’ en Íntegration testing’. Ook is er uitgegaan van
traditioneel onafhankelijke modellen. Een apart design
model en een afzonderlijk testmodel. In de case studie is
gebleken dat de totale ontwikkeltijd flink wordt
teruggebracht omdat door MBT veel fouten in een vroeg
stadium werden gevonden. Ook bleek MBT op dit
niveau betrouwbaar en tijdbesparend, mede doordat
menselijke fouten werden uitgesloten bij het maken van
test cases en tevens een veel groter aantal testcases in
kortere tijd gegenereerd kon worden. Deze testcases In het volgende en laatste deel zullen wij onze
konden tevens met HP Quick Test Pro automatisch ontdekkingsreis rondom MBT voortzetten met een blik
worden uitgevoerd. Ook dit leverde aanzienlijke tijdwinst op de toekomst en de invloed, die MBT zal uitoefenen
op en droeg bij aan de algemene kwaliteitsstijging op de bedrijven en de mensen, die met MBT gaan
omdat een veel hogere test dekkingsgraad bereikt kon werken.
worden met inzet van de zelfde resources. De winst
neemt verder toe naar mate regressietesten deel
uitmaakt van de teststrategie.
De eerste concrete resultaten uit de POC’s leverden de
volgende resultaten op:
-Er is een inwerktijd nodig van 2 -8 weken
-MBT geeft een goede en bewijsbare testdekking
-Het levert een bruikbaar simulatiemodel op zodat
validatie door simulatie mogelijk is
-MBT bleek geschikt voor een scala aan systemen (SOA,
workflow, scherm applicatie, mainframe, ..)
-Er kon een hoge besparingen op testkosten ten
opzichte van manueel testen worden bereikt (50 tot
75%)
-Er bleek goede detectie van ontwerp- en requirement
fouten (verificatie tijdens modellering) mogelijk
-De POC leverde een goede indicatie dat besparing bij
projecten op meer dan 15% bereikt kan worden door in-
een-keer-goed bouwen.
-MBT bleek goed toepasbaar bij verschillende ontwikkel
methoden

You might also like