聊聊精益需求的产生过程
这是鼎叔的第七十八篇原创文章。行业大牛和刚毕业的小白,都可以进来聊聊。
欢迎关注本公众号《敏捷测试转型》,星标收藏,大量原创思考文章陆续推出。本人新书《无测试组织-测试团队的敏捷转型》已出版(机械工业出版社),各大电商平台热销中,30万字350页。
本篇开启第六个专辑《测试左移与右看》的领域主题分享,中间也穿插其他原创的知识思考内容。
对产品研发而言,最大的风险在于用户需求没有挖掘清楚,而且产品的需求描述和传递过程失真,最终导致生产出来的产品不是用户真正想要的。精益需求生产过程,就是希望尽可能地降低这种极大的生产浪费。这套互联网行业的生产过程,也适用于任何行业的产品精益生产。
在互联网行业中,业务需求变化很多,很快,业务人员,产品人员和技术人员经常对要交付需求的上线优先级无法达成一致,产生推诿和争吵。那么,完整的精益需求产生过程应该是怎样的?它如何尽可能提高产品成功的概率,并降低研发过程中的偏差和耗费?
用户需求的本质
业务团队的需求是从愿景出发,围绕商业方向确定目标用户群。
用户的需求是从自己的问题和痛点出发,希望有产品功能能够解决它们。
产品功能方案如果成功解决用户问题,就能积少成多,一步步实现商业价值。
用户需求的本质特征是隐形的,只有对市场和用户有深入洞察力的产品经理,才能将其挖掘出来。因为:
用户嘴里说的,不等于用户实际做的,也不等于用户心里想的。
用户需求往往是动态变化的,不是确定不变的。
用户需求是多层次的,产品经理需要一定的创造力才能找出最契合的定义。
需求往往在社会化协作中产生,产品经理需要使用一致的高效的描述语言。
什么是精益产品思维
精益需求的核心设计思维及实践,就是要持续洞察用户和市场,开放探索。精益产品的成功也来自于整个过程中更强的应对不确定性的能力。
作为拥抱敏捷的团队,产品的成功来自快速试错,Fail Fast。快速的价值反馈闭环,即“Build-Measure-Learning”,能够降低试错成本,让团队学习到宝贵知识,并更快地走向成功。
产品设计思维,精益思想,敏捷研发,三者互相成就一款成功的产品。设计思维的目标是“挖掘问题”,精益的目标是“做正确的事”,敏捷的目标是“正确地做事”。
三者合一的详细指导方法过程如下:一个产品的产生有探索,定义,设计和交付四个主要阶段,精益原则贯彻整个需求生命周期的始终。这个周期中的具体活动包括:定义业务愿景,梳理产品战略,筛选业务重大举措,提炼需求定义,进行实验验证解决方案和确认需求优先级,再通过多个迭代构建产品并运行,交付给用户,同时获得持续改进的知识。
精益产品的全生命周期管理
下面我们从一个基本流程开始详细介绍。
精益需求的全流程,大概可以分为十个步骤。前五个步骤是从原始需求到问题定义的推导,后五个步骤是从问题定义到待开发的产品需求确认。
在需求产生过程,需要理解并实践的核心问题有:
一 如何定义产品需求?产品的定位和目标是什么?
根据KANO模型,本需求是哪个类型?必备型(基础能力),期望型,还是魅力型?参考:聊聊竞品体验对比评测(上)。
本需求处于什么周期中,是引入期,成长期,还是成熟期?
确定产品的定位和目标,这个过程容易么?如果困难,难在什么地方?
有信息输入不够的地方么,具体是哪些?哪些信息还不太确认,需要做进一步的验证?
产品经理如何让开发、设计、测试和管理者对产品的目标和定位达成一致?
产品的定位和目标可以用下列信息要素来梳理:
-
目标用户:核心用户群体的关键特征是什么?早期用户群体的关键特征呢?
-
客户需求:关键用户的问题和期待是什么?
-
解决方案:提供怎么样的产品或服务?
-
业务价值:业务的定位,贡献的目标和价值。
-
独特卖点:相对于现有方案和竞品,优势和卖点是什么?
-
产品愿景:一句话描述。
当面对新的需求时,如果想不通该不该做,就重新思考产品定位和目标。
二,如何挖掘用户的问题和目标?
注意用户的表达,要求不等于需求,请求不等于需求,反馈也不等于需求!我们给出的解决方案,也不等于需求本身。
需求的第一条原则,还是要从用户的问题出发来推导。
三,产品的用户和干系人是谁?
按用户距离,可以分为直接用户,间接用户或关联用户。
从其他维度,还可以区分为内部用户和外部用户,生产者和消费者,B端用户和C端用户。
针对用户如何建立更细致的类型区分?基于什么属性进行进一步的区分?下面是一个简单的属性分类示范。
下一步,如何找出本产品最核心的用户类型?
我们可以通过象限法来绘制不同用户类型所在的地方。横轴是用户数量或规模,纵轴是用户的需求,或用户影响力,或用户贡献。
也可以通过矩阵法,针对当前的价值贡献,潜在的价值贡献和流失风险,定出该类型用户的优先级。
四,用户画像如何绘制?
前面说过,内部用户和外部用户的画像可能完全不同,需要区分绘制。
我们可以给典型用户绘制一个卡片,让团队成员觉得真实可信,我们充分想象,人物就在我们眼前,用户形象如何,叫什么,她有什么基本信息,特征描述,他/她的痛点/期待是什么,目标是什么。
对于内部用户,我们可以把卡片信息聚焦在内部协作场景,职责,痛点和期待。
比如内部负责监控的IT工程师客户,他的痛点描述语言会更加技术化,痛点场景也以内部典型的跨部门协作场景为主。我们绘制的用户画像会把他的职责和期待目标也定义得非常具体,使用的专业术语比外部用户多出很多。
最后,我们对用户特征梳理进行复盘:
我们的用户特征情报从何而来?如何确认信息靠谱?哪些信息输入还不够?
一定是直接用户的问题才需要关注么?关联用户/间接用户,他们的问题有什么启发?
五,产品电梯演讲
电梯演讲,就是在电梯的一分钟时间里,以XX为对手,用一段话说服老板接受一个产品方案。
我们上面的用户对象分析,对标产品电梯演讲的目标用户群,有什么差异?
六 接下来,从用户出发,发现场景
这一块就要利用之前介绍的用户故事知识了。聊聊用户故事与测试启发
一个用户故事发生的场景,包括这些要素:时间(WHEN),地点(WHERE),和谁(WHO),前情(BEFORE),后果(AFTER)等。
利用用户故事挖掘场景,我们要特别关注逻辑合理性,多问自己这些问题:
-
核心用户、问题(痛点)和场景的逻辑合理么?
-
可以用什么手段去验证这个场景是真实存在的?
-
用户为什么会遇到这样的问题?
-
其内心深处的目标和动机是什么?这个目标是真正的目标么?
-
真正的目标和当初的问题有怎样的关联?
-
当前哪些信息输入还不够?可以通过哪些手段获得这些信息?
七 洞察用户目标
通过上面的过程,用户清楚了,目标清楚了,那准确的问题定义应该是什么?
我们想给用户的可能是一个很复杂的产品,用户想要的东西可能非常简单。
为了洞察出用户真正的目标,我们可以不断追问问题的本质,如下:
-
从问题的描述,发生的场景要素,我们判断是哪一类用户的问题?
-
问题的根本原因是什么?
-
问题发生后对用户造成的影响是什么?
-
问题发生后对业务的影响是什么?
明确了用户真正的目标,精益需求的前半部分才算是真正完成,后面的环节就依次是:针对痛点的创意发散,端到端设计用户体验路线,原型设计,最后进入技术评估方案。这些本文就暂不展开了。
相关文章:
聊聊精益需求的产生过程
这是鼎叔的第七十八篇原创文章。行业大牛和刚毕业的小白,都可以进来聊聊。 欢迎关注本公众号《敏捷测试转型》,星标收藏,大量原创思考文章陆续推出。本人新书《无测试组织-测试团队的敏捷转型》已出版ÿ…...
Linux - 还不懂 gdb 调试器?(调试软件)
前言 当前,我们可以使用 make/makefile 来程序化执行代码文件;可以使用 gcc/g 等编译器来编译代码;可以使用 vim 编辑器来编写代码;其实在 Linux 当中还有一个工具,可以实现调试工作,这个工具就是 -- gdb。…...
Linux:程序地址空间/虚拟地址等相关概念理解
文章目录 程序地址空间虚拟地址和物理地址地址的转换地址空间是什么? 程序地址空间 在C和C程序中,一直有一个观点是,程序中的各个变量等都会有一定的地址空间,因此才会有诸如取地址,通过地址访问等操作,那…...
Python之爬虫
目录 HTTP请求HTTP响应获得页面响应伪装用户访问打包数据爬取豆瓣top250 HTTP请求 HTTP:HypertextTransferProtcol 超文本传输协议 1、请求行 POST/user/info?new_usertrue HTTP/1.1#资源了路径user/info 查询参数new_usertrue 协议版本HTTP/1.1 2、请求头 Ho…...
打造自己的前端组件库(奶妈版,超详细)
打造自己的前端组件库 demo是开源的,自己上npm 或者 github 上都能搜到 新建vue项目(sass js vue2) vue create yt-ui 修改文件目录(如下) 修改: 1.src 更名 examples; 2. src/components移动到项目最外层;3.vue.config.js更改入口文件 /…...
6.调制阶数相关
1、调制阶数与峰均比的关系 调制阶数(modulation order)对峰均比(有一定的影响。 峰均比是用于衡量调制信号或波形在幅度上的动态范围的指标。它表示信号的最大峰值与平均功率之间的比值。较高的峰均比可能导致信号在传输或放大过程中出现过…...
Maven多模块管理(转载)
注意:父模块需设定打包方式为pom https://cloud.tencent.com/developer/article/1667275 dependencyManagement 统一管理子类依赖版本 在父类maven中加入,不会继承给子类,只能规定子类的依赖版本,子类加入dependence后无需写入 …...
运维学习CentOS 7进行Nightingale二进制部署
.因为Nightingale需要MySQL保存一些数据,所以可以参考《CentOS 7.6使用mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar安装Mysql 8.0》部署MySQL。 https://github.com/ccfos/nightingale/releases是可以github上下载Nightingale二进制安装包。 https://n9e.github.io/…...
安装Docker
本安装教程参考Docker官方文档,地址如下:https://docs.docker.com/engine/install/centos/ 卸载旧版 首先如果系统中已经存在旧的Docker,则先卸载: yum remove docker \ docker-client \ docker-client-latest \ docker-common…...
【uniapp/uView】解决消息提示框悬浮在下拉框之上
需要实现这样的效果,即 toast 消息提示框在 popup 下拉框之上: 解决方法,把 <u-toast ref"uToast" /> 放在 u-popup 里面即可,这样就可以提升 toast 的优先级: <!-- 弹出下拉框 --><u-popu…...
有效管理token,充分发挥ChatGPT的能力
目录 给提供了 Token 的计算工具,来理解一下Token的计算方式,网址如下: 窗口如下: 实际消耗 Token 数量为 59个,换算之后为2.1-2.2的比例,即一个汉字消耗2.12.2个Token, 再测一下英文的Token消耗,包含空格在内,一共52个英文字母,消耗Token 13个,正好对应13个单词,…...
Python —— 验证码的处理执行JavaScript语句
1、验证码的处理 1、概述&绕过验证码的方案 很多的网站都在登录页面加入了识别文字,识别图片,拖动拼图的验证码方式来防止爬虫、恶意注册 等,如果是做自动化,需要绕过验证码才能进入下一步操作,那么有4种方案可以…...
MS12_020 3389远程溢出漏洞
1.search ms12_020 搜索ms12_020 2.use auxiliary/scanner/rdp/ms12_020_check 检查是否存在ms12_020漏洞 show options 查看所需参数 set RHOSTS x.x.x.x 设置目标IP地址 run 执行 检测出来有Ms12_020漏洞 3.use auxiliary/dos/windows/rdp/ms12_020_maxchannelids 选择…...
Pytorch ddp切换forward函数 验证ddp是否生效
DDP及其在pytorch中应用 ddp默认调用forward函数,有些模型无法使用forward函数,可以对模型包装一下。 class modelWraper(nn.Module):def __init__(self, model):super().__init__()self.model modeldef forward(self, *args, **kwargs):return self.…...
C++中按引用向函数传递参数
C中按引用向函数传递参数 在参数传递过程中,如果实参与引用参数不匹配,C将生成临时变量。当前,仅当参数为 const 引用时,C才允许这么做,但以前不 是这样。如果引用参数是 const,则编译器将在下面两种情况…...
【Asp.net】Asp.net core中IIS配置注意事项
1、应用地址池设为无托管代码 一、提示:关于IIS上运行ASP.NET Core 站点的“HTTP 500.19”错误 安装dotnet-hosting-3.1.2-win.exe ASP.NET Core 3.1 Runtime (v3.1.2)下载地址: https://download.visualstudio.microsoft.com/download/pr/dd119832-dc4…...
Redis实现附近商户
GEO数据结构的基本用法 GEO就是Geolocation的简写形式,代表地理坐标。Redis在3.2版本中加入了对GEO的支持,允许存储地理坐标信息,帮助我们根据经纬度来检索数据。常见的命令有: GEOADD:添加一个地理空间信息…...
【COMP305 LEC 3 LEC 4】
LEC 3 A basic abstract model for a biological neuron 1. Weights of connections Neuron gets fired if it has received from the presynaptic neurons 突触前神经元 a summary impulse 脉冲, which is above a certain threshold. Signal from a single synapse突触 ma…...
国密https访问
前言 现在的SSL的加密算法实际上主要是国际算法,包括JDK,Go等语言也仅支持国际算法加密(毕竟是国外开源项目),hash。随着国密算法的普及,比如openssl就支持国密了,还要新版本的Linux内核也开始…...
31二叉树-递归遍历二叉树
目录 LeetCode之路——145. 二叉树的后序遍历 分析 LeetCode之路——94. 二叉树的中序遍历 分析 LeetCode之路——145. 二叉树的后序遍历 给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。 示例 1: 输入:root [1,null,2,3] 输出…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...
