How to Plan for Software Maintenance
What to consider after going live, planning and design
After months of hard work, green-lighting quality metrics, passing FATs and SATs, your software is now ready for prod. You flick the switch and you’re live. Congratulations.
Users begin to use your software and the first bug reports start hitting your issue tracker. As your features get exploited more and more, new ideas and enhancements reach your feedback channels. A security report comes in, tagging a well-trusted library with a serious vulnerability. Your software needs maintenance, but have you properly planned for it?
Types of software maintenance
As engineers we love to build things, but will our creations stand the test of time? Have you imagined a public road without its asphalt ever reapplied? A car without ever going to a service-garage? How about a metallic bridge that is never recoated for corrosion? Although software may not manifest in the form of a physical object, it surely undergoes decay and needs to be maintained to remain operational:
Software maintenance in software engineering is the modification of a software product after delivery to correct faults, to improve performance or other attributes. — Wikipedia