Een foutje is zo gemaakt

We hebben het allemaal gehoord: de deurwaarder
rekent teveel door een software foutje. Over
schulden mag samengestelde interest gerekend
worden, aldus de nieuwsberichten. Kort en goed
betekent dit dat je rente op rente moet betalen.
Het schijnt nu zo te wezen dat als je de rente wel
betaalt maar de schuld niet, dat men dan toch
doorrekent met de schuld plus de reeds betaalde
rente, en dat je derhalve te veel betaalt. De zaak
is aanhangig gemaakt door mensen die al in 2005
constateerden dat het fout zat, en nu blijkt het
nog steeds niet verholpen te wezen.  Fouten in
software zijn van alle tijden. De persistente
rekenfout verbaasd mij enigszins: dat is
algoritmiek, en dat doe je goed of fout. De
geleerden gaan zich er over buigen begreep ik.
Over het algemeen is integraliteit het lastigste
probleem, en niet alleen bij software.

In dat kader is het instructief eens de
vergelijking met de bouw te maken in termen van
integraliteit. We zien sowieso veelal
vergelijkingen met de bouw omdat het daar allemaal
zo goed zou zijn geregeld ten opzichte van de IT
sector. Nou, dat valt wel mee hoor.  Een kennis
van me moest een aantal nieuwe ramen laten zetten.
Van enkel naar dubbel glas in het kader van de
duurzaamheid, het equivalent van green IT zeg
maar. Omdat het aantal ruitjes niet gering was
moest dat via een glasfabriek geregeld worden.
Dus een speciale meetploeg kwam langs om alles in
te meten, en precies af te kaarten welke manier
voor welk raam nodig was om het glas te vervangen.
Latjes erop, stukjes eruit met de frees,
hulpstukken er bij, enzovoort.

De meetspecificaties gingen naar de fabriek alwaar
het dubbel glas plus hulpstukken op orde werden
gemaakt. Na enige tijd was de fabricage van de
ramen plus wat er nodig was om ze te plaatsen
gereed en kwam er een implementatieploeg langs die
alle ramen erin ging zetten. Dat gaat heel
professioneel: alles keurig in fasen, een soort
waterval model zeg maar. Men begon met het
verwijderen van al het oude glas, zodat daarna
alles in de opbouw fase terecht kon komen.  Nadat
ieder stukje enkel glas en ieder stukje dubbel
glas dat lek was geworden verwijderd was, werd het
nieuwe glas erin gezet. Althans dat was het
generieke idee.

Mijn kennis vroeg nog toen de implementatie ploeg
kwam: hoe weet je nu of alles er is en dat alles
past? Nou dat zien wij zo, aldus de opper van de
uitvoering. Na enige tijd kwam hij naar hem toe:
tjsa, de meetploeg was twee ramen vergeten in te
meten, en ja die waren er al uitgeslagen. Omdat
het hard waaide had men al het glas uit voorzorg
stuk geslagen omdat het anders tijdens het
afvoeren gevaarlijk op de weg zou zijn. Het zou
zeker breken en op de weg terecht komen. Of dat
erg was? Het was december. Vervolgens ging men
door. Enige tijd later kwam mijn kennis weer terug
van weg geweest en merkte dat de opper nogal sip
keek. Ja, er was een raam verkeerd ingemeten, en
dat was vele centimeters groter dan het oude raam.
Het was nogal een fors raam, en ook dat kon niet
gedicht worden. Men had geprobeerd de zaak verder
uit te hakken maar dat was mislukt. Dus EN geen
raam EN geen goed kozijn meer. Of dat erg was? Het
was nog steeds december, maar had hij was te
kiezen?

Dus mijn kennis zat met de gebakken peren. Midden
in december met ramen zonder glas, kou te kleumen
met kerst. Er is geen plaats voor dubbel glas in
deze herberg. Hoe po"etisch? Later kwam alles
goed: ramen allemaal geplaatst en alle meerkosten
waren voor risico van de fabriek.

Deze ervaring is geen uitzondering. In augustus
2010 meldde de Telegraaf nog dat in de bouw
jaarlijks een slordige 5,5 miljard Euro werd
verspild aan vermijdbare fouten. Dat komt neer op
bijna 11% faalkosten van de totale omzet in de
bouw. Hoezo, doet de bouw alles beter dan IT?  Dus
in plaats van IT met de bouw te vergelijken zou ik
het om willen keren. Vergelijk de bouw eens met
IT. Een Agile- of Scrummethode voor het vervangen
van ramen is voor de bouw een lonkend perspectief
ten opzichte van een waterval model bij het
plaatsen van de ramen. Niet dat we met scrum en
Agile-achtige technieken integraliteitsproblemen
in de IT aan kunnen pakken: daarvoor heb je
creativiteit en grijze haren nodig. Maar met dat
soort technieken kun je wel dik scoren in de bouw.

Fouten in deurwaardersoftware zijn onhandig,
wellicht kwalijk. De bouw ten opzichte van IT
ophemelen is even erg.

X

Meer weten over de wondere wereld van ICT
in Jip en Janneke taal? Ga dan naar de
knipselkrant van Chris Verhoef

Prof. dr Chris Verhoef is hoogleraar informatica
aan de Vrije Universiteit in Amsterdam en
wetenschappelijk adviseur voor overheid en
bedrijfsleven.  Hij schrijft regelmatig een
column in de AG.  Hij is te bereiken via email:
x@cs.vu.nl.  Deze tekst is copyright SDU.  Niets
van deze uitgave mag zonder schriftelijke
toestemming van de uitgever worden overgenomen of
worden gepubliceerd.