Het tekort van Scrum

We weten allemaal dat het bijzonder lastig
is om software te maken.  Eisen en wensen
zijn niet stabiel, managers willen code zien,
herkennen ontwerp niet als wezenlijke activiteit,
testen komt als laatste en daar is geen tijd meer
voor. Software-­developmentprocessen haken daar
op in met zaken als Scrum.  Tegengas is hier
echter nodig. We zitten namelijk al decennia
in deze situatie, en als veiligheidskritische
software faalt hebben de IT'ers het gedaan. Maar
als dat komt door onvoldoende professioneel
gedrag van de mensen daarboven, liggen de daders
op het kerkhof.

Het tekort van Scrum laat zich goed illustreren
aan de hand van  medische apparatuur. Iedereen
wil natuurlijk dat die helemaal perfect werkt,
en terecht! Dat stelt ook eisen aan de manier
waarop de software voor dit soort apparaten wordt
ontwikkeld. De Amerikaanse Food en Drug Agency
(FDA) - dat over de toelating van onder andere
medische apparatuur gaat en deze ook terug kan
roepen - kent haar pappenheimers in dit opzicht,
getuige het volgende tien jaar oude citaat:
"Another related characteristic of software
is the speed and ease with which it can be
changed. This factor can cause both software
and non-software professionals to believe that
software problems can be corrected easily.
Combined with a lack of understanding of
software, it can lead managers to believe that
tightly controlled engineering is not needed
as much for software as it is for hardware.
In fact, the opposite is true."

Het goede van dit soort toezichthouders is
dat als ze hun taak serieus nemen, ze van alle
klachten en issues aggregaten kunnen maken zodat
beelden ontstaan over hoe onder andere software
presteert in dergelijke systemen. Daar kunnen we
dan wat van leren dunkt me. De FDA deed dat tien
jaar geleden al en becijferde dat 7.7 procent van
de recalls te wijten was aan softwarefalen. En
van die 7.7% was 79% te wijten aan defecten die
waren geintroduceerd toen aanpassingen aan de
software werden gepleegd nadat het systeem in
productie was gegaan.  We citeren: "The FDA's
analysis of 3140 medical device recalls conducted
between 1992 and 1998 reveals that 242 of them
(7.7%) are attributable to software failures. Of
those software related recalls, 192 (or 79%) were
caused by software defects that were introduced
when changes were made to the software after
its initial production and distribution."

Dit schrijft de FDA in een richtlijn voor het
valideren van software. Aanpassen van software,
is mijn ervaring, wil wel eens in de categorie
effe snel vallen en dat is nooit goed. Dat blijkt
ook uit de data van de FDA: we krijgen het op
een dienblaadje gepresenteerd.

Over naar de auto-industrie. Toyota haalde in
2009 en 2010 zo'n 8 miljoen auto's terug. Dit
vanwege doden die vielen bij raadselachtige
versnelling van de auto's.  Het leek alsof mensen
op het gaspedaal trapten terwijl dat niet de
bedoeling was.  Nabestaanden van slachtoffers
claimen dat dit ook een software-gerelateerde
oorzaak kan hebben. In een door CNN gepubliceerd
'final preproduction quality inspection report'
van Toyota engineers lezen we dit: "The cruise
control activates by itself at full throttle
when the accelerator pedal position sensor
is abnormal."

Toyota voerde kennelijk inspecties uit. En dat
wordt door de FDA aanbevolen. Als ik Toyota was
had ik de opvolging van dit inspectierapport
vrijgegeven. Volgens mij is dat niet
gebeurd. Naast inspecties moet je namelijk wel de
bevindingen op een afdoende manier opvolgen. Als
iemand het effe snel heeft gemaakt, is de kans
aanwezig dat dat niet goed is gegaan. Ook als
daarna toch is gevalideerd is het maar de vraag
of de reikwijdte van de validatie voldoende
was. En als dat voldoende was is de vraag of
de regressietests voldoende waren. Kortom: dat
aanpassen heeft flinke impact en bij medical
devices kennelijk ook een sterk verhoogd risico
op recalls; een zwaar sanctiemiddel van de FDA.

Waarom moeten advocaten, notarissen, accountants,
medici, piloten, en anderen continu verplicht
bijgeschoold worden omdat ze anders hun
accreditatie of brevet verliezen? Waarom kan
iedereen aan software zitten die van niets weet?
Hier ligt een taak voor overheden en in te
stellen toezichthouders. Het goede voorbeeld is
de FDA en niet Scrum.

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.