Ok

By continuing your visit to this site, you accept the use of cookies. These ensure the smooth running of our services. Learn more.

30/01/2008

Waar stopt verificatie

Gisteravond woonde ik een voordacht bij van het KVIV, in het Ingenieurshuis in Antwerpen.
Een sessie door Willy Druyts, over end-to-end testing.

Zeker een boeiend onderwerp, en zoals elk goed onderwerp zette het me aan het denken.

Uiteindelijk moet je beseffen dat, hoe goed je testproces ook is, je nog steeds met een geaccidenteerd model werkt, waarvan je verschillende elementen (zo niet de meeste) niet onder controle hebt of kan hebben.

Wie in de jeugdbeweging heeft gezeten kent waarschijnlijk wel het doorzeg-spelletje: je maakt een kring. Persoon A zegt een zin of paragraaf tegen persoon B, die het vervolgens doorzegt aan persoon C, enz.
Per extra stap verdwijnt een deel van de context en acuraatheid, zelfs exponentieel.

Binnen software-ontwikkeling merken we hetzelfde.

  1. De klant heeft een behoefte, of onze verkoopsafdeling merkt een behoefte bij de klant.
  2. We trachten die behoefte te vertalen naar functionele specificaties.
  3. We gieten deze specificaties in use cases
  4. De use cases worden omgezet naar technische specificaties
  5. We coderen de technische specificaties
  6. We testen op verschillende niveau's: unit (component), unit-integratie, systeem, systeem-intergratie, ... Het hele V-model dus.
  7. Er volgt (in een ideale situatie) ook nog een acceptatietest.

Wat we hier zin zijn 7 niveau's van abstractie, waarbij telkens informatie wordt geabstraheerd en de context vertroebeld.
Wat heeft het eindproduct dan nog gemeen met de oorspronkelijke vraag of behoefte? De praktijk leert het ons: bitter weinig!

Dit is dan nog een ideaal voorbeeld. Vaak zijn het de functionele testers of functionele analisten die instaan voor de acceptatietesten, zonder enig besef van de wens van de klant, afgaand op het gevoel.

Een derde probleem: zelfs na de acceptatietest, wanneer het stukje software gefinaliseerd is, zijn er nog tal van processen die inspelen op de kwaliteitsbeleving van de klant: de handleiding, de manier van transport, de installatie, ...

We testen inderdaad goed, maar wie neemt er eens de handleiding bij, en test de handleiding? Niemand, omdat de handleiding pas wordt geschreven na het testen (en vaak na validatie/acceptatie)

De commentaren zijn gesloten.