De Catch-22 van legacy systemen

Publicatiedatum: afbeelding bij

Het onderhoud van legacy systemen is vaak een nachtmerrie, maar vervanging is ook een dure zaak. Een echte Catch-22! Lees in deze blog wat je niet en wat je wel moet doen om deze gevarenzone te vermijden.

Ze zijn duur om te vervangen, moeilijk te onderhouden en wil je iets aanpassen dan moet bijna de hele infrastructuur op de schop. Het zou hier over een mooie klassieke auto kunnen gaan, maar we hebben het wel degelijk over een verouderde legacy applicatie: de monoliet. Zowel in de automotive als in de IT veranderen de dingen razendsnel; hetzelfde product jarenlang onderhouden is dus een behoorlijke uitdaging. Er zijn namelijk altijd nieuwere en betere opties die jou meer snelheid, wendbaarheid en waar voor je geld geven.

Waarom zijn die monolieten er nog?

Een belangrijke hindernis bij het vervangen van de legacy monolieten is het kostenplaatje; het vervangen van deze monolieten is vaak een behoorlijk duur proces. Veel van deze legacy applicaties vervullen nog steeds een waardevolle rol binnen bedrijven, daarom is het niet eenvoudig het rendement van hun uitfasering te verdedigen in een businesscase.

Het probleem is dat deze verouderde systemen jou niet dezelfde kwaliteit en performance bieden als moderne systemen. De verouderde systemen functioneren misschien wel, maar dat wil niet zeggen dat ze geschikt zijn voor een modern en competitief bedrijf. En het wordt pas echt een probleem wanneer je nadenkt over uitbreiding, innovatie of het verhogen van je effectiviteit om een voorsprong te krijgen op de concurrentie.

Zo’n software monoliet is vaak een verzameling van applicaties in een zakelijke omgeving. Deze monolieten zijn oud en voegen weinig of geen waarde toe op basis van onze huidige eisen. Maar, ze doen waar ze ooit voor zijn ontworpen. De verleiding is dus groot om ze maar gewoon te behouden zolang er geen grote gebreken optreden.

Kenmerken van een verouderde monoliet

Veel van deze legacy monolieten hebben ofwel oude technologie of een oude programmeertaal. Sommigen hebben zelfs beiden. Wil je een snel, betrouwbaar, kwalitatief en functioneel systeem dat echt waarde toevoegt? Dan is het tijd voor wat anders. Bedrijven die oude hardware of software gebruiken, merken al gauw dat collega’s de beperkingen van de systemen omzeilen door allerlei workarounds te verzinnen. Slim, maar het maakt jouw systeem niet sneller en moderner. Het enige wat je ermee bereikt is dat het de hele bedrijfsvoering vertraagt.

Een goede dosis voorzichtigheid bij de gebruikte tools en toegevoegde functies is cruciaal. Zelfs de kleinste details zijn bij een legacy monoliet van groot belang. Daarom is een consistente upgrade naar de moderne standaarden belangrijk. Deze aanpak heeft duidelijke voordelen voor je bedrijf en het zorgt ervoor dat je kan opschalen en uitbreiden. En dat is precies waar het in deze snel veranderende wereld om gaat.

Waarom zijn deze verouderde monolieten zo onaantrekkelijk en nutteloos in vergelijking met moderne oplossingen? Allereerst is er het gebrek aan support vanuit de leverancier. Als bedrijf wil je natuurlijk dat alles op een gestroomlijnde manier werkt. Gaat er een keertje wat fout, dan wil je snel en goed geholpen worden. Bij legacy monolieten heb je helemaal geen support meer. Misschien kan je zelf nog wat sleutelen aan de hardware of software, maar het maximale haal je er niet meer uit. Dit heeft uiteraard een negatieve invloed op de productiviteit en bovendien leg je het bedrijf hiermee een hoop beperkingen op.

Daarnaast krijg je ook te maken met verouderde architectuur en oude design principes. In een ideale wereld zijn alle systemen up-to-date en werkt alles optimaal. In een moderne architectuur hoef jij je geen zorgen te maken over eventuele problemen; je hele omgeving is aanpasbaar, schaalbaar en helemaal naar wens in te richten. Monolieten bieden daarentegen geen van dat alles. Dit kan uiteindelijk voor grote problemen zorgen. Een belangrijk gegeven voor jouw businesscase voor het vervangen van monolieten: je bespaart uiteindelijk geld in de toekomst. Met een moderne infrastructuur focus je je op het beste resultaat en pak je op een professionele manier problemen aan.

Laten we het ook even hebben over de kosten van zo’n legacy monoliet. We weten al dat de juiste ondersteuning vinden een probleem is. Vind je toch een partij die je uit de brand kan helpen, dan is dat allesbehalve goedkoop. Waarom? De ondersteuning voor deze verouderde monolieten is uitermate complex. Je kan niet zomaar aan de slag met moderne tools, in veel gevallen moet men legacy software en hardware aanschaffen om hiermee aan de slag te gaan. Dat ligt niet voor de hand en dat is precies de reden waarom er weinig tot geen ondersteuning meer te vinden is voor typische legacy monolieten.

Is jouw hele bedrijf afhankelijk van deze monolieten en heb je geen support, dan zijn problemen onvermijdelijk. Verandering is noodzakelijk en het is belangrijk om zoveel mogelijk managers warm te maken voor deze verandering. Misschien zit je er niet op te wachten om de strijd aan te gaan met de CFO of controller, maar dat is het uiteindelijk wel waard.

Wanneer is de tijd rijp om verouderde systemen te upgraden?

