Legacy software: overboord gooien of houden?

De term legacy software wekt bij de ene IT’er al wat meer ergernis op dan bij de ander. De verleiding om oude software overboord te gooien is groot. Maar is dat wel altijd de beste keuze? Bij Sweet Mustard bouwen we niet alleen nieuwe oplossingen, we geloven dat er ook meerwaarde kan schuilen in voortbouwen op wat er ligt. Wanneer dat dan interessant is, en hoe je dat best aanpakt? Mobile app expert Jeroen Crevits en Sweet Mustard founder Mike Seghers delen hun bedenkingen.

De voordelen: kennis blijft behouden en je vermijdt weerstand

Als je kon kiezen, begon je dan liefst van al met een schone lei? Je bent ongetwijfeld niet de enige. Maar wanneer je software of applicatie niet meer werkt zoals het hoort, dan is alles overboord gooien niet altijd de beste aanpak. Jeroen vertelt: “Als je ervoor kiest om verder te werken op bestaande technologie, dan behoud je de kennis die je als bedrijf door de jaren hebt opgebouwd. Ook kunnen je medewerkers blijven werken in hun vertrouwde omgeving. Want als je van systeem verandert, is het niet altijd even gemakkelijk om iedereen mee te krijgen, zeker bij een significant andere technologie. Je moet dan niet alleen door een grote verandering op technologisch vlak, je mensen hangen vast aan hun oude manier van werken. Daarom kan het lonen om te optimaliseren wat er ligt, eerder dan vanaf nul te beginnen.”

“Als je van systeem verandert, is het niet altijd even gemakkelijk om iedereen mee te krijgen, zeker bij een significant andere technologie.”

- Jeroen Crevits

De nadelen: niet goedkoper of minder uitdagend dan nieuwe software

Maar die medaille heeft ook een keerzijde, aldus Mike. “Er zijn uiteraard ook tal van uitdagingen aan verbonden. In tegenstelling tot wat je misschien zou denken, is optimaliseren wat er ligt niet noodzakelijk goedkoper en/of sneller. Ook moet je verder met het team dat er tot nu toe op gewerkt heeft.”

SWMU24 Blog Legacy Apps 02

Overboord gooien of houden: de checklist

Naast kostprijs en samenstelling van je team, zijn er nog heel wat extra zaken die je best in beschouwing neemt.

  • Hoe zit het met de match met andere systemen? Als de oude technologie niet meer kan communiceren met nieuwe systemen, dan schakel je misschien best over op een nieuw systeem.
  • Beschikbaarheid op de markt: mogelijk doet je applicatie het nog goed, maar zijn er geen ontwikkelaars beschikbaar die ervaring hebben met de technologie in kwestie.
  • Workload om te onderhouden: als een nieuw systeem aanzienlijk sneller opgezet is dan een oud systeem onderhouden, dan is vernieuwen de overweging waard.
  • Licenties vs. open source: voor sommige bedrijven voelt een licentie aan als een grote en te langdurige verbintenis (met bijhorend prijskaartje), andere bedrijven zijn dan weer minder te vinden voor open source-applicaties.

Red flags: wanneer laat je een legacy applicatie beter varen?

Soms is de keuze om afscheid te nemen van je bestaande technologie snel gemaakt. Jeroen: “Als er jaren niet meer ontwikkeld werd aan een applicatie, dan is de kans groot dat je de achterstand niet meer weggewerkt krijgt. Ook als je geen toegang meer hebt tot de oude code, wordt het wel heel moeilijk. Maar het belangrijkste is misschien nog de gebruikservaring: als eindgebruikers te veel ergernissen ervaren, dan is het tijd om naar nieuwe oplossingen te kijken.”

Mike: “Soms zit je nu eenmaal met een end-of-life verhaal, bijvoorbeeld wanneer nieuwe toestellen niet meer op oude software kunnen draaien. Of als je vasthangt aan een oud product met vaste licenties en geen interne IT’ers meer hebt die ermee kunnen werken, dan is de keuze snel gemaakt.”

Hoe pakt Sweet Mustard het aan?

