随着系统和团队规模逐渐成长,开发质量问题1一般有增多趋势。
错误(包括低级错误)是不能完全避免的。开发人员如何减少错误呢?
有两个方面的事情可以做:
一是依靠团队和合理的过程,相互检查排错。比如结对编程、codereview、代码静态扫描、各种评审会议等等,都是属于这类。
另一个方面,是构建并依靠合理的系统结构。合理的系统结构一来可以分割复杂度,使开发人员面临相对简单的工作,减小错误发生的概率;二来即使错误发生,可以将错误的影响面限制在组件内部,减小全局影响。
可以说前一方面偏于对症治疗,而第二方面偏于对因治疗。对因治疗当然更利于根本性地杜绝错误,但很多时候对症治疗更加直接有效,同时为对因治疗赢得时间和资源。
-
这里说的“开发质量问题”,指的是由于局部错误造成的系统问题。特别是那些由开发人员个人错误造成的问题。↩