Computable.nl
  • Thema’s
    • Carrière
    • Innovatie & Transformatie
    • Cloud & Infrastructuur
    • Data & AI
    • Governance & Privacy
    • Security & Awareness
    • Software & Development
    • Werkplek & Beheer
  • Sectoren
    • Channel
    • Financiële dienstverlening
    • Logistiek
    • Onderwijs
    • Overheid
    • Zorg
  • Computable Awards
    • Overzicht
    • Nieuws
    • Winnaars
    • Partner worden
  • Vacatures
    • Vacatures bekijken
    • Vacatures plaatsen
  • Bedrijven
    • Profielen
    • Producten & Diensten
  • Kennisbank
  • Nieuwsbrief

‘Softwaretests zijn niet afdoende’

04 maart 2011 - 11:053 minuten leestijdAchtergrondGovernance & PrivacyTU/e
Jolein de Rooij
Jolein de Rooij

Softwaretests zijn niet afdoende. Dat zegt hoogleraar Jan Friso Groote van Technische Universiteit Eindhoven. Hij leidt daar de faculteit Systeemontwerp en is gespecialiseerd in de softwareveiligheid van ingebedde systemen. 'Als iemand zegt: de software is door en door getest, dan moet je in de lach schieten. Want dat kan niet.'

'Door software te testen, zul je nooit alle mogelijke fouten kunnen ontdekken.' De hoogleraar rekent voor dat het onmogelijk is de software onder alle mogelijke omstandigheden te testen. 'Stel je een systeem voor met twintig sensoren, die elk twee mogelijke waarden kunnen aannemen. Dan is het aantal mogelijke situaties gelijk aan 2 tot de twintigste macht. Dat zijn ruim een miljoen mogelijke situaties.'

Softwareverificatie

Volgens de hoogleraar kan software het best worden getest door het geautomatiseerd analyseren van een vereenvoudigde model van de software.

Daarnaast is het belangrijk dat aan universiteiten ontwikkelde softwareverificatiesystemen gemakkelijker toepasbaar worden in de praktijk. 'Technisch gezien is het al lang mogelijk om foutloze software te maken, via prototype verificatiesystemen zoals Coq en PVS. Die technieken bestaan al in een algemene vorm. Maar er ligt een innovatiegat tussen de universiteiten die deze technieken ontwikkelen en de ontwikkelaars die ermee in de praktijk moeten werken. Daardoor zijn er nog geen praktisch inzetbare tools.'

Die komen er ook waarschijnlijk niet snel, zo vreest Groote. 'Het probleem is dat zowel universiteiten als bedrijven de mankracht niet hebben om praktische verificatietools te ontwerpen. Wetenschappers hebben niet het budget om tientallen manjaren te bouwen aan dat soort tools. En de onderzoeklabs binnen grote bedrijven zijn bijna allemaal weggesaneerd.'

Software-eisen

Daarnaast zijn goede softwarespecificaties essentieel bij het voorkomen van programmeerfouten: 'Wat wil je dat de software wel doet, en wat juist niet?'

'Softwarespecificaties zijn vaak vaag, inconsistent en ze bevatten fouten. Een voorbeeld van een vage omschrijving is: de software moet gebruiksvriendelijk zijn. Daaruit kan een programmeur niet opmaken of hij een bepaald edit-veldje wel of niet moet aanmaken, hoe competent hij ook is.'

Hierdoor ontstaat volgens Groote 'een cultuur waarin programmeurs systemen bouwen naar eigen inzicht en steeds minder acht slaan op softwarespecificaties. Dat leidt tot een enorme verspilling van programmeerinspanningen en een slechte software-architectuur.'

Hoe inefficiënt die werkwijze is, illustreert Groote aan de hand van een metafoor: 'Stel je de bouw van een huis voor aan de hand van een onduidelijke schets. Stel je voor dat de aannemer desondanks begint met de bouw van het huis. Het gevolg: hak- en breekwerk, omleggen van leidingen, de constructie van extra steunpilaren, Kortom: enorme vertragingen en een gebrekkige architectuur.'

