KLM bouwt aan nieuwe online diensten op basis van een Service Oriented Architecture (soa) en maakt daarbij niet alleen gebruik van web services, maar ook van mashups. Daarbij moeten technische uitdagingen worden overwonnen, maar nog belangrijker is volgens lead architect Theo Maas dat business managers meedenken over toekomstige web services.
Theo Maas, één van de lead architecten bij KLM: "KLM richt zich behalve op het verkopen van tickets steeds meer op het leveren van extra diensten zoals autoverhuur en het doen van hotelboekingen." Die extra diensten zijn soms afkomstig van derden. Aan Maas de taak ze te integreren binnen de online boekingsapplicatie van KLM. Het eindresultaat moet in 2008 en 2009 gefaseerd online gaan.
Beheerregels
Al die nieuwe diensten schreeuwen natuurlijk om een Service Oriented Architectuur (soa). KLM is al een aantal jaren geleden begonnen met het opzetten van zo'n architectuur. Na een eerste oriënterende fase heeft de organisatie de slag te pakken en is het tijd voor een nieuw niveau van professionaliteit. Maas: "We zitten nu in een fase dat we willen standardiseren.
We hebben een service design methodologie gekozen en één standaard geïntroduceerd voor de infrastructuur." Daarnaast stelt KLM beheerregels op over interne werkprocessen (‘governance'). Maas: "We leggen vast wie verantwoordelijk is voor welke service, zodat er één persoon is die nieuwe releases vrijgeeft. Zo voorkom je dat er twee versies door elkaar gebruikt worden en dat afhankelijkheden tussen services afhankelijkheden tussen projecten worden."
Zaak voor de business
De belangrijkste soa-les die KLM de afgelopen jaren echter heeft geleerd is volgens Maas dat je je services moet definiëren op basis van je business processen. Dat vereist niet alleen een andere aanpak binnen de it-afdeling maar stelt ook nieuwe eisen aan de business manager. Gelukkig zijn de eerste signalen van die verandering nu duidelijk zichtbaar. Maas: "Business managers vragen de ict-afdeling tegenwoordig om onderlinge afhankelijkheden tussen toekomstige services voor hen in kaart te brengen. Maar in de toekomst wordt het beheren van service vooral een zaak voor de business."
De grenzen van de soa-technologie
Hoe belangrijk het is om onderlinge afhankelijkheden tussen services te zien aankomen illustreert Maas zien aan de hand van een voorbeeld: "Als een klant gebruik maakt van meer dan één dienst binnen je website, moet je voorkomen dat die klant adresgegevens meer dan één keer moet invullen." Hoe eerder je dit soort afhankelijkheden ziet aankomen, hoe beter. Maas: "Voor je het weet zit je namelijk in een stuurgroep voor het managen van allerlei onvoorziene afhankelijkheden tussen projecten die dezelfde service willen aanpassen. Daarom moet je zo vroeg mogelijk weten welke services elkaar wanneer aanroepen."
Drie transacties tegelijk afrekenen
Een andere complicerende factor is dat de soa-technologie volgens Maas nog niet op alle vlakken volwassen is. Maas: "De integratiemogelijkheden tussen soa-standaarden van verschillende leveranciers wordt vaak mooier voorgespiegeld dan ze in de praktijk zijn." Toch is die integratie in de praktijk heel belangrijk. Maas: "Stel dat een consument tegelijkertijd een vlucht, een auto en een hotel boekt, dan wil je hem al die transacties tegelijk laten afrekenen. Daarvoor moet je meer dan één web service aanroepen voor het afhandelen van de betaling. Die services draaien bij verschillende partijen en maken vaak gebruik van verschillende standaarden. Maar als één van die drie transacties niet slaagt, moet je er wel voor kunnen zorgen dat die andere twee teruggedraaid kunnen worden." Daar bestaan volgens Maas weliswaar inmiddels web service standaarden voor, maar die worden onvoldoende ondersteund door de soa-producten.
Keten van services
Ook het oplossen van fouten binnen een soa kan lastig zijn. Maas: "Stel je voor dat binnen een samengestelde webapplicatie de allerdiepste service die wordt aangeroepen crasht, dan kun je niet altijd de oorzaak van die fout achterhalen. Dat komt doordat de oorspronkelijke afgegeven foutmelding in de keten van services verloren kan gaan." Er bestaan volgens Maas weliswaar web service standaarden die dit probleem oplossen, maar die worden nog niet ondersteund met producten."
Mashups
KLM werkt met haar soa aan de grenzen van de moderne soa-technologie. Maas: "KLM neemt van derden niet alleen web services af, maar ook de hele look en feel van websites in de vorm van ‘mashups'. Het integreren van mashups is aantrekkelijk omdat je heel snel heel rijke producten kunt bouwen. Daar is de business natuurlijk heel erg van gecharmeerd. Alleen is het integreren van die mashups nog een onontgonnen gebied. Er zijn nauwelijks standaarden of tools. Daardoor kan het gebeuren dat een pagina die is samengesteld uit meer dan één bron zowel beveiligde als onbeveiligde elementen bevat. Dit leidt dan dikwijls tot browserwaarschuwingen. Dat soort situaties wil je uiteraard vermijden."
Vliegwinkel
En Maas kijkt verder. Een andere trend die hij aan de horizon ziet verschijnen is dat zakelijke afnemers van diensten zelf services online gaan combineren, voor eigen gebruik of als dienst aan anderen. Een voorbeeld daarvan is bijvoorbeeld vliegwinkel.nl, waar bezoekers het ticketaanbod van verschillende luchtvaartmaatschappijen kunnen doorzoeken.
Bezoek ons SOA-seminar op 27 maart
Op 27 maart organiseert Computable een seminar waarop ervaringsdeskundigen spreken over de implementatie van een soa binnen hun organisatie. De valkuilen van soa's komen hierbij ruimschoots aan bod, net als de voordelen die een soa kan opleveren. En we zouden Computable niet zijn, als we niet eerst zouden uitleggen wat een soa is en of het iets voor uw organisatie is. Of niet. Bekijk het programma en schrijf u nu in (gratis voor eindgebruikers).