测试风险是不可避免的、总是存在的,所以对测试风险的管理非常重要,必须尽力降低测试中所存在的风险,最大程度地保证质量和满足客户的需求。在测试工作中,主要的风险有:
- 质量需求或产品的特性理解不准确,造成测试范围分析的误差,结果某些地方始终测试不到或验证的标准不对;
- 测试用例没有得到百分之百的执行,如有些测试用例被有意或无意的遗漏;
- 需求的临时/突然变化,导致设计的修改和代码的重写,测试时间不够;
- 质量标准不都是很清晰的,如适用性的测试,仁者见仁、智者见智;
- 测试用例设计不到位,忽视了一些边界条件、深层次的逻辑、用户场景等;
- 测试环境,一般不可能和实际运行环境完全一致,造成测试结果的误差;
- 有些缺陷出现频率不是百分之百,不容易被发现;如果代码质量差,软件缺陷很多,被漏检的缺陷可能性就大;
- 回归测试一般不运行全部测试用例,是有选择性的执行,必然带来风险。
前面三种风险是可以避免的,而4)至7)的四种风险是不能避免的,可以降到最低。最后一种回归测试风险是可以避免,但出于时间或成本的考虑,一般也是存在的。
针对上述软件测试的风险,有一些有效的测试风险控制方法,如:
- 测试环境不对可以通过事先列出要检查的所有条目,在测试环境设置好后,由其他人员按已列出条目逐条检查;
- 有些测试风险可能带来的后果非常严重,能否将它转化为其他一些不会引起严重后果的低风险。如产品发布前夕,在某个不是很重要的新功能上发现一个严重的缺陷,如果修正这个缺陷,很有可能引起某个原有功能上的缺陷。这时处理这个缺陷所带来的风险就很大,对策是去掉(Diasble)那个新功能,转移这种风险;
- 有些风险不可避免,就设法降低风险,如“程序中未发现的缺陷”这种风险总是存在,我们就要通过提高测试用例的覆盖率(如达到99.9%)来降低这种风险;
为了避免、转移或降低风险,事先要做好风险管理计划和控制风险的策略,并对风险的处理还要制定一些应急的、有效的处理方案,如:
- 在做资源、时间、成本等估算时,要留有余地,不要用到100%;
- 在项目开始前,把一些环节或边界上的可能会有变化、难以控制的因素列入风险管理计划中;
- 对每个关键性技术人员培养后备人员,作好人员流动的准备,采取一些措施确保人员一旦离开公司,项目不会受到严重影响,仍能可以继续下去;
- 制定文档标准,并建立一种机制,保证文档及时产生;
- 对所有工作多进行互相审查,及时发现问题,包括对不同的测试人员在不同的测试模块上相互调换;
- 对所有过程进行日常跟踪,及时发现风险出现的征兆,避免风险。
要想真正回避风险,就必须彻底改变测试项目的管理方式;针对测试的各种风险,建立一种“防患于未然”或“以预防为主”的管理意识。与传统的软件测试相比,全过程测试管理方式不仅可以有效降低产品的质量风险,而且还可以提前对软件产品缺陷进行规避、缩短对缺陷的反馈周期和整个项目的测试周期。
参考: 测试执行中非常有效的策略
补充材料: 关于风险管理的方法风险管理,一般可以分成5个步骤,即风险识别、风险分析、风险计划、风险控制以及风险跟踪。
1. 风险识别 风险识别是试图用系统化的方法来确定威胁项目计划的因素。识别方法包括风险检查表、头脑风暴会议、流程图分析以及与项目人员面谈等。前两种方法是比较常用的。风险检查表建立在以前开发类似的项目中曾经遇到的风险基础上,比如开发时利用了某种技术,那么有过这种技术开发经验的个人或者项目组就能指出他们在利用这种技术时遇到过的问题;头脑风暴会议可以围绕项目中有可能会出现哪些范围、进度、成本和质量方面的问题这一议题展开,讨论和列举出项目可能出现的风险。对不同的项目应该具体问题具体分析,识别出真正可能发生在该项目上的风险事件。
2. 风险分析 风险分析可以分为定性风险分析和定量风险分析。定性风险分析是评估已识别风险的影响和可能性的过程,以根据风险对项目目标可能的影响对风险进行排序。它在明确特定风险和指导风险应对方面十分重要。定量风险分析是量化分析每一风险的概率及其对项目目标造成的后果,同时也要分析项目总体风险的程度。
不同的风险发生后对项目造成的影响各不相同,主要有以下3个方面需要考虑:
- 风险的性质,即风险发生时可能产生的问题;
- 风险的范围,即风险的严重性及其总的分布;
- 风险的时间,即何时能感受到风险及风险维持多长时间。
据此确定风险估计的加权系数,得到项目的风险估计。然后通过对风险进行量化、选择和排序,可以知道哪些风险是必须要应对,哪些是可以接受,哪些是可以忽略。进行风险管理应该把主要精力集中在那些影响力大、影响范围广、概率高以及可能发生的阶段性的风险上。
3. 风险计划制定风险行动计划,应考虑以下部分:责任、资源、时间、活动、应对措施、结果、负责人。建立示警的阈值是风险计划过程中的主要活动之一,阈值与项目中的量化目标紧密结合,定义了该目标的警告级别。
该阶段涉及到参考计划、基准计划和应急计划等不同类型的计划。
- 参考计划是用来与当前建议进行比较的参考点。
- 基准计划是建议的计划编制基础,是提出的项目实施的起始位置。
- 应急计划是建立在基准计划基础上的建议补充计划,包括启动意外情况应对措施的触发点。
在这一阶段有巩固与解释、选择与细化、支持与说服等特定的任务。
4. 风险控制方法主要采用的应对方法有风险避免、风险弱化、风险承担和风险转移等。
- 风险避免:通过变更软件项目计划消除风险或风险的触发条件,使目标免受影响。这是一种事前的风险应对策略。例如,采用更熟悉更成熟的技术、澄清不明确的需求、增加资源和时间、减少项目工作范围、避免不熟悉的分包商等。
- 风险弱化:将风险事件的概率或结果降低到一个可以接受的程度,当然降低概率更为有效。例如,选择更简单的开发流程、进行更多的系统测试、开发软件原型系统、增加备份设计等。
- 风险承担:表示接受风险,不改变项目计划(或没有合适的策略应付风险),而考虑发生后如何应对。例如制定应急计划、风险应变程序,甚至仅仅进行应急储备和监控,发生紧急情况时随机应变。在实际中,如软件项目正在进行中,有一些人要离开项目组,可以制定应急计划,保障有后备人员可用,同时确定项目组成员离开的程序,以及交接的程序。
- 风险转移:不去消除风险,而是将软件项目风险的结果连同应对的权力转移给第三方(第三方应知晓有风险并有承受能力)。这也是一种事前的应对策略,例如签订不同种类的合同,或签订补偿性合同等。
5. 风险跟踪 在风险受到控制以后,我们要及时进行跟踪,做好风险跟踪:
- 监视风险的状况,例如风险是已经发生、仍然存在还是已经消失;
- 检查风险的对策是否有效、跟踪机制是否在运行;
- 不断识别新的风险并制定对策。
可以通过以下几种方法进行有效的风险跟踪:
- 风险审计:项目管理员应帮助项目组检查监控机制是否得到执行。项目经理应定期进行风险审核,尤其在项目关键处进行事件跟踪和主要风险因素跟踪.以进行
- 风险的再评估;对没有预计到的风险制定新的应对计划。
- 偏差分析:项目经理应定期与基准计划比较,分析成本和时间上的偏差。例如,未能按期完工、超出预算等都是潜在的问题。
- 技术指标分析:技术指标分析主要是比较原定技术指标和实际技术指标差异,例如,测试未能达到性能要求等。
预知后事如何,请读下回分解:第21回 测试用例设计方法的综合运用<o:p> </o:p>版权所有,软件测试演义®<o:p></o:p> ——系列讨论的目录,见: 软件测试演义——中高级系列(序)
分享到:
相关推荐
### 风险管理模拟A卷试题解析 #### 虚拟化技术 1. **题目解析**:虚拟化技术是指在物理硬件上构建一层软件层,通过这层软件可以创建、运行和销毁多个虚拟服务器的技术。选项D“软件层”最符合题目描述。 **扩展...
第二章 信息科技治理 本章节介绍了信息科技治理的重要性和原则,强调了信息科技治理在商业银行风险管理中的作用。信息科技治理是指商业银行对信息科技的规划、组织、领导和控制,旨在确保信息科技的安全、可靠和...
第07章 风险管理 第08章 需求管理 第09章 需求开发 第10章 技术预研 第11章 系统设计 第12章 实现与测试 第13章 系统测试 第14章 Beta测试 第15章 客户验收 第16章 技术评审 第17章 配置管理 第18章 质量保证 第19章...
20. 预期损失计算(选择题第20题)涉及违约概率和违约回收率,该题目中银行的预期损失是12亿。 21. 相关系数(选择题第21题)的论述正确的是D,即没有具体给出,无法判断。 这些知识点涵盖了风险管理的基本概念、...
测试用例设计是软件开发过程中的关键环节,它关乎到软件的质量、稳定性和可靠性。本章将深入探讨测试用例设计的基本概念...通过阅读“第 20 章:测试用例设计.pdf”,读者将能够深入了解这一领域的核心概念和实践方法。
第7章 风险管理 第8章 需求管理 第9章 需求开发 第10章 技术预研 第11章 系统设计 第12章 实现与测试 第13章 系统测试 第14章 Beta测试 第15章 客户验收 第16章 技术评审 第17章 配置管理 第18章 质量保证 第19章 ...
随着第二次世界大战期间项目管理在军事领域的应用,其重要性得到了进一步的认识。到了1980年代,现代项目管理理论和实践开始形成,随后,项目管理专业组织如美国项目管理协会(PMI)推出了项目管理专业资格认证(PMP...
* 测试管理工具(Test Management Tools):例如测试计划、测试用例、测试数据等 * 测试自动化工具(Test Automation Tools):例如自动化测试脚本、测试数据生成等 * 测试环境设置(Test Environment Setup):例如...
**第二章 信息科技治理** 信息科技治理是银行内部管理的重要组成部分,涉及决策、监督和执行机制,确保科技策略与业务目标相一致。这一章可能详细阐述了如何建立有效的科技决策机制,制定科技战略,以及实施科技项目...
第07章 风险管理 第08章 需求管理 第09章 需求开发 第10章 技术预研 第11章 系统设计 第12章 实现与测试 第13章 系统测试 第14章 Beta测试 第15章 客户验收 第16章 技术评审 第17章 配置管理 第18章 质量保证 第19章...
**第二部分:项目背景** 项目背景包含项目的产品概述、参与单位以及政策背景。项目产品描述应包括其功能特性、目标用户和市场定位。参与单位包括开发商、测试团队、客户等。政策背景则关注法规要求和行业标准,这些...
【标题】: 风险应对 - 完整之第十二章 【描述】: 本章主要讨论了风险应对的策略,特别是针对会计审计过程中的风险管理和控制测试。 【标签】: 资料 【部分内容】: 风险应对在审计过程中至关重要,涉及对潜在风险...
#### 二十四、制定好的测试计划的关键要素 - **明确目标**:清楚地定义测试的目标。 - **合理分配资源**:根据测试需求合理分配人力资源。 - **风险评估**:识别潜在的风险并制定应对措施。 - **时间安排**:制定...
16【第11章】项目风险管理 17【第12章】项目采购管理 18【第13章】项目合同管理 19【第14章】文档和配置管理 20【第15-19章】知识、战略、组织级项目、流程管理 21【第20-21章】项目集、项目组合管理 22【第22章】...
第二十二章“信息系统综合测试与管理”讨论了系统测试的方法、测试计划的制定、缺陷管理以及系统上线后的维护和监控。 第二十三章“项目管理成熟度模型”可能涉及CMMI(能力成熟度模型集成)等框架,介绍如何评估和...
第二章:软件缺陷管理 这一章讲解了软件缺陷(bug)的概念,如何记录和跟踪缺陷,以及使用缺陷管理工具的重要性。同时,介绍了缺陷生命周期,包括新建、开放、已修复和关闭等状态,帮助读者理解缺陷处理的流程。 第...
12. **测试用例管理**:包括测试用例的创建、维护、执行和跟踪,通常使用专门的测试管理工具如JIRA、TestRail等。 通过学习和掌握这些测试用例设计的知识点,不仅可以提升软件质量,还能在软考中取得理想的成绩。在...
- **安全措施**:第二十九条规定强调了对所有终端用户设备的安全保障措施,包括但不限于个人电脑、移动设备、柜员终端等关键设施的安全管理。这不仅是对外部威胁的有效防御手段,也是内部安全管控的重要组成部分。 -...
软件测试工程管理涉及测试计划、测试进度监控、资源管理、风险管理等,确保测试过程的系统性和有效性。 第十八章:试题与答案 这部分可能提供了针对书中内容的练习题和解答,帮助读者巩固学习成果。 总之,《软件...