Zodra de ondersteuning van de leverancier stopt, loont het om de monoliet te upgraden. Een logische stap, want om jouw klanten zo goed mogelijk van dienst te zijn heb jij hard- en software nodig die jou hierbij helpen. Daarom is het altijd verstandig om zo snel mogelijk te upgraden. Hoe langer je hiermee wacht, hoe meer problemen zich opstapelen.

Een andere aanpak is het upgraden van verouderde systemen om problemen te corrigeren. In de meeste gevallen fixen upgrades problemen en zijn de resultaten indrukwekkend. Om het allemaal nog beter te maken, hoeft je je geen zorgen te maken over het controleren op issues. Deze updates vereisen vrijwel nooit veel aandacht of ondersteuning.

Wil je voldoen aan nieuwe performance-eisen of wil je tegemoet komen aan development-functionaliteiten? Dan wil je de beste en betrouwbaarste tools. Met verouderde monolieten lukt dat niet, dus een upgrade dringt zich aan. Zo’n upgrade maakt in deze gevallen echt een verschil en collega’s in het hele bedrijf zullen het verschil waarderen. Een waarschuwing is hier wel op z’n plek: het management moet zich engageren voor deze verandering. Is de top van het bedrijf onvoldoende op de hoogte van de noodzaak tot verandering, dan wordt het lastig om de investering rond te krijgen.

Zoals we al eerder schreven is het gebrek aan ondersteuning vaak een doorslaggevend argument bij het kiezen voor een upgrade. Geef het management daarom inzicht in de kosten die gepaard gaan bij het onderhouden van legacy systemen en zet deze cijfers af tegen de investering die nodig is voor een moderne infrastructuur. Wedden dat ze concluderen dat een moderne infrastructuur toch voordeliger is dan het onderhouden van verouderde monolieten? Het gaat erom de voordelen te benadrukken en de risico’s van het niet-upgraden inzichtelijk te maken.

Is er nog tijd om een ​​moderniserings- / transitiestrategie te formuleren?

Denk jij dat de tijd rijp is voor een upgrade? Zet dan even de dagelijkse gang van zaken on hold en duik in jouw systeem. Misschien zie je wel een aantal dingen uit onderstaande lijst:

1. Het systeem bevat niet-corrigeerbare fouten en dit aantal groeit;

2. De verouderde monoliet is de hoofdreden waarom je een belangrijke functionaliteit niet ontwikkelt of waarom je niet voldoet aan performance-eisen;

3. Het is lastig om mensen te vinden om jouw systeem te ondersteunen. Er zijn steeds minder mensen op de arbeidsmarkt met kennis van het systeem en nieuwkomers willen alleen met moderne technologie werken;

4. De hoge supportkosten zorgen ervoor dat een upgrade goedkoper is, ondanks dat het rendement niet onmiddellijk zichtbaar is;

5. Niemand in het bedrijf weet hoe het systeem precies werkt. De oorspronkelijke ontwikkelaars zijn al eeuwen weg, de documentatie is verschrikkelijk en het systeem zelf is een compleet raadsel.

Herken jij jouw systeem in de eerste drie punten? Wacht dan niet langer! Een systeem waar alleen punten vier of vijf aan de orde zijn, gaat nog wel even mee. Maar ga alvast nadenken over een moderniseringsstrategie voor je ook te maken krijgt met de eerste drie punten.

Een strategie opstellen

Jouw strategie moet in balans zijn. De voordelen van een upgrade naar een moderne infrastructuur zoals microservices zijn onder andere efficiëntie, teamonafhankelijkheid, meer en betere controle over de codebasis en eenvoudiger testen. Maar vergeet ook de nadelen niet. Zo moet je nadenken over de veerkracht van het systeem wanneer bepaalde services falen, de logging, de coördinatie van releases of roll-backs van getroffen services tijdens releases.

Microservices kunnen zich, in tegenstelling tot een monoliet, op veel verschillende machines bevinden. Ze zijn mogelijk geschreven in verschillende talen, met verschillende methodes en hebben verschillende besturingsmogelijkheden. Het grote voordeel, flexibiliteit, brengt dus ook complexiteit met zich mee.  Onderschat daarom niet de tijd die je nodig hebt om dit over te nemen. Het is net zoals bij het dashboard van een nieuwe auto, je moet er even aan wennen.

Met microservices worden logge processen een stuk eenvoudiger. Zo kan jij je concentreren op de resultaten die je wil behalen. Microservices zijn de beste manier om legacy monolieten te vervangen en tijd vrij te maken voor jouw kerntaak; de business optimaal ondersteunen. Dat zorgt ervoor dat microservices een hogere ROI hebben dan ad hoc fixes en snelle tweaks.

Een doordachte en goed geïmplementeerde microservice-architectuur verhoogt de flexibiliteit en is eenvoudiger in onderhoud. Bovendien voegt het ook meer kwaliteit, waarde en ondersteuning toe. Microservices bieden meer controle, schaalbaarheid en transparantie. Allemaal zaken die je in het achterhoofd dient te houden wanneer je de mogelijkheden onderzoekt voor het vervangen van jouw verouderde systemen. Het is goed om te weten dat jouw bedrijf met heel eigen uitdagingen te maken krijgt. Het opstellen van een strategie is dus een goed startpunt om deze op papier te zetten.

Ben je nieuwsgierig naar wat E-ngineers op het vlak van legacy systemen voor jouw bedrijf kan betekenen? Neem dan gerust vrijblijvend contact met ons op.

Profiel E-ngineers

E-ngineers

Wij ontwerpen hedendaagse systemen en optimale IT-architecturen die speciaal zijn gemaakt om aan uw behoeften en ambities te voldoen!

Profiel E-ngineers ›