缺陷跟踪系统
   
    一个可靠有效易用的缺陷跟踪软件系统,对于缺陷跟踪流程的有效实施有着至关重要的作用。如果没有缺陷跟踪系统的帮助,缺陷跟踪流程的实施将很难进行。反之,则事半功倍。
   
    目前成熟的缺陷跟踪管理软件有不少。商业软件有Compuware公司的TrackRecord和IBM公司的Rational ClearQuest等。开源软件有Buzilla、Mantis和BugFree等。这类系统通常是基于Web的应用程序。下面的列表给出了很多缺陷跟踪程序的功能,从基本的到高级的:
   
    ● 一种捕获和记录应用程序问题/缺陷的机制
   
    ● 一个的数据仓库,用于保存长期以来的历史问题和解决方案
   
    ● 具有提示地或自动地收集问题相关信息
   
    ● 集成服务台(Help desk)程序
   
    ● 集成的FAQ或自动帮助支持如决策树分析
   
    ● 从通知到解决问题的工作流跟踪管理
   
    ● 自动的问题优先处理以及对于严重问题的"红色警报"通知
   
    ● 根据问题数据自动触发相应的行为(例如立即转换到额外的工作流)
   
    ● 自动的、具有提示的或者人工的分析支持
   
    ● 详细的标准和特殊查询功能
   
    ● 集成的版本控制系统和其数据库
   
    ● 大范围的决策支持报告,例如部门总结和趋势分析报告
   
    ● 对于数据知识库的特殊查询能力
   
    ● 详细的问题日志,每天、每星期、每个月的总结,单独问题的打印等等
   
    ● 在报告中生成图形或其他图像元素
   
    ● 集成的自动通过电子邮件、电话及书面方式的警告
   
    ● 知识库数据的输入和输出功能
   
    ● 集成的其它的缺陷或问题报告系统
   
    作者所在的公司根据实践的需要自主开发了一套缺陷跟踪系统,以支持全公司范围内所有项目的缺陷跟踪。该系统是基于B/S结构,使全球各个研发中心都能实时的查看和修改缺陷的状态。为确保数据的安全性和可靠性,后台使用了Oracle作为缺陷数据库。它拥有以上提到的自动通知等功能,并与变更管理系统集成在一起。对于查询功能还有改善的空间。
   
    正式的缺陷跟踪在整个软件开发生命周期中起到了至关重要作用。通过回顾缺陷跟踪系统中收集的各种缺陷,可以对软件开发过程进行相当有深度的洞察,特别是哪些地方成功了,哪些地方还需要改进。将这些程序集成到软件开发过程中,能够有力地支持项目开发和质量保证工作,例如鉴定和调整用户需求的收集、确定测试的改进方案或整体可用性。