Scrum敏捷开发过程
首先来说一下什么是敏捷开发:
敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。
怎么理解呢?首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发;
解释一下以人为核心:
我们大部分人都学过瀑布开发模型,它是以文档为驱动的,为什么呢?因为在瀑布的整个开发过程中,要写大量的文档,把需求文档写出来后,开发人员都是根据文档进行开发的,一切以文档为依据;而敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核心。
那什么又是迭代呢?
迭代是指把一个复杂且开发周期很长的开发任务,分解为很多小周期可完成的任务,这样的一个周期就是一次迭代的过程;同时每一次迭代都可以生产或开发出一个可以交付的软件产品。
什么是Scrum?
Scrum的英文意思是橄榄球运动的一个专业术语,表示“争球”的动作;把一个开发流程的名字取名为Scrum,我想你一定能想象出你的开发团队在开发一个项目时,大家像打橄榄球一样迅速、富有战斗激情、人人你争我抢地完成它,你一定会感到非常兴奋的。
而Scrum就是这样的一个开发流程,运用该流程,你就能看到你团队高效的工作。
下面说一下开发流程中的三大角色:
产品负责人(Product Owner)
主要负责确定产品的功能和达到要求的标准,指定软件的发布日期和交付的内容,同时有权力接受或拒绝开发团队的工作成果。
流程管理员(Scrum Master)
主要负责整个Scrum流程在项目中的顺利实施和进行,以及清除挡在客户和开发工作之间的沟通障碍,使得客户可以直接驱动开发。
开发团队(Scrum Team)
主要负责软件产品在Scrum规定流程下进行开发工作,人数控制在5~10人左右,每个成员可能负责不同的技术方面,但要求每成员必须要有很强的自我管理能力,同时具有一定的表达能力;成员可以采用任何工作方式,只要能达到Sprint的目标。
为什么要用到这种开发模式呢?必要的来说一下他的重要性:
Scrum英文翻译过来是橄榄球里的“争球”的意思,Scrum是一个框架,基于这一框架模型,人们可以采用适合自己的方法解决复杂问题,同时帮助帮助开发团队实现价值最大化,比如提高成产能力,加大团队的创造力等等。随着Scrum的深化发展,它不只是用来管理项目开发,还被用于运维团队的维护,以及企业的计划管理。
Scrum的代名词是“简单”、“轻量级”、“对复杂工作的把控”。在Scrum框架中,开发人员可以设计复杂项目的管理流程,包括产品规划管理、软件开发预期结果等。并且,我们还可以对和所有过程相关的要素进行持续改进,包括产品、团队和工作环境等。Scrum框架主要包括四个部分,即角色、事件、工件和规则,每一个组件都为Scrum最终目标服务。从最初为管理者和产品负责人而设计,到后来被用于全球范围内的市场、技术和产品研发。今天,Scrum框架已经被应用于更广泛的领域,包括各类软件产品开发、产品发布以及云产品(包括公有云、私有云、混合云)的构建等。
从具体的应用场景看,Scrum被用于软件、硬件开发,无人车的自动驾驶,学校、政府里面的市场营销、运营,以及个人在社会生活中的日常行为规划等。
那么问题来了,如何把这个敏捷开发方法用于实践当中呢?
尽管,IT技术正在快速迭代,市场上也出现了各种各样的新理念,但是Scrum一直是众多企业最理想选择。Scrum属于渐进式、迭代式,开发人员可逐步优化预期目标,并且能控制风险。借助过往经验,对过程进行控制,是Scrum一直被高度认可的最根本原因。
至于,何时用Scrum?不同的公司会有不同的选择。大体来看,开发团队最佳规模是小到足以保持敏捷性,大到足以完成重要工作,这样的团队基本是6-10人的团队。并且,整个团队已经有了一定的经验沉淀。另外,团队成员中要有一个Scrum master,作为整个团队的组织者和管理者,他是Team Leader和Product owner的粘合剂,可以及时地为团队成员提供帮助。
如何对整个过程进行控制?Scrum 采用迭代、增量的方法来优化可预见性并控制风险。
具体而言,主要通过三大支柱支撑起每个过程控制的实现:
1、透明性:透明度是指,在软件开发过程的各个环节保持高度的可见性,所有参与人员都保持共同的过程认知。也就是说,当某个人在检验一个过程,并确信某一个任务已经完成时,这个完成必须让所有人对已完成过程同步知晓。
2、检验:整个团队必须不断检查Scrum工件,并朝着sprint冲刺目标前进,用以识别重大偏差。这一过程应于熟悉整个流程的人来执行。
3、适应:如果检验人员检验的时候发现过程中的一个或多个方面不满足验收标准,并且最终产品是不合格的,那么便需要对过程或是材料进行调整。调整工作必须尽快实施,以减少进一步的偏差。
上述所有检查和调整可通过Sprint计划、每日例会、Sprint冲刺评审、Sprint冲刺回顾来实现。
Scrum的核心价值观是:承诺、勇气、集中注意力、开放和尊重。整个团队由产品负责人、开发团队和管理员组成。团队成员可以是自行组织,也可以跨职能、跨部门。这种团队组成形式为项目开发提供了更大的灵活性和便利性。自行组织的团队可以避免不了解项目的人来领导,而跨职能、跨部门的组织架构,每个人都是团队中最重要成员,更能体现以项目为核心的理念,大大提高了生产力和创造性。
总之,Scrum 敏捷就是一种不停尝试、不停调整、不停优化的状态。它能把复杂的项目拆分成易于实践的任务,从而持续高效地帮助项目落地。当然,任何 一个撇开实践谈敏捷的理论都是“耍流氓”,要想让Scrum发挥最大价值,还要结合软件开发的实际情况,具体问题具体分析。先从一点入手,然后过度到最佳状态。
引用:
http://blog.itpub.net/31547898/viewspace-2213471/
https://www.cnblogs.com/qixuejia/p/5863216.html
Scrum敏捷开发过程的更多相关文章
- 了解Scrum敏捷开发过程的优点
Scrum 1. 我们的团队 1.1 团队名称 开发小分队&7号 1.2 团队成员 徐棒 彭康明 刘鹏芝 罗樟 王小莉 胡广健 沈兴艳 1.3 我在团队中位置 需求实现团队(负责将需求模块实现 ...
- Scrum敏捷精要
本文抽取Scrum中的一些重要思想和概念,对Scrum敏捷执行的主题流程进行精要的介绍. 一.基本思想 个体和互动 高于 流程和工具 工作的软件 高于 详尽的文档 客户合作 ...
- 产品经理-需求分析-用户故事-敏捷开发 详解 一张图帮你了解Scrum敏捷流程
产品经理-需求分析-用户故事-敏捷开发 详解 用户故事是从用户的角度来描述用户渴望得到的功能.一个好的用户故事包括三个要素:1. 角色:谁要使用这个功能.2. 活动:需要完成什么样的功能.3. 商业价 ...
- 浅谈Scrum敏捷开发:4个输入/输出、3个关键物、3个会议
文章对Scrum敏捷开发流程进行系统的分析,希望借此文能够加深你对敏捷开发的认知,更好的展开产品工作. Scrum敏捷开发,是一种敏捷开发框架,是一个增量的.迭代的开发过程,具备可视.可集成和可运行使 ...
- Scrum敏捷项目管理精要
1. 简介: 敏捷项目管理在我们国家起步比较晚,成功运用的项目不多 百分之六十五的敏捷项目用户为scrum 2.互联网时代的特征,雷军的话: 专注,极致,口碑,快(敏捷项目开发就是要快速) 3.敏捷开 ...
- XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化
XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化 我们现在用的就是典型的XP+devOps模式,已经放弃scrum了 现在还很多公司弄docker虚拟化docker非常复杂,当然 ...
- Scrum敏捷开发简介
Agile 敏捷开发实践中,强调团队的自我管理.在 Scrum 中,自我团队管理体现在每天的 Scrum 会议中和日常的协同工作,在每天的 Scrum 例会中,团队成员一般回答一下几个问题 : 昨天完 ...
- scrum敏捷开发
团队PM:袁佩佩 scrum敏捷开发计划制定: 确定项目实施具体阶段目标 确定项目相关任务分解 确定每日站立会议进行计划 确定项目计划总结日程 确定风险解决方案
- 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划
菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 采用Sc ...
随机推荐
- javascript推断浏览器类型
<script> window["MzBrowser"]={};(function() { if(MzBrowser.platform) return; var ua ...
- 好纠结啊,JeeWx商业版本号和开源版本号有什么差别呢?
好纠结啊,JeeWx商业版本号和开源版本号有什么差别呢? JeeWx开源版本号是一套基础微信开发平台.有基础的微信菜单.素材管理.微信对接等基础功能,适合于开发人员学习研究. JeeWx商业版本号是一 ...
- 【SQLSERVER】MD5注意事项
sql中使用MD5加密是很常见的事情,但是不知道注意点的人还是会即便是拷贝网络上的写法也是会出现错误的. 举个例子简单说明: 由上图我们可以发现相同的字符串但是得到的MD5加密的字符却是不相同的,那么 ...
- Android5.1开机LOGO与开机动画【转】
本文转载自:http://blog.csdn.net/u014770862/article/details/52624627 android5.1中,开机LOGO部分和之前版本的并不相同,主要区别在于 ...
- bzoj2260: 商店购物&&4349: 最小树形图
最小树形图问题啊 最小树形图是撒哩,就是给你一个有向图,确定一个根,要你到达所有点,那棵最短路径树的总边权 做这个用的是朱(jv)刘(lao)算法. 首先假如有多个联通块就无解啦 对应每个点(除了根) ...
- 国内物联网平台初探(三) ——QQ物联·智能硬件开放平台
平台定位 将QQ帐号体系.好友关系链.QQ消息通道及音视频服务等核心能力提供给可穿戴设备.智能家居.智能车载.传统硬件等领域的合作伙伴,实现用户与设备.设备与设备.设备与服务之间的联动. 实现用户与设 ...
- 【BZOJ 2982】 combination
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=2982 [算法] lucas定理 [代码] #include<bits/stdc ...
- 什么是URL?网址的组成
欢迎加入前端交流群交流知识&&获取视频资料:749539640 和 Hypertext 以及 HTTP 一样,URL是Web中的一个核心概念.它是浏览器用来检索web上公布的任何资源的 ...
- 学习英语的小习惯(IT版) 不断补充中~~~~~~
对于一些英文单词的读音,包含各种类似于Linux,Maven,Python……这些单词,尽量第一时间去找到他们的标准或者地道的发音,不要随便读,以免后面发音很难纠正. 有道词典的屏幕取词和划词很好用, ...
- JAVA比较两张图相似度
代码: package com.uiwho.com; import javax.imageio.*; import java.awt.image.*; import java.awt.*;//Colo ...