敏捷开发之Scrum扫盲篇

简介

根据自己的理解,用自己的话来讲述Scrum中的各个环节,主要目的有两个,一个是进行知识的总结,另外一个是觉得网上很多学习资料的讲述方式让初学者不太容易理解;所以我决定写一篇扫盲性的博文,同时试着也与园内的朋友一起分享交流一下,希望对初学者有帮助。

敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。

敏捷它是一种指导思想或开发方式,但是它没有明确告诉我们到底采用什么样的流程进行开发,而Scrum和XP就是敏捷开发的具体方式了,你可以采用Scrum方式也可以采用XP方式;Scrum和XP的区别是,Scrum偏重于过程,XP则偏重于实践,但是实际中,两者是结合一起应用的,这里我主要讲Scrum。

Scrum开发流程中的三大角色和相关名词

产品负责人(Product Owner)
主要负责确定产品的功能和达到要求的标准,指定软件的发布日期和交付的内容,同时有权力接受或拒绝开发团队的工作成果。

流程管理员(Scrum Master)
主要负责整个Scrum流程在项目中的顺利实施和进行,以及清除挡在客户和开发工作之间的沟通障碍,使得客户可以直接驱动开发。

开发团队(Scrum Team)
主要负责软件产品在Scrum规定流程下进行开发工作,人数控制在5~10人左右,每个成员可能负责不同的技术方面,但要求每成员必须要有很强的自我管理能力,同时具有一定的表达能力;成员可以采用任何工作方式,只要能达到Sprint的目标。

有关Scrum的几个名词
Product Backlog: 可以预知的一个阶段的产品任务, 包括功能性的和非功能性的所有任务。(按优先顺序排列的一个产品需求列表),这个是由Product Owner 负责的

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

Scrum Team根据Product Backlog列表,做工作量的预估和安排构建这个团队;

Sprint Planning Meeting :(Sprint计划会议) 来从整个阶段任务列表中挑选出(按时间顺序)一个Story作为本次迭代完成的目标,这个目标的时间周期是1~4个星期,然后把这个Story进行细化,形成一个Sprint Backlog;

sprint backlog:一个sprint周期内所需要完成的任务。由Scrum Team去完成的,每个成员根据Sprint Backlog再细化成更小的任务(细到每个任务的工作量在2天内能完成);

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

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

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

Daily Scrum meeting:Daily Scrum Meeting(每日站立会议),每次会议控制在15分钟左右,每个人都必须发言,需要向ScrumMaster汇报三个项目:今天完成了什么? 是否遇到了障碍? 即将要做什么?通过该会议,团队成员可以相互了解项目进度和方向。同时遇到不能解决的问题也可以提出,每个人回答完成后,要走到黑板前更新自己的 Sprint burn down(Sprint燃尽图。

Sprint review meeting:演示会议,也称为评审会议,产品负责人和客户都要参加(最好本公司老板也参加),每一个Scrum Team的成员都要向他们演示自己完成的软件产品(这个会议非常重要,一定不能取消);

Sprint retrospective meeting:回顾会议/总结会议,以轮流发言方式进行,对刚结束的Sprint进行总结。会议的参与人员为团队开发的内部人员。一般该会议为3小时。

S流程

在这里插入图片描述

1、由Product Owner确定一个Product Backlog(按优先顺序排列的一个产品需求列表);

2、根据Product Backlog列表,做工作量的预估和安排;

3、通过 Sprint Planning Meeting(Sprint计划会议) 来从Product Backlog列表中挑选出一个Story作为本期迭代完成的目标,这个目标的时间周期是1~4个星期,然后把这个Story进行细化,形成一个Sprint Backlog;

4、Sprint Backlog是由Scrum Team去完成的,每个成员根据Sprint Backlog再细化成更小的任务(细到每个任务的工作量在2天内能完成);

5、每日进行 Daily Scrum Meeting/Daily Stand-up Meeting(一般每日早上站立会议)讲解当前Sprint Backlog中的任务状态,每次会议控制在15分钟左右,每个人都必须发言,并且要向所有成员当面汇报你昨天完成了什么,并且向所有成员承诺你今天要完成什么,同时遇到不能解决的问题也可以提出,每个人回答完成后,要走到黑板前更新自己已经完成的任务-Sprint burn down(Sprint燃尽图);

6、每日集成(一般为测试前一天的完成任务,自动化测试会是当晚完成当天的任务测试),也就是每天都要有一个可以成功编译、并且可以演示的版本;很多人可能还没有用过自动化(CI/CD)的每日集成,在服务器上自动获取最新版本,然后在服务器中编译,如果通过则马上再执行单元测试代码,如果也全部通过,则将该版本发布,中间有任何失败,都会用邮件通知项目管理人员;

7、当一个Story完成,也就是Sprint Backlog被完成,也就表示一次Sprint完成,这时,我们要进行 Srpint Review Meeting(演示会议),也称为评审会议,产品负责人和客户都要参加(最好本公司老板也参加),每一个Scrum Team的成员都要向他们演示自己完成的软件产品(这个会议非常重要,一定不能取消);

8、最后就是 Sprint Retrospective Meeting(回顾会议),也称为总结会议,以轮流发言方式进行,每个人都要发言,总结并讨论改进的地方,放入下一轮Sprint的产品需求中;

在这里插入图片描述

上图就是每日的站立会议了,参会人员可以随意姿势站立,任务看板要保证让每个人看到,当每个人发言完后,要走到任务版前更新自己的燃尽图。

在这里插入图片描述

任务看版包含 未完成、正在做、已完成 的工作状态,假设你今天把一个未完成的工作已经完成,那么你要把小卡片从未完成区域贴到已完成区域。

每个人的工作进度和完成情况都是公开的,如果有一个人的工作任务在某一个位置放了好几天,大家都能发现他的工作进度出现了什么问题(成员人数最好是5~7个,这样每人可以使用一种专用颜色的标签纸,一眼就可以从任务版看出谁的工作进度快,谁的工作进度慢)

工具推荐

推荐一个企业级敏捷开发工具——CODING:https://coding.net/ ,操作界面简洁,支持一站式 DevOps 全流程服务,包括代码及需求管理,缺陷管理,测试管理,持续集成,自动部署,基于 Git 的版本控制保障了公司代码资产安全。不仅满足管理者的企业视图,更加快了开发者的研发速度,支持远程协作,提高开发效率。

https://worktile.com/scrum
期间我们有用过这个产品,页面直接拖拉还是非常方便的
在这里插入图片描述

原文出自:https://www.cnblogs.com/qixuejia/p/5863216.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值