初识 Scrum 敏捷

现在互联网公司越来越流行敏捷开发,每个通过敏捷开发的团队都在开发过程中受益匪浅,并且敏捷开发非常适合这种变化多端的互联网行业,在商业上产生了非常大的价值。之所以敏捷越来越受到开发人员和公司的欢迎是因为它改变了整个开发团队的价值观,它让开发团队更加的注重沟通、流程更加简单、更多的反馈、更大的勇气和更加谦逊。

什么是敏捷开发

敏捷开发是一种开发模式,它是传统的瀑布模型的优化。传统的瀑布模型将开发的过程分成了几个阶段:制定计划、需求分析、软件设计、程序编写、软件测试和运行维护,看起来是一个非常严谨的步骤,但是它面对这种快速变化的市场是就力不从心了。人们开始对传统的开发模型进行优化,让它更加的符合市场的多变性,这样敏捷开发应运而生。

传统软件开发过程周期过长,并且某个环节出现问题需要从头再来,在生产过程中每个环节都需要耗费大量的成本去保证它的正确性,缺乏并行开发的能力,往往经过一段时间的开发产品出来后,市场同时也产生了很大的变化,并不能够满足当初的预期。

敏捷开发以用户的需求为核心,采用迭代、循序渐进的方法进行软件开发。在很大程度上避免了传统软件开发中的诸多问题,它通过一个一个的小的开发周期,逐步的完成整个项目,每个开发周期内的功能发布后,会通过各种数据再次调整自己的目标并准备下一个开发周期。它是一个适应市场变化的开发模式,很多时候某个功能需要真正的公之于众后才知道它的真正用处,很多时候好的互联网产品的最终形态和它的初衷有非常大的变化,是因为它们会基于某种假设通过一个个小的开发周期,慢慢的修正它的方向,当然这种正确的方向源于用户的真实需求。

什么是 Scrum 敏捷开发

Scrum 是一个用于开发和维持复杂产品的框架,在这个框架中,整个开发过程由若干个短的迭代周期组成,每个短的迭代周期称为一个 Sprint,每个 Sprint 建议长度为 2 周或者 4 周,对于快速变化的互联网行业可以使用 1 周的长度。在 Scrum 中,产品需求是通过 Backlog 来管理的,Backlog 的优先级是通过商业价值的高低来排列,Backlog 每个需求项通常是以 Userstory 的形式体现,Scrum 团队会优先开发商业价值高的需求。Scrum 团队会通过讨论,将优先级高的的需求从 Backlog 中挑选出来,这些需求是刚好满足一个 Sprint 的工期任务,这个任务列表我们称之为 Sprint Backlog,当然这些任务加起来必须是一个可用的产品。这样一来产品会通过一个一个的 Sprint 来完善,并最终达到用户终极目标。

什么是框架?框架提供了一些工具来解决某一类问题,并且它可复用、可扩展。

Userstory 格式:作为一个<角色>, 我想要<活动>, 以便于<商业价值>

Scrum 流程图:

Scrum

Scrum 敏捷模型中还存在一些角色、一些工具、一些活动和价值观,让我们进一步了解一下。

Scrum 敏捷开发的角色

Product Owner

产品负责人负责最大化产品以及开发团队工作的价值。他是 Backlog 的唯一负责人:

  • 清晰的表达产品 Backlog 每个需求项目;
  • 对 Backlog 进行排序,最好的实现目标;
  • 确保开发团队所执行工作的价值;
  • 确保 Backlog 对所有人可见、透明、清晰,并且显示 Scrum 团队的下一步工作;
  • 确保 Scrum 团队对 Backlog 中的每一条都达到一定程度的理解。

为了确保开发的顺利进行,任何人都不得要求开发团队按照另一套需求开展工作,开发团队也不允许听从任何其它人的需求,除了自己团队的产品负责人。

Scrum Master

Scrum Master 在 Scrum 团队中起到服务务式领导的作用,他确保团队更好的按照 Scrum 模式来实施,会帮助大家遵循 Scrum 的理论、实践和规则。Scrum Master 是团队的教练,帮助团队健康成长:

  • 指导团队按照正确的 Scrum 方式开展工作;
  • 清除障碍,确保团队在一个干净的环境中工作;
  • 及时沟通;

Scrum Master 越来越受到团队的重视,通常他会让一个团队越来越健康,优秀的 Scrum Master 拥有这样的特质:责任心、谦虚、协作、有影响力、影响力、知识渊博。

