Legacy code – The Unanimous Scapegoat in an Engineer’s life
The Definition
It’s a code written to perform a certain task / operation / function / executable file / feature / technology / version / product at a given time with given resources / technology / requirements / constraints / leadership / vision in limited or unlimited time frame by mixed level of Developers
Today’s perfect code will become tomorrow’s legacy code if we Engineers don’t pay attention.
By Anuj Garg
Let’s have a look at Questions and fear surrounding Legacy code
The Fear of Unknowns and Answerable but Never Asked Questions
- Often you get to hear that Legacy code is too complex – How do I simplify the code?
- Legacy code was written by previous developers and the logic is unknown to us – How do I understand the code written by earlier Developers?
- Legacy code does not have any documentation- How do I start Documenting the Legacy?
- We can’t predict or analyze what change will impact Which part of the code – How do I perform impact analysis of the code and facilitate the change request?
- We cannot estimate efforts for any new changes – How do I estimate efficiently and accurately provided so much of complexity and unknown factors?
- Let’s abolish this shitty code and write from scratch – How to continue with the code and keep improving it till the Legacy is no more a legacy?
- Everything seems like a patch and we are patching even more – How to avoid patching and rewrite small part of the code in question?
- It’s impossible to test any code written previously – How do I divide the Existing code into units which can be tested?
What’s your Reaction?
+1
+1
+1
+1
+1
+1
+1