7min Devops

Hoe applicatiemodernisatie helpt van legacy af te komen

Waar te beginnen en hoe rond je het succesvol af?

Hoe applicatiemodernisatie helpt van legacy af te komen

Bedrijven bouwen door de jaren heen heel wat legacy op. Deze verouderde applicaties kunnen een blok aan het been zijn. De ooit zo functionele software remt vandaag de business in verdere groei. En voor IT resulteert het in verminderde innovatiekracht, flexibiliteit en schaalbaarheid. Met applicatiemodernisatie is er een uitweg, maar waar begin je en hoe rond je het überhaupt succesvol af? We gaan op zoek naar een goede aanpak met Cegeka, dat bedrijven begeleidt bij moderniseringstrajecten.

Het verlangen naar een modern IT-landschap te gaan groeit naarmate organisaties steeds meer de gevolgen van legacy ondervinden. Ze zien de rekeningen oplopen, de toegevoegde waarde afnemen en het aantrekken van personeel moeilijker worden. Maar zodra die gevolgen merkbaar zijn, is de IT-afdeling eigenlijk al te laat. Dat leidt tot technical debt, waardoor het steeds uitdagender wordt veranderingen door te voeren zonder applicaties van de grond af aan te herbouwen. Het moderniseren van legacy software biedt de kans weer grip te krijgen op het IT-landschap en de organisatie te versterken. De business krijgt applicaties die innovatie, flexibiliteit en schaalbaarheid centraal zetten.

Waar begin je met modernisatie?

Toch leert de ervaring dat menig bedrijf dat probeert te moderniseren, het simpelweg niet naar behoren lukt. Daar kunnen uiteraard verschillende redenen voor zijn. Mogelijk is een softwareoplossing te diep geworteld in een organisatie en is het onmogelijk om mensen en processen mee te krijgen in iets nieuws. Idealiter staan mens, proces en technologie vanaf het begin centraal bij applicatiemodernisatie.

Wanneer Cegeka in gesprek gaat met een organisatie die applicatiemodernisatie wil doorvoeren, is één van de eerste stappen een assessment. Dit assessment omvat vier stappen. De consultant brengt de bedrijfs- en IT-strategie in kaart met behulp van een eigen methodologie en templates. Zijn de strategieën voldoende op elkaar afgestemd? IT kan namelijk de basis zijn voor het vertalen van de bedrijfsstrategie, daarom moet er een match zijn.

Tip: Waarom IT-projecten mislukken en gebruikers verdwalen in de Valley of Despair

Vervolgens gaat Cegeka de gebruikte technologie in kaart brengen. Dit door middel van twee losse stappen: de applicatie-inventarisatie en de inventarisatie van de onderliggende infrastructuur. Door de applicaties van een organisatie in kaart te brengen, kunnen ze afgestemd worden op de bedrijfsprocessen. Hoe verhoudt het huidige applicatielandschap zich tot de situatie waar de organisatie naartoe wil? De inventarisatie van de infrastructuur schetst een beeld van wat er met de huidige middelen mogelijk is. Dit is nodig voor het identificeren van de geschikte landing zones voor workloads. Maar het helpt ook bij het identificeren van nieuwe benodigde capaciteiten en welke best practices toegepast kunnen worden.

Zodra deze drie stappen zijn doorlopen en er een goed beeld is van de bedrijfs- en IT-strategie, applicaties en infrastructuur, gaat Cegeka samen met de klant over tot het bepalen van de prioriteiten. Bij deze finale stap vat Cegeka de bevindingen samen in een stappenplan van één pagina met daarin de bepaalde prioriteiten. Daarmee is de basis gelegd voor het opstellen van een digitale strategie en IT-roadmap. De nadruk ligt hierbij op potentiële quick wins. Daarnaast kunnen bepaalde moderniseringstrajecten prioriteit krijgen, bijvoorbeeld omdat daar de nood voor IT en de business het hoogst is.

Verhaal gaat verder na onderstaand kader.

De smaken van applicatiemodernisering

Cegeka beschikt over voldoende technische middelen en expertise om met het moderniseringsplan zoals hierboven besproken aan de slag te gaan. Uiteraard neemt het de organisatie mee en is aanpassing aan tussentijds veranderende wensen mogelijk. In de basis hebben organisaties echter zes keuzes bij het moderniseren van een softwareoplossing. Deze zes keuzes beschrijft Cegeka als de 6R-benadering, wat staat voor retire, retain, repurchase, rehost, refactor en replatform.

  1. Retire: Applicaties die het einde van hun levensduur hebben bereikt, worden uitgefaseerd.
  2. Retain: Applicaties worden behouden zoals ze zijn.
  3. Repurchase: De applicaties worden vervangen door een nieuwe, rekening houdend met nieuwe vereisten en behoeften.
  4. Rehost: De applicaties worden gemigreerd naar een andere cloudomgeving zonder de code te wijzigen.
  5. Refactor: Bestaande code wordt geherstructureerd en geoptimaliseerd zonder het gedrag te veranderen, vaak met behulp van microservices.
  6. Replatform: De applicaties worden aangepast voor een nieuw cloudplatform, vaak met containerisering in de cloud.

