Hoofdstuk 1: Kennis maken met Testen

afbeelding auteur

Mattijs Kemmink

In dit hoofdstuk maak je kennis met testen en kwaliteit. We kijken naar de definties en zien hoe deze begrippen zich verhouden tot elkaar. Daarnaast gaan we het hebben over kwaliteitsattributen en bespreken wat dit zijn. Ook staan we stil bij onze afhankelijkheid van software.

Wat is Testen eigenlijk?

Voor testen kun je veel verschillende definities geven. De definitie die we hanteren in deze syllabus is de volgende: ‘Testen is een proces dat inzicht geeft in- en adviseert over de kwaliteit en de daaraan gerelateerde risico’s. Hierin zitten twee belangrijke zaken, namelijk kwaliteit en risico’s. Op basis van de beschreven definitie kun je de conclusie trekken dat we eigenlijk spreken over kwaliteit en dat testen een middel is om hier inzicht in te geven. Er zijn echter ook andere manieren om kwaliteit te bereiken. Testen is op zichzelf een vrij reactieve maatregel, omdat het plaatsvindt als je het product al hebt. Wat vaak nog zinvoller en efficiënter is dan testen is reviewen, omdat je dit vaak al kunt doen voordat het product ontwikkeld is. Door te reviewen kun je al in een vroeg stadium kwaliteit verhogen door de opgestelde requirements te verbeteren, dan wel missende requirements op te stellen of overbodige requirements te verwijderen. Het tweede element uit de definitie van testen dat we willen uitlichten is risico’s. Die risico’s bestaan al, want je geeft er inzicht in met testen. Organisaties testen dus om risico’s ten aanzien van hun bedrijfsvoering te vinden, daarna uit te sluiten of te mitigeren. Als er een risicoanalyse gedaan is voor het specifieke project, dan kun je nagaan in hoeverre deze risico’s nog actueel zijn, maar testen kan ook nieuwe risico’s aantonen. Andere redenen om te testen kunnen zijn: aan wettelijke eisen voldoen, om ervoor te zorgen dat hun bedrijfsproces, product en IT-oplossingen kwaliteit leveren.

Wat is Kwaliteit?

Kwaliteit definiëren we in dit verhaal als volgt: ‘Kwaliteit is het geheel van eigenschappen en kenmerken van een product of dienst dat van belang is voor het voldoen aan vastgestelde of vanzelfsprekende behoeften’. Dit is de definitie die we gebruiken in deze syllabus. Een mooie definitie, maar je moet hem even een paar keer lezen om hem goed te begrijpen. Kwaliteit bestaat dus uit eigenschappen en kenmerken, en kwaliteit komt overeen met verwachtingen die al dan niet vastgelegd zijn. Dat is hetzelfde gezegdin simpele bewoordingen. De lange definitie is opgenomen omdat hij wel mooi volledig is en wat dat betreft voldoet aan onzekwaliteitseisen.

Met deze definitie komen we op één van de lastige dingen van testen: de niet vastgelegde behoeften. Vaak leggen we nog wel een lijst met requirements vast, maar er zijn ook behoeften die voor sommige betrokkenen erg voor de hand liggen maar voor andere betrokkenen niet zo. Denk als voorbeeld aan het sluiten van een applicatie met een kruisje in een Windows- omgeving of in een Apple-omgeving. Dat gaat precies andersom.

Kwaliteitsattributen

Het eerste deel van de definitie ‘eigenschappen en kenmerken’ kunnen we uiteenzetten in kwaliteitsattributen. Kwaliteitsattributen zijn verschillende manieren om naar kwaliteit te kunnen kijken. De ISO 25010 norm beschrijft een aantal kwaliteitsattributen die ons kunnen helpen bij het testen van software. Zonder volledig te zijn: functionaliteit, beveiligbaarheid (security), performance, gebruiksvriendelijkheid (usability), onderhoud baarheid (maintainability) en overdraagbaarheid (portability) zijn enkele kwaliteitsattributen uit de norm, die je het meest tegenkomt. We kiezen er bewust voor om nu niet alles op te nemen, want dat zou het hier te uitgebreid maken. De indeling en onderverdeling van kwaliteit in deze norm is echter zeer bruikbaar bij het testen van software. In een later hoofdstuk gaan we nog uitgebreider op enkele kwaliteitsattributen in.

Afhankelijkheid van Software

Software is tegenwoordig overal, je kan vrijwel niet meer zonder. Denk er maar eens aan om een dag zonder je smartphone te moeten leven. Dat is voor veel mensen behoorlijk wennen. Nu kun je wellicht nog wel zonder je telefoon, maar het leven met Smartphone is een stuk sneller en makkelijker. Naast je eigen afhankelijkheid van de software op je telefoon is ook de samenleving in hoge mate afhankelijk van software. Denk maar eens aan alle geautomatiseerde processen van de overheid zoals bijvoorbeeld het innen van belastingen. Als dat weer zonder computers moet plaatsvinden duurt het proces veel langer, kost het meer en is de inzet van veel extra personeel nodig. Dit is één voorbeeld, maar software regelt ook de dienstregeling van treinen en tevens de toegangscontroles en abonnementen voor diezelfde treinen. Het zal wennen zijn als dat (weer) zonder software zou moeten. Omdat we willen dat de samenleving blijft functioneren, belasting geïnd wordt, treinen volgens dienstregeling blijven rijden, toegangscontrole en incasso’s van abonnementen blijven functioneren, moeten we zorgen dat software betrouwbaar is en blijft functioneren. Daarnaast willen we dat als software functioneert het dan ook functioneert zoals bedoeld, juist omdat we erop vertrouwen. Neem bijvoorbeeld de software die ervoor zorgt dat de airbags in een auto afgaan bij een ongeval. We willen dat dit exact zo gebeurt als dat het bedoeld is. Bij te laat afgaan van de airbags zal er schade zijn, maar bij het te vroeg of onverwacht afgaan ook. In dit voorbeeld gaat het om letselschade, maar de schade kan ook imagoschade, andere materiële of immateriële schade, of financiële schade zijn. Vanwege deze en nog vele andere voorbeelden is het dus absolute noodzaak om software te testen. Om schade te voorkomen, om kwaliteit aan te tonen, om risico’s te mitigeren en inzichtelijk te maken, en om continuïteit te waarborgen

Hoofdstuk 1: Kennis maken met Testen

  • Wat is Testen eigenlijk?
  • Wat is Kwaliteit?
  • Kwaliteitsattributen
  • Afhankelijkheid van Software

Aan het einde van dit hoofdstuk kun je:

  • LD1 Onthoud wat er bedoeld wordt met testen. (K1)
  • LD2 Onthoud wat er bedoeld wordt met kwaliteit. (K1)
  • LD3 Onthoud dat je op verschillende manieren naar kwaliteit kunt kijken met behulp
  • van de kwaliteitsattributen. (K1)
  • LD4 Begrijp de noodzaak van testen. (K2)
Schaf deze cursus aan