三者是不同的软件质量属性。
可维护性、可复用性又被认为是两个最重要的用于衡量软件质量的属性。
在《Java设计模式》一书中对可维护性的定义为:指软件能够被理解、改正、适应及扩展的难易程度。
对可复用性的定义为:指软件能够被重复使用的难易程度。
可见可维护性和可复用性是区分开的。
但一般说到可维护性指的是改正性维护,根据修复一个问题所花的平均时间和修复正确的百分比来衡量。
广义上的可维护性也包括扩展可维护性,此时可扩展性是可维护性的一部分。(可以想见可理解性也是可维护性的一部分)
改正侧重改,扩展侧重增。
下面附上两张老师上课的ppt。
(这里说的可维护性就是特指改正可维护性了)