《用户故事与敏捷方法》读书笔记

如果要开始一个敏捷项目,应该如何开始和逐步进行下去呢?有没有一些套路是我们可以学习和借鉴的呢?
以下就是我阅读这本有Mike Cohn写的《用户故事与敏捷方法》书后,自己的出来的一些经验。要开始一个敏捷项目,步骤有:

  1. 识别用户
  1. 与用户代理合作
  2. 搜集故事
  3. 编写故事
  4. 估算故事
  5. 确定故事优先级
  6. 确定团队工作速率
  7. 创建发布计划
  8. 验收测试
  9. 迭代计划
  10. 测量并监控速率。

在开始详细介绍前,要先介绍一个引子结论:3C原则(Card,Communication,Confirmation)

一,识别用户

识别尽可能多,全方位全维度的各类型用户。

  • 头脑风暴、整理角色、整合角色、提炼角色
    具体操作方法为:让尽可能多的干系人先各自在卡片上写下自己认为的用户。然后将卡片贴在墙上,经过一轮又一轮的讨论,最终达成一致的意见。
  • 两个额外的技术
    虚拟人物:用户的假象代表。注意:虽然是假象的,但要将这个用户尽量的具体,尽量的真实。
    极端人物:一些平时不太容易出现,但确实存在的人物。(在极端人物上花费大量时间是不值得的,切忌拣了芝麻丢了西瓜。)

二,与用户代理合作

  • 当我们识别用户后,理想的情况当然是想跟真正的用户开展接下去的工作。然而然而,在大部分情况下,真正的用户(就是真正使用这款产品/软件的人)就像我们的女神一样,可望而不可及。
    实际情况下,愿意跟我们这些技术人员联系的是他们:用户的经理、开发经理、销售人员、领域专家、市场营销团队、以前的用户、客户、培训师、技术支持、业务分析师或系统分析师。
    这些人我们统一称为:用户的代理。
    应该如何处理用户代理的情况呢?
    让我们分两种情况进行讨论:

能接触到用户代理但访问受限时:
对策: 邀请几个到几十个真正的用户成立"用户顾问团队",顾问团队能够提出意见和建立,但真正的决定依然有用户代理来做。

实在不能接触到用户时:
**对策1: **使用多个用户代理,博采众长,也能规避一定的风险。
**对策2: ** 尽早发布产品,尽早让真正的用户能够使用产品,也就能够尽早得到真正用户的反馈。


三,搜集故事

方法:

  • 用户访谈
  • 问卷调查
  • 观察
  • 故事编写工作坊(头脑风暴与原型设计的结合)

金句:

  • 搜集需求要像拖网(Trawling)一样:不同大小的网用来捕获不同大小的需求;需求会像鱼一样,会成长,也可能会死亡;捕获的过程中,也可能捞到一些废弃的货物。
  • 确定需求是一个渐进明细的过程。一开始无法给出一个明确的需求,但是依然可以给出一个故事来作为"占位符"。

四,编写故事

INVEST, INVEST, INVEST(重要的事情说三遍)

I:Independent(独立的)
N:Negotiable(可讨论的)
V:Valuable to Purchasers Or Users(对用户或客户有价值的)
E:Estimatable(可估计的)
S:Small(小的):对于无法做估计的复杂故事,将它分解成一个做调研的故事(用探针实验)和一个开发的故事。
T:Testable(可测试的):尽量用自动化测试。

故事的套路:
我作为(角色),想要(功能),以此(商业价值)。。。


五,估算故事

  • 用故事点进行估算,常用一个理想工作日的工作来表示一个故事估算点。
  • 估算是团队估算的结果,不是个人的。(可以采用头脑风暴的方法)
  • 通过和其他估算进行比较来进行三角测量。

六,确定故事优先级

  • 故事的优先级有客户决定,但也要考虑开发人员的意见。
  • Moscow原则:Must,hould,Could,Won't have this time。
  • 敏捷方法强调:先做最有价值的东西。

故事优先级是如何体现在故事卡片上的呢?