Agile ontwikkeling

Agile ontwikkeling helpt ook niet bij het voorkomen van programmeerfouten, aldus Groote. Bij deze ontwikkelmethode worden tussenversies weliswaar grondig getest, maar de methode staat volgens Groote de bouw van een gedegen software-architectuur in de weg. Opnieuw komt Groote met een huismetafoor om zijn stelling te verduidelijken: 'Het in korte sprintjes ontwerpen van je huisinrichting is prima te doen, maar een heel flatgebouw bij elkaar scrummen is heel andere koek.'

Meer over

Testing

Deel

    Inschrijven nieuwsbrief Computable

    Door te klikken op inschrijven geef je toestemming aan Jaarbeurs B.V. om je naam en e-mailadres te verwerken voor het verzenden van een of meer mailings namens Computable. Je kunt je toestemming te allen tijde intrekken via de af­meld­func­tie in de nieuwsbrief.
    Wil je weten hoe Jaarbeurs B.V. omgaat met jouw per­soons­ge­ge­vens? Klik dan hier voor ons privacy statement.

    Whitepapers

    Computable.nl

    Bouw de AI-organisatie niet op los zand

    Wat is de afweging tussen zelf bouwen of het benutten van cloud?

    Computable.nl

    Beveiliging en IT samen sterk tegen bedreigingen

    Deze paper geeft concrete strategieën en handvatten om IT en Security effectiever te integreren.

    Computable.nl

    Slimme toegang vs. onzichtbare cyberrisico’s in de Zorg

    In zorginstellingen is een constante stroom van personeel, patiënten en bezoekers. Maar hoe zorg je ervoor dat gevoelige gebieden beschermd blijven zonder de dagelijkse gang van zaken te verstoren? Hoe herken je eventuele zwakke plekken in het netwerk?

    Meer lezen

    Computable.nl
    ActueelGovernance & Privacy

    ‘Softwarespecs zijn vaak vaag en inconsistent’

    11 reacties op “‘Softwaretests zijn niet afdoende’”

    « Oudere reacties
    1. Martijn de Vrieze schreef:
      2 november 2011 om 08:53

      Het zijn een aantal open deuren die ingetrapt worden in dit verhaal.

      Al tijden is het duidelijk dat het meerendeel van de academische ideeen rond software ontwikkeling en software testen in het geheel niet aansluiten op de huidige IT industrie.

      Ik kan niet veel anders dan het roerend eens zijn met Anko’s commentaar: alle drie de voornaamste punten welke Jan Friso noemt zijn waar.

      Een aantal van de voorbeelden door Jan Friso aangehaald zijn heel erg theoretische voorbeelden. De specs zo slecht als hij hier aanhaalt heb ik in mijn bijna 15 jaar in de IT not niet gezien en ik heb redelijk wat erbarmelijke specificaties gezien. Elke software ontwikkelaar of tester met enig zelf respect zal zulke specificaties ook niet accepteren, laat staan ermee aan de gang gaan.

      Login om te reageren
    « Oudere reacties

    Geef een reactie Reactie annuleren

    Je moet ingelogd zijn op om een reactie te plaatsen.

    Populaire berichten

    Meer artikelen

    Footer

    Direct naar

    • Carrièretests
    • Kennisbank
    • Planning
    • Computable Awards
    • Magazine
    • Abonneren Magazine
    • Cybersec e-Magazine

    Producten

    • Adverteren en meer…
    • Jouw Producten en Bedrijfsprofiel
    • Whitepapers & Leads
    • Vacatures & Employer Branding
    • Persberichten

    Contact

    • Colofon
    • Computable en de AVG
    • Service & contact
    • Inschrijven nieuwsbrief
    • Inlog

    Social

    • Facebook
    • X
    • LinkedIn
    • YouTube
    • Instagram
    © 2025 Jaarbeurs
    • Disclaimer
    • Gebruikersvoorwaarden
    • Privacy statement
    Computable.nl is een product van Jaarbeurs