本文抽取Scrum中的一些重要思想和概念,对Scrum敏捷执行的主题流程进行精要的介绍。

一、基本思想

个体和互动   高于   流程和工具

工作的软件   高于   详尽的文档

客户合作      高于   合同谈判

响应变化      高于   遵循计划

二、主要特性:

  • 迭代式、增量式
  • 自组织的小团队
  • 快速反馈的短周期
  • 按照业务价值的优先级排序

三、scrum中的角色

Stakeholders:利益相关人

Scrum master:保证流程正确

四、开发过程

  1. 产品规划
  2. 编制用户故事列表(Product Backlog)
  3. 制定迭代计划(Sprint Planning)
  4. 迭代开发
  5. 迭代评审、回顾
  6. 制定发布计划(Release Planning)

五、用户故事

icesrcum:用户故事管理软件

用户故事是什么?

  描述系统需求的一个单元,(“谁” “做什么”)[ “目的”]

特性:

  • 独立
  • 可更改
  • 有价值
  • 可估计
  • 大小合适
  • 可测试

实践:

  • Product Owner提出最初的产品设想,主要的用户故事
  • 头脑风暴
  • IceScrum
  • 任何人都可以创建用户故事,新创建的故事放在Sandbox中
  • 开会讨论,建立用户故事列表(Product Backlog)

六、迭代计划

  • 调整用户故事(增加、删除、修改、改变优先级等)
  • 确定迭代时间长度
  • 描述迭代目标
  • 按照优先级选取用户故事
  • 每个用户故事的工作量估计
  • 任务分解
  • 确定迭代演示和回顾日期,并立刻发出会议通知
  • 确定每日站立会议时间,并立刻发出会议通知

每个用户故事的工作量估计

  • 用户故事描述的比较详细,单位: “理想人天”
  • 使用“计划扑克牌”(Planning Poker),可选值:0 , 1 , 2 , 3,5 , 8 , 13 , ?
  • 理想人天*1.5
  • 关于迭代速率(velocity)的历史数据
  • 团队成员都可以针对用户故事给出自己的工作量评估牌

任务分解

  • 会议结束之后,所有细分任务都有一个明确的责任人
  • 确定迭代演示和回顾日期,并立刻发出会议通知
  • 确定每日站立会议时间,并立刻发出会议通知

七、迭代开发

  • 团队沟通和协作
  • 参考使用XP(极限编程)的工程实践,如持续集成、重构、结对编程等
  • 代码审查
  • Bug生命周期管理

每日站立会议主题:昨天做了什么,今天计划什么,有什么问题(迭代计划并不确定任务的完成时间段)

实践:

  及时更新IceScrum系统中任务的状态

  不定期的结对编程

  代码审查

    • 迭代内,所有代码都要被审查

  持续集成

    • 持续构建
    • 持续审查
    • 持续测试
    • 持续数据库集成
    • 持续部署
    • 持续通知

Bug跟踪:

  • 我们目前使用Redmine作为工具
  • 任何人发现bug,都可以提交
  • 一些小的功能增强,也可以bug的方式进行跟踪

八、迭代演示和回顾

迭代演示 (Sprint Review)

  • 一定要有一个可工作的迭代增量
  • 对管理层:更好的项目可视度
  • 对团队:阶段性压力、阶段性成就感 – 激励团队

迭代回顾(Sprint Retrospective)

  • 针对工程实践,而不是产品功能本身
  • 做得好的:用户故事裁剪
  • 需要改进的:持续集成

实践:

  • Scrum Master主持会议
  • 查看迭代目标和迭代内承诺交付的用户故事
  • 产品演示

九、发布计划

工作量估计

速率(velocity)估计

  • 根据以往迭代,进行估计
  • 留有余地

确定之后,要明确告知团队和相关利益负责人

可以调整

  • 记住,范围(发布那些用户故事)是有弹性的

十、Scrum整体流程最佳实践

  • 估计用户故事之前,要明确其范围
  • 使用“计划扑克牌”(Planning Poker)的技术进行估计
  • 端到端的集成,从第一个迭代开始,贯穿始终
  • 迭代计划会议上明确任务分解和责任人
  • 迭代演示和回顾日期在迭代计划会议之后就确定,并立刻发出会议通知
  • 渐进式功能开发,过早优化是陷阱