七,确定团队工作速率

  • 速率:团队在一个迭代周期内完成的故事点数(或期望完成的故事点数)。
    如何确定团队速率
  1. 使用历史值
  1. 执行一轮初始迭代,使用那轮迭代的速率。
  2. 猜测:考虑到各种各样因素的干扰,一般我们把i 轮迭代改进的1/3到一半的开发日作为预计速率。如一个团队6个人,十个工作日为一个迭代周期,则总的工作日为60,计划的速率则应该为20~30个故事点。

八,创建发布计划

  • 根据故事的点数,故事的优先级,团队的速率,创建发布计划。
  • 理想情况下,开发人员和客户可以谈一个日期范围,而不是一个具体日期。
  • 诚实的把发布期限告知开发人员,而不是故意告诉一个提前的日子。(信任,信任呢!!!)
  • 开发人员和客户共同选择迭代长度,难以确定时,请选择短迭代而不是长迭代。

九,验收测试

  • 为什么需要验收测试?
    验收测试将用户与开发人员之间Commnication的部分更加的明确化和细化,从而保证了开发人员的设计满足用户的要求。与DOD的意思一致
  • 什么时候写验收测试呢?
  1. 编写用户故事的时候(将测试要点纪录在故事卡的背面)
  2. 在一轮迭代的正式编码前。
  3. 在开发中或之后的任何时候发现新的测试的时候。
    切忌:在正式编码要有验收测试的CASE.

金句:

  • 一个优秀的开发团队会为很多详细的用例写单元测试。
  • 测试的是缺陷,而不是覆盖率。如果一个团队一直强调我们的测试覆盖率是多少多少,那么很有可能他们做了很多用户并不需要的工作。如果测试对产品是有价值的,不管他的覆盖率是多少,都要继续测试下去。反之,一旦测试没有价值,就立即停掉。
    问题是,怎么判定测试是否还有价值呢?

十,迭代计划

  • 其实就是sprint planning meeting
  • 在迭代开始时进行这个会议,会议中团队讨论每个故事,然后从故事中分解出任务。每个任务需要有一个对应的负责人,以及每个任务所需的估算时间。
  • 团队中需要有人记录下上述讨论的内容,可以记录在项目的白板上。
  • 在整轮迭代中,负责监控自己剩余的工作,同时也需要监控队友剩余的工作。如果很快就能完成自己的工作,就有责任帮助队友承担部分工作。

十一,测量并监控速率

  • 用集中全部力量完成一个故事的方法会提高团队的意识,好过所有的故事都只完成一部分。也建议一个故事完成后再做下一个。
  • 让程序员觉得增加剩余时间估算和减少是一样正常的。
  • 再公共区域的一个地方,挂上白板,用黑胶布作为固定的坐标轴线,这样在修改图的时候不会被擦掉。接着就定期更新下面这三个图:累计故事点、剩余故事点燃尽图、剩余小时每日燃尽图。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,761评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,953评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,998评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,248评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,130评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,145评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,550评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,236评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,510评论 1 291
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,601评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,376评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,247评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,613评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,911评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,191评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,532评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,739评论 2 335

推荐阅读更多精彩内容

  • 一、什么是用户故事 用户故事描述了对用户、系统或软件购买者有价值的功能。一个好的用户故事包括三个要素: 1.角色:...
    ccixom阅读 34,121评论 0 16
  • 接触了解用户故事到现在,近十个月了,一直没用这种方法进行完整的实践,趁着这两天休假,将前期了解的知识整理一下。 敏...
    知遇阅读 4,848评论 1 9
  • 今天是我放寒假的第四天,边开始上班了!这次的工作不是最累的,而是最考验人的。这次的工作地在一家民居里,工作内容是照...
    会呼吸的蚊子阅读 171评论 0 0
  • 2017年9月份,往往是每年的校招月,明年7月即将毕业的研究生们都开始找工作了。今年与往年最不同的地方就是毕业生们...
    月阳情阅读 162评论 0 1