Maintainability
Topics: Software development, DevOps
Maintainability is the ease with which software and services can be understood, changed, and restored after failures.
Maintainability in software engineering
Maintainable code has several attributes:
Maintainability in operations
Maintainability factors into Availability by describing how downtime originates and is resolved. When an incident causing downtime occurs, maintainable services can be repaired quickly.
Proactive maintainability involves building a codebase that can be easily understood and changed.
Reactive maintainability describes a service’s ability to be repaired after incidents.
SLO/SLI with error budgets can give a good indication where spending effort on maintainability improvements will be the most effective.