Development / Nieuws
‘Software wordt nooit foutloos'
Software zal nooit foutloos worden omdat ontwikkelaars bestaande software onvoldoende doorontwikkelen en te veel gefocust zijn op nieuwe versies. Dat stelt VU-onderzoeker Andrew Tanenbaum die de betrouwbaarheid en veiligheid van systeemsoftware onderzoekt.
U heeft een subsidie van 2,5 miljoen euro gekregen van de European Research Council (ERC). Wat gaat u precies onderzoeken?
Ik ga onderzoek doen naar betrouwbare en veilige systeemsoftware. Ik wil het systeem Minix, dat ik in de jaren tachtig maakte, verder ontwikkelen.
In software zitten altijd fouten, dat zijn bugs in de code. Een bug zorgt niet altijd voor een crash, dat gebeurt alleen in bijzondere omstandigheden. Software moet deze fouten eigenlijk zelf detecteren en oplossen, zodat de gebruiker er niets van merkt. Er is wel zelfregulerende software, maar niet veel en het werkt niet zo goed.
Veel software is zo ontwikkeld dat er geen wijzigingen aangebracht kunnen worden terwijl de programmatuur draait. Programma's moeten gestopt of herstart worden om updates door te voeren. Dat lukt niet altijd, servers bij banken moeten altijd blijven draaien. Door meer te moduleren moet het mogelijk worden om bijvoorbeeld de software op een draaiende fileserver te vernieuwen.
U gaat dus verder met Minix?
De ontwikkeling van Minix staat al een jaar of tien stil. Ik ontwikkelde Minix in de jaren tachtig. Linus Torvals ontwikkelde het systeem verder, maar wijzigde het zo erg dat het een ander systeem werd. Dat werd Linux. Linux heeft te veel regels code, het is te groot. Windows is nog veel groter. Hoe meer code, hoe meer fouten. Uit onderzoek blijkt dat er in goede software gemiddeld een fout per honderd regels code zit. Als je er echt alles aan doet, bijvoorbeeld door goed te testen en een goed beleid, dan kom je uit op een bug per duizend regels code. Maar beter dan dat kun je het niet doen. Linux heeft vijf miljoen regels code. De complete Windows Vista distributie is 70 miljoen regels.
Hoeveel geld heeft u hier voor beschikbaar?
Ik heb hiervoor 2,5 miljoen euro beschikbaar voor vijf jaar. Een deel van dat geld gaat naar de Vrije Universiteit (VU) als overhead. Dat betekent dat ik ongeveer 0,4 miljoen euro heb per jaar. Hier kan ik ongeveer vijf mensen voor aan het werk zetten. Waarschijnlijk zijn dat twee tot drie programmeurs, een aantal aio's (assistenten in opleiding) en wat post-doctorale onderzoekers.
Wat hoopt u over vijf jaar te hebben?
Ik hoop dat we dan veel ideeën hebben over hoe het beter moet. En dat we een werkend prototype hebben.
Wordt software ooit foutloos?
Het zal wel ooit mogelijk worden dat software foutloos wordt, maar ik denk niet dat het ooit gebeurd. Softwareleveranciers komen met een constant stroom van updates en nieuwe features (met nieuwe bugs) en iedere paar jaar met een nieuw systeem. Een televisie draait tien jaar zonder problemen, die is redelijk stabiel. Ik wil dat een computer net zo stabiel is als een televisie.
Softwareontwikkelaars werken altijd aan nieuwe versies. Als Microsoft nu nog Windows 98 ontwikkelde, was het foutenvrij geweest. Maar dat gebeurt niet. Programma's krijgen steeds meer functies, vaak steeds nuttelozere functies. Zolang softwaremakers nieuwe versies blijven ontwikkelen (in plaats van de oude versies debuggen), blijven er altijd fouten in software zitten.
Volgens mij had ie toch al eerder toegegeven dat Linux compleet los stond van Minix en dat er geen code van Minix in Linux gebruikt is...
Lijkt wel of hij met deze opmerking alsnog wat credits voor Linux wil opeisen.
En zoals Nick al terecht zegt.. gewoon from scratch beginnen en niet met die oude zooi waar een leger studenten aan heeft zitten klooien.
Het ERC weet wel waar ze het geld aan uitgeven.
Liechtenstein is dus een stuk gezonder dan Nederland, want in Nederland wonen meer mensen en zijn er dus meer zieken.
Zie verder mijn blogpost: http://adi.atosoriginblog.nl/2008/08/22/software-wordt-nooit-foutloos-so-what
De European Research Council had het geld net zo goed door de plee kunnen spoelen.
De "concurrentiepositie"? Van Microsoft zeker. Ik weet dat zij dit argument gebruiken om hun software op de markt te gooien terwijl die nog lang niet af is. Maar ondertussen sparen ze gewoon miljarden dollars uit door naieve gebruikers als onbezoldigde testers te laten optreden. Als er werkelijk concurrentie was dan zouden ze veel hogere prioriteit geven aan de kwaliteit van hun producten. En dan praten we over miljarden en niet die zielige paar miljoen waarmee Tanenbaum mag proberen zijn speeltje nieuw leven in te blazen.
Ik ben het er niet mee eens dat we de huidige kwaliteit van software maar moeten accepteren. Als je televisie of auto gebreken heeft dan heb je recht op herstel of vervanging. Waarom zou dat niet ook kunnen gelden voor software.
Het zegt voldoende dat Microsoft in zijn disclaimers aangeeft dat hun software "niet geschikt" is "voor welk doel dan ook"... Misschien kan mw Kroes ervoor zorgen dat softwarebedrijven hier niet meer mee weg komen. Dan zal er pas echt iets gaan veranderen, hoop ik.
@Nick: Zal liggen aan de compiler of die 64 bits is ingesteld.
Zijn pleidooi voor meer testen is op zich niet verkeerd. Tegenwoordig zijn exploderende ariane raketten doodnormaal. Wie heeft toch de trend gezet dat testen van systemen niet nodig is?
@JosW: Je hebt helemaal gelijk wat betreft die tendes wbt software kwaliteit.
Gefeliciteerd met deze subsidie,
IK heb liever iemand die zijn HOOFD gebruikt in plaats van de MUIS die ze krijgen van de software leverancier.
Eindelijk iemand die NEDERLAND een stap vooruit kan zetten.
Tanenbaum stelt dat software uit teveel code bestaat.
Wonen er, om jouw redenering te volgen, teveel mensen in Nederland zodat er meer zieken zijn dan in bijv. Liechtenstein met een lagere bevolkingsdichtheid?
Heel veel code is bloated, dat is een feit. Meer code betekent niet altijd meer functionaliteit.
- 15:10 PinkRoccade maakt TSS stabieler en breder
- 12:45 ASML vreest kaalslag chipsector
- 15:18 Hitachi haakt aan op SSD Intel
- 17:19 Oud-directeur van Getronics leidt Inter Access
- 16:26 Banometer: Vraag naar hoofd applicatiebeheerder
- 11:38 'Stoppen met BPO door Ordina is verstandig'
- 11:32 Banometer: Vooral vraag naar hoofd...
- 11:26 Apple raadt antimalware aan voor Mac
- 10:20 Tijdsplanning ICT-projecten rammelt
- 10:40 EU-bestrijding cybercrime is vijfjarenplan
Vendor lock-in behoort tot het verleden met open standaarden
Open standaarden en open software maken het mogelijk om IT weer te zien als opportunity en niet als een beperkende factor. Inhaken op trends en ontwikkelingen gaat sneller met open standaarden en open source software, zo wordt betoogd in deze whitepaper.... Download nu
Meerwaarde Agile in kaart gebracht
Wat is Agile Development. Hoe werkt het? Wat is de meerwaarde ten opzichte traditionele ontwikkelmethoden en welke veranderingen zijn noodzakelijk om goed gebruik te maken van Agile. Deze en meer antwoorden leest u in deze whitepaper.... Download nu
Meer Development whitepapersSAP-maatwerk, duur beheer
Als er veel wordt gesleuteld aan een SAP-applicatie, zorgt dat voor hogere beheerkosten na het project. Maar het is lastig aan de organisatie duidelijk te maken dat maatwerk niet altijd de beste oplossing is.
Meer maatwerk bij SAP maakt beheer duurderSomatech applicatie voor materiaalverwerking
02-12 13:09 Voor verspanende bedrijven die bijvoorbeeld kunststoffen bewerken of andere langspanige materialen brengt Somatech PECK and PLUNGE op de markt. Deze applicatie maakt het mogelijk...
Meer development productenBooking.com zweert bij open source
10-03 14:24 De capaciteit van de infrastructuur van reserveringswebsite Booking.com is de afgelopen jaren vertienvoudigd. Dat levert niet alleen hoofdbrekens op over onder andere...
Meer development praktijkWebdiensten vormen betere middleware
02-12 09:13 Hoewel webdiensten vaak worden gezien als middel om gedistribueerde applicaties simpel aan elkaar te knopen, zijn ze veel meer dan dat. Hun volledig elektronisch gedocumenteerde...
Meer development achtergrondOmzetcontrole bij e-commerce
01-12 14:47 Laatst sloot mijn buurman, een niet-ict’er, een doorlopende reisverzekering af via internet. De website van de verzekeringsmaatschappij waar hij de verzekering in eerste instantie...
Meer development opinieBekijk de leveranciers op het gebied van Development.



Windows XP was toch duidelijk een verbetering die je met alleen het debuggen van Windows 98 nooit voor elkaar had gekregen.
En nu moet een 10 jaar oud systeem als start dienen voor een project van 2,5 miljoen? Had dat geld maar aan mij gegeven.
Waarom niet beginnen van scratch en gelijk rekening houden met moderne hardware? Multi-core? 64 bit? Wil ie dat er zo in gaan hacken ofzo?