Softwareverbetering

Uw organisatie is in het gelukkige bezit van een maatwerk-applicatie, maar op de één of andere wijze is deze niet zo goed onderhouden als u achteraf zou hebben gewild. Andere mensen in het bedrijf noemen deze applicatie legacy and zeggen dat het beter is om alles maar opnieuw te schrijven. Uw developers vermijden het werken eraan. Al met al geen vrolijk beeld. Maar: het is wel de software die nu gebruikt wordt en, niet onbelangrijk, het werkt. Als ervaringsdeskundige weet u vast al dat het met de meeste herbouwprojecten niet goed afloopt: het nieuwe systeem doet het nauwelijks beter dan het oude en u bent eigenlijk alleen maar een heleboel geld kwijt geraakt.

Ik heb eigenlijk een beetje een hekel aan het woord ‘legacy’, ik spreek liever van ‘werkende software’ en ik denk dat het verstandig is om er met respect over te spreken. Dus wat dan wel?
Refactoring is mijns inziens de weg vooruit. Kleine verbeteringen aanbrengen die stap voor stap steeds in gebruik worden genomen. Zo houd je altijd de vinger aan de pols. Baby-steps. Met geduld en goede planning kan uw applicatie zo van de zandbank worden afgetrokken en worden opgepoetst. Als vanzelf zijn uw developers dan weer veel enthousiaster om eraan te werken, en u kunt nieuwe functionaliteit gaan toevoegen die uw organisatie ten goede komt.

En als we dan toch bezig zijn, zullen we dan ook wat gewoonten proberen in te voeren om te voorkomen dat het weer spaak loopt?