4006-998-758
3000+课程任你选择
终结需求误解:用精准需求驱动高效研发与团队协同
研发学院 终结需求误解 高效研发 团队协同
王洪亮


讲师介绍


王老师

可视化需求分析体系的创始人

全栈工程师

资深敏捷教练

产品专家

著有《会说话的代码》一书

在敏捷转型方面有深入的研究,以其落地改善的风格广为称道。他的全栈工程师背景促使了他可以到现地现物来帮助企业进行有效的问题发现和根源原因分析以及设计对应的解决方案。并且他在企业敏捷转型的过程中帮助企业通过真实有效的改善来全面提升效能。通过精益思想全面扫描整个过程,发现其中的改善点。

王老师在产品规划、产品设计、产品平台化设计、用户研究、市场研究,竞品研究、产品运营指标设计、埋点、数据收集、产品运营、产品路演、AB测试、产品个性化功能设计等方面有深入研究。他自己主导的AIPRD产品就是他的一个基于AI分析需求的作品。该产品为很多企业在需求分析方面提高效率和质量。该产品分别对大企业和小企业设计了不同的产品定位和功能设计。全面覆盖需求生命周期的各个方面。

他发明了一套可视化需求分析体系,该体系帮助了诸多企业在需求分析环节大幅度提高需求分析的质量和提高需求分析的效率。该体系以可视化为主要特点,帮助企业在需求相关的过程中全面覆盖。提高需求分析质量的同时,缩短需求分析所需要花费的时间。并且为开发人员和测试人员在需求理解的过程中节省时间,减少反复确认,从而大幅度提升了整体软件开发过程的效能。

 

该体系拥有独立的知识产权。


查看老师详情
课程内容


课程大纲


一、提升需求的自然语言表达效果的意义

1. 需求的读者和各个读者视角的期望

1.1 开发:通过需求编写代码,产生准确的理解

1.2 测试:通过需求设计测试用例;有的部分可以复用为测试用例

1.3 业务:通过需求落地业务价值,解决实际问题

2. 自然语言表达有误解歧义的弊端

2.1 对开发的影响

2.2 对测试的影响

2.3 对业务的影响

3. 提升自然语言表达能力的意义

3.1 减少沟通误解

3.2 促进一次开发符合要求

3.3 减少反复沟通  

4. 需求的对比案例

4.1 表达不清晰的和表达清晰的

5. 需求中的阅读和理解障碍

5.1 大量文字形成的段落影响阅读和理解

5.2 语义模糊

5.2.1 指代不清

5.2.2 术语错误

5.2.3 名词错误

5.2.4 语法错误

5.2.5 病句

5.2.6 过度省略

5.2.7 滥用缩写

5.2.8 省略细节

5.2.9 覆盖不全

5.2.10 过度抽象

5.2.11 含义不清等

5.3 表达冗长

5.3.1 长句子

5.3.2 定语从句

5.3.3 状语从句

5.3.4 多段逗号等

5.4 表达混乱

5.4.1 缺少主谓宾定状补

5.5 结构化缺失

5.5.1 需求不分层级(如功能描述与异常处理混在一起)

5.5.2 没有明确的标题、子标题、编号,导致重点不突出

5.5.3 缺乏可视化辅助(如流程图、表格、字段说明)

 

二、破冰游戏

1. 电话指路(确认如何使用方位,准确表达路线)

2. 游戏的总结:用语准确、精炼表达的意义和价值

 

三、模糊表达

1. 省略细节

1.1 等 → 短则枚举,长则抽象

1.2 红灯停,绿灯行 → 把细节规则表达清楚(比如右转红灯的情况)

2. 含义不清

2.1 高亮 → 需要明确的RGB值

3. 过度抽象

3.1 易用 → 操作不超过5步  (量化法)

3.2 提高盈利能力 → (拆解法)

4. 掩盖细节

4.1 案例解读

4.1.1 3个月赚1000万 → 分三个阶段

        第一阶段:宣发

        第二阶段:销售

        第三阶段总结,总体盈利1000万(拆解法)

4.1.2 按照三个渠道均分的方式分配(余数怎么办?)

4.1.3 随机抽奖(中奖概率怎么分配?奖品库存为0的时候怎么处理?)

 

四、缺少遗漏

1. 缺少主语

1.1 (谁)将数据同步给A系统

2. 缺少宾语

2.1 保存(保存什么?)

2.2 校验(校验什么?)

3. 缺少定语

3.1 用户可以看到对应的数据列表(什么用户?)

4. 缺少状语

4.1 B系统(定时夜间3点)将数据同步给A系统

4.2 B系统(定时夜间3点)将数据(全量/增量)同步给A系统

5. 缺少补语

5.1 最后发一个通知(给谁?)

5.2 把文件存在系统里(按照什么规则,目录、命名规则、覆盖、磁盘容量等)

 

