当应用程序或程序无法按照设计的方式运行时,就会出现软件错误。 大多数错误都是系统架构师、设计人员或开发人员所犯的错误。 测试团队使用错误跟踪系统来监控和报告在开发和测试应用程序期间发生的错误。
维基百科中提到: “错误跟踪系统的一个主要组件是用于记录已知错误相关事实的数据库。” “事实可能包括特定错误的报告时间、严重性、不正确的程序行为以及有关如何重现该错误的详细信息,还包括报告该错误的用户身份以及可以修复该错误的程序员。” 2
在整个生命周期中,单个缺陷可能会经历多个阶段或状态。 其中包括:
将根据优先级和严重性来管理错误。 严重性级别有助于确定问题对产品发布的相对影响。 这些分类的数量可能会有所不同,但它们通常包括以下某种形式:
在大多数情况下,都会在错误跟踪数据库中监控状态和严重性级别。 出色的跟踪平台还会与大型的软件开发和管理系统配合使用:更好地评估错误状态以及对整个生产和时间表的潜在影响。
据估计,软件开发人员在每千行代码中就会产生 100 到 150 个错误。4 根据 IT 软件质量联盟 (CISQ) 的一份报告:“即使这些错误中只有一小部分(比如 10%)比较严重,那么相对较小的应用程序(有 20,000 行代码)将有大约 200 个严重的编码错误。” 5
软件测试对于确定和减少错误至关重要。 有效的 QA 流程可以发现数百甚至数千个缺陷,而测试团队则需要管理所有这些缺陷。 将错误跟踪集成到测试工作流程中可以提高效率,因为它可以帮助测试人员对每个错误的状态进行优先级排序、监控和报告。
敏捷顾问 Yvette Francino 说道:“缺陷跟踪有助于确保实际修复系统中发现的错误。” “跟踪工具不仅提供了一种确保跟进的方法,而且还提供了有价值的指标。 根据所使用的工具,团队可以将缺陷与已更改的代码、测试或其他数据联系起来,以便实现可追溯性或缺陷趋势分析。 如果某个模块漏洞百出,那么可能需要复查并重写该模块。” 6
理想情况下,如果错误比较容易修复并且修复成本非常低,那么应尽快进行测试。 IBM 较早的一项研究发现,与在开发阶段提前解决的错误相比,在生产后或发布后发现的缺陷修复成本可能要高出 15 倍。
许多团队目前都在使用一种称为持续测试的方法。 在这种情况下,在开发的所有阶段(从设计和编码到部署)都会进行质量测试和反馈。 人工智能 (AI) 等现代技术也可以通过在生命周期的早期检测和分析错误来简化测试过程。
质量控制对于开发强大的应用程序至关重要。 使用软件测试、变更管理和错误跟踪工具,团队可以发现缺陷、衡量其范围和影响并解决这些缺陷。
在《哈佛商业评论》中,Nicholas Bowen 概述了管理缺陷的过程。 第一步是分类和优先级排序:“通常,团队会优先考虑以下两种类型的错误:导致系统崩溃的错误以及不太严重但可能普遍存在的错误……接下来,确定每个严重性级别的目标响应时间。 如果使用的是新的质量管理系统,那么最初的重点应该是在数小时或数天内修复最严重的错误。 使用该系统时,您可以收集两个关键指标(即传入错误率和错误修复人员效率)的相关数据,并根据需要调整目标。” 他提到过,组织还需要创建一个系统,以供从 CEO 往下的各级人员都可以查看缺陷以及解决缺陷所需的时间。7
出色的错误跟踪系统可以通过提供能实现缺陷监控和报告以及生命周期可追溯性的单一工作流程来简化此过程。 它应该进一步与其他管理系统链接在一起,以便在软件开发和大型组织内共享可见性和反馈。 以 IBM Rational ClearQuest 为例,它提供了一个用于错误跟踪和报告的集中式平台。 它与其他 IBM 开发和变更管理系统相集成,有助于改善开发团队、运营团队和更广泛的团队之间的沟通和协作。
而且,这有助于找到使用 AI 在开发过程早期检测错误的测试和跟踪系统。 它可以优化团队运行的测试数量和类型,自动执行测试过程,并使用 AI 分析过去的缺陷并防止将来出现这些缺陷。
1. https://www.tutorialspoint.com/software_testing_dictionary/defect_logging_and_tracking.htm (链接位于 ibm.com 外部)
2. https://en.wikipedia.org/wiki/Bug_tracking_system (链接位于 ibm.com 外部)
3. https://www.tutorialspoint.com/software_testing_dictionary/defect_life_cycle.htm (链接位于 ibm.com 外部)
4. https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2018-report/The-Cost-of-Poor-Quality-Software-in-the-US-2018-Report.pdf (链接位于 ibm.com 外部)
6. https://techbeacon.com/pros-cons-defect-tracking (链接位于 ibm.com 外部)
7. https://hbr.org/2019/09/why-fixing-software-bugs-should-be-the-ceos-problem (链接位于 ibm.com 外部)