Info Support heeft een nieuwe aanpak ontwikkeld voor het migreren van verouderde code naar moderne technologieën. Met AI-ondersteuning kunnen legacy-applicaties tot 70 procent sneller worden gemoderniseerd. We spraken erover met Managing Director Mirjam Lemaire.
De 70 procent versnelling die Info Support claimt, komt niet uit de lucht vallen. Bij een concrete case had een migratieproject aanvankelijk een volledig jaar planning nodig. Met de AI-ondersteunde aanpak kon hetzelfde project in enkele weken worden uitgevoerd. Het bedrijf heeft de methode inmiddels toegepast op verschillende talen, waaronder het stokoude COBOL en ook oude Java-versies.
Drie oorzaken van legacy-problemen
Veel bedrijven blijven vastzitten met oude code. Dat is een bekend probleem in de IT-wereld. Deze verouderde applicaties zorgen voor kopzorgen bij IT-managers en directeuren. Het probleem valt in drie categorieën uiteen. Ten eerste zijn er IT-landschappen die gevormd zijn door fusies en overnames. Daar blijven vaak oude applicaties hangen die niet meteen wordt geïntegreerd. Daarnaast ontstaan verouderde systemen door evolutionaire ontwikkelingen, waarbij men meerdere keren is geswitcht van framework of provider. Tot slot zijn er applicaties waarbij de leverancier niet meer in staat is om onderhoud te leveren.
Expertise verdwijnt, druk neemt toe
Het migreren van dergelijke applicaties is lastig omdat de kennis vaak niet meer in huis is. De oude programmeertalen en technologieën zijn niet meer gemeengoed. Bovendien ontbreekt vaak goede documentatie bij de code. “Op het moment dat de code geschreven is, is er niet nagedacht om daar ook hele goede documentatie bij te schrijven”, legt Lemaire uit. Het systeem werkt wel, maar niemand weet meer precies hoe het in elkaar zit. Met het verdwijnen van personeelsleden die ooit de systemen geschreven hebben, is dat een blok aan het been. Gecombineerd met de oude code lopen migratieprojecten met regelmaat in de soep.
De situatie leidt tot kostbare migratietrajecten die veel tijd in beslag nemen. IT-afdelingen staan onder druk omdat compliance-eisen continu nieuwe regelgeving vereisen. In de financiële sector bijvoorbeeld, waar Lemaire veel mee spreekt, komen er regelmatig nieuwe regels van DNB of AFM die geïmplementeerd moeten worden. Migratieplannen belanden daardoor op de plank, totdat het echt pijn begint te doen.
Drie-fasen aanpak met reverse engineering
Info Support zette daarom mensen met data-, AI- en programmeerkennis bij elkaar. Dit leidde tot de ontwikkeling van een aanpak die begint met het analyseren van de oude code. Met AI worden eerst testscripts en documentatie gegenereerd. Deze reverse engineering zorgt ervoor dat vanuit de code duidelijk wordt wat er eigenlijk gebeurt. “Het is een soort reverse engineering, dus wat je doet is: je pakt de code en je laat vanuit de code zien wat er nou eigenlijk in gebeurt”, aldus Lemaire.
Vervolgens wordt gekeken of de applicatie in logische stukken kan worden opgeknipt. Deze onderdelen kunnen dan afzonderlijk worden geconverteerd van de brontaal naar de doeltaal. Door meerdere cases uit te proberen, ontstaat een soort conversiefabriek die de kwaliteit van de output steeds verder verbetert.
In de laatste fase wordt de volledige applicatie door het proces gehaald. Dit gebeurt nog steeds handmatig door de applicatie in brokken te verdelen. Het is niet zo dat je morgen terugkomt en het is allemaal klaar. Er moet continu gekeken worden naar logische opknippingen en hoe alles weer aan elkaar wordt geplakt.
Testgedreven proces biedt zekerheid
De kracht van de aanpak zit in de testscripts die aan het begin worden gemaakt. Deze testen worden uitgevoerd op de nieuwe code om te verifiëren dat dezelfde functionaliteit wordt geleverd als de oude code. “Het geeft een bepaalde zekerheid die belangrijk is om te weten waarmee je aan de slag kunt”, legt de Managing Director van Info Support uit.
Het proces is wel afhankelijk van AI-specialisten die de prompts schrijven en de output controleren. Dit is geen werk dat je even snel met ChatGPT doet. De specialisten moeten de code in stukken verdelen en ervoor zorgen dat alles correcte output levert. Er zijn verschillende kwaliteitsmechanismen ingebouwd om continu te blijven verifiëren.
Lift en shift zonder functionaliteitsuitbreiding
Het is belangrijk te beseffen dat deze methode een lift-en-shiftoperatie is. Je gaat van brontaal naar doeltaal. Je krijgt wel documentatie en testscripts, wat een kwaliteitsverbetering betekent. Architectuurverbeteringen, functionele aanpassingen en uitbreidingen komen in een latere fase.
Dit onderscheidt de aanpak van traditionele migratieprojecten waarbij vaak direct nieuwe functionaliteit wordt toegevoegd. Dat maakt projecten complex en duur, omdat ze vaak stranden in discussies en meningen. Door eerst alleen te migreren en daarna te verbeteren, wordt het proces veel beter beheersbaar.
De aanpak laat wat Lemaire betreft zien dat AI praktische oplossingen kan bieden voor concrete bedrijfsproblemen. In plaats van technologie zoeken naar problemen, helpt AI hier echt bij het oplossen van een bekende uitdaging in de IT-wereld. Want migraties worden door legacy-software over het algemeen nog steeds gezien als te complexe projecten.