首页 > 其他分享 >聊聊实例化需求

聊聊实例化需求

时间:2023-04-20 12:55:35浏览次数:30  
标签:需求 PRD 实例 业务 订单 测试用例 聊聊

前几天星球有同学问了一个问题:需求实例化是什么?我的回复是:将需求故事化。故事一般具有这几个特征:有背景和设定、有过程有逻辑、交代了前因后果。

对测试同学来说,日常工作的开展基本都是依托于测试用例,要设计好的测试用例,其本身要求对业务需求和被测系统有足够的理解。

但实际情况是拿到手的往往只有一份PRD,只对需求的功能做了简单描述,这样会导致在需求评审阶段浪费大量的时间去不断讨论确认不明确的点。

需求评审之后依然要花费大量时间去分析需求细节,做用例评审。而需求实例化,就是一种可行性较比高的方法,它可以对PRD或者需求进行更好的分解,得到和业务规则较为匹配的测试用例模型。

这篇文章,来聊聊关于需求实例化的内容和基本的实践步骤。

 

什么是实例化需求

需求实例化其实更多的被称为实例化需求,英文是Specification by Example,简称 SBE,简单来说既用实例说明需求。

你可以将它理解成一种快速理解需求的方法,它从具体的用户操作场景出发来澄清需求,相比于我们常见的PRD,它的典型表现形式为“在什么情况下,做了什么操作,产生什么结果”。

如上图所示,实例化需求的核心概念是一个三角模型。它的核心概念是:

  • 首先用实例来澄清和分析需求;
  • 其次这些实例会转化为测试用例;
  • 最后通过转化的测试用例验证需求;

 

实例化需求的特征

相比于传统的产品编写简略PRD并组织开发测试人员进行评审,实例化需求更强调的是让项目中所有相关人员围绕需求进行高效的协作和沟通

它的一般形式为用实例的方式说明需求,用自动化的方式频繁的将实例转化的测试用例进行执行以验证需求,通过实例化的需求说明和自动化测试用例来演变出一套可维护性较好的“项目文档”管理系统。

即使需求在不断迭代变化,团队人员在不断变化,这个“项目文档”管理系统也可以持续的保持需求的活力和相关性,帮助团队更好的交付高质量的软件产品。

这种灵活的持续的“项目文档”管理方式具有如下几个特征:

  • 高效沟通协作,确保足够的时间来澄清需求;
  • 需求实例能在第一时间被识别出是否可以投入开发;
  • 项目所有相关成员都参与讨论,确保对最终交付物有一致的理解;
  • 多个不同角色共同参与讨论,避免个人局限性带来的风险遗漏问题;
  • 降低“项目文档”的维护成本,避免过度解释需求,提高需求的可维护性和变更灵活性;
  • 用自动化测试的方式实现业务实例,代码提交即可进行测试验证,降低回归测试验证的成本;

 

实例化需求的实践步骤

实例化需求的主要内容为如下三点:

  • 目标:团队各成员对于业务目标和最终交付目标达成一致;
  • 流程:即最关键的操作流程(比如登录功能,需要输入账号名密码,同意协议,点击登录按钮);
  • 规则:规则即对关键操作流程的节点进行描述(比如账号名只支持手机号,密码最少不能低于8位);

在实际的工作应用中,大致可分为如下五个步骤:

1、介绍背景:首先对需求的背景进行介绍,即为什么做这件事,要解决什么问题,对业务有什么价值。

2、定义目标范围:明确目标用户群体,最终交付要达成的具体目标,需求涉及的业务范围,具体是哪些模块。

3、罗列用户操作:以电商订单业务为例,用户可以执行的操作有(创建订单、取消订单、查看订单列表和详情)。

4、描述工作流程:工作流即我们常说的业务流程或者业务场景,用户通过一系列的操作,达成系统也目标的实现方式

