缺陷管理流程


缺陷管理流程

在本节中,我们将了解缺陷管理流程的工作。

此外,请参阅软件测试中的缺陷、缺陷管理过程的目标缺陷管理过程、缺陷管理过程的优缺点。

但是,首先,我们将了解缺陷管理的过程,我们将了解软件测试中缺陷

软件测试中的缺陷

  • 程序员在代码中宣布的错误称为
  • 换句话说,我们可以说当应用程序没有按照要求工作时被称为缺陷
  • 它被指定为应用程序或软件的实际和预期结果的不规则性。
  • 缺陷是实际的结果和预期的输出之间的差。
  • 测试工程师可以识别的缺陷,它是由在开发阶段的开发人员修复软件开发生命周期
  • 当测试工程师测试一段代码时,他/她会发现预期输出与现有输出之间存在差异,这称为缺陷。缺陷的替代可以进一步称为软件测试中的问题、错误和事件

什么是缺陷管理流程?

缺陷管理流程是软件测试的核心。一旦发现缺陷,对于任何组织来说,最重要的活动就是管理缺陷,不仅对测试团队如此,而且对参与软件开发或项目管理过程的每个人也是如此。

众所周知,缺陷预防是减少缺陷数量的有效方法。缺陷预防是一个非常具有成本效益的过程,用于修复在软件过程的早期阶段发现的那些缺陷。

缺陷管理过程是过程,其中大多数组织的管理缺陷发现,缺陷移除,然后工艺改进

顾名思义,缺陷管理流程 (DMP)通过纯粹检测和解决或修复故障来管理缺陷。

不可能使软件 100% 错误或无缺陷,但可以通过修复或解决一些缺陷来拒绝它们。

缺陷管理过程主要侧重于阻止缺陷、在早期阶段发现缺陷以及调节缺陷的影响。

缺陷管理过程 (DMP) 的目标

缺陷管理过程的主要目标如下所述:

  • DMP 的主要目标是在软件开发过程的早期阶段暴露缺陷。
  • 缺陷管理流程的执行将帮助我们改进软件的流程和实施。
  • 缺陷管理过程减少了缺陷对软件的影响。
  • 缺陷管理流程 (DMP) 帮助我们避免缺陷。
  • 缺陷管理过程的主要目标是解决或修复缺陷。

对于不同的组织或项目,缺陷管理过程的关键目标如下:

  • 缺陷管理流程允许我们为有关缺陷的状态和进度报告提供输入。
  • 找出缺陷如何发生以及如何处理的主要原因。
  • 提供输入,获取与发布缺陷相关的信息。

缺陷管理过程的各个阶段

缺陷管理过程包括几个阶段,具体如下:

  1. 缺陷预防
  2. 交付基线
  3. 缺陷发现
  4. 缺陷解决
  5. 流程改进
  6. 管理报告

让我们一一讨论它们:

缺陷管理流程

1. 缺陷预防

缺陷管理过程的第一阶段是缺陷预防。在这个阶段,程序、方法和标准方法的执行降低了缺陷的风险。在初始阶段去除缺陷是减少其影响的最佳方法。

因为在初始阶段修复或解决缺陷的成本较低,而且影响也可以减少。

但是对于未来的阶段,识别故障然后修复它是一个昂贵的过程,而且缺陷的影响也会被放大。

缺陷预防阶段包括以下重要步骤:

  • 估计可预测的影响
  • 最小化预期影响
  • 识别关键风险

缺陷管理流程

步骤 1:估计可预测的影响

在这一步中,如果遇到风险,那么我们可以计算每个关键场合的估计财务影响。

步骤 2:最小化预期影响

当所有的关键风险都被发现后,我们就可以承担遇到可能对系统造成危险的最高风险,并尝试减少或消除它。

那些无法消除的风险将降低存在的可能性及其财务影响。

步骤 3:识别关键风险

在缺陷预防方面,我们可以快速识别系统的关键风险,如果它们在整个测试过程中或在未来阶段发生,将会产生更大的影响。

2. 可交付基线

