前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >业务分析实践:10个常见问题 | TW洞见

业务分析实践:10个常见问题 | TW洞见

作者头像
ThoughtWorks
发布2018-04-20 11:46:58
7530
发布2018-04-20 11:46:58
举报
文章被收录于专栏:ThoughtWorksThoughtWorks

今日洞见

本文作者:ThoughtWorks-亢江妹。

本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本网协议授权的媒体、网站,在使用时必须注明"内容来源:ThoughtWorks洞见",并指定原文链接,违者本网将依法追究责任。

在敏捷社区里,下面这10个关于业务分析的问题会经常被人问及。我也一直在思考这些问题,结合过去8年来的敏捷项目上的经验,试着做个简单的解答,希望能给大家以启发。

1. 进入到迭代的用户故事,到底拆到多大尺寸为好?

我会尽可能让拆分出来的卡,3天左右能够开发完成(无论是否结对)。比这个尺寸大的卡,因为请假、周末等中断会导致更多的背景重建时间,而且会让开发易产生“疲劳感”;比这个尺寸小的卡,卡片管理的边际成本会比较高。

2. 在迭代计划时,是否重新评估并调整用户故事的点数?

我会尽一切可能不去讨论、调整卡的点数,而且会尽可能防止团队这样做。经验告诉我,这完全在浪费时间。当项目进入交付阶段后,只要业务需求范围没有变化,就不应该出现点数变动。

3. 临时拆分出的技术任务卡和迭代中发现的缺陷卡,要不要给点数?

不给。同上,只要业务需求范围没有变化,就不应该出现点数变动。

4. 不同的卡中,验收标准可以有重复吗?比如我们有按关键字、名称、地址来搜索客户的功能,搜索结果的页面都要分页。现在我们每个卡中都有分页相关的验收标准。

不要有重复。我们知道测试用例讲究“相互独立,完全穷尽”,这同样适用于需求。所有卡片上的验收标准,组合起来应该不多不少刚好等于整个项目的需求范围。好比图A。当有不同卡片的验收标准重复,不完全独立,就像是图B,导致额外的重复成本;当所有卡上的验收标准组合起来,不能覆盖到整个项目的需求范围,就是有需求遗漏,好比图C。

对于这个问题中的例子,我的做法是把搜索结果的分页显示拆分成一个独立的卡,然后在每一个搜索卡中,加一个标注说,搜索结果需要分页,并关联到这个分页卡。

还有例子的“跨功能性需求”(Cross Functional Requirements)。比如做UI的卡,都需要遵循统一的VI标准,比如用什么样的按钮、什么样的字体、颜色风格等,我一般会创建一个共享页面,来描述这个所有UI卡都要遵循的UI标准,然后在每个UI卡,标注说UI细节请参照共享页上的UI标准。

另外一个典型例子是做API项目。不同的API接口也都需要共同遵循一个技术标准,这个也不用在每个卡上重复去写,也是建一个共享页面来描述这个标准,其他卡来引用这个页面。

5. 迭代计划或迭代汇报时,大家总是对着“点数”斤斤计较,客户希望加几个点,团队希望少做几个点,于是讨论焦点就变成和客户争执某个卡到底应该是2个点还是5个点,怎么办?

首先深表同情 - 但这是一开始犯下的错,估计纠正起来需要花不少精力。我的做法是,从迭代0开始,就引导客户“轻视”点数。做法是:

  • 做计划的时候,要对照着故事墙(或“业务全景图”),来列出迭代要完成的功能目标,强调为什么要完成这些目标,否则对整个交付计划的影响,在最后的10%的垃圾时间,顺带提下计划的点数是多少,想争论点数,啊没时间了!所以shut up。
  • 做汇报的时候,同样,强调完成了什么样的功能目标,有没有里程碑完成,利用故事墙(“业务全景图”)展示整体进度;当前核心的Blocker和Issue是什么,有什么行动来解决,然后再顺带提下原计划多少点数,完成了多少点数。如下图:

总之,引导客户和整个团队,去看到整体需求完成情况,点数信息做参考,而不是围着点数转。

6. 在项目快速启动(Inception)时,得到的“RAIDs” (分别代表Risk, Assumptions, Issues, Dependencies),在交付期间到底还有没有用?

大有用处。如目前的项目,我70%的精力其实都是在花在“RAIDs”上。其实在交付过程中,分析常规性需求是相对简单的;给交付带来困难和挑战的往往是这些RAIDs。分析、理解、跟踪、提前采取措施消除其影响,就会有效避免需求蔓延、提前化解“大老虎”危险需求、及时调整好客户期望,避免大的矛盾发生。每一个项目,我会去建立一个共享页面,列出所有的假设、风险、问题和依赖;提前1-2个迭代去分析这个列表:

  • 假设:有哪些假设现在就能确认是对的?有哪些假设是错的?错的假设意味着演变成了一个问题,需要移到问题列表上;迟迟无法验证的假设,请从假设列表移到风险列表。
  • 风险:如果发生了,会影响需求范围吗?有哪些备选方案?需要提前做什么准备?如果已发生,需要转移到问题列表。
  • 问题:所有的问题在创建之前,其实应该已经跟客户沟通过,不应该有意外;跟踪更多是报告状态,追着相关的人完成。
  • 依赖:跟外部接口人做好沟通了吗?最好/最差情况什么时候能解除依赖?

