外部质量因素:
- 正确性:严格遵循spec,即正确输入情况下应给出正确输出
- 健壮性:针对异常情况的处理,即错误输入下仍能“优雅退出”
- 可扩展性:应对spec的变化能力,即能以较小的代价进行代码修改
- 可复用性:发现并利用共性
- 兼容性
- 可移植性
- 易用性
- 高性能
- ......
内部质量因素:
代码是否可读、易懂、清晰、篇幅不会太长......
总结:外部质量因素是面向客户的,客户端在意的因素。内部质量因素与与客户端不直接相关,只关系到程序员自己编程过程中的体验与代码质量。但内部质量因素会影响,甚至可能决定外部质量因素。