(同样以订单模块为例,用户创建订单的步骤为登录-选择商品-点击购买-选择收货地址-点击付款-创建订单成功)。创建工作流程常用的方法有流程图、涌道图、状态机、时序图等。

5、描述业务规则:以会员等级为例(vip1需消费满100元,vip2需消费满500元,vip3需要消费满1000元。且从vip3会员开始,下单包邮;低于vip3的会员需要自费快递费用)。

 

以上即为实例化需求的基本概念和实践步骤,后面我会分享实例化需求方法对质量保障的带来的帮助,敬请期待。

想了解更多关于实例化需求的知识,可以关注公众号,后台回复关键字:实例化需求。获取相关PDF。

 

标签:需求,PRD,实例,业务,订单,测试用例,聊聊
From: https://www.cnblogs.com/imyalost/p/17336395.html

相关文章

  • C# Web实现文件上传下载功能实例解析
    ​IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续传......
  • 单例模式:生成只存在一个的实例
    饿汉模式publicclassSingleton{ /*在类装载的时候就完成实例化*/ privatestaticSingletoninstance=newSingleton(); /*私有构造方法,防止被实例化*/ privateSingleton(){ } /*获取单例实例*/ publicstaticSingletongetInstance(){ returninst......
  • PHP Web实现文件上传下载功能实例解析
    ​ 一、概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载。在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了。一般断点下载时才用到Range和Content-Range实体头。HTTP协议本身不支持断点上传,需要自己实现。 二、Range  用于请求头......
  • 手把手逐步解析Javaweb登录实例
    一、编写前端界面<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Document</titl......
  • 顶象uni-app版设备指纹上线,满足企业多平台服务需求
    某旅游公司,在短视频平台上发布了自己的小程序服务。用户观看精彩旅游直播或视频时,可以转到视频平台的小程序上查阅详细路线套餐。该旅游公司想详细了解来访者的更多情况,以便于进行深度营销,为用户提供个性化服务。经过多番比较,他们选用了顶象uni-app版设备指纹。顶象uni-app版设......
  • 一千个需求如何快速排序?MoSCoW排序法用上了!【No.2】
    什么是MoSCoW排序法?莫斯科排序法是一种优先级排序法,用于管理需求、任务或功能列表。该方法可以帮助团队确定哪些需求、任务或功能是最重要的,并决定在特定时间段内是否需要完成它们。所以在对需求进行排序时,可以从以下维度考虑:能为业务目标产出高价值的需求优先做;节省时间、人......
  • 企业对NAS私有云存储有什么样的需求,NAS网络存储又有哪些优势与功能呢?
    在过去十年中,云计算从公有云起步,逐渐发展出私有云/专有云和混合云。所以在私有云等云技术不断发展的情况下,企业对NAS私有云存储有什么样的需求呢?NAS网络存储又有哪些优势与功能呢?NAS网络存储有以下5大优势:(1)易于扩展:根据服务器使用人数和空间及时扩展存储空间,不会影响前端用户的......
  • ASP.NET没有魔法——ASP.NET MVC Controller的实例化与执行
    原文:https://www.cnblogs.com/selimsong/p/7677108.html上一章节中对路由的注册和匹配过程进行了介绍,知道了MVC的Http请求最终是交由MvcHandler处理的,而其处理过程就是对Controller的创建、执行和释放。本章将从以下几点进一步对上面提到的三个过程进行介绍:●MvcHand......
  • 配置SUSE linux实例的NTP/Chrony时钟同步服务
    问题描述您希望了解如何修改Linux系统的ECS实例的时区,以及如何开启、配置及使用NTP/Chrony服务,保证实例的时间精确同步。适用于SUSELinuxEnterpriseforSAP12SUSELinuxEnterpriseforSAP15说明和使用限制NTP服务的通信端口为UDP123,您需要在实例安全组的入方向......
  • SpringBoot Web实现文件上传下载功能实例解析
    ​IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续传......