Softwareleveranciers laten kansen liggen waar het gaat om de uitlevering van hun producten. Pas als ze al wat groter zijn, worden ze met hun neus op de feiten gedrukt: uitlevering moet je organiseren en automatiseren.
De volwassenheid van het uitleverproces van een softwarepakket staat in directe relatie tot het succes van dat pakket. Die uitlevering is weer sterk afhankelijk van de gebruikte ontwikkeltechnologie. Dat waren de belangrijkste conclusies uit het Nationaal Benchmarkonderzoek Productuitlevering 2007.
Volgens Slinger Jansen, die volgende week bij de faculteit Informatica en Informatiekunde van de Universiteit Utrecht op dit onderwerp promoveert, gaat het niet om de gekozen programmeertaal, maar vooral om de volwassenheid van de tools die voor dat platform beschikbaar zijn. “Bij Delphi is de kwaliteit daarvan laag. Bij C# en Java is dat veel beter omdat het moderne ontwikkelomgevingen zijn.”
Procesautomatisering
Verreweg het grootste gedeelte van de verschillen tussen bedrijven wordt echter niet verklaard door de tools, maar de manier waarop zij hun uitleverprocessen hebben ingericht. “Bedrijven blijken veel zelf te hebben ontwikkeld”, aldus Jansen. “Exact heeft bijvoorbeeld een heel simpel file replacement systeem, maar zo kunnen ze wel 160 duizend klanten bedienen. Een ander bedrijf houdt zelf per klant een configuratiebestand bij, maar die hebben misschien dertig of veertig klanten.”
Volgens Jansen kunnen bedrijven enorm besparen op de kosten per klant door de uitleverprocessen te automatiseren. “Ze laten kansen liggen. Zo maakt 72 procent geen gebruik van feedback reports. Dat betekent dat zij geen idee hebben hoe hun product in het veld functioneert. Toen Microsoft met feedback reports aan de slag ging, bleek dat de helft van de problemen werd veroorzaakt door twee procent van de bugs.” Daaruit blijkt wel dat softwareleveranciers enorme kansen laten liggen omdat dergelijke processen worden gezien als non-value-add.
Roem en roddel
Jansen heeft voor zijn promotie niet alleen de enquête naar de stand van zaken bij de Nederlandse softwareleveranciers uitgevoerd, maar ook een uitlevertool ontwikkeld. Pheme is genoemd naar de Griekse godin van de roem en roddel, en gebaseerd op een gedistribueerd model. “Nu moet een patch door de hele keten heen. Dat is te traag. Pheme wordt op alle plekken in die keten geïnstalleerd: bij leverancier, integrator, systeembeheerder en eindgebruiker. Per locatie stel je policies in met daarin gespecificeerd wat je precies waarheen wilt versturen. Behalve updates en patches kan dat ook gaan om foutmeldingen en gebruikersrapporten. Pheme is gemaakt om zo veel mogelijk informatie zo snel mogelijk te verspreiden.”
Daarmee bevindt Pheme zich tussen de ontwikkelomgeving (typisch ingericht volgens CMMI – capability maturity model integration) en het software maintainability model (SMM) in. “Het enige dat qua functionaliteit een beetje op Pheme lijkt, zijn InstallShield en FlexNet van Macrovision.”
Pheme is geschreven in de scripttaal Python. Daarvoor maakte Jansen gebruik van het Django framework. Omdat Pheme modulair is opgebouwd, kan deze nog verder worden uitgebreid. Inmiddels is met tien softwareleveranciers overeengekomen daar gezamenlijk de requirements voor op te stellen en die door een wetenschappelijk programmeur te laten implementeren. Een van de onderwerpen waar nu naar gekeken wordt, is de bruikbaarheid voor service oriented architectures (soa’s).
Pheme is nu nog een prototype, maar Jansen is ervan overtuigd dat softwareleveranciers hiermee flink besparingen kunnen halen. “Productuitlevering is een onderschoven kindje. Leveranciers denken ten onrechte dat het niets toevoegt. Pas als ze al tweehonderd klanten hebben, gaan ze op hun bek en bellen ze onze onderzoeksgroep. Maar dan ben je te laat om nog in één keer naar duizend klanten te kunnen gaan. Je bent twee jaar verder voordat je die volgende stap kunt maken. Een softwarebedrijf moet qua business model op de juiste manier zijn ingericht om inderdaad snel te kunnen groeien.”
Opmerkelijke uitkomsten
– 72 procent van de softwareleveranciers gebruikt geen feedback reports.
– 45 procent gebruikt geen update tool.
– maar achttien procent genereert automatisch licentiebestanden uit verkoopcontracten; de meesten doen het met de hand.
– twintig procent kan het hele pakket op usb-stick uitleveren.
– veertig procent gebruikt een expliciete release planning; anderen hebben wel een idee, maar weten niet of ze op tijd kunnen leveren.
Meer over het benchmark-onderzoek is te vinden op de site van Slinger Jansen:
http://people.cs.uu.nl/slinger/kcuenquete/
–Sjaak Brinkkemper