五、指代不清

1. 主语指代不清

1.1 这个形状 → 右上角的位置的形状 or 形状2.3.5

1.2 新用户可以获得优惠券(如何定义新用户?老用户注销了再重新注册算是新用户吗?)

2. 动作指代不清

2.1 处理一下 → 保存一下

3. 对象(宾语)指代不清

3.1 然后保存一下这个数据(哪个?)

4. 多义词

4.1 发放2500个优惠券

4.2 是累计发放2500,没领的不算,超额不算

4.3 还是发放2500个优惠券,没领的也算

5. 近义词

5.1 空、空白和空格的区分

6. 不应用术语的情况

6.1 请求/响应 对应 request/response

 

六、用错术语/符号

1. 术语错误

1.1 阈(yu)值,不是 阀(fa)值

1.2 水平对齐 | 垂直对齐 (术语理解错误)

1.3 顶部对齐 | 居中对齐 | 底部对齐;  左对齐 | 右对齐 | 居中对齐

1.4 同步处理 | 异步处理

2. 名词错误

2.1 A是B的一倍(正确的是2倍,或者A = B * 2)

2.2 15:00 pm  →  15:00 或者 3:00pm

2.3 夜间12:00

3. 符号错误

3.1 逻辑符号  AND OR  XOR  NOT  TRUE FALSE 

3.2 计算符号  乘方,除号

3.3 连接符号  - 和 _ ~  → ->

3.4 数学符号  > = <

3.5 行业符号  T + x, D + x

3.6 所属关系符号 .   以及连续的所属关系,例如:订单.商品.规格

4. 格式错误及不了解符号规则的情况

4.1 yyyy/MM/dd HH:mm:ss

4.2 #,###.##

4.3 Word的首字母大写问题

5. 标点错误

5.1 逗号的错误使用案例

5.2 句号的错误使用案例

5.3 叹号的错误使用案例

5.4 问号的错误使用案例

5.5 省略号的错误使用案例

5.6 分号的错误使用案例

6. 公式错误

6.1 缺括号,括号没对齐

7. 数字错误

7.1 23:59:59(缺少了1秒)          

8. 错别字

8.1 名族,Tabel, Lable等

9. 动词混淆

9.1 编辑 对比  保存

10. 用语不统一

10.1 新建/新加/添加

11. 有误解的词汇

11.1 多重含义的词汇

11.1.1 状态:用形容词或者动词过去式,表达动作已经结束,不能用动词原形

11.1.2 不要用“xx中”“待xx”的方式表达,它可能有多重含义

11.1.3 必填/必输

11.1.4 模糊匹配(前中后三种,以及复杂的模糊匹配规则)

12. 遗漏关键信息

12.1 8:00am      缺少时区信息

12.2 数量:1     缺少规格信息

 

七、表达问题

1. 疑惑的表达

1.1 例子:他知道我知道你知道他知道这件事吗?

2. 缺少上下文

2.1 将A移动到B (实际上想说这个是个错误,结果将A移动到B了)

3. 超长句子

3.1 条目化表达 表示   罗列

3.2 箭头法     表示   步骤

3.3 编号法     缩短   句子长度

3.4 断句法     将  长句子拆分成多个断句,更容易理解

4. 定语从句

4.1 能够理解的例子:点击删除之后,删除选定的列表条目。

4.2 难以理解的例子

4.2.1 主语定语从句:由当前用户创建且未被删除的表单可编辑。

4.2.2 宾语定语从句:系统统计近 30 天已支付且金额超 100 元的订单。

5. 状语从句

5.1 时间状语、位置状语

5.2 拆分字段法来进行表达

5.2.1 文件存储

5.2.2 目录规则

5.2.3 命名规则

5.2.4 重名规避

5.2.5 磁盘容量检测

6. 关系的表达

6.1 先后关系

6.2 递进关系

6.3 因果关系

6.4 逻辑关系

6.5 放在一个整句里,难以理解 → 步骤法:按照1,2的方式更容易理解

7. 缺少采用变量法来定义一些词汇

7.1 申请日期 = T1, 原到期日期 = T2,新到期日期 = T3,审批日期 = T4

8. 时间关系

8.1 理财购买5一天之后: T, T+5

8.2 晚于五一:     是否包含边界

8.3 一个月之内     30天?T+30?

8.4 当起止时间位于查询条件的时间范围内

8.5 start >= input_start

8.6 end <= input_end

8.7 它们是AND还是OR关系,还是别的逻辑?

9. 断句问题

9.1 老/小/新等前缀词到底是形容词还是后面的术语的一部分?

9.2 “的”是不是名词的一部分?比如:波罗的海

9.3 不同位置断句造成理解语义大相径庭的情况举例

