需求评审知识
1,什么是测试需求分析 测试需求分析是根据软件需求文档(原型工具axure-原型图-蓝湖-墨刀),对软件的功能进行分析,整理出测试点及测试方法的过程。 2,需求评审的重要性 软件的缺陷并不是在编程的时候才出现的,需求和设计阶段都会产生问题,如果缺陷发现的越早,修复这个bug的成本就越低。(提前发现一些问题,并提出合理的建议)
3,进行需求评审的好处 /原则 a. 对软件需求进行正确性的检查,能发现需求定义中的错误,从而节约成本,使后续过程的变更减少,降低风险。 b. 保证软件需求的可测试性,即确认客户的需求是明确的(1.从客户的角度出发2.客户直接提出的需求),可预见的。可以用测试用例反应出来 。 c. 通过产品需求评审,可以使产品,设计,开发,测试等部门相互沟通,达成一致。 一致性 d. 通过产品需求的评审,(新同事)更好的理解产品的功能性和非功能性需求,为制订测试计划,测试范围,工作量等提供参考。
4,需求评审时常发生的情况 》》 将抽象的东西结合实际工作场景 a. 与会人员对需求的目标不明确(产品),易发散思维,最终偏离方向。(这个版本不需要单点登录,多设备登录) b. 对某个需求点相持不下,认为该需求不合理/开发周期长不划算,从而导致场面混乱,长时间僵持下去。 (争论是正常,但必须要有结果,或者部门leader直接协商好,技术部老大) c. 对技术方案探讨不定,对问题点无限引申。 d. 遗漏评审时的待改动的需求点,会后找相关人员再次确认。(待定)
5, 那如何进行有效的需求评审呢 a. 产品内部评审,确保需求逻辑的一致性。可以规避大部分需求不合理的地方,可以直接有效的提升需求评审的效率。 b. 提前把需求文档发出来,让与会者提前查看产品需求文档。提前标注出需求疑问点。 c. 提前通知评审时间和与会人员
6, 参加需求评审的一般都有哪些人?(了解) 项目经理、产品经理、UI、开发、测试、相关部门领导
7, 需求评审究竟评审什么?要细到什么程度? 产品经理编写的需求文档、原型图 》》评审的对象 ; 严格地讲,应当检查需求文档中的每一个需求,每一行文字,每一张图。 评判需求优劣的主要指标有:正确性、清晰性、无二义性、一致性、必要性、完整性、可实现性(开发)、可验证性(测试)、可测性。>>> 准则
在软件需求分析阶段,测试人员评审需求文档目的主要有三方面: a、及时检测出软件需求文档中具有不可测试性的需求点。(难点在哪?能不能测?) 不可测试:某功能模块输入可见,输出不可见,无法验证模块功能是否正确;或是该功能模块的输出无参考标准来衡定。 b、及时发现软件需求文档的不完整性,从而提醒需求分析人员弥补描述。 c、熟悉业务需求,保证与需求人员保持理解一致,及时发现文档中有歧义、二义性、模糊的描述,从而提醒需求分析人员以精确的文字来描述需求点。 在这三个评审目的的指导下,测试人员的评审行为包括: a、找出不可测试的需求点 b、找出用户提出的、但未被完整描述的需求点 c、找出描述有歧义、二义性、模糊的需求点
需求评审会后及时输出会议纪要,罗列出会议中有争议仍待解决的问题、改动的部分和结论,将完善后最终更新过的需求文档发送给参会人员,通知需求评审已完成。
需求评审之后,确定项目周期: a. 开发周期,什么时候可以提测 b. 测试周期,什么时候测试结束,可以上线
8,测试需求分析的步骤(重点) 仔细、反复阅读需求文档,深入理解 分析整理测试点: 列出所有可测的功能点 对每个功能点进行分层分析 分析功能点之间有哪些关联关系 考虑有哪些可能的异常流程 通用异常情况: 网络环境:网络中断、网络切换、丢包(数据包)延时 服务器资源:服务器无响应、响应慢、无法连接服务器 系统环境:被测系统文件缺失、PC或手机系统缺少必要组件、权限不足 异常中断:断电、通话中断 找到隐藏需求: 了解需求整体架构 熟悉所有实现细节 代入用户角色,实际场景中推测 9, 测试需求分析结果示例(一)
原始需求没有对群主的权限进行描述,需要和产品确认并补充。 细化,准确意图 最后测试负责人开始编写测试计划 》》 咱们公司是如何进行需求评审的啊? 需求评审这一个过程很重要,能够尽早的发现缺陷,修复,降低成本,主要由项目经理、产品经理、UI、开发、测试、相关部门领导,要求细致应当检查需求文档中的每一个需求,每一行文字,每一张图,但在这个过程中可能出现各种情况例如参会人员对需求理解不明确,发散思维,偏离方向,需求点发生分歧争执僵持,对技术方案探讨不定,对问题点无限引申