Scrum敏捷精要的更多相关文章

  1. Scrum敏捷项目管理精要

    1. 简介: 敏捷项目管理在我们国家起步比较晚,成功运用的项目不多 百分之六十五的敏捷项目用户为scrum 2.互联网时代的特征,雷军的话: 专注,极致,口碑,快(敏捷项目开发就是要快速) 3.敏捷开 ...

  2. XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化

    XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化 我们现在用的就是典型的XP+devOps模式,已经放弃scrum了 现在还很多公司弄docker虚拟化docker非常复杂,当然 ...

  3. Scrum敏捷开发简介

    Agile 敏捷开发实践中,强调团队的自我管理.在 Scrum 中,自我团队管理体现在每天的 Scrum 会议中和日常的协同工作,在每天的 Scrum 例会中,团队成员一般回答一下几个问题 : 昨天完 ...

  4. scrum敏捷开发

    团队PM:袁佩佩 scrum敏捷开发计划制定: 确定项目实施具体阶段目标 确定项目相关任务分解 确定每日站立会议进行计划 确定项目计划总结日程 确定风险解决方案

  5. 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划

    菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 采用Sc ...

  6. 菜鸟Scrum敏捷实践系列(二)用户故事验收

    菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 一.用户 ...

  7. 菜鸟Scrum敏捷实践系列(一)用户故事概念

    菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 敏捷开发 ...

  8. 产品经理-需求分析-用户故事-敏捷开发 详解 一张图帮你了解Scrum敏捷流程

    产品经理-需求分析-用户故事-敏捷开发 详解 用户故事是从用户的角度来描述用户渴望得到的功能.一个好的用户故事包括三个要素:1. 角色:谁要使用这个功能.2. 活动:需要完成什么样的功能.3. 商业价 ...

  9. 如何避免Scrum敏捷开发团队反思会形式化,海星法介绍

    如何避免Scrum敏捷开发团队反思会形式化? 迭代压力很大,根本没时间,而且,反思会上大家都在互相推脱责任,会议成了“批斗大会”,所以团队的人都觉得这个会很鸡肋. 很多团队在开反思会时是这么干的:产品 ...

随机推荐

  1. 第十章 MySQL 常用函数

    第十章 MySQL 常用函数 第一节:日期和时间函数 1,CURDATE() 返回当前日期:2,CURTIME() 返回当前时间:3,MONTH(d) 返回日期 d 中的月份值,范围是 1~12 第二 ...

  2. JavaScript日期组件的实现

    旅游频道的开发中需要定义各种日期组件,有的是基本的日期选择, 这个基本日期只包含如下功能 左右翻(月) 点击天回填到输入域 点击“今天”,回填今天的日期到输入域 点击“关闭”,日期控件关闭 有的同时显 ...

  3. jquery发送异步请求

    var remark = $("#"+id+"remark").val(); var shopid = $("#"+id+"sho ...

  4. html3秒跳转

    <script>     setTimeout( 'window.location= "home.jsp " ',3000) ;//注意,此处“;”可加可不加</ ...

  5. Hadoop 2.0 中的资源管理框架 - YARN(Yet Another Resource Negotiator)

    1. Hadoop 2.0 中的资源管理 http://dongxicheng.org/mapreduce-nextgen/hadoop-1-and-2-resource-manage/ Hadoop ...

  6. 自定义input[type="radio"]的样式

    对于表单,input[type="radio"] 的样式总是不那么友好,在不同的浏览器中表现不一. 为了最大程度的显示出它们的差别,并且为了好看,首先定义了一些样式: <fo ...

  7. selenium如何操作cookies实现免登录

    执行接口测试或者某些自动化测试时,为了避免每次访问接口都需要登录操作,可以用访问接口时,把cookies信息传过去. 思路是先登录一次页面,获取到cookies信息,把cookies信息保存到本地文件 ...

  8. 【Android UI设计与开发】3.引导界面(三)实现应用程序只启动一次引导界面

    大部分的引导界面基本上都是千篇一律的,只要熟练掌握了一个,基本上也就没什么好说的了,要想实现应用程序只启动一次引导界面这样的效果,只要使用SharedPreferences类,就会让程序变的非常简单, ...

  9. 如何解决python中urlopen超时问题

    看代码: 利用urlopen中的超时参数设立一个循环 while True: try: page = urllib.request.urlopen(url, timeout=3) break exce ...

  10. 一个CentOS7的开发环境部署,包括防火墙|VPN|多IP多网关|HTTP代理服务器设置等

    http://www.lenggirl.com/code/centos7.html layout: post title: "一个CentOS7的开发环境部署,包括防火墙|VPN|HTTP代 ...