9.3.1 三个用户的订单

        断 1:三个 / 用户的订单(三个用户各自的订单)

        断 2:三个用户 / 的订单(归属三个用户的一个订单)

9.4 采用字段法,规避断句问题

9.5 采用符号,避免断句误解

10. 多段逗号造成长句子语义变化

10.1 长句子中带有多段逗号,造成前后的关系理解困难。

10.1.1 例句:筛选出状态是已审批通过,部门归属为当前用户所属部门,到期时间尚未到达,标题含有对应的关键词的数据,形成列表。

10.1.2 简化:对于符合下列条件的数据进行筛选,形成列表

11. 绕口式表达

11.1 简单例子:对于已经标记为已删除的数据来说,查询的时候不出现在查询结果集里。

11.2 简化表达:查询条件:已删除 = false

11.3 复杂例子:如果录入了时间范围,则查询条件中要包括时间范围作为查询条件,如果没有录入则不参与查询,如果录入了关键词,则按照标题、内容、备注字段进行模糊匹配,如果没有录入则不参与查询;并且查询的时候把已删除的数据屏蔽。

11.4 简化表达

11.4.1 查询条件

创建时间 between 录入的时间范围  if 录入    AND

(标题 like %关键词% OR

内容 like %关键词% OR

备注 like %关键词%)  AND

已删除 = false

11.4.2 到期时间尚未到达 → 未到期

12. 语法错误/病句

12.1 成分残缺(缺主谓宾定状补,前文已提及,此处补充病句案例):

12.2 缺主语:将数据同步至A系统(病句);优化:B 系统将数据同步至 A 系统。

12.3 缺宾语:校验用户输入信息(病句);优化:校验用户输入的手机号格式。

12.4 搭配不当

12.4.1 动宾搭配:提升产品体验感(病句,“提升” 与 “体验感” 搭配不当);优化:优化产品体验。

12.4.2 修饰语搭配:快速的处理效率(病句,“快速” 不能修饰 “效率”);优化:高效的处理效率。

12.5 句式杂糅

12.5.1 病句:用户点击按钮后触发弹窗,弹窗内容为提示用户确认提交(杂糅两句语义)

12.5.2 优化:用户点击按钮后触发弹窗,弹窗提示用户确认提交。

12.6 逻辑矛盾

12.6.1 病句:已过期的有效订单(矛盾,“过期” 与 “有效” 冲突)

12.6.2 优化:已过期的订单 / 有效的订单

12.7 语序不当

12.7.1 病句:用户可查看所有已审批的部门订单(语序混乱)

12.7.2 优化:用户可查看部门所有已审批的订单

13. 相似的词出现多遍

13.1 当当前时间晚于审批到期日期,不能审批

13.2 当当前时间早于审批到期日期,并且审批通过的时候,则生效,原流程以新流程的新到期日为到期日

14. 编号规则表达问题

14.1 AB-12345(前缀如何获得,编号的规则是什么)

14.2 前缀缩写+日期+编号+是否是编号的一部分

14.3 采用格式化符号

14.3.1 ###表示3位数字,前端补零

14.3.2 YYYYMMDDHHmmss表示年月日时分秒

15. 交互操作表达问题

15.1 滑动可以展示对应的按钮 (怎么滑动,方向?距离?范围?)

15.2 拖动可以插入新的组件(怎么拖动?鼠标抬起的位置包括一个组件的前中后上下等各个位置)

16. 并行/并发处理的表达问题

16.1 情况1:A处理结束后,会同时出发B和C,如何表达

16.2 情况2:大量用户要处理A,然后形成消息队列,如何表达(顺序、截止数字等细节)

17. 复杂逻辑表达问题          

17.1 当当当当类的逻辑

17.1.1 多层缩进的表达方式的弊端

        阅读问题

        逻辑覆盖遗漏

        逻辑关系过于复杂

17.1.2 表达复杂条件组合的方法(解耦合)

17.2 AND OR类的逻辑 带有括号,括号要对齐,完整,位置准确

17.3 循环里带判断的逻辑表达

17.3.1 解耦合的方式表达(类似函数定义,具体逻辑拆分,循环就只剩一句话)

17.3.2 例如:对所有的符合条件的订单进行遍历,对已过期的订单更新状态为“已过期”

17.4 字段式表达/单词法

17.4.1 从A列表里过滤出符合条件B的数据,并按照C规则排序,获取前10条

17.4.2 修改

        对象:A列表

        抽取规则:B

        排序条件:C

        取数数量:10

18. 过于口语化的表达

18.1 “可不是”到底表达肯定还是否定

19. 缩写太多

19.1 ALB什么意思?

20. 语义模糊

20.1 对话框文案

20.1.1 确认取消吗?确认 | 取消

21. 双重否定表达/多重否定表达

21.1 对于不是非VIP用户不发放权益


返回上一级