Scrum到底是个神马玩意儿
从前有一种非常火爆的体育运动,对阵双方各派出11位猛男,在宽阔的草皮球场内争抢一颗可怜的小皮球。哪方能够通过团队协作拿到皮球,并且运送到对方场地的特定位置即得分。

没错,你没有走错片场,快到超级碗里来~
咳咳,其实我们要说的是在IT领域内,从这种运动中引申出来的一个名词,叫做SCRUM-争球。
相信接触过敏捷(agile)项目的读者,都听说过SCRUM这个名词,那他到底指代的是怎样一个事务呢?
其实你可以结合着上面这张图片去理解,笔者觉得总结起来,SCRUM就是‘一个小规模团队,通过紧密的团队合作,一步一步推进团队目标’的理念。
归根结底,SCRUM是敏捷开发项目中的一种组织形式,严格来说他其实不能算是一种技术而是一种方法论(Methodology),更不能等同于敏捷开发理念本身。
现如今,我们人类社会的运转节奏已经快的令人发指了,这种快节奏也非常显而易见的对IT行业产生了冲击。在这样的前提下,敏捷开发或者叫敏捷项目的应用渐渐浮出水面而且越来越呈流行的趋势。
现在的IT企业,不搞敏捷开发感觉出门都不好意思跟人打招呼。而SCRUM就是敏捷项目最喜欢采用的一种组织方式。
那么SCRUM怎么开展,我的团队到底适不适合采取SCRUM形式呢?
我们来看看SCRUM为一个敏捷性项目定义了哪些特性:
第一个是待办产品列表(backlog):它包括了整个敏捷项目中,团队要完成的所有任务;包括待开发的产品功能,非功能性需求,待修复的缺陷等等。
其次是冲刺期(sprint):也就是将一个敏捷项目划分成数个小阶段,每个阶段定义该阶段需要完成的任务量。一般来说这个阶段时长是一至四周,以两周为最常见。本质上这种做法与我们平常说到的‘迭代-增量’开发模型没有根本的区别。在冲刺期结束的时候,我们规划好的任务应该全部完成:这就包括了开发,集成,测试和归档。
其次是冲刺期计划会(sprint planning):顾名思义,就是在每个冲刺期开始的时候,对所有待开发的产品部件进行讨论,估算和决定哪些可以在当前冲刺期完成,并进而进行任务分派。在敏捷项目中,理论上类似计划是一个民主的过程,团队的成员秉承高度专业的态度来决定当前可完成的任务量。
再次是每日站立会议(daily scrum)有时候提到scrum,我们可能会和站立会议等同起来。确实从命名上而言每日站立会议(daily scrum)也用到了scrum这个名词,不过严格来说scrum不单单特指这个会议,也包含我们本文提到的对整个敏捷项目的组织方式。在会议上,每个团队人员要回答三个问题:
- 我昨天完成了什么工作
- 我今天准备完成什么工作
- 我发现了哪些可能阻碍工作的问题

PS:在笔者以前经历过的一个敏捷项目里,老外们真的拿着一颗玩具橄榄球在会议上传来传去:P

