美文网首页
敏捷项目BA的日常 -- 如果这个项目是找女票会怎样

敏捷项目BA的日常 -- 如果这个项目是找女票会怎样

作者: 兔小吱 | 来源:发表于2019-04-30 18:30 被阅读0次

    很多人都好奇,一个敏捷项目上面的BA一天忙忙碌碌的都在做什么,不像开发童鞋实现了很多功能,也不像PO(product owner)童鞋决定业务方向。那BA每天都在做什么呢?我们讲个故事吧~
    在这之前,先说说几个敏捷项目中和BA相关的阶段,他们也基本涵盖了整个敏捷项目的所有环节:

    • 需求分析 (Requirement Analysis)
    • 用户故事确认(User Story Confirmation)
    • 迭代计划 IPM (Iteration Plan Meeting)
    • 开卡 (story kick off)
    • 站会 (Stand Up)
    • 结卡 (Sign Off)
    • 成果展示 (Showcase)
    • 复盘(Retro)

    现在,我们一起看看这个找女票的项目。

    故事的开端要从小白童鞋要帮小明童鞋能找到女朋友说起。
    那天,小白童鞋找到小A
    “听说你做BA的,帮我哥们找个女朋友吧……”

    小A: 好的!

    小白递上了自己觉得还挺全面的小明的信息。
    小A拿过来一看,怎么还有体重,真个么……真的……详细……嗯……

    姓名 小明
    年龄 33
    体重 保密 (吨)(为什么要说体重,且单位就暴露了好嘛 啊喂!)
    职业 *** (为了谁也不黑,就匿了吧,别对号入座了)
    爱好 在家里宅着
    开心的事 喝可乐
    不开心事 无聊,没人陪我喝可乐

    小A挠挠头,既然答应了,就得开始行动起来了。

    需求分析 (Requirement Analysis)

    小A:“我能和小明聊聊么?”
    小白:“不能……”
    小A:……那就只能问问小白了。
    小A问了小白一系列的问题,从小明对女票的性别要求一路问到身高体重年龄家室,基本上没有任何特殊的信息。正常人看来,小明的要求已经很低了。
    小A 内心OS:听上去没啥问题,为啥就觉得不太对呢?于是小A又寻找别的方向来问。

    小A:“之前有过女朋友么?”
    小白:“没有……”
    小A:“没找过么?”
    小白:“怎么说呢,他太宅了,没法认识新朋友,而且有点邋遢吧”

    小A心里突然有点想法,继续问道: “那,有可能是因为邋遢所以认识不了新朋友么?”
    小白:“有可能,他那个邋遢呀,我是真的看不下去了,别提别的姑娘了……”顺着这个线索,接下来小A又问了些问题,最后给出了自己的看法。

    我们最终的目的是为了让小明能找到女朋友,现在没有女朋友的原因是:小明过于邋遢,因此别人不愿和他交朋友,没法认识新的朋友,就没法有女朋友了。

    我们要做的是:

    1. 让小明改掉邋遢的坏习惯
    2. 让小明有新的爱好
    3. 帮助小明找到新的女朋友

    那首先,我们要做的第一步是:帮他改掉邋遢的坏习惯。

    小白眼睛一亮:“行,我给你组个团”

    小结:到现在为止,BA从PO也好,用户也好手上拿到些需求,这些需求有些清晰,有些模糊,有些只是表面上的痛点,或者只是结果类的,BA需要去深挖,就像这个找女票的例子,最后“歪楼”成了提升自己。
    在BA的日常工作中,在拆分故事卡之前,需要深入的了解需求,找到用户真正的痛点以及深入分析痛点的原因,挖掘背后真正的需求,进行分析。

    用户故事确认(User Story Confirmation)

    根据小A的分析,我们要做的是:

    1. 让小明改掉邋遢的坏习惯

    拿到这个任务之后,小A还是需要进行更详细的深入细节分析,以及最终和小白小明的确认。小A自己对这三个任务进行了细致的分析拆解,小明改掉邋遢的坏习惯,那怎么改变呢?小A列了以下几个维度:

    1. 小明要保持自身的卫生
    2. 小明要保持居住环境的卫生
    3. 小明要提高自己的生活品质

    随后,对于之前提出的点,小A都进行了类似的分析拆分,于是小A得到了一批像下面这样的用户故事


    作为:小明
    我希望:保持自身的卫生
    因此:我可以一直保持自己卫生干净从而改掉邋遢的坏习惯
    AC1: 小明每天要换干净的衣服出门
    Given: 小明需要出门
    When: 小明挑选衣服
    Then:
    1.衣服不能是昨天一样的
    2.衣服需要是干净的
    

    小明带着这堆用户故事,找到了我们小白,小白表示,很满意,可以开始实施了

    小结:当BA了解清楚了需求之后,需要给他们一定的时间,去细化,将他们拆成大小和功能都合适的用户故事,每个用户故事都要尽量满足INVEST原则,这样才能在后面交给我们的开发同学进行实现。就像故事中小A准备好了很多用户故事(user story)。在这之后,需要和我们的客户或者是业务负责人进行确认,确保我们的每一个用户故事都是满足业务需求的。
    每张卡在放到迭代Backlog之前,都需要和客户业务负责人进行确认,确保业务,设计细节满足需求。

    迭代计划会议 IPM (Iteration Plan Meeting)

    小A带着这用户故事,和小白以及小白组的团进行了亲切友好的沟通,俗称IPM (迭代计划会议),这个团里有 小代 和 小Q

    首先,我们的小白介绍了自己的诉求:“让小明改掉坏习惯,从而找到女朋友”
    “我想让小明找到女朋友,根据我和小A的分析,第一步,我们需要先让小白改掉些坏习惯,变的不那么邋遢!呐~ 背景就这么多。”

    接着小A说介绍了拆解的小目标,包括下面这个用户故事


    作为:小明
    我希望:保持自身的卫生
    因此:我可以一直保持自己卫生干净从而改掉邋遢的坏习惯
    小明每天要换干净的衣服出门
    Given: 小明需要出门
    When: 小明挑选衣服
    Then:
    1.衣服不能是昨天一样的
    2.衣服需要是干净的
    

    这时候小代同学说话了:“衣服不能和昨天一样的话,那可以和前天一样么?或者周五能和周一一样么?”
    这时候小Q同学说话了:“怎么定义不一样?扣子不一样就算不一样,还是必须款式颜色都不一样算不一样”

    小A说: “嗯嗯,你们说的对,应该再清楚一点,你们看哈

    1. 衣服相邻的两天不能是一样的,也就是说,如果周一穿了红色的衣服,周二就不能穿,但是周三及以后可以有一天穿。
    2. 衣服不一样,意味着要么颜色,要么花纹款式,二者至少有一个不同,扣子不一样不算不一样”

    小代和小Q同学表示详细可以,同时小白也认同。大家达成了一致,我们的用户故事变成了这样


    作为:小明
    我希望:保持自身的卫生
    因此:我可以一直保持自己卫生干净从而改掉邋遢的坏习惯
    AC1: 小明每天要换干净的衣服出门
    Given: 小明需要出门
    When: 小明挑选衣服
    Then:
    1. 相邻两天衣服不能是一样的 
        例如:第一天是红色的衣服,第二天不可以穿这件,第三天就可以了。
    2. 衣服的不同需要至少满足下面两个条件
           1. 颜色不同
           2. 款式不同
    3. 衣服需要是干净的,在穿之前必须是洗过的
    

    紧跟着 小A让大家给这个卡估了点

    小结:在迭代计划会上面,大家需要对细节达成一致,BA或者PO(业务负责人)需要给团队中的每个人讲清楚,事情的背景和诉求,BA需要讲清楚后续大家需要做的事情,并且需要给问题以回答
    IPM(Iteration Plan Meeting)迭代计划会议主要是跟客户保持沟通与信息更新的一个会议,同时和开发达成一致

    开卡 (story kick off)

    开完了IPM之后,小A将已经写好在系统里面用户故事,在物理墙上做了可视化,形成了看板,在这个看板上面,挂着我们刚才的故事


    作为:小明
    我希望:保持自身的卫生
    因此:我可以一直保持自己卫生干净从而改掉邋遢的坏习惯
    AC1:小明每天要换干净的衣服出门
    Given: 小明需要出门
    When: 小明挑选衣服
    Then:
    1. 相邻两天衣服不能是一样的
        例如: 第一天是红色的衣服,第二天不可以穿这件,第三天就可以了。
    2. 衣服的不同需要至少满足下面两个条件
            1. 颜色不同
            2. 款式不同
    3. 衣服需要是干净的,在穿之前必须是洗过的
    

    小代同学告诉小A说想开这个卡,因此现在小A 小Q都围在了小代同学身边,小代同学说:“这个卡我要做两个事情:

    1. 保证小明的相邻两天衣服不同
    2. 保证衣服穿之前是洗过的

    我们到时候check的场景是

    1. 小明第一天穿红色的衣服,第二天不是红色的,第三天是红色的,且洗过
    2. 小明第一天穿衬衣,第二天是T恤,第三天是同一个衬衣,且洗过
    3. 小明第一天穿红色衬衣,第二天是黑色T恤
      大家看这样可以么?”

    小Q同学说:“看下第四天的情况吧,不能和第三天一样,但是可以和第一天或者第二天一样”

    小A同学说:“洗过是没有味道没有污渍的哈”

    小代和小Q看着小A……
    小A笑着说:“好,我加到用户故事里面”


    作为:小明
    我希望:保持自身的卫生
    因此:我可以一直保持自己卫生干净从而改掉邋遢的坏习惯
    AC1:小明每天要换干净的衣服出门
    Given: 小明需要出门
    When: 小明挑选衣服
    Then:
    1. 相邻两天衣服不能是一样的
        例如:第一天是红色的衣服,第二天不可以穿这件,第三天就可以了。
    2. 衣服的不同需要至少满足下面两个条件
            1. 颜色不同
            2. 款式不同
    3. 衣服需要是干净的,在穿之前必须是洗过的
            1. 不能有污渍
            2. 不能有异味
    

    check 场景:
    我们到时候check的场景是

    1. 小明第一天穿红色的衣服,第二天不是红色的,第三天是红色的,且洗过
    2. 小明第一天穿衬衣,第二天是T恤,第三天是同一个衬衣,且洗过,第四天是第二天的T恤且洗过
    3. 小明第一天穿红色衬衣,第二天是白色T恤

    小结:开卡,story kick off过程中,BA需要让Dev讲清楚,整个卡的范围scope,以及大家一起聊清楚卡的验收场景,根据AC(验收标准)来判定怎样才算整个卡结束,进入到测试阶段。同时,也可以补充一些之前没有想到过的细节,让Dev QA 都清楚卡需要做些什么。

    每张卡在被分配给Dev之前,Dev需要根需求输出方,需求验收方一起达成理解一直,这个沟通的过程称为“开卡”

    站会 (Stand Up)

    自从整个团组了之后,大家每天早上都会开一个小会,为了不让整个会时间太长,都站着开……俗称站会,每个同学说说自己昨天在做了什么,今天要做什么,遇到什么困难。

    在今天的站会中,小代同学说:“我昨天开始做让小明每天换衣服的卡,今天要继续做,但是昨天我遇到一个问题:小明家里没别的样式的衣服,都是一毛一样的衬衣,做不到不一样”
    小A:“嗯……我找小白想想办法吧,你先做其他的AC吧。”

    小A同学找到了小白说出了了遇到的困难,小白说:“这样啊,我今天晚上让他下单,明天就送到了……”
    小A:“那就再好不过了,尽快能解决,这个卡就不会被block住了”

    第二天的站会小A说:“我昨天细化了后面要做的故事
    今天要继续细化”,然后对小代说:“昨天我问了小白,今天衣服都一样的事情就可以解决,你可以去check一下。”

    小结:每天的站会是大家沟通的时间,每个人都知道大家的进度,同时遇到有问题的人能够及时提出来。
    每天BA都需要参加站会,更新自己做的事情,同时通知到Dev一些新的信息

    结卡 (Sign Off)

    所有的问题都已经解决了,按照时间小代的计划,第一个用户故事应该已经可以check了,果不其然,小代问了问小A和小Q的时间,大家表示下午可以,所以就约好了下午大家一起把这个卡sign off了 俗称 desk check

    时间来到了下午,小A和小Q聚集在小代准备好的场景下,

    大家一起回顾了下验收场景:

    1. 小明第一天穿红色的衣服,第二天不是红色的,第三天是红色的,且洗过
    2. 小明第一天穿衬衣,第二天是T恤,第三天是同一个衬衣,且洗过,第四天是第二天的T恤且洗过
    3. 小明第一天穿红色衬衣,第二天是白色T恤

    小代开始模拟第一个场景:

    1. 第一天小明穿了红色的衣服,干净, check 过!
    2. 第二天小明穿了黄色的衣服,干净, check 过!
    3. 第三天还是红色,干净, check 过!

    小代开始模拟第二个场景:

    1. 第一天小明穿衬衣,干净, check 过!
    2. 第二天小明穿衬衣,嗯?

    “意外意外…… 我再调试一下” 小代说到。

    于是小Q和小A各做各的事情去了,过了一会儿小代说OK, 小Q和小A就又聚了过来

    这次顺利的过完了所有的场景
    小Q说:“我还想看下第二天白色T恤如果当天染上了污渍,下次穿污渍消失。”
    于是,小代模拟了场景,并顺利通过了小Q新加的验证场景。

    自此,小A 小Q 小代结束这张卡的验证,这张卡自此进入了测试阶段,小Q开心的拿着卡测试去了~

    小结: sign off的过程是需要 BA QA Dev 对Dev做出来的结果进行一系列的验收工作,保证功能的完整可交付。
    Dev把自己对应的卡开发完成提交代码后,需要根据需求输出方(BA+UX)在测试场景下showcase验收需求,否则不可以将卡挪到下一个泳道

    成果展示 (Showcase)

    忙忙碌碌的日子过,整个迭代结束了,看上去已经有了明显的成效,需要给小白看下这段时间的成果,于是我们需要showcase

    这天,小白在场。

    小A说:“大家好,这段时间我们针对:让小明改掉邋遢的坏习惯,进行了如下的行动,我们实现了:

    1. 小明要保持自身的卫生
    2. 小明要保持居住环境的卫生
    3. 小明要提高自己的生活品质

    下面我们一起看一下我们的实现”
    这时候小A用模拟小明分别展示了穿衣,居住,交友等一系列场景。

    小白表示很满意, 同时问了些问题。
    小A同学也都一一做了解答

    这次showcase就在这样轻松友好的氛围中结束了。

    但是,鬼知道小A在准备这次showcase之前经历了什么,showcase前10分钟的模拟小明不工作,衣服颜色不正确,衣服样子不改变等等。
    还好有惊无险。

    小结:为降低项目风险,每个迭代的功能完成后,会跟客户showcase,将本迭代完成的功能演示给客户看

    复盘(Retro)

    迭代结束了,我们看看有什么可以改进的,下次别再出同样的错误

    小A同学主持了这次复盘会议,分别让大家都写了 well, less well, suggestion 也形成了需要做的action

    小A,小Q,小代拿走了各自的action 开始了下一轮的迭代……

    小结:每个迭代结束,BA需要参与复盘,在整个过程中大家一起回顾好的不好的,并且承担一些改进行动

    就此我们敏捷项目上面,一个BA的职责基本上介绍完成了,做软件项目其实和上面的故事是一样的。都需要BA同学在整个过程中承担相应的责任。从详细的分析需求,给出用户故事,到最后用户故事的实现进入生产,每一个环节都和BA息息相关。因此作为BA需要有足够的耐心细心以及一定的经验来保证每一个功能的完整,进而完成整个项目。

    当然团队里面的每个人都需要为我们整个项目负责,BA是其中的一部分,也是不可缺少的一部分。每个BA都在努力,让项目更好的实现客户,用户的需求。

    相关文章

      网友评论

          本文标题:敏捷项目BA的日常 -- 如果这个项目是找女票会怎样

          本文链接:https://www.haomeiwen.com/subject/qatbnqtx.html