软件测试 - 审计
整个软件开发是一个详尽的过程,它涉及开发、测试完整的软件以及提高其质量。为了实现这一点,需要进行定期审计以了解软件的整体健康状况。
什么是软件审计?
软件审计是指对软件进行详细分析以评估其进步、质量、法规和标准。它主要检查软件的适用性并检查其所有方面是否按计划进行。
软件审计由外部或内部团队进行。如果由外部团队完成,则需要专门的预算和时间来完成该过程。这可能会导致整个软件开发的延迟。
定期进行内部审计是一种很好的做法,以确保软件符合所有法规、指南、许可证、标准等,这样组织将来就不会因为这些违规行为而面临任何法律罚款。
软件审计的好处
软件审计的好处列在下面 −
- 它有助于验证测试过程并提出简化方法。
- 它识别需求和软件开发功能之间的偏差。业务分析师和开发团队之间可能存在沟通差距,这可能会导致软件出现错误。审计有助于识别此类情况。
- 它可以确认软件开发是否符合指南、检查表、标准等。它还可以检测所有可能的风险并提出缓解方法。
- 如果在任何过程中发现任何重大偏差,则会提供适当的反馈以进行改进。
软件审计的目标
进行软件审计的目的是根据适用的标准、指南、计划和程序对软件产品和流程进行独立评估,以确保合规性。
正式审计的角色和职责
- 经理 − 经理决定需要审查的内容,并确保在项目计划中为所有必需的审查活动分配足够的时间。经理通常不参与实际的审查过程。
- 主持人 −主持人(也称为首席审阅者)负责审阅文档集。主持人将最终决定是否发布更新的文档。
- 作者 − 作者是编写待审阅文档的作者。作者还负责修复任何商定的缺陷。
- 记录员/记录员 − 记录员参加审阅会议并记录会议期间确定的所有问题/缺陷/问题和未解决的要点。
不同类型的软件审计
下面列出了不同类型的软件审计 −
内部审计
内部审计在组织内部进行。
外部审计
外部审计在组织外部进行。
合规性审计
进行内部审计是为了验证所遵循的所有流程是否符合标准和规范。如果测试流程需要遵循额外的指导方针、标准和合规性,这种类型的审计也会处理这些。
流程改进
这样做是为了检查所有现有的流程,并发现其中的问题。如果在任何阶段发现问题,则建议改进。
根本原因分析
这样做是为了通过应用各种测试技术来确定问题的根本原因。它是针对需要额外审查和修复的特定问题进行的。
软件审计期间使用的不同指标
软件审计期间使用的不同指标列于下方 −
项目指标
这用于借助以下公式计算测试用例执行的百分比 −
测试执行的百分比 = (通过的测试用例总数 + 失败的测试用例总数 + 被阻止的测试用例总数)/ 测试用例总数。
产品指标
这用于在以下公式 − 的帮助下计算各种参数
严重错误百分比 = 严重错误总数/错误总数。
上述公式有助于确定软件的现有质量。
模块之间的错误分布 = 缺陷总数/功能区域总数。
上述公式有助于确定软件中比其他模块更容易出错的模块。当然,在测试时应该更加关注这些模块。
错误优先级分布用于衡量整个测试过程的效率。需要首先测试具有较高优先级错误的模块,而不是其他模块。
人员指标
这用于计算下面列出的项目 −
- 每个测试人员报告的缺陷 − 这用于计算每个测试人员报告的缺陷数量及其类别,即它们是回归缺陷还是新缺陷。
- 各个测试人员执行的测试用例 − 这用于了解各个测试人员的整体表现。
如何执行软件审计?
软件审计是借助下面列出的步骤执行的 −
- 明确提出审计的目标及其目的。通过明确问题陈述,我们可以从审计中获得最大收益,并解决大多数问题。
- 分析完整的测试方法,并评估其是否按照计划进行,以及在开始流程之前商定的指导方针。
- 完成整个软件的测试后,所有测试工件,即测试计划、测试场景、测试用例、测试执行报告、缺陷、测试覆盖率、可追溯性矩阵等都构成了审查的一部分。
- 在测试过程的各个阶段与各种利益相关者和团队成员交谈,以了解总体进度,并进行审查。
结论
这就是我们对软件审计教程的全面介绍。我们首先描述了什么是软件审计,软件审计的好处是什么,软件审计有哪些不同类型,软件审计期间使用的不同指标是什么,以及如何执行软件审计。这将使您具备软件审计方面的深入知识。明智的做法是继续实践您所学到的知识并探索与软件测试相关的其他知识,以加深您的理解并拓展您的视野。