Casestudie:
Voor een relatie, een bedrijf dat telefoonsystemen maakt voor de zakelijke markt, zijn kosten erg belangrijk. En hoewel er discussie is of de softwarelicentie wel of niet in het rekenmodel opgenomen moeten worden, kunnen die kosten niet genegeerd worden. Daarom wil men eens serieus naar Linux kijken. De vraag is of Linux wel werkt op de gebruikte hardware. Maar ook, hoe dergelijke OpenSource –economisch verantwoord– ingezet kan worden om kosten te besparen.
Zoals ook beschreven in het artikel ‘Het moet goedkoper! ...’ bestaat moderne elektronica voor een groot deel uit software. Toch wordt de kostprijs traditioneel berekend door naar de inkoopprijs van de hardwareonderdelen te kijken. De ontwikkelkosten, zowel van hard- als software, worden slechts indirect meegenomen. Jarenlang is dit een heel praktisch rekenmodel geweest; hoewel er zeker nadelen aan kleven. Zo is het verleidelijk om geheel geen kosten te berekenen voor software; waarmee alle kostenbesparingen op software bij voorbaad vruchteloos lijken.
Ook bij dit bedrijf was er enige discussie of de licentiekosten van het
gebruikte RTOS wel of niet opgeteld moesten worden bij de kostprijs van de
hardware. Maar het was duidelijk dat ze niet genegeerd konden worden. Die
licentiekosten waren namelijk vrijwel gelijk aan de totale hardware kosten! Als
de licenties meegeteld moesten worden, werd het product waarschijnlijk onder de
kostprijs verkocht.
Los van die discussie, is het duidelijk waar de belangrijkste kostenreductie
mogelijk is: de software moet goedkoper. En geheel in lijn met de moderne
trend, leek overstappen op Linux een logische stap. De licentiekosten van Linux
zijn immers nihil.
Toch is het gebruik van Linux niet kosteloos. Zoals gelezen kan worden in het
artikel ‘Waarom
gratis Linux toch te duur kan zijn?’ kunnen de ontwikkelkosten
tegenvallen. Men vroeg zich dan ook terecht af of men voldoende kennis had om
te starten met Linux.
Zoals veel bedrijven heeft ook dit bedrijf heel veel kennis. Er is kennis van de markt waarin ze werken; zo zijn er bijvoorbeeld gedegen schattingen van de omvang van de markt, die krimpend is. Natuurlijk is er ook software-engineering kennis. Men heeft tenslotte diverse systemen, types en applicaties gemaakt. Maar wel altijd met traditionele RTOS’en zoals pSOS en VxWorks. En er is heel veel verstand van hardware; er zijn hardware specialisten en specialisten om een eigen FPGA te maken. Maar ook de software-ingenieurs kennen de hardware op hun duimpje. Kennis van Linux, of van OpenSource in het algemeen is er niet. Natuurlijk is er menig avondje besteed aan Linux, maar dat zien ze als hobby. Die kennis is mooi meegenomen, maar onvoldoende om een businessplan te schijven. Daarom besloot men om externe expertise te gebruiken, om te bepalen of en hoe Linux efficiënt gebruikt kon worden.
Als we Linux, of andere OpenSource producten willen inzetten voor een kostenreductie ligt het voor de hand om de kosten van Linux af te zetten tegen de verwachte kostenbesparing. Maar het is ook reëel om deze berekening naast andere besparingsmethodes te legen. Dat kan gebeuren in een businesscase of op de achterkant van een bierviltje. De basisberekening is namelijk niet complex.
Als we de huidige softwarelicentie-prijs vermenigvuldigen met het aantal te
verkopen producten krijgen we globaal de maximale besparing. Dat gebruiken we
als referentie. De reële maximale besparing zal altijd lager liggen. De kosten
om die besparing te bereiken moeten er immers af.
Als de nieuwe licentie-, ontwikkel- en/of overstapkosten niet lager zijn dan
genoemde referentie, heeft overtappen geen besparingsnut. Voor Linux gelden
alleen de laatste twee. Maar ook dan geldt: slechts als die kosten onder de
genoemde referentie liggen, is er ruimte is een kostenbesparing. Maar is dat de
maximaal mogelijke besparing? Dat Linux ‘kan’, betekent niet dat Linux
‘moet’!
Er zijn immers andere oplossingen. Andere embedded operating systemen: zowel
andere OpenSource operating systemen zoals ‘eCos’ of ‘BSD’, als commerciële
producten als ‘Window- CE’.
Maar zijn er ook andere –betere– manieren denkbaar, dan het vervangen van het
OS? Soms is onderhandelen over de licentie ook optie. Dat heeft als voordeel
dat de invoerkosten nihil zijn.
Minder betalen is een voor de handliggende manier. Iedereen probeert het wel
eens. De vraag is hoe we de leverancier kunnen overtuigen om een lagere
rekening te sturen. Lief vragen is vaak niet voldoende.
Daarom kan beter op meerdere paarden gewed worden.
Ook hier is dat gebeurd. Onze relatie is gaan onderhandelen met de
leverancier van het gebruikte OS. Maar wij zijn ook ingeschakeld om een serieus
onderzoek te doen naar de mogelijkheden van Linux.
De vraag was, of en vooral hoe Linux ingezet kon worden om de kosten te
besparen. En al snel bleek dat de kosten van Linux aanzienlijk hoger zouden
zijn dan gehoopt. Dat kreeg de RTOS- leverancier natuurlijk niet te horen. Wel
dat men gedwongen was om ook naar Linux te kijken.
Het doel van het Linux onderzoek is een plan maken om Linux in te voeren. Een methodiek zoals beschreven in het artikel ‘Ik wil weten hoe Linux snel en goedkoop kan!’ is daarbij een goede leidraad. Bovendien werden meerdere scenario’s bekeken.
Het is verleidelijk om te beginnen met allerlei technische details; Linux
installeren op de eigen hardware is uitdagend. Toch is dat niet altijd de beste
keus. Beter is het om te kijken naar projecten en producten die als voorbeeld
kunnen dienen. Zo bleek er een Japanse camera te zijn, die –hoewel de
functionaliteit geheel anders is– vrijwel gelijke hardware en Linux gebruikt!
Hun website is een nuttige bron van informatie: zaken als geheugengebruik en
bootsnelheid en vele andere technische details zijn daar te vinden. Maar ook
andere nuttige informatie, zo kunnen we lezen hoelang hun ontwikkelperiode
was.
Om Linux te gebruiken is een stappenplan nodig. En per stap moeten we bepalen
wat de beste methode is om die te nemen en wat de kosten zijn. Maar daarvoor is
het niet nodig om al de stappen te doen!
Omdat de klant meerdere systeemtypes heeft en ook omdat de hardware continu
verbeterd wordt, zijn er meerdere scenario’s bekeken om Linux in te
voeren. Natuurlijk is er gekeken naar Linux op de huidige hardware, maar ook
naar Linux met hardware aanpassingen en zelfs naar alleen Linux op toekomstige
hardware. Daarnaast zou Linux heel snel, geleidelijk of gefaseerd ingevoerd
kunnen worden.
Ook andere OpenSource en zelfs ‘niet-gratis’ embedded operating systemen zijn
bekeken.
Veel opties zijn in dit onderzoek al heel snel terzijde
geschoven. Voortbordurend op bovenstaand ‘bierviltjes businesscase’: zodra de
licentie- of ontwikkelkosten in de buurt van de referentieprijs kwamen, kon het
scenario (voorlopig) terzijde geschoven worden.
Ook om andere redenen vielen scenario’s af. Soms waren er technische blokkades,
soms bedrijfsmatige. Zo viel één commercieel OS af omdat het een potentieel
toekomstig groeipad zou blokkeren. En waren de bekendste (embedded) Linux
distributies ongeschikt omdat de MMU-loze CPU niet ondersteund werd.
Op deze manier konden veel scenario’s effectief onderzocht worden. Ook omdat
elke case gebruik maakt van opgebouwde ervaring. Zo’n ‘scan’ levert veel
informatie op, bij relatief weinig kosten. Hoewel dit geval een uitgebreid
onderzoek betrof waren de kosten minder dan één maand ontwikkelen gekost zou
hebben.
Uit het onderzoek bleek al snel dat Linux een maatje te groot was. Of
omgekeerd: de hardware was aan de krappe kant. Zo moest de gebruikte
architectuur met drie images in (flash)ROM overhoop om voldoende ruimte te
maken voor Linux. En één type hardware vroeg om specifieke aanpassingen
i.v.m. realtime-eisen. Bovendien zijn er wel Linux varianten voor het MMU-loze
systeem, maar dat is geen ‘mainstream’. Kortom, het kan wel maar is wel veel
werk. Het vraagt hiernaast veel van het team: niet alleen een ‘omscholing’ naar
Linux maar ook een andere manier van denken. Dit is niet het project waar een
gemiddelde projectleider warm van wordt. Veel onzichtbaar werkt, veel druk op
het team en een hoog afbraakrisico.
De toegevoegde waarde van Linux was bovendien zeer gering. Zo ondersteunt Linux
het SNMP- protocol, maar men was net overgestapt op een andere
managementinterface...
Omdat er vooral specifieke hardware gebruikt wordt, waren de algemene Linux
devicedrivers niet toepasbaar. Er zouden dus veel nieuwe drivers moeten worden
geschreven, specifiek voor Linux. En omdat minimaal één systeemtype een heel
krappe timing-eis had, waren ook daar aanpassingen nodig.
Samenvattend alles wat nodig is, moest ingebouwd worden en alles wat Linux
biedt was niet nodig.
Toch werd dit onderzoek als zeer nuttig ervaren!
Want met deze resultaten wist men heel goedkoop wat de mogelijkheden van Linux
waren. Veel risico’s zijn helder geworden en er was een scenario dat wel
relevant was. Weliswaar niet met Linux, maar Linux is nooit een doel
geweest. Het doel was kostenreductie. En dat was mogelijk, zowel met de huidige
hardware als met hardware die nog goedkoper was. Ook was het mogelijk om
‘gratis’ OpenSource software te gebruiken. Want, zoals zoveel mensen, dacht men
dat ‘Linux’ en ‘OpenSource’ hetzelfde is. Dat is onjuist; Linux is OpenSource,
maar niet alle OpenSource is Linux! En al vroeg men om Linux, eigenlijk
bedoelde men OpenSource.
Zo ook hier. De vraag was Linux. Het doel was goedkoop. En het resultaat kon
bereikt worden met OpenSource ...
Of de conclusie van het onderzoek beslissend was voor de uitkomst van de prijsonderhandelingen of niet, zal altijd de vraag blijven. Maar de dreiging dat deze klant over zou stappen op ‘Linux’ zal ongetwijfeld een reden geweest zijn voor de leverancier van het gebruikte RTOS om zijn prijs sterk te verlagen. De exacte kostenreductie is geheim. Maar deze was onverwacht groot. Het effect was dat de maximale reële kostenreductie vrijwel in een klap bereikt was. En dat zonder technische inspanning.
Linux evangelisten zullen wellicht niet tevreden zijn met het
resultaat. Omdat er geen Linux toegepast zal worden. Terwijl er technisch best
mogelijkheden waren. En natuurlijk zou het spannend en uitdagend geweest zijn
om Linux op dat ‘kleine’ systeem aan de praat te krijgen. Maar de economische
haalbaarheid was klein.
Voor een hobbyist zijn ontwikkelkosten –lees mensuren– niet zo relevant. Maar
in het echt wel.
Het echte doel was kostenbesparing; liefst met zo weinig mogelijk kosten. En
dat is gelukt. De kosten waren hier minder dan een manmaand; de opbrengst was
een besparing van tientallen procenten. We mogen dus van een succes speken. Dat
deed de klant in ieder geval wel. Door Linux niet te zien als doel, maar als
middel, en door een beperkt maar serieus onderzoek te doen naar Linux door een
partij met ervaring, is veel inzicht verkregen over de kosten en mogelijkheden
van Linux op bestaande systemen.
Daarnaast kom men zo de RTOS-leverancier onder druk zetten, om uit te komen op
een veel goedkoper OS. Zonder ontwikkel-inspanning werd de kostprijs
gereduceerd tot iets meer dan de inkoopprijs van de hardware!
Hierdoor was de discussie of de licentiekosten wel of niet meegeteld moeten ook
vrijwel beslecht.
Voor de Linux en OpenSource evangelisten, er is nog hoop: Eén van de scenario’s is om over een paar jaar over te stappen naar andere, veel goedkopere hardware. Met bovendien een laag risicoprofiel heeft. Maar waar het huidige RTOS niet op draait en Linux wel. Er is nog hoop...
albert