Definition - What does Software Rot mean?
Software rot is also known as software erosion, code rot, software entropy, bit rot or software decay.
Techopedia explains Software Rot
- Dormant rot: Software that is not used on a consistent basis may eventually become useless as the rest of the application transforms. Variations in software environment as well as user demands play a role in the deterioration as well.
- Active rot: Without constant application of ideal mitigation procedures, software that has undergone constant modifications might lose its integrity gradually. However, most software requires constant updates as well as bug fixing. This may lead to an evolution process, which ultimately makes the program deviate from its original design. As a result of this constant evolution, the logic engineered by the original designers tends to be invalidated, presenting new bugs.
- Unused code
- Environment change
- Seldomly updated code
- Introduce code reviews: Include code reviews as a compulsory step before the release. A clear set of coding guidelines, in addition to training coders for review using these guidelines, is essential.
- Create documentation: Include rules regarding commenting code in the coding guidelines, and make it mandatory for usage. This would force programmers to structure their comments in a consistent manner. This leads to an increase in readability across the code base.
- Mentor new programmers: When adding people to an existing team, make sure to appropriately initiate them in the code base.
- Hire the right ones: Hire the right people with the right set of skills specific for the requirement.