26 April, 2018
Fussy Hornets – Legacy is alive and well and still stinging!
I was watching a short film on YouTube the other day discussing a ground crew’s relationship with their pilots. The focus was on a rookie pilot who had a bad habit of not putting the brakes on when the ground crew came in to service the plane. They almost got run over by several tons of fighter-bomber and he didn’t have many ground crew buddies.
The plane was an F18 Hornet, it was older than the rookie pilot, in other words, it was in service when he was born. The narrator said something that really stuck with me – as the plane gets older it becomes more ‘fussy’. During its life it will have been upgraded multiple times, new avionics, weapon packs, countless engine refits and so on – thus it needs more and more ‘TLC’ and maintenance to keep it in the air.
I think this is true of all ‘older’ mechanisms and systems; in our world I read this as legacy systems. You would think that by now most companies would have moved away from propping up old mainframe and not quite so young last generation systems but there are still globally many thousands happily or unhappily chuntering along...
Legacy systems provide the testing community with unique challenges. As those of us who are getting closer to the end of the employment conveyor belt and fall off into the collection bucket of retirement, we take with us a wealth of legacy knowledge both from technical and business viewpoints. This provides the legacy owner with some interesting challenges:
The old folk have gone, they haven’t left any documentation, it was all in their heads.
The young folk are still here, they want to work on latest generation systems and anything without ‘DevOps’ written all over it should be avoided like the plague.
The legacy system is still being updated and has to keep in line with compliance based rulings.
I see the legacy issue as more of a challenge from the development viewpoint rather than a testing one. Taking the rather flippant view of ‘testing doesn’t care what testing tests’ I think it’s a good idea to get young testing guns familiar with a tricky legacy system. Who doesn’t enjoy waiting for an 8 hour batch run to complete to see if the actuals match the expected results!
Legacy demands greater, stronger test discipline. If you get a web test wrong the worst that happens is typically a tweak of the test script and a retest – all possibly achieved in a few minutes. Get it wrong in a legacy batch run and you’ve potentially lost a day! That means understanding the system from both technical and business angles (with potentially out of date documentation), understanding how the data behaves, working out where and when within the system you will get measurable results, a greater focus on starting point data and a strong understanding of the (usual) scores of interfaces sitting behind the scenes. What’s not to like?
I’m happy to say legacy systems made me a better, more effective and disciplined tester and if you get the opportunity to work on one go for it!
As for the development challenges well you know what they say, "old Cobol Programmers don’t die – they just smell that way..."
By R.Mort (Old CICS Cobol Programmer) a.k.a. New Business Director
Back to Blog