De meest ingrijpende maatregelen zijn refactor en replatform, omdat deze het meeste tijd en middelen vergen, maar ze bieden ook de grootste voordelen op het gebied van innovatiekracht, flexibiliteit en schaalbaarheid.

Ontwikkeling en levering versnellen

Als het plan er eenmaal ligt en de stappen voor ieder stuk legacy software is duidelijk, kan een organisatie aan de slag. Hoewel voor het eindresultaat van een compleet moderniseringstraject ruim de tijd nodig is, moeten al snel nieuwe voordelen merkbaar zijn. Door over te stappen op moderne architecturen, zoals component-gebaseerde architectuur, microservices en cloud-native applicaties, wordt het mogelijk sneller nieuwe functies en services te leveren aan gebruikers en klanten. Als er bepaalde voordelen zijn voor de business, is het verstandig om die modernisering prioriteit te geven.

Met de moderniseringsslag is de organisatie voortaan weer in staat om een cultuur van continue innovatie te omarmen, waarbij nieuwe ideeën snel kunnen worden getest en gevalideerd. Door gebruik te maken van agile ontwikkelmethodologieën en DevSecOps-praktijken, kunnen organisaties de time-to-market verkorten en snel inspelen op veranderende klantbehoeften en marktomstandigheden. Dit betekent dat bedrijven flexibeler en responsiever zijn, wat essentieel is om een voorsprong te behouden op concurrenten. Daarnaast maakt het mogelijk makkelijker in te spelen op trends, zoals nu met AI. Het is door de nieuwe architectuur makkelijker zoiets te integreren in de software.

Component-gebaseerde microservices-architecturen, containerisering en cloud-native benaderingen laten organisaties applicaties ontwikkelen die gemakkelijk aanpasbaar zijn aan veranderende vereisten vanuit de business. De applicaties zijn schaalbaar, zodat ze kunnen voldoen aan fluctuerende gebruikersvolumes. Deze benaderingen maken het mogelijk om snel te reageren op veranderingen in de markt en om resources efficiënt te schalen op basis van de vraag.

Microservices spelen hier een cruciale rol. De software werkt via kleine services die gemaakt zijn voor specifieke functies. Elke service wordt onafhankelijk ontwikkeld, ingezet en geschaald. Dit geeft organisaties precies de flexibiliteit om binnen korte tijd nieuwe functies toe te voegen en bestaande functies te verbeteren zonder de hele applicatie te beïnvloeden. Containerisering zorgt er dan weer voor dat applicaties kunnen presteren in verschillende omgevingen, wat de efficiëntie en betrouwbaarheid verhoogt.

Tip: Hoe krijg je weer grip op je cloudomgevingen?

De securitywinst

Het migreren van legacy-applicaties naar moderne technologie maakt het ook mogelijk om securityrisico’s aan te pakken en te verminderen. Moderne technologie biedt namelijk betere isolatie van services, betere authenticatie en autorisatie dan oude applicaties, encryptie van data (zowel in-transit als data-at-rest) en regelmatige security audits en patches. Dit resulteert in een verbeterde beveiligingshouding voor de organisatie, iets waar nog wel eens misverstanden over zijn omdat modernisering ook kan betekenen dat je van on-premises (eigen beheer) naar de cloud gaat.

Legacy-applicaties hebben bovendien vaak ingebouwde kwetsbaarheden die moeilijk te patchen zijn, wat ze tot een aantrekkelijk doelwit maakt voor cybercriminelen. Moderne applicaties zijn daarentegen gebouwd met beveiliging als uitgangspunt, wat helpt bij het voorkomen van datalekken en het minimaliseren van risico’s. Dit helpt in een tijd waarin steeds meer gevraagd wordt op securityvlak, ook van applicatieontwikkelaars en -beheerders.

Stuk minder technical debt

In het begin van dit artikel hadden we het erover dat technical debt een aanleiding is om over te gaan tot applicatiemodernisering. Want hoewel de voordelen logisch lijken, blijft de wens voor nieuwe software vaak voortkomen uit de negatieve ervaringen met wat je hebt. Automatisering is dan ook de sleutel tot het verminderen van technical debt. Door het automatiseren van tests en implementaties, kunnen organisaties de consistentie en betrouwbaarheid van software verbeteren. Monitoring- en loggingoplossingen ondersteunen in het snel detecteren en oplossen van problemen, waardoor bedrijven downtime tot een minimum kunnen beperken. Zulke tools zijn handig om ook mee te nemen in de digitale strategie waar je naartoe werkt.

Cegeka ziet dat nut en ziet het liefst proactief onderhoud om de stabiliteit en betrouwbaarheid van applicaties te behouden. Moderne architecturen maken het simpeler om onderhoudstaken uit te voeren en updates te implementeren zonder de algehele werking van de applicaties te verstoren. Dit vermindert naast de technical debt ook de algehele operationele efficiëntie.

Daarmee is het nut van het moderniseren van legacy software wat ons betreft duidelijk. Veel organisaties willen ook naar nieuwere technologie toe. Maar het pad naar een modern applicatielandschap is vaak lastig en lang. Daar wil Cegeka op inspelen door organisaties te ondersteunen en daarmee de deur weer open te zetten voor een toekomst met groei.