什么是软件质量保证?
软件质量可以从外部和内部属性来评估。外部质量关注软件在真实运行环境中的表现,以及它对用户是否有用。内部质量关注底层代码。用户主要感受到的是软件的外部行为,而要维持这种质量,离不开清晰、编写良好的代码。
软件质量
什么是软件质量保证?
评估软件质量有两种重要方法。
- 缺陷管理法
- 质量属性法
缺陷管理法
早期的软件产品质量模型 ISO/IEC 9126-1 将质量属性归为六项特性。
质量属性法
1. 功能性 软件提供的全部重要功能。
- 适合性。软件功能是否符合预期用途?
- 准确性。功能是否正确实现?
- 互操作性。软件如何与系统的其他组件交互?
- 合规性。软件是否遵守适用的法律和指南?
- 安全性。软件能否安全地处理数据事务?
- 成熟性。软件发生故障的频率有多高?
- 易恢复性。发生故障后,系统能否顺利恢复完整运行?
- 易理解性。用户能否轻松理解各项功能?
- 易学性。经验水平不同的用户需要花多少精力才能理解各项功能?
5. 可维护性 也称可支持性。它在很大程度上取决于代码的可读性和复杂度,涉及发现和修复缺陷的能力。
- 易分析性。找到故障的主要原因有多容易?
- 易修改性。修改代码并消除缺陷需要多少工作?
- 稳定性。系统在修改后的表现有多稳定?
- 易测试性。测试系统需要多少工作?
- 适应性。系统适应规格变化有多容易?
- 易安装性。安装系统有多容易?
- 一致性。对应功能性中的合规性。
- 易替换性。在给定环境中替换某个系统组件有多容易?
软件质量成本
测试需要投入时间、金钱和精力。分析软件质量成本有助于了解这些投入的回报,即投资回报率(ROI)。
软件质量成本
质量成本包括符合性成本和不符合性成本。符合性成本包括以下几类。
- 预防成本。正确实施质量保证措施的成本,包括团队培训、代码评审及其他质量保证活动。
- 评价成本。计划和开展测试的成本,包括设计与执行测试用例。
- 内部失败成本。初期的内部测试失败所带来的成本,包括开发人员修复单元测试或组件测试中发现的缺陷所投入的工作。
- 外部失败成本。客户发现测试人员未发现的缺陷所带来的成本。此类成本远高于内部失败成本,尤其是在客户不满意或将软件故障升级处理时。
- 难以跟上变化。随着软件老化,如果只添加新代码以实现功能,同时长期忽略现有代码,软件可能变得更庞大,也更难维护。久而久之,团队将难以识别需要修改的部分。
- 软件本身、工作负载或数据发生变化时,性能可能下降。例如,内存泄漏可能导致运行中的软件消耗越来越多的内存。先衡量问题并调查原因,再决定修复、升级还是替换软件。
- 修复可能引入回归问题,尤其是在其他组件依赖被修改代码的情况下。确认修复解决了原始问题,并测试受影响的行为。综合测试结果、维护成本和业务影响决定下一步。
质量保证制定和实施相关流程,以满足客户的质量要求并遵循软件开发生命周期中的各项规程。它是一种主动的方法,重点包括以下方面。
- 缺陷预防
- 流程
- 持续改进这些流程
质量保证与质量控制
质量保证与质量控制关系密切,各有侧重。质量保证通过流程预防问题。质量控制侧重识别和处理产品质量问题的各项活动。
测试是质量控制的一部分。质量保证和质量控制共同支持质量管理。质量保证通过建立和改进流程,帮助团队满足客户要求。
质量保证与质量控制
质量控制包括验证和控制产品特性,以及检查开发是否满足既定要求。其中最重要的活动是检查和测试产品。
质量控制团队识别不符合公司质量标准的产品或服务。如果发现问题,可以暂停生产,直到问题得到解决。
审核和检查的重要性审核系统地考察组织如何开展软件测试。审核人员评审已记录的流程,检查组织或团队是否遵守既定标准。
检查是对需求、设计或代码等工作成果进行的正式评审。由作者以外的评审人员寻找缺陷以及不符合约定标准的地方。典型的检查包括以下活动。
- 制定计划
- 概要介绍和个人准备
- 检查会议
- 返工
- 跟进
我们保证,学完免费在线培训,您就能通过软件测试认证考试!
-
01
在线报名
选择您希望获得的认可认证,完成报名。
-
02
接收访问码
您的专属考试访问码将立即发送到您的电子邮箱。
-
03
准备并参加考试
学习免费培训材料,在线回答 50 道选择题。
-
04
获得终身有效的认证
领取全球有效的证书和可验证的数字徽章。
您的免费优质在线培训
Software Testing Revealed 第二版已为您备好。
我们与来自各主要行业的知名企业领导者、团队负责人、软件测试教练、导师、专家及权威人士共同开发了这套培训。所有访问 International Software Test Institute™ 的人士都可以学习。您可通过 您的免费软件测试书籍 以及 您的免费优质软件测试培训 获取培训资料。这两个栏目都在顶部菜单中。
这些资料是 International Software Test Institute™ 享有版权的知识产权。我们免费向所有人分享,因为公开我们的专业经验能帮助软件测试从业者,并促进这一领域的发展。
认证考试采用选择题。请学习在线培训,掌握通过考试和获得软件测试认证所需的知识。
我们保证,学完免费优质在线培训,您就能通过软件测试认证考试!
