加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

敏捷开发基础一

(2015-02-04 23:31:56)
标签:

敏捷开发

分类: 敏捷开发

Scrum

    2.1、什么是Scrum       

    Scrum是一个轻量级的软件开发方法,它是一个敏捷开发框架,是一个增量的、迭代的开发过程。在这个框架中,整个开发周期包括若干个小的跌代周期,每个小的的跌代周期称为一个Sprint,每个Sprint的建议长度2到4周。通俗的讲,咱们现在制定了整个产品的开发周期,而这个开发周期是由各个小的迭代周期组成的,我们把每个小的迭代周期称为一个个Sprint,如Sprint1,Sprint2,Sprint3(我现在手头接触到的手头上的项目就是分为Sprint1~Sprint5),然后给每个Sprint2到4周的时间解决,分而治之,各个击破。

    在Scrum中,使用产品(Product)Backlog来管理产品或项目的需求,产品backlog是一个按照商业价值排序的需求列表,列表条目的体现形式通常为用户故事。Scrum的开发团队总是先开发的是对客户具有较高价值的需求。在每个Sprint中,Scrum开发团队从产品Backlog中挑选最有价值的需求进行开发。Sprint中挑选的需求经过Sprint计划会议上的分析、讨论和估算得到一个Sprint的任务列表,我们称它为Sprint backlog 。  在每个迭代结束时,Scrum团队将交付潜在可交付的产品增量。

http://hi.csdn.net/attachment/201108/11/0_13130469294fjf.gif

    如上图所示,Scrum 开发流程通常以 30 天(或者更短的一段时间)为一个阶段,由客户提供新产品的需求规格开始,开发团队与客户于每一个阶段开始时挑选该完成的规格部分,开发团队必须尽力于 30 天后交付成果,团队每天用 15 分钟开会(daily meeting)检查每个成员的进度与计划,了解所遭遇的困难并设法排除。

  2.2、Scrum较传统开发模型的优点

    Scrum模型的一个显著特点就是响应变化,它能够尽快地响应变化。下面的图片使用传统的软件开发模型(瀑布模型、螺旋模型或迭代模型)。随着系统因素(内部和外部因素)的复杂度增加,项目成功的可能性就迅速降低。

    http://hi.csdn.net/attachment/201108/11/0_1313047721HvrV.gif
    下图是Scrum模型和传统模型的对比(基本上每篇介绍Scrum都会引用的图):

http://hi.csdn.net/attachment/201108/11/0_1313047761cMOe.gif

    
   2.3、 Scrum模型

    一) 有关Scrum的几个名词

    backlog: 可以预知的所有任务, 包括功能性的和非功能性的所有任务。

    sprint:一次跌代开发的时间周期,一般最多以30天为一个周期.在这段时间内,开发团队需要完成一个制定的backlog,并且最终成果是一个增量的,可以交付的产品。

    sprint backlog:一个sprint周期内所需要完成的任务。

    scrumMaster: 负责监督整个Scrum进程,修订计划的一个团队成员。

    time-box: 一个用于开会时间段。比如每个daily scrum meeting的time-box为15分钟。

    sprint planning meeting: 在启动每个sprint前召开。一般为一天时间(8小时)。该会议需要制定的任务是:产品Owner和团队成员将backlog分解成小的功能模块, 决定在即将进行的sprint里需要完成多少小功能模块,确定好这个Product Backlog的任务优先级。另外,该会议还需详细地讨论如何能够按照需求完成这些小功能模块。制定的这些模块的工作量以小时计算。

    Daily Scrum meeting:开发团队成员召开,一般为15分钟。每个开发成员需要向ScrumMaster汇报三个项目:今天或昨天完成了什么?是否遇到了障碍?即将要做什么?(每天早晨,我们也是这么做的)通过该会议,团队成员可以相互了解项目进度。

    Sprint review meeting:在每个Sprint结束后,这个Team将这个Sprint的工作成果演示给Product Owner和其他相关的人员。一般该会议为4小时。

    Sprint retrospective meeting:对刚结束的Sprint进行总结。会议的参与人员为团队开发的内部人员。一般该会议为3小时。

    二)实施Scrum的过程简单介绍

  1. 将整个产品(Product)的backlog分解成Sprint Backlog,这个Sprint Backlog是按照目前的人力物力条件可以完成的。
  2. 召开sprint planning meeting,划分,确定这个Sprint内需要完成的任务,标注任务的优先级并分配给每个成员。注意这里的任务是以小时计算的,并不是按人天计算。
  3. 进入sprint开发周期,在这个周期内,每天需要召开Daily Scrum meeting。
  4. 整个sprint周期结束,召开Sprint review meeting,将成果演示给Product Owner.
  5. 团队成员最后召开Sprint retrospective meeting,总结问题和经验。
  6. 这样周而复始,按照同样的步骤进行下一次Sprint.

    整个过程如下图所示
    

 http://hi.csdn.net/attachment/201108/11/0_131304777107oL.gif

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有