zoukankan      html  css  js  c++  java
  • 敏捷开发之道(四)Scrum概述

           上次的博文敏捷开发之道(二)极限编程XP敏捷开发之道(三)极限编程XP续中,我们介绍了一下敏捷开发中的XP开发方法,今天咱们来了解另一个比较流行的敏捷开发方法——Scrum。


    1、Scrum简介

           Scrum是一种兼顾计划性和灵活性的敏捷开发过程,来源于美式足球中的"带球过人","带球过人"的含义主要是在比赛开始之前制定一个计划,在比赛中随机应变。

    2、Scrum与传统开发模式

           在传统开发模式中,我们通常将开发模式分为:需求、设计、编码、测试等阶段,而在Scrum中则将整个开发过程分为多次迭代,成为Sprint。

    3、Scrum与XP的区别和联系

           Scrum与XP都是敏捷开发方法,两者都体现了快速反馈,强调交流,强调人的主观能动性等敏捷开发的基本原则,而且两者之间的多数实践都可以互相适用。
    但两者之间除了联系之外还有一些区别。

           区别一

           Scrum的迭代长度一般为2~4周,XP相对来说时间较短通常为1~2周;

           区别二

           在XP的一个迭代中,如果一个用户素材还没有实现,则可以考虑用另外的需求将其替换,替换的原则是需求实现的时间量是相等的。而在Scrum的一个迭代中则要求,一旦迭代开工会完毕,任何需求都不允许添加进来,并有Scrum Master严格把关,开发期间不允许开发团队受到干扰;

           区别三

           在XP迭代中,用户素材的实现务必要遵守优先级别,而在Scrum中,则可以不按照优先级别来做。Scrum给出的理由很简单,即如果优先问题的解决者,由于其它事情耽搁,不能认领任务,那么整个进度就耽误了。另外一个原因是,如果按优先级排序的用户素材中,存在较高优先级依赖较低优先级的情况,则要想实现较高优先级的就必须首先完成优先级低的。

           区别四

           XP对开发流程的定义非常严格,规定需要采用TDD、自动测试、结对编程、简单设计、重构等约束团队的行为。XP这样的理念加上敏捷开发自我管理的理念,它最终表达的意思就是你是一个自我管理的个体,但你需要执行TDD、自动测试、结对编程……等等,这就给我带来了困惑。相对的,Scrum没有对软件的整个实施过程严格要求,更加强调Self-Orgnization的理念,要求开发者自觉保证。

           通过以上对比,我们可以发现Scrum更加强调面向管理过程的开发方式,XP则更加强调面向工程过程的开发方式。所以更多的人在管理模式上启用Scrum, 而在实践中,创造一个适合自己项目组的XP。


           今天我们就先讲到这里,更多的内容,请见下篇!敬请期待。
  • 相关阅读:
    activemq学习
    shell变量
    ext3文件系统目录限制问题
    linux性能优化cpu 磁盘IO MEM
    vs2010下编译osip2和eXosip2的4.0.0版的静态库及搭建开发环境
    samba的rpm包,只有tar.gz文件安装
    随记
    mount/umount系统调用
    不定参数的传递VA_LIST的用法
    samba服务器源码安装(非rpm)
  • 原文地址:https://www.cnblogs.com/zs234/p/3691079.html
Copyright © 2011-2022 走看看