Wereldwijd is de meeste bedrijfskritische informatie nog steeds ondergebracht in legacy systemen. Volgens Forrester Research zijn er 200 miljard regels Cobol code. Die code gaat voorlopig ook niet weg. Per jaar worden er namelijk 5 miljard regels bij geschreven. Ook IBM claimt dat hun cics-mainframe software nog steeds dertig miljard transacties per dag afhandelt, aangestuurd door dertig miljoen mensen. We moeten er dus mee leren leven.
Veel ict-managers staan voor de taak kosten laag te houden, maar tegelijkertijd te investeren in de toekomst. De wereld verandert immers snel, en wie niet mee kan moet afhaken. Een van de moeilijkste vragen is altijd wanneer welke systemen moeten worden vervangen. Legacy systemen zijn namelijk duur in onderhoud, maar wel bedrijfskritisch. Het antwoord is simpel: vervang de omgeving, maar niet het systeem zelf.
Over hardware kunnen we het allemaal eens zijn. Als nieuwe hardware goedkoper, sneller en beter te onderhouden is dan de oude, kan het gunstig zijn om applicaties te migreren. Het is maar de vraag of dit ook voor de toepassingen zelf zou moeten gelden. Ja, het is mogelijk om Cobol applicaties te herschrijven naar C#, maar loont het ook de moeite? Vaak zijn systemen maatwerk voor een specifieke bedrijfstak of zelfs voor een enkele organisatie. Dat is niet noodzakelijkerwijs slecht. Het kan gewoon betekenen dat het unieke bedrijfsproces van dat bedrijf goed weerspiegeld wordt in de IT infrastructuur. Het kan de reden zijn waarom het bedrijf het goed doet.
Het hardware platform kan dus met een gerust hart worden vervangen, maar de applicaties kwijten zich vaak uitstekend van hun taak. Vervang die dus bij voorkeur niet! De ICT manager ziet zich nu dus voor de taak gesteld de bestaande toepassingen in een vorm te gieten die toch modern en flexibel is. Hier zijn tegenwoordig oplossingen voor. Om een voorbeeld te noemen: Cobol applicaties kunnen uitstekend worden geïnstalleerd binnen huidige Linux en Windows omgevingen. Er is dan geen duur legacy mainframe meer nodig. Nu kan de Cobol applicatie dus gebruik gaan maken van de mogelijkheden van bijvoorbeeld een J2EE of Microsoft .NET omgeving. Dit leidt tot een stortvloed aan nieuwe kansen.
De Cobol code kan via .NET worden ontsloten in een Service Oriented Architecture. De functies van de Cobol applicaties kunnen daarin worden als dienst aangeboden door webservices. Dit betekent eenvoudig meervoudig hergebruik. Het wordt pas echt interessant als meerdere legacy systemen zo aan elkaar worden geknoopt tot hele nieuwe toepassingen. Een bedrijfsportal of een client kan ineens de beschikking krijgen over procesinformatie uit allerlei Cobol applicaties; iets wat vroeger alleen met heel veel bloed, zweet en tranen voor elkaar te krijgen was.
Deze gedistribueerde aanpak is anders dan vroeger, omdat toen de presentatie van data en processen innig verstrengeld was met het onderliggende platform. Natuurlijk zijn ontwikkelaars al een tijdje bezig met hergebruik. Meestal prikken ze direct in op de database zelf. Alle processen en presentatievormen krijgen dan hun eigen code. Dit betekent dat er een redundant en inflexibel geheel ontstaat. Het is nu mogelijk om die business logica te ontkoppelen. Op die manier kan functionaliteit worden aangeboden als dienst aan diverse vormen van presentatie. Dat leidt tot minder werk, en vooral ook minder onderhoud achteraf. Hoe de diensten precies gaan worden gebruikt, ligt alleen nog maar aan de fantasie van de architect. Alles is mogelijk.
Nu is er alleen nog een goede manier nodig om eens te becijferen wat dit kan opleveren. Het is verhelderend te benaderen hoeveel het zou kosten om het bestaande bedrijfsproces te garanderen zonder de applicatie. Dit representeert de waarde van de toepassing zelf. Vervolgens zijn er de kosten van een complete herbouw. Meestal lopen die op tot minimaal de oorspronkelijke investering. Deze getallen kunnen worden afgezet tegen de kosten van de migratie naar een modern platform. Deze investering blijkt vaak een orde van grootte kleiner te zijn dan herbouw, terwijl de waarde van hergebruik, ondersteuning en kostenbesparingen even groot is.
Je zou kunnen zeggen dat legacy systemen meer dan ooit directe waarde representeren. Gooi ze dus niet zo maar weg. Anders dan een blok aan het been te zijn, bieden deze maatwerkapplicaties juist grote mogelijkheden. Tegelijk kosten besparen en innoveren - het lijkt te mooi om waar te zijn, maar het kan.
Sander Nagtegaal