Maintainability
Summary: Designing software so that it is easy for many different people to work on it productively over its entire lifetime.
Sources: chapter1
Last updated: 2026-04-15
Maintenance is not just about fixing bugs; it’s also about keeping the system operational, investigating failures, adapting to new platforms, and adding new features. Three design principles can help:
- operability: Make it easy for operations teams to keep the system running smoothly.
- simplicity: Make it easy for new engineers to understand the system, by removing as much complexity as possible.
- evolvability: Make it easy for engineers to make changes to the system in the future, adapting it for unanticipated use cases.