软件质量保障:从静态检查到问题追踪的全面指南
1. 缺陷与问题追踪
1.1 缺陷概述
缺陷是软件开发结果中导致软件无法按预期运行的问题,我们常将“bug”和“defect”互换使用,同时也会用更通用的“issue”来指代所有需要追踪的事项。缺陷的来源广泛,包括需求、架构、设计和实现等方面的问题。一旦发现问题,就应追踪其解决过程。
1.2 问题追踪的重要性
记录问题能直接或间接地帮助我们了解系统是否达到所需的可靠性。除了提供待修复的任务列表,缺陷追踪数据库还能揭示系统中哪些部分是“问题高发区”(bug farms),即那些导致系统出现大量问题的代码小段,从而帮助我们确定需要重新开发的部分。
1.3 可能的症状
如果存在以下情况,说明问题追踪工作做得不够:
- 没有待修复的单一 bug 列表。
- 没有标注根本原因的已修复 bug 列表。
- 没有对 bug 原因进行分析,至少应按代码模块进行分析,最好能包括缺陷来源(如需求、设计、编码等)。
- 没有针对软件当前或未来版本需解决的非缺陷问题的单一来源。
1.4 不追踪问题的风险
不进行问题追踪可能会导致以下风险:
- 重要的 bug 未得到修复,可能是因为忘记哪些 bug 还未解决,或者对 bug 修复的优先级排序不当。
- 浪费资源逐个修复“问题高发区”的缺陷,而不是对整个有缺陷的模块进行重新设计。
- 试图通过修改实现或使用变通方法来修复由需求或架构问题导致的 bug,而没有解决问题的根本原因。
超级会员免费看
订阅专栏 解锁全文
886

被折叠的 条评论
为什么被折叠?