缺陷管理过程的第二阶段是可交付成果基线。在这里,可交付成果定义了系统、文档或产品

我们可以说,一旦交付物达到其预定义的里程碑,交付物就是基线

注意:预定义里程碑描述了软件应该完成的任务。

在这个阶段,可交付成果从一个步骤带到另一个步骤;系统现有的缺陷也向前迈进了下一步或里程碑。

换句话说,我们可以说,一旦对可交付成果进行了基线化,任何额外的更改都将受到控制。

3. 缺陷发现

缺陷管理过程的下一阶段是缺陷发现。在缺陷管理过程的早期阶段,缺陷发现非常重要。后来,它可能会造成更大的损害。

如果开发人员已批准或记录该缺陷为有效缺陷,则仅将缺陷视为已发现\

正如我们所理解的,从系统中消除每个缺陷并使系统无缺陷实际上是不可能的。但是我们可以在缺陷对项目造成代价之前及早发现它们。

以下阶段已包括在缺陷发现阶段;让我们详细了解它们:

  • 识别缺陷
  • 报告缺陷
  • 承认缺陷

缺陷管理流程

阶段 1:识别缺陷

在缺陷发现的第一阶段,我们需要在成为关键问题之前找到缺陷。

阶段 2:报告缺陷

在测试团队发现缺陷的那一刻,他们需要将已知问题分配给开发团队以进行进一步的评估和修复过程。

阶段 3:承认缺陷

一旦测试工程师将缺陷移交给指定的开发人员,现在开发团队就有责任承认错误并在缺陷有效时继续修复它。

4. 缺陷解决

一旦缺陷发现阶段成功完成,我们将进入缺陷管理过程的下一步,缺陷解决

缺陷解决是固定的缺陷的步骤一步的过程中,或者我们可以说,这个过程是为了指定有益和跟踪缺陷。

这个过程从将缺陷移交给开发团队开始。开发人员需要继续解决缺陷并根据优先级修复它们

一旦选择了缺陷,开发人员就会向测试经理的测试团队发送一份缺陷解决报告。

缺陷解决过程还涉及向测试工程师返回通知以确认解决方案已得到验证。

我们需要按照以下步骤来完成缺陷解决阶段。

  • 优先考虑风险
  • 修复缺陷
  • 报告决议

缺陷管理流程

步骤 1:优先考虑风险

在缺陷解决的第一步,开发团队评估缺陷

并安排故障修复。如果缺陷对系统的影响更大,那么开发人员需要以高优先级修复这些缺陷。

Step2:修复缺陷

在第二步中,开发人员将根据优先级修复缺陷,这意味着首先解决更高优先级的缺陷。然后开发人员将修复较低优先级的缺陷。

步骤 3:报告解决方案

在缺陷解决的最后一步,开发者需要发送修复的缺陷报告。因为开发团队有责任确保测试团队非常清楚何时修复缺陷以及如何修复故障。

这一步将有利于测试团队从角度了解缺陷的根源。

5. 流程改进

在上述阶段(缺陷解决),缺陷已经被安排和修复。

现在,在流程改进阶段,我们将调查优先级较低的缺陷,因为这些缺陷也是必不可少的,并且会影响系统。

从流程改进阶段的角度来看,所有已确认的缺陷都等于关键缺陷,需要修复。

参与此特定阶段的人员需要回忆并检查缺陷是从哪里开始的。

根据这一点,我们可以在验证过程、基线文档、审查过程中进行修改,以便在过程早期发现缺陷,并降低过程成本。

这些小缺陷使我们能够了解如何改进流程并避免将来可能影响系统或产品故障的任何类型的缺陷的存在。

6. 管理报告

管理报告缺陷管理过程的最后阶段。它是缺陷管理过程中重要且必不可少的部分。需要管理报告以确保生成的报告具有目标并增加缺陷管理过程。

简单来说,我们可以说缺陷信息的评估和报告支持组织和风险管理、过程改进和项目管理。

项目团队收集的关于特定缺陷的信息是管理报告的根源。因此,每个组织都需要考虑在整个缺陷管理过程中收集的信息和单个缺陷的分组。

