zoukankan      html  css  js  c++  java
  • Scrum介绍

    转自:http://www.cnblogs.com/sanjia/p/scrum_introduction.html

    Scrum介绍

    摘要

    如今,项目管理的步伐越来越快。项目管理需要更灵活、更积极地,向应客户的需求。使用敏捷项目管理方法,项目经理可以在不影响价值、质量和商业规则的前提下实现所有目标,Scrum是一种迭代增量式的软件开发过程,用于敏捷软件开发。Scrum是一个包括一系列实践和预定义角色的过程框架。本文从瀑布模型出发,介绍了scrum的主要要素、过程以及遇到的挑战。

    Scrum主要角色:

    1. Product Owner
    2. Scrum master
    3. 团队

    Scrum过程:

    1. 建立Product backlog
    2. Sprint 计划会议
    3. 编写Sprint Backlog
    4. 每日例会
    5. Sprint演示(评审)
    6. Sprint回顾

    关键词: 软件工程、敏捷开发、Scrum

    目录

    一、瀑布模型    4

    二、敏捷开发    4

    三、Scrum    4

    3.1 Scrum简介    5

    3.2 Scrum的角色    5

    四、 Scrum过程    6

    4.1 建立Product Backlog    6

    4.2 Sprint计划会议    7

    4.3编写Sprint Backlog    8

    4.3.1燃尽图(burndown chart)    8

    4.4每日例会    9

    4.5 Sprint演示    10

    4.6 Sprint回顾    10

    五、 Scrum的挑战    11

    一、瀑布模型

    在传统瀑布模型的开发中,我们倾向于对项目做全局的详细分析,然后做出整体的schedule,开发人员按照这个schedule进行后续的开发。瀑布模型有以下缺点:

    1. 在项目的各个阶段反馈太少
    2. 只有在项目的生命周期结束后才能看到项目的成果
    3. 通过过多的强制完成日期和里程碑来跟踪各个项目阶段
    4. 瀑布模型不能够很快的适应客户的需求变更

    二、敏捷开发

    在次基础上人们引出了敏捷(Agile)开发的理念,Agile (敏捷)开发整体概念的产生是基于一种方法更接近人类活动现实情况,以便取得更好效果的信念上。Agile(敏捷)强调构建可以即时操作的软件,相对于在构建前花费许多时间记录规格要求。Agile(敏捷)注重小型多职能的团队决策权,相对于大型层次和部门职能的划分,Agile(敏捷)注重快速迭代,并且其中结合尽可能多的客户反馈

    敏捷宣言:

    1. 个体与交互 胜过 过程和工具
    2. 可用的软件 胜过 完备的文档
    3. 客户协作 胜过 合同谈判
    4. 响应变化 胜过 遵循计划

    敏捷价值观:沟通,简单,反馈,勇气,尊重

    三、Scrum

    Scrum是众多快速发展的Agile (敏捷)方式之,Scrum这个名字来源于英式橄榄球的一种争球方式,为什么要取这个名字?如图3-1所示。这种敏捷开发方法跟Scrum有相似的地方,迭代,反馈,快速反应和有效的沟通。Scrum是一个轻量级的软件工程过程,是一个软件管理框架。

    3.1 Scrum简介

    Scrum是一个敏捷开发过程框架,是一套追求迭代开发、持续集成的开发管理方法。在Scrum中,整个开发周期包含若干个小的迭代周期,每个小的迭代周期称为一个sprint(冲刺)。Scrum的重要支柱之一是当Scrum开发团队确认承诺任务后,产品所有者 (Product Owner)在此Sprint期间不可以添加新的需求。

    3.2 Scrum的角色

    1. 产品负责人 (Product Owner)

    产品负责人是利益相关方的代表,他的工作重点是产品的业务方面。他负责给出一份明确的,可度量的,合理的产品 Backlog(product backlog),并从业务角度出发对Backlog 中各项问题按优先级排序。Scrum开发团队总是优先开发对客户具有较高价值的需求。

    1. Scrum Master

    Scrum Master 是整个团队的导师和组织者,他负责提高团队的开发效率。

    • 明确把握开发进度。
    • 保证Scrum团队中各个角色及职责的良好协作。解决团队开发中的障碍。 
    • 做为团队和外部的接口,屏蔽外界对团队成员的干扰。 
    • 保证开发过程按计划进行,组织每日站会、Sprint计划会议、Sprint评审会议和Sprint回顾会议。
    1. 团队

    负责交付产品的团队。一个团队通常由5至9名具有跨职能技能的人(设计者,开发者等)组成,承担实际的开发工作。

     

  • 相关阅读:
    机器学习(深度学习)
    机器学习(六)
    机器学习一-三
    Leetcode 90. 子集 II dfs
    Leetcode 83. 删除排序链表中的重复元素 链表操作
    《算法竞赛进阶指南》 第二章 Acwing 139. 回文子串的最大长度
    LeetCode 80. 删除有序数组中的重复项 II 双指针
    LeetCode 86 分割链表
    《算法竞赛进阶指南》 第二章 Acwing 138. 兔子与兔子 哈希
    《算法竞赛进阶指南》 第二章 Acwing 137. 雪花雪花雪花 哈希
  • 原文地址:https://www.cnblogs.com/bonelee/p/6137049.html
Copyright © 2011-2022 走看看