KLM-ontwikkelaars beperken het ‘pingpongen’

28 augustus 2009

Het ontwikkelen van software is voor veel grote organisaties een complexe aangelegenheid geworden. Er is een groeiend aantal rollen in het ontwikkeltraject, door de opkomst van SOA groeit het aantal software-entiteiten en nieuwe functionaliteit moet snel beschikbaar zijn zonder dat de kosten oplopen. De zwakke plek in het ontwikkeltraject is vaak het moment waarop ontwikkelde code van de ene naar de andere fase overgaat, bijvoorbeeld van ontwikkelingsomgeving naar doelomgeving. Bij die overgang komt nogal wat kijken en vaak gaat er iets mis. Gevolg: het kostbare ‘pingpongen’ tussen ontwikkelaars en deployers.

Dat is ook de ervaring van Ronald Bosch, verantwoordelijk voor de projectentak van de afdeling WebSystems van KLM. Zijn afdeling zorgt voor de voortdurende vernieuwing van de webinfra­structuur van KLM die nodig is om geavanceerde onlinefuncties te kunnen aanbieden, van de kleinste webapplicatie tot het nieuwe onlinereserveringssysteem.

Applicatiedeployments voor integratietesten, gebruikerstesten en acceptatietesten zijn de achtereenvolgende hobbels die onder Bosch’ hoede moeten worden genomen. “Toen ik hier een paar jaar geleden kwam, hadden we het over de problemen op de acceptatieomgevingen. Er ontbrandde toen een discussie tussen mijn coördinator en die van de projectleiders of het aanleveren van de software nou in 70 of in 90 procent van de gevallen fout ging. Dat vraagt natuurlijk om verbetering.”

De ontwikkelaars hadden een geautomatiseerde omgeving waarin ze hun code opleverden en Bosch’ mensen hadden anderzijds een geautomatiseerde manier voor het vergemakkelijken van de ‘deployment’ (uitrol). “Maar de manier waarop het werd opgeleverd en de manier waarop de andere omgeving het ontving, sloten niet op elkaar aan.” Dus moesten bestanden worden overgezet naar verschillende directory’s en handmatig van aanvullende informatie worden voorzien, over bijvoorbeeld testdata, beveiliging, afhankelijkheden met andere webservices en de te gebruiken testscripts. “Dat hele setje moet allemaal in orde zijn wil een test goed werken.” En met de opkomst van het SOA-denken – ook bij KLM – neemt het aantal software-entiteiten en hun onderlinge afhankelijkheden alleen maar toe. Waar het fout gaat – en een simpele tikfout kan desastreus zijn – ontstaat het ‘pingpongen’, het heen en weer schuiven tussen ontwikkelaars en testers.

Met Java-specialist Xebia heeft KLM een manier ontwikkeld om dat deploymentproces enigszins te automatiseren en de foutgevoeligheid te verkleinen. Bosch: “Het deployen van een applicatie op een doelomgeving is een redelijk administratieve handeling. Met scripts kun je het versimpelen, maar de stap die wij hebben gemaakt door het nog verder te automatiseren, daar zijn geen standaardproducten voor op de markt. Met Web­Sphere van IBM kan dat een beetje, maar wij doen het over de hele webinfrastructuur heen. Multinationals bouwen toch vaak hun eigen productie-entiteit, securityimplementatie et cetera. Vaak eindigen zij met een eigen omgeving – en een multivendor-oplossing.

 Deployit: van dienst naar product
De bij KLM in de praktijk gebrachte inzichten komen ook elders goed van pas, meent Xebia, dat zijn oplossing onder de naam Deployit nu in een nieuw jasje wereldwijd aan de man wil brengen. Daarvoor is dochterbedrijf XebiaLabs opgericht. Coert Baart, directeur van XebiaLabs: “Al die punten die Bosch noemt, komen we bij potentiële klanten tegen, of je nu met ontwikkelaars of met de afdeling IT Operations praat.”
Xebia prijst Deployit aan als ‘deployment lifecycle management’-applicatie, waarmee de uitrol naar verschillende middleware-omgevingen, zoals IBM WebSphere, BEA Weblogic en JBoss, kan worden gestroomlijnd en geautomatiseerd.

Dat ontwikkelaars de circa tweehonderd Java-deployments per week nu in een soort ‘selfservice’ kunnen aanbieden aan de verschillende testomgevingen, levert volgens Bosch veel op. “Voor ons speelt een belangrijke rol dat je zowel een functie moet deployen als de security die erbij hoort. Dat we dat nu over onze verschillende producten heen samenhangend kunnen doen, is bijzonder.”

Een ander voordeel is de kortere doorlooptijd. De verspilling zat in de oude situatie in zowel het opnieuw moeten aanbieden van code als het wachten aan de andere kant. Door die foutgevoeligheid weg te automatiseren, is de doorlooptijd van een flink project al weken verkort. “De herhaalbaarheid wordt groter. Mensen zijn ook makkelijker uit te wisselen. En wat je ook ziet gebeuren, is dat als je de administratieve component uit het werk van de deployers haalt, zij zich meer kunnen concentreren op het interessante deel van hun werk. Daarnaast worden de vaak dure acceptatietestsystemen beter ingezet.”

Het is Bosch inmiddels duidelijk geworden dat code ontwikkelen en een werkende dienst opleveren voor veel ontwikkelaars nog ver uit elkaar liggen. “Ik heb nu een ander profiel deployer nodig. In het verleden was het veel herhalend werk; de stap naar kijken wat de applicatie inhoudelijk doet, is soms groot.”



 

 
Lees het hele artikel
Je kunt dit artikel lezen nadat je bent ingelogd. Ben je nieuw bij AG Connect, registreer je dan gratis!

Registreren

  • Direct toegang tot AGConnect.nl
  • Dagelijks een AGConnect nieuwsbrief
  • 30 dagen onbeperkte toegang tot AGConnect.nl

Ben je abonnee, maar heb je nog geen account? Laat de klantenservice je terugbellen!