缺陷工作流和状态

错误/缺陷生命周期中跟踪缺陷并包含缺陷报告的工具的帮助下实现软件测试的各种组织。

通常,缺陷生命周期的每个状态都有一个缺陷报告的所有者,负责完成将缺陷报告移动到后续状态的任务。

有时,如果我们可能面临以下情况,则缺陷报告在缺陷生命周期的最后阶段可能没有所有者

  • 如果缺陷无效,则缺陷报告被取消
  • 如果缺陷不会作为项目的一部分进行修复,则缺陷报告将被视为延期
  • 如果不能再检测到故障,则缺陷报告被视为不可再现
  • 如果缺陷已被修复和测试,则缺陷报告被视为已结束

缺陷状态

如果在整个测试过程中发现了缺陷,则测试团队必须在以下三种状态下对其进行管理:

  • 初始状态
  • 返回状态
  • 确认状态

缺陷管理流程

1. 初始状态

  • 它是缺陷的第一状态,也称为开路状态。
  • 一位或几位测试工程师负责收集所有必需的数据以修复此状态下的缺陷。

2. 返回状态

  • 缺陷的第二种状态是返回状态。在这种情况下,收到测试报告的人拒绝并要求报告创建者提供更多信息。
  • 在退回状态下,测试工程师可以提供更多信息或接受拒绝报告。
  • 如果各种报告被拒绝,测试经理应该在初始信息收集过程本身中寻找错误。
  • 返回状态也称为澄清状态或拒绝状态

3. 确认状态

  • 缺陷的最后一个状态是确认状态,测试工程师执行确认测试以确保缺陷已被修复。
  • 它是通过重复测试时发现缺陷的步骤来实现的。
  • 如果缺陷得到解决,则报告关闭。
  • 如果缺陷未解决,则该报告将被视为重新打开并报告给以前保留缺陷报告以进行修复的所有者。
  • 确认状态也称为已验证或已解决状态

缺陷管理流程的优势

以下是缺陷管理过程最重要的好处:

确认解决方案

  • 缺陷管理流程还将帮助我们确保跟踪缺陷的解决方案。

自动化工具的可访问性

  • 缺陷管理过程中最重要的过程之一是缺陷或错误跟踪过程

  • 对于缺陷跟踪,市场上有各种自动化工具,可以帮助我们在早期阶段跟踪缺陷。

  • 如今,可以使用各种不同的工具来跟踪不同类型的缺陷。

    例如,

    • 软件工具:这些类型的工具用于识别或跟踪非技术问题。
    • 面向用户的工具:这些类型的工具将帮助我们发现与生产相关的缺陷。

提供有价值的指标

  • 缺陷管理流程还为我们提供了有价值的缺陷指标以及自动化工具。
  • 这些宝贵的缺陷指标帮助我们进行报告和持续改进。

缺陷管理过程的缺点

缺陷管理过程的缺点如下:

  • 如果缺陷管理流程执行不当,那么我们可能会失去客户、收入损失和品牌声誉受损。
  • 如果缺陷管理流程处理不当,那么在产品价格上涨的情况下,成本会被放大。
  • 如果缺陷在早期没有得到妥善解决,那么之后缺陷可能会造成更大的损害,并且修复缺陷的成本也会增加。

概述

在本文中,我们已经看到了软件测试中的缺陷、缺陷管理过程、优点和缺点。

软件测试中,缺陷管理过程很重要,因为我们知道任何软件编写的代码,都需要测试缺陷。

缺陷管理的过程包括发现软件中的缺陷并修复它们。完整的缺陷管理流程将帮助我们在早期阶段发现缺陷,并确保交付高质量的产品。

缺陷管理流程的执行可确保在将应用程序移至生产环境时,应用程序中不再存在缺陷。这样做的结果将节省很多钱。

在敏捷方法中,缺陷管理过程特别重要,因为开发冲刺还必须包含测试工程师的参与、参与和行动。

在任何组织中,高级管理层也应该从公司改进的角度来理解和支持缺陷管理过程。