Naast de ontwikkeling van nieuwe applicaties, is Sweet Mustard gespecialiseerd in voortbouwen op legacy technologie. Hoe we dat aanpakken? Mike vertelt. “We beginnen met een grondige analyse van wat er al is. We bekijken hoe oud de code is, of die nog ondersteund wordt, of het bedrijf nog toegang heeft en überhaupt zelfs eigenaar is van de code. Als de code door de jaren heen goed gedocumenteerd is, kunnen we veel makkelijker verder bouwen.”

Vervolgens richten we ons op het product en wat het moet kunnen. Denk aan zaken zoals architectuur, infrastructuur, uitrol, communicatie tussen systemen en uitrol. “Hoewel dit allemaal vrij technisch klinkt, is het een cruciale stap. We nemen geen enkele beslissing alleen: we leggen de voor- en nadelen helder uit, zodat je goed geïnformeerd kunt kiezen wat het beste past bij jouw organisatie. Een doordachte technologie kan immers een enorme impact hebben op een bedrijf en zijn medewerkers.”

Daarna voorzien we een high-level plan van aanpak, onze user story map. “We bepalen wat de applicatie moet kunnen en maken een prototype waarop de klant al feedback kan geven. Daarna is het stop or go: zetten we de koers voort of niet? Vanaf dat moment werken we zoals bij onze andere projecten: in sprints, met regelmatige meetings – dagelijks of wekelijks, afhankelijk van de behoeften van het project.”

“Een doordachte technologie kan een enorme impact hebben op een bedrijf en zijn medewerkers.”

- Mike Seghers
Sweet Mustard studio Mike LR

Wat met het menselijke aspect?

Vergeet niet te onderzoeken hoe mensen omgaan met wat er ligt. Kijk naar wat ze goed vinden aan de software, en wat pijn zou doen als het weg zou zijn. Mochten ze iets kunnen veranderen, wat zou dat dan zijn? Focus daarbij op de verbeteringen voor de eindgebruiker, maar neem ook andere stakeholders mee, zoals de ontwikkelaars, maar ook de beslissingsnemers en de mensen die de budgetten vrijmaken.

Medewerkers meekrijgen is namelijk cruciaal wanneer je een (ver)nieuw(d) digitaal product ontwikkelt. Sweet Mustard staat zijn klanten daar zo goed mogelijk bij. Jeroen vertelt. “We zijn geen puur technologiebedrijf, maar we zijn ook geen change managers – we zitten daar ergens tussenin. Als team luisteren naar de feedback van gebruikers en medewerkers en faciliteren de teamwerking. Wat we horen, bepaalt mee of we voor een nieuwe of bestaande technologie gaan.”

Mike: “Checken of het team mee is, is heel belangrijk. Medewerkers worden soms in een nieuwe richting geduwd door managementbeslissingen, zonder dat ze mee de krijtlijnen hebben kunnen uitzetten. Maar we willen hen echt meetrekken, want beter iedereen vroeg dan (te) laat op dezelfde kar.”

Om af te sluiten: enkele algemene tips

  • Vernieuw niet zomaar om te vernieuwen. Onderzoek goed of je écht moet overstappen op een nieuw systeem.
  • Bezint eer ge begint: breng alles in kaart, spreek erover met alle betrokkenen en wees niet bang om moeilijke vragen te stellen. Durf conflicten vroeg aan te gaan, voor je te ver in de ontwikkeling zit.
  • Probeer je voor te bereiden om snel te falen en wees klaar voor snelle aanpassingen. Als de eindgebruiker niet enthousiast is, kun je snel van richting veranderen zonder grote verliezen.
  • Durf te erkennen wanneer iets niet werkt, en wees bereid het roer om te gooien.

Kan jij hulp gebruiken?

Wist je dat Sweet Mustard deels is gestart vanuit de frustratie over code waar jaren aan geschreven werd, die dan niet meer gebruikt wordt? We vinden dat zonde, en geloven dat het anders kan. Samen met onze klanten zoeken we naar de beste digitale oplossingen, of dat nu nieuwe software is of het verbeteren van bestaande applicaties en systemen.

Zit jij met legacy tech waarvan je niet weet wat mee aan te vangen?

Geef een seintje, dan kijken we graag mee!