开发团队

开发团队就是更佳专业的人员,例如:工程师、设计师、交互工程师等等,他们是真正创造价值的角色:

  • 自组织;
  • 可以跨团队;
  • 他们都是开发者;

Scrum 敏捷开发的工具

Product Backlog

Product Backlog 可以看作是所有的需求池,产品经理会将所有的需求整理到 Backlog 中去,并且越是排在前面的需求,需求的描述越准确涉及到的细节也越丰富并且在商业上的价值也是越大的。当然它的内容和优先级并不是一成不变的,它一直在变化,随着市场、需求、技术等原因一直在调整。

Sprint Backlog

Sprint Backlog 中的需求项来自于 Product Backlog,它是一份足够具体的计划,它是整个团队讨论的结果,它讨论得越具体详细,在开发的过程中就越接近目标,Sprint 的交付日期也越准确。它也是在不断变化的,当需求产生了变化,需要对需求工作量再次评估,并对未完成的 Sprint Backlog 进行调整(插入或者去除任务)。

Burn-down Chart

燃尽图是用来反应工作完成情况的趋势图,图中 x 轴代表 Sprint 的工作日,y 轴代表剩余工作量,团队会根据每天的进展发布燃尽图,理想情况下 Sprint 结束时,累积工作量降低到 0,Sprint 就成功结束,下图中浅色的线为理想中的燃尽曲线,但是往往实际情况(深色线)中它会波动,从燃尽图的走势,我们可以很好的控制项目的发展情况。

然尽图

Scrum 敏捷开发的活动

Sprint 计划会议

每个 Sprint 都以 Sprint 计划会议作为开始,这是一个固定时长的会议,在这个会议中,Scrum团队共同选择和理解在即将到来的 Sprint 中要完成的工作。这个会议中需要解决两个问题:

  • 决定在 Sprint 中需要完成哪些工作;
  • 决定这些工作如何完成。

每日站立会

每日站立会主要是开发团队内部组织,每天在同样的时间和地点召开,每个开发成员需要描述自己以下三个信息:

  • 我完成了什么;
  • 我计划完成什么;
  • 我遇到了什么问题?

它并不是一个回报会议,是团队内部的沟通会议,它的透明性帮助我们很好的发现问题并促进项目的快速进行,这个会议不能太长,最多 15 分钟。

Sprint 评审会议

在 Sprint 结束时,Scrum 团队和相关⼈人员一起评审 Sprint 的产出。围绕着 Sprint 中完成的增量进行讨论,大家都可发言,这个会议是个⾮非正式的会议,帮助⼤大家了解我们目前进展到哪⾥里,并一起讨论我们下一步如何推进。当然此事产品负责人会对未来做出最终的决定,并适当地调整 Product Backlog。

Sprint 回顾会议

在每个 Sprint 结束后,Sprint 团队会聚集在一起对本次 Sprint 进行一次回顾总结,大家指出哪些做的好,哪些做得不好,并找出潜在的改进事项,为将来的改进制定计划。

敏捷开发与传统开发的不同

敏捷开发与传统的开发有很多不同之处,它的高效和快速响应正式传统开发模式无法比拟的:

  • 周期短;
  • 响应快;
  • 效率高,所有的事情都是迭代进行;
  • 弱化文档;
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容

  • 什么是Scrum敏捷开发 Scrum是敏捷开发的一种,是一种以人为本,迭代式增量软件开发的过程,以英式橄榄球争球队...
    Monica_Wang阅读 18,549评论 4 53
  • 1、在项目的Sprint回顾会后,团队成员指出那是抱怨会,不是非常有效。Scrum主管应该怎么做?A 建议团队尊重...
    隔壁老李头阅读 11,782评论 1 16
  • 极限编程(eXtreme Programming,XP)极限编程的思想源自Kent Beck 和Ward Cunn...
    狗达Da阅读 463评论 0 0
  • 虽然说网上的世界是虚拟的,但若有人把生活中的真事归拢归拢放到网上摊开晒晒,大家伙看到了,反觉得这些个真实倒比藏在生...
    耕读者_1a46阅读 141评论 0 0
  • 文/曦月同学 清晨7问: 1.我今天的目标是什么? 2.我的终极人生目标是什么? 3.今天最重要的一件事是什么? ...
    一粒少女X阅读 298评论 4 9