Volg ons op Twitter
 Kwaliteitssoftware

Software speelt een cruciale rol, laat het daarom goed zijn.

Software speelt een cruciale rol in onze samenleving en die rol wordt steeds belangrijker. Met die wetenschap is de kwaliteit van software derhalve ook steeds belangrijker en aan dat laatste schort het nog al eens met soms desastreuze gevolgen van dien.

Voorkomen is beter dan genezen. Een onafhankelijke codereview voorkomt problemen.

Wie geen verstand heeft van het product dat aangeschaft wordt kan met een garantie of een service level agreement (SLA) proberen problemen achteraf op te lossen. Beter is echter problemen te voorkomen. Voor wat betreft software: een onafhankelijke codereview geeft al snel een prima indicatie met betrekking tot de kwaliteit van die software. Het vervangt de garantie of de SLA is niet, maar voorkomt in veel gevallen dat er een beroep op gedaan moet worden. Het terugvallen op garantie of op een SLA is in sommige gevallen onvoldoende. De opgelopen (economische) schade is soms onherstelbaar. Voorbeelden in de praktijk te over en niet alleen in de ICT, waar DigiD en Diginotar nog vers in het geheugen liggen. Ook in de auto-industrie heeft Toyota met een hangend gaspedaal aangetoond dat het terugvallen op garantie niet altijd genoegdoening oplevert.

Kenmerken van kwaliteitssoftware:

  • Usability
  • Adjustability
  • Maintainability
  • Availability
  • Reliability
  • Scalability
  • Security
  • Reusability
  • Integrity
  • Supportability
  • Performance
  • Manageability
  • Testability

Automatisering van review geeft onvolledig beeld

Er zijn verschillende “tools” in de markt die een kwaliteitsoordeel kunnen vellen over software. Deze statische analyse geeft echter een onvolledig beeld. Software waarvan een expert eenvoudig en overduidelijk een probleem in detecteert kunnen als perfect gekwalificeerd worden door een geautomatiseerde review.

Achteraf testen aan de hand van requirements

Het achteraf (laten) testen van het product aan de hand van de vereisten (requirements) is een optie om een gevoel te krijgen met betrekking tot de kwaliteit van de software. Indien het testen zich beperkt tot black-box testen (geen inzage in de code), blijft het lastig om op die manier een  garantie af te geven omtrent de kwaliteit van de software. White-box testen, waarbij de code bekeken wordt, biedt betere mogelijkheden om kwalitatieve uitspraken te doen.

Wie staat garant voor het correct functioneren van de software?

Negatieve testen worden meestal overgeslagen. Echter, wat gebeurt er als de gebruiker zich niet aan de regeltjes houdt? Deze vraag wordt belangrijker naarmate de software toegankelijker is voor een breed publiek en naarmate de software essentiële bedrijfsprocessen stuurt dan wel beheert. Cybercriminaliteit is big business wanneer (privé)gevoelige data verworven kan worden en al helemaal wanneer financieel gewin verkregen kan worden. Lekken in software halen wekelijks het nieuws. Lekken die soms tot grote schadeclaims leiden, soms zelfs tot faillissementen. Achteraf testen is niet onbelangrijk, maar belangrijker is een oordeel te vormen over de code voordat door de code zelf te bekijken. Een codereview waarbij de software bekeken wordt door een onafhankelijke partij kan snel uitsluitsel geven over de kwaliteit van de code. Het geeft nog net geen garanties, maar geeft wel een stellige indicatie waar u aan toe bent en welke maatregelen er getroffen moeten worden.

Copyright 2011-2017 © Van Dorth Consultancy