...
/How to Ensure Successful Maintenance of Software
How to Ensure Successful Maintenance of Software
Learn about best practices that could lead to easy, long-lasting, and well-maintained code.
Overview
This lesson will look at some long-term processes that help the development team. These processes help with the maintenance, readability, and reliability of the software.
When should we upgrade our software?
There are various preferences for software upgrades. For example, software releases in the 80s used to be annual events. There was the extreme view of only accepting an upgrade that provided a real benefit to their project. This did provide a good negotiation position when something needed to be changed since code could only be retired if they had upgraded it.
These days, we see the opposite approach. Upgrades need to be applied as fast as possible. There are so many dependencies involved, that only by continuously upgrading the software are we able to keep the individual changes small. The minimum that can be done in this case is to apply security updates. Services need to be kept inside of support periods, which will require frequent checks. Apply those updates before the old version is at the end of its life so it can be downgraded if needed. Consider using Dependabot to trigger updates. Here are the process considerations we encounter when we use Dependabot to help apply updates:
Do we need this project? If we don't, should we archive it?
Do we need this dependency? If we don't, should we remove it?
Does the project at least have a Jenkinsfile that ...