再次是冲刺期回顾(sprint review):回顾当前冲刺期完成的任务,展示项目成果,以及计划完成却没有完成的任务,整理下一阶段待完成的任务。
SCRUM对于敏捷项目而言是有很大价值的,通过这种组织形式能够很好的实现敏捷项目的核心诉求:
- 高度迭代
- 强周期性
- 持续响应客户
当然话说回来,理念和理论总是听起来很美好,实现起来却往往很让人头疼,SCRUM也是如此。
敏捷的开发理念摒弃很多传统开发模式中的复杂流程和管理方法,但它这种强调人,强调自身动力的理念也容易使得团队缺乏计划,行动松散。
所以SCRUM就像一把双刃剑,用得好可能产生非常高的生产力;用的不好,则不但生产效率不高,还会让团队陷入混乱。并不是每个项目都适用敏捷开发,也不是所有团队都要采取SCRUM得形式,具体如何选择还是要取决于团队的构成和实力。
Scrum到底是个神马玩意儿的更多相关文章
- HttpClient参观记:.net core 2.2 对HttpClient到底做了神马
.net core 于 10月17日发布了 ASP.NET Core 2.2.0 -preview3,在这个版本中,我看到了一个很让我惊喜的新特性:HTTP Client Performance Im ...
- 【转】DSP是什么--DSP是神马东东??
原文:http://www.eepw.com.cn/article/272908.htm 导读:本文主要介绍的是DSP是什么,不懂得童鞋们快随小编一起学习一下DSP到底是个神马东东吧! 本文引用地址: ...
- [C++中级进阶]001_C++0x里的完美转发到底是神马?
[C++中级进阶]001_C++0x里的完美转发到底是神马? 转载至:http://www.cnblogs.com/alephsoul-alephsoul/archive/2013/01/10/285 ...
- 函数:递归是神马 - 零基础入门学习Python022
函数:递归是神马 让编程改变世界 Change the world by program 我们这节课的主题叫递归是神马,将通过小甲鱼带感的讲解,来告诉大家神马是递归!如果说优秀的程序员是伯乐,那么把递 ...
- [转帖]Tensor是神马?为什么还会Flow?
Tensor是神马?为什么还会Flow? 互联网爱好者 百家号17-05-2310:03 大数据文摘作品,转载要求见文末 编译 | 邵胖胖,江凡,笪洁琼,Aileen 也许你已经下载了TensorFl ...
- 神马玩意,EntityFramework Core 1.1又更新了?走,赶紧去围观
前言 哦,不搞SQL了么,当然会继续,周末会继续更新,估计写完还得几十篇,但是我会坚持把SQL更新完毕,绝不会烂尾,后续很长一段时间没更新的话,不要想我,那说明我是学习新的技能去了,那就是学习英语,本 ...
- javascript 函数初探 (一)--- 神马是函数
神马是函数? 所谓函数,本质上是一种代码的分组形式.我们可以通过这种形式赋予某组代码一个名字,以便与之后的调用.下面,我们来示范以下函数的声明: function sum(a, b){ var c = ...
- SQLSERVER 里经常看到的CACHE STORES是神马东东?
SQLSERVER 里经常看到的CACHE STORES是神马东东? 当我们在SSMS里执行下面的SQL语句清空SQLSERVER的缓存的时候,我们会在SQL ERRORLOG里看到一些信息 DBCC ...
- 记一次数据库调优过程(IIS发过来SQLSERVER 的FETCH API_CURSOR语句是神马?)
记一次数据库调优过程(IIS发过来SQLSERVER 的FETCH API_CURSOR语句是神马?) 前几天帮客户优化一个数据库,那个数据库的大小是6G 这麽小的数据库按道理不会有太大的性能问题的, ...
随机推荐
- OO Unit 2 电梯调度
目录 OO Unit2 博客作业 基于度量来分析⾃己的程序结构 复杂度分析 架构分析 改进和重构 发现过的BUG 简化问题 多线程初探 OO Unit2 博客作业 基于度量来分析⾃己的程序结构 自认为 ...
- php基础-mysqli
基本八个步骤 //连接数据库 $link = mysqli_connect('localhost', 'root', ''); //判断是否连接成功 if (!$link) { exit('数据库连接 ...
- JUnit介绍(转)
测试的重要性毋庸再说,但如何使测试更加准确和全面,并且独立于项目之外并且避免硬编码,JUnit给了我们一个很好的解决方案.一.引子 首先假设有一个项目类SimpleObject如下: pu ...
- Gradle 学习一
参考教程:https://guides.gradle.org/consuming-jvm-libraries/ 安装Gradle 下载地址:https://guides.gradle.org 配置环境 ...
- 【原创】XAF常用属性字段设置
1.IP地址IPV4 [XafDisplayName()] [ModelDefault("EditMaskType", "RegEx")] [ModelDefa ...
- java爬虫案例学习
最近几天很无聊,学习了一下java的爬虫,写一些自己在做这个案例的过程中遇到的问题和一些体会1.学习目标 练习爬取京东的数据,图片+价格+标题等等 2.学习过程 1·开发工具 ...
- MVC Web.Config 配置错误
配置一个MVC项目的 SessionState,查阅了大量的资料,发现都是直接在web.config中直接加入类似的语句就可以了 <sessionState timeout="60&q ...
- DevExpress XtraTabbedMdiManager删除Page
DevExpress XtraTabbedMdiManager删除Page 时,xtraTabbedMdiManager1.Pages.Remove()是没用的. 正确的应该是xtraTabbedMd ...
- SSIS - 9.文件系统任务
文件系统任务是用来操作服务器上的文件和目录的.比如,可以新建任务来创建.复制.删除或移动一个文件或一个目录. 一.操作和属性 一个文件系统可以定义如下10种操作. 所有的操作包含Name, Descr ...
- Mesos源码分析(2): Mesos Master的启动之一
Mesos Master的启动参数如下: /usr/sbin/mesos-master --zk=zk://127.0.0.1:2181/mesos --port=5050 --log_dir=/va ...