 |
CMG kent Linux adepten. Geert Mooi
en Michiel Perdeck werken bij CMG Finance, op de afdeling 'Advanced
Technology'. Hun reactie op het artikel
van Henk Klöpping verscheen ook in de Computable van 23
oktober 1998.
|
CMG's visie op Open Source
Wij zijn het met de schrijver eens dat Open Source software een hoge
kwaliteit kan hebben. Ook wij zijn Linux-adepten ... De hoge kwaliteit
van een product als Linux is terug te voeren op de toegepaste
peer-reviews op de source code , en uitgebreid testen. Op het
moment dat er een nieuwe versie van Linux wordt gepubliceerd,
gaat er wereldwijd een legertje enthousiaste testers en debuggers
aan de slag. Deze zijn bereid dit zonder betaling te doen omdat
het voor hen een intellectuele uitdaging vormt. In een lezenswaardig
artikel van Eric S. Raymond wordt dit het bazaar-model genoemd
(
zie http://www.earthspace.net/~esr/writings/cathedral-bazaar/).
Software-ontwikkelaars weten dat strakke oplevertermijnen en
beperkte budgetten slecht zijn voor de kwaliteit. Er is altijd
een spanningsveld tussen de kwaliteitsbewuste software-engineer en
de prijsbewuste opdrachtgever. De kwaliteit van het eindproduct is
daardoor een compromis. Voor Open Source Software gelden deze
beperkingen niet en inderdaad is dat goed voor de technische kwaliteit.
Het gaat bij softwareontwikkeling echter niet alleen om de kwaliteit
van het eindproduct zelf. Ook de kwaliteit van het ontwikkelproces
moet beschouwd worden. Hierbij spelen aspecten een rol als: is
het gebouwd volgens de specificaties, binnen de gestelde termijn
en binnen het budget? Vooral deze zaken spelen een grote rol binnen
de commerciële software-industrie; de werkwijze van
bijvoorbeeld CMG is zodanig (qua organisatie, kwaliteitssystemen
en ontwikkelmethodieken), dat ook aan deze aspecten voldoende
aandacht wordt besteed.
Wij zijn het daarom niet eens met de stelling dat er een revolutie
zal in de systeemontwikkeling. Naar onze mening werkt het concept
'horizontaal programmeren' uitsluitend voor een beperkte klasse
van systemen.
Allereerst moet het betreffende systeem een intellectuele uitdaging
vormen, anders zullen er geen goede ontwikkelaars tegen geen of een
geringe vergoeding aan willen werken. En wat kan de ontwikkelaar
winnen? 'ego satisfaction and reputation among other hackers!' (The
Cathedral and the Bazaar). Het moet een systeem zijn met potentieel
veel gebruikers, daar anders de 'pool' van ontwikkelaars te klein zal
zijn; De ontwikkelaars moeten het ook zelf willen gebruiken; op
hoofdlijnen moet consensus bestaan over doelstellingen en
oplossingsrichting, zodat daarover geen eindeloze discussie ontstaat.
De kwaliteit van het ontwikkelproces zoals hierboven omschreven mag
geen rol spelen.
Dit lijkt te impliceren dat het Open Source concept vooral in
aanmerking komt voor bepaalde klassen, zoals systeemsoftware en
middleware. Applicatieve systemen lenen zich niet voor een
horizontale aanpak omdat hierbij discussies over functionaliteit
niet te vermijden zijn. Systemen die in opdracht van derden worden
vervaardigd vallen eveneens af omdat de ontwikkelaar er zelf
waarschijnlijk niet mee zal gaan werken; een eigen creatieve
inbreng van de ontwikkelaar wordt hier ook niet op prijs gesteld.
Verder is beheersing van het horizontale ontwikkelproces per
definitie moeilijk.
Voor het merendeel van de door ons en vergelijkbare bedrijven
ontwikkelde systemen is horizontaal ontwikkelen dus
niet aan de orde.
Overigens is hoge kwaliteit geen exclusief kenmerk van Open Source
software. Bij kritieke systemen (in vliegtuigen, kerncentrales etc.)
worden ook peer-reviews op de code toegepast en wordt er uitgebreid
en formeel getest of zelfs formeel gespecificeerd (zoals bij het door
Rijkswaterstaat en CMG ontwikkelde BOS systeem dat onlangs met de
Computable Innovatieprijs 1998 werd beloond). Omdat de hieraan
bestede uren wel gewoon doorberekend moeten worden is zulke software
dan ook niet goedkoop......
Op bepaalde gebieden is een horizontale aanpak echter zeker adequaat en
het is waarschijnlijk dat er nog meer producten uit die hoek
zullen verschijnen. Wij zien Open Source software niet als
concurrentie, raden het gebruik ervan geenszins af en zullen het in
sommige gevallen zelfs adviseren. In verhouding tot de 'reguliere'
software-industrie zal horizontaal ontwikkelde software echter een
betrekkelijk marginaal verschijnsel blijven. Vooralsnog verwachten
wij op dit gebied dus geen doorbraak.
Dit artikel is overigens tot stand gekomen volgens een soort.... tja,
horizontale methode!
|