1、敏捷管理与开发敏捷管理与开发钱魏 2013年6月2日需求管理先看个漫画先看个漫画WhatWhat 故事是什么1Why Why 为什么使用故事2How How 怎么编写故事清单3F&A F&A 常用问题4目录目录CONTENTSCONTENTShatw什么 是用户故事?从用户的角度来描述用户渴望得到的功能从用户的角度来描述用户渴望得到的功能角色:谁要使用这个功能。活动:需要完成什么样的功能。商业价值:为什么需要这个功能,这个功能带来什么样的价值。作为一个,我想要,以便于Im a counter I have to count money用户故事的组成 Card 卡片一般来说用户故事是写在记事卡片
2、上,卡片上可能包括了一些说明和估算的信息 Conversation 对话有关的具体信息是通过和产品拥有者的交谈沟通得出的 Confirmation 验证用验收测试来确认实现的正确性hyw我们 为什么 要使用用户故事?促进沟通促进沟通 持续交付持续交付 开发敏捷开发敏捷客户最终需要的并不是文档而是通过软件帮助其完成业务价值短小精悍的故事可以帮助我们推进沟通,挖据客户的真实需求 关注商业价值而不是功能实现,更敏捷的交付产品为什么是用户故事为什么是用户故事将关注点从文字转到口头交流将关注点从文字转到口头交流文字不够准确文字不够准确更容易理解更容易理解支持迭代开发支持迭代开发计划刚刚好计划刚刚好支持所
3、有人一起设计支持所有人一起设计关注目的而不是实现关注目的而不是实现owH怎么 编写用户故事清单案例建立用户故事树 确定业务边界 初步划分业务板块 绘制用户故事树03 编写故事如何编写故事清单02 用户角色 01 用户故事树04 确定优先级05 评估规模需求本身需要分类需求本身需要分类不同时期的客户提出需求关注点不一样史诗Epic故事Story增强Enhancement缺陷Defect技术债务TechDebts重构Refactor绘制用户故事树绘制用户故事树故事分解是自上而下的故事树的完善是自下而上的跟客户沟通的是整个故事树树开发的永远是最底层的故事界定业务边界界定业务边界 属于财务部门的业务
4、只需要需要完成报销业务 不做项目成本分析等业务 不做预算管理等业务 不做初步划分业务板块 报销流程是一个板块 从历史数据的查看上看需要一个查询的板块 建立用户角色 明确使用对象 确定各场景角色职责 建立用户角色职责03 03 编写故事编写故事Im a counter I have to count money02 用户角色 01 用户故事树04 04 确定优先级确定优先级05 05 评估规模评估规模如何编写故事清单建立用户角色建立用户角色 用户角色来自需求的业务描述 用户角色将用于故事编写 用户角色不同于组织架构 用户角色不是系统中的角色 用户角色越细越好 用户角色需要根据故事更新 用户角色中
5、的职责和权利应该详细描述编写用户故事 三段论 用户沟通 可接受条件03 03 编写故事编写故事02 用户角色 01 用户故事树04 04 确定优先级确定优先级05 05 评估规模评估规模如何编写故事清单故事从哪儿来我作为需求分析人员在项目上因为项目上的出差垫付了一些费用,需要向公司申请报销,公司给我打款我报销的时候时候会提供相应费用发生的发票,同时告诉项目负责人相应的费用明细及产生原因。报销报销作为项目负责人需要核实该费用是否确实是为项目产生的。没有问题后交给财务,有问题需要跟申请人确认作为财务核算人员,我要根据申请人提供的明细,核对是否符合公司的标准,有问题部分不能予以报销编写用户故事编写用
6、户故事INVEST继续挖掘故事我作为项目负责人因为项目上的出差产生了一些费用,这部分费用有一些是提前从公司预支的,也有自己垫付的,对于自己垫付需要向公司申请报销,公司给我打款;对于预支的需要公司及时消除预支我报销的时候时候会提供相应费用发生的发票,同时告诉部门总监相应的费用明细及产生原因。报销报销作为部门总监需要核实该费用是否确实是为项目产生的。没有问题后交给财务,有问题需要跟申请人确认作为财务核算人员,我要根据申请人提供的明细,核对是否符合公司的标准,有问题部分不能予以报销编写用户故事编写用户故事更新用户角色更新用户角色更新故事树更新故事树故事树的完善是自下而上的根据对业务的理解深入需要改变
7、上级故事故事确定故事优先级 按业务价值排序 与客户沟通先后顺序 兼顾开发顺序03 03 编写故事编写故事02 用户角色 01 用户故事树04 04 确定优先级确定优先级05 05 评估规模评估规模如何编写故事清单优先级设置的准则优先级设置的准则业务价值优先 尽快的交付业务价值兼顾技术实现 降低迭代成本评估故事规模 业务复杂度 开发复杂度 测试复杂度03 编写故事02 用户角色 01 用户故事树04 确定优先级如何编写故事清单05 评估规模评估规模评估规模 为了预估工作量才需要估计规模 需要POTEAM一起预估团队最后达成一致 跟团队业务有关,不用太注意数值上的差异 需要考虑业务复杂度、技术实现
8、复杂度、测试复杂度MustMust这个一定要做的ShouldShould这个应该要做的CouldCould这个可以完成的Would NotWould Not这个不做的MoSCoWMoSCoW一些常用评估的工具一些常用评估的工具ScrumScrum扑克牌扑克牌 F式数列三角对比三角对比 故事间横向比较&aF常见 问题用户故事与用例用户故事与用例范围范围完整性完整性的的级别级别生命期生命期Use Use cases cases 更加可能包含有关用户界面的详细更加可能包含有关用户界面的详细信息信息目的目的Use case的目的是在用户与开发团队之间形成文档化的协议用户故事的目的是帮助发布和迭代计划的制定,是作为占位符,为有关详细用户需求的对话服务的用户故事与需求表用户故事与需求表十分关注细节,容易出错,费时难读十分关注细节,容易出错,费时难读很难排优先级很难排优先级很难了解全部很难了解全部可行性不高可行性不高Q&AQ&AThanks