什么是Scrum团队 (Scrum Team)?
Scrum团队是一组合作的人员,他们共同提供所需的和承诺的产品增量,其中包括三个角色:
- 产品拥有者 (Product Owner)
- Scrum Master
- 开发团队 (Development Team)
自组织和跨职能 (Self-Organizing and Cross-Functional)
Scrum团队Scrum团队是自组织和跨职能的:
Scrum团队 (Scrum Team) 如何有效地合作?
Scrum团队以迭代和递增的方式提供产品,最大限度地提供反馈机会。“完成”产品的增量交付确保始终可以使用潜在有用的工作产品版本。
Scrum由一组原则(或5个scrum值)定义,这些原则应被理解为团队中更有效地协同工作的简单指南。他们是:
- 勇气 - 特别是在解决难题时
- 焦点
- 对共享团队目标的承诺
- 尊重您的团队成员
- 对工作的开放性以及可能出现的任何挑战。
Scrum关键概念
Scrum包含一系列sprint或开发迭代。每个Scrum sprint都涉及相同的过程:角色(人),事件(会议)和工件(有形副产品)。
- Sprint是重复的开发周期,直到您的项目完成。
- 在每个sprint中开发,测试,集成和批准需求(通常以用户故事的形式)。这个过程在冲刺后继续冲刺。
如前所述,Scrum框架由三个不同的类别组成:角色,事件和工件:
Scrum角色 (Scrum Roles)
Scrum框架由三个核心角色定义:开发团队,Scrum Master和产品负责人。
产品负责人
产品负责人负责最大化产品价值和开发团队的工作。如何做到这一点可能因组织,Scrum团队和个人而异。
产品负责人的角色
产品负责人是负责管理产品Backlog的唯一人员。产品Backlog管理包括:
- 清楚地表达产品待办事项;
- 订购产品Backlog中的项目以最好地实现目标和任务;
- 优化开发团队执行的工作价值;
- 确保产品Backlog对所有人都可见,透明和清晰,并显示Scrum团队将在下一步工作的内容; 和,
- 确保开发团队将产品Backlog中的项目理解为所需级别。
Scrum Master
Scrum Master负责确保理解和制定Scrum。Scrum Masters通过确保Scrum团队遵守Scrum理论,实践和规则来实现这一目标。
Scrum Master是Scrum团队的仆人领导者。Scrum Master帮助Scrum团队以外的人了解他们与Scrum团队的哪些互动是有用的,哪些不是。Scrum Master帮助每个人改变这些交互,以最大化Scrum团队创造的价值。
Scrum Master的角色
Scrum Master以多种方式为产品负责人提供服务,包括:
- 寻找有效的产品Backlog管理技术;
- 帮助Scrum团队了解清晰简洁的产品Backlog项目的必要性;
- 在经验环境中理解产品规划;
- 确保产品负责人知道如何安排产品Backlog以最大化价值;
- 理解和实践敏捷性; 和,
- 根据要求或需要促进Scrum事件。
Scrum Master Service服务于开发团队
Scrum Master以多种方式为开发团队服务,包括:
- 指导开发团队的自组织和跨职能;
- 帮助开发团队创造高价值的产品;
- 消除阻碍开发团队进展的障碍;
- 根据要求或需要促进Scrum事件; 和,
- 在Scrum尚未完全采用和理解的组织环境中指导开发团队。
为组织提供Scrum Master服务
- Scrum Master以多种方式为组织服务,包括:
- 领导和指导组织的Scrum采用;
- 规划组织内的Scrum实施;
- 帮助员工和利益相关者理解并制定Scrum和实证产品开发;
- 引起变革,提高Scrum团队的生产力; 和,
- 与其他Scrum Masters合作,提高Scrum在组织中的应用效率。
开发团队
开发团队由专业人员组成,他们在每个Sprint结束时提供可能可释放的“完成”增量产品。只有开发团队的成员才能创建增量。
开发团队由组织组织和授权,以组织和管理自己的工作。由此产生的协同作用优化了开发团队的整体效率和有效性。
发展团队的作用
开发团队具有以下特征:
- 他们是自我组织的。没有人(甚至不是Scrum Master)告诉开发团队如何将Product Backlog转换为潜在可释放功能的增量;
- 开发团队是跨职能的,具有创建产品增量所需的所有技能;
- 除了开发人员之外,Scrum不会识别开发团队成员的任何标题,无论该人员正在执行哪些工作; 这条规定没有例外;
- Scrum不会识别开发团队中的任何子团队,无论需要解决哪些特定领域,如测试或业务分析; 这条规定没有例外; 和,
- 个人发展团队成员可能具有专业技能和重点领域,但问责制属于整个开发团队。
Scrum框架由五个事件标记。这些是Sprint,Sprint Planning,Daily Scrum,Sprint Review和Sprint Retrospective。
- 甲冲刺(也称为迭代)是发展中的Scrum的基本单位。冲刺是一种时间限制的努力; 也就是说,它被限制在特定的持续时间内。每个冲刺的持续时间是预先确定的,通常在一周到一个月之间,最常见的是两周。
- Sprint计划是Scrum框架中的一个事件,团队确定他们将在该sprint期间处理的产品积压项目,并讨论他们完成这些产品积压项目的初始计划。
- 一个每天站立(也称为每日Scrum会议)是保持每天很短的组织会议。这次会议通常被限制在5到15分钟之间,有时被称为站立,早晨唱名或每日争吵。
- 在Sprint评审发生一个Sprint结束后。在审核期间,产品负责人解释了Sprint期间已完成或未完成的计划工作。然后,团队提出已完成的工作,并通过进展顺利以及如何解决问题进行讨论。
- 在Sprint回顾在每个冲刺年底冲刺复习后举行。它为团队提供了一个检查自身的机会,并为下一个Sprint期间制定的改进计划制定计划。
工件只是提供项目详细信息的物理记录。Scrum工件包括Product Backlog,Sprint Backlog和Product Increments。
- 该产品Backlog是特征,缺陷或技术工作,目前尚未要工作优先级列表。从产品所有者的角度来看,它应该是被认为有价值的工作。
- 随着产品需求的变化和发展,产品负责人和团队的其他成员一起审查产品待办事项并在必要时进行调整。
- 在冲刺积压是一个Sprint期间曾参与研发的产品Backlog的所有项目的列表。通过优先处理产品Backlog中的项目,直到团队认为他们已达到Sprint的容量,将此列表放在一起。团队成员根据自我组织的Scrum框架,根据技能和优先级注册Sprint Backlog中的任务。
- 产品增量是Sprint期间完成的产品工作的总和,以及之前Sprint中完成的所有工作。Sprint的目标是产生完成产品增量。由Scrum团队决定是什么定义了Increment的“完成”状态,但所有团队成员都需要就该定义达成一致并理解。
Scrum生命周期从优先级积压开始,但没有提供关于如何开发或优先处理积压的任何指导,其中包括一系列Sprint,它们将最终结果作为潜在的可交付产品增量产生,如下图所示。
在这些冲刺中,产品开发所需的所有活动都发生在整个产品的一小部分上。以下是Scrum生命周期中关键步骤的说明:
- 业务设定优先级,团队自行组织以确定提供最高优先级功能的最佳方式。
- 产品负责人代表业务方,负责维护产品功能列表,称为产品待办事项,并设置开发优先级。
- 在sprint计划期间,团队从该愿望列表的顶部提取一小部分,sprint积压,并决定如何实现这些部分。
- Scrum流程基于称为Sprints的迭代周期,通常持续2-4周,在此期间对产品进行设计,编码和测试,同时每天开会以评估其进度(每日Scrum)。
- 在此过程中,Scrum Master让团队专注于其目标。
- 在sprint结束时,工作应该可以发送给利益相关者。
- 冲刺以冲刺回顾和回顾会议结束。
- 随着下一个sprint的开始,团队选择了产品积压的另一大块并开始重新开始工作。
- 该项目将持续到完成整个愿望清单,或者由于时间或预算已经用尽而停止。
- 这种情况一直持续到项目被认为完成为止,要么停止工作(截止日期,预算等),要么完成整个愿望清单。