这些都是与需求紧密相关的,不能甩手扔给PM。在每一个迭代汇报或演示时,除了汇报进度,更要汇报RAIDs的最新状态;需要领导注意的高亮出来,经验证明这种场合消除问题会很有效。

7. BA(Business Analyst,也即业务分析师,是敏捷团队中的必要角色,下同)经常需要跟踪依赖和一些待处理的问题,这些需不需要可视化在故事墙/看板上?

要。这些可能会成为阻碍(blocker),我一定都会让它们可视化在墙上,这样客户、团队中的每个人每天可以看到。一块干净的玻璃,如果上面有一块明显的污垢,人天性里都回有擦除它的欲望。放在墙上,是同样道理。只不过这类卡片不应该有点数,或者点数为0。

8. 在项目快速启动(Inception)时,我们已经找出了MVP,并确定为第一次发布的需求范围,且交付时间很紧张只有3个月。在交付过程中,有一个客户提出方向可能不对,建议重新发散想法确定需求,要不要这样做?

不要。对于绝大多数组织来说,尤其大型组织,所谓创新难有一个主要因素是“执行乏力”。从产品概念产生到第一个雏形上市,这是一个“快速试错”的过程;越试得快,离“正确”的目标就越近;即使第一次方向针对选错了,完整地收尾才能真正学习到“错误”在哪里。反复犹疑,只能让“不确定”越来越多,越不知道该怎么做。我自己的经验,一旦进入交付,尤其是短期极速交付,就是要尽一切努力帮助客户收敛,收敛,收敛。所以当我们去跟客户沟通需求时,不是真正地让他来告诉我们做什么,怎么做;而是“诱导”他同意按照我们想好的“性价比”最高的方式做。

9. 客户提出了一些新需求,我做了足够扎实的分析,排了个优先级,想让客户放弃一些低优先级的需求,可无论我怎么说,客户都说这个优先级都是一样的,必须得做?

先暂时放下这个“事”,下点功夫在“人的需求”上面,挖掘下想客户最真实的个人诉求是什么?《商战往事》有段话我印象非常深刻“项目需求在内外部运作中、竞争中会源源不断地给个人需求提供机会,而个人需求在这个基础上,还包括内外部环境变革中源源不断地给项目需求制造动机,一个问题,一个概念,一个挫折,一种情绪,都会改变需求…”, 所以要追根溯源,才有可能解开谜结。

10. 我好像绝大多数时间都在写卡,都没时间去想产品和业务,更别说去写总结和分享了。作为BA,该怎么分配自己的时间和精力?

刚才说的,项目中的时间,60%用于跟踪和管理RAIDs;15-20%时间来分析卡的细节并写出来;15-20%的时间做需求确认(做预验收和给客户演示)。这样自己与客户间的对话尽可能保持在骨干需求级别; 而不仅仅是需求的细节,这样才能把控需求大局。如果需求分析透了,写卡这件事其实比较简单,我会让我们团队的Dev/QA自己去写,我来审核。另外我一定会给自己找出额外的时间,用于学习了解相关产品行业、总结等。“磨刀不误砍柴工”,有时新的解决业务问题的思路、新的工具会让你“事半功倍”。

“敏捷无定式”, 这些答案仅是个人项目中的经验,可能不适用于所有的企业、项目和团队,有启发、能带来思考就好。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 思特沃克 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 进入到迭代的用户故事,到底拆到多大尺寸为好?
  • 2. 在迭代计划时,是否重新评估并调整用户故事的点数?
  • 3. 临时拆分出的技术任务卡和迭代中发现的缺陷卡,要不要给点数?
  • 4. 不同的卡中,验收标准可以有重复吗?比如我们有按关键字、名称、地址来搜索客户的功能,搜索结果的页面都要分页。现在我们每个卡中都有分页相关的验收标准。
  • 5. 迭代计划或迭代汇报时,大家总是对着“点数”斤斤计较,客户希望加几个点,团队希望少做几个点,于是讨论焦点就变成和客户争执某个卡到底应该是2个点还是5个点,怎么办?
  • 6. 在项目快速启动(Inception)时,得到的“RAIDs” (分别代表Risk, Assumptions, Issues, Dependencies),在交付期间到底还有没有用?
  • 7. BA(Business Analyst,也即业务分析师,是敏捷团队中的必要角色,下同)经常需要跟踪依赖和一些待处理的问题,这些需不需要可视化在故事墙/看板上?
  • 8. 在项目快速启动(Inception)时,我们已经找出了MVP,并确定为第一次发布的需求范围,且交付时间很紧张只有3个月。在交付过程中,有一个客户提出方向可能不对,建议重新发散想法确定需求,要不要这样做?
  • 9. 客户提出了一些新需求,我做了足够扎实的分析,排了个优先级,想让客户放弃一些低优先级的需求,可无论我怎么说,客户都说这个优先级都是一样的,必须得做?
  • 10. 我好像绝大多数时间都在写卡,都没时间去想产品和业务,更别说去写总结和分享了。作为BA,该怎么分配自己的时间和精力?
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档