使用 Azure Boards 实现 SAFe® - 完整指南

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

本指南逐步讲解如何使用 Azure Boards 实现缩放敏捷框架(SAFe®)。 了解如何配置团队、自定义流程、计划和跟踪工作、监视进度,以及跨项目组合、计划和团队级别验证实施情况。

Azure Boards 通过待办事项、工作板、团队、报表和指标来支持 SAFe® 实践。 本文介绍 Azure Boards 工件如何支持 SAFe 实践和工件。

你的成就

此方法适用于任何 Azure DevOps 流程模板,并从小型到大型企业部署进行缩放。

先决条件

在通过 Azure Boards 实施 SAFe® 之前完成这些要求。

类别 Requirement 详细信息
SAFe® 知识 查看 SAFe® 框架基础知识 如果你不熟悉 SAFe®,请从 SAFe® 框架基础知识开始。
权限 项目管理员访问权限 确保具有 项目管理员权限 来配置团队、区域和迭代。
组织规划 了解 SAFe® 结构 记录组织的项目组合主题、价值流和敏捷发布列车(ART)。
利益相关者一致 确定关键利益干系人 在规划流程的早期,让项目组合经理、项目经理和 Scrum Masters 参与进来。

SAFe® 概念和 Azure Boards 映射

SAFe® 将工作组织为直接映射到 Azure Boards 的三个级别:

SAFe® 级别 Azure Boards 工作项 Azure Boards 团队 迭代
投资 组合 长篇故事 产品组合团队 没有特定的迭代
Program Features 计划团队 计划增量 (8-12 周)
团队 用户情景、任务、Bug 敏捷功能团队 冲刺 (2-3 周)

显示支持 SAFe® 的敏捷工具结构的屏幕截图。

关键概念:

  • 程序增量(PI):包含 4-5 个冲刺和一个 IP 冲刺的 8-12 周迭代
  • 敏捷发布列车 (ART):计划团队管理功能
  • 创新和规划(IP)冲刺:创新工作的专用冲刺
  • 值流:使用标记或具有汇总功能的自定义字段进行跟踪

有关 Scrum 和看板实施的详细信息,请参阅 关于冲刺阶段、Scrum 和项目管理 以及 关于看板和 Kanban

SAFe® 框架配置

SAFe® 提供四种配置来支持不同的组织需求:

基本 SAFe®

支持敏捷发布列车(ART)的基础级别:

  • 团队和计划级别
  • 程序增量和迭代
  • 功能和故事
  • 基本 PI 规划和执行

大型解决方案 SAFe®

为复杂系统添加解决方案级协调:

  • 解决方案列车
  • 能力工作项
  • 解决方案积压工作
  • 跨艺术协调

项目组合 SAFe®

添加项目组合管理功能:

  • 史诗级工作项和项目组合积压事项
  • 精益投资组合管理
  • 战略主题和项目组合愿景
  • 价值流对齐

完整 SAFe®

合并企业级实现的所有级别,包括 Essential、Large Solution 和 Portfolio 级别。

SAFe® 体系结构概述

显示 SAFe 体系结构概述海报版本 5.0 的屏幕截图。

经 © 2011-2020 Scaled Agile Inc. 许可转载。 保留所有权利。

SAFe® 项目如何映射到 Azure Boards

SAFe® 术语或工件 Azure Boards 术语或工件
敏捷团队 Teams - 定义团队的层次结构
敏捷发布训练 (ART) Teams - 敏捷团队管理功能
Budgets 标记、价值区域 - 跟踪预算/价值流工作
Capabilities 工作项 - 像规划和跟踪“Epics”和“Features”一样
启用程序 工作项 - 跟踪积压工作项中的工作项
创新和计划 (IP) 迭代 迭代路径 - 定义 IP 迭代路径
项目组合积压工作 项目组合积压工作 - 列出具有子扩展的史诗
项目组合看板 项目组合特性看板
计划积压工作 (backlog) 功能待办事项 - 程序功能列表
计划看板 程序功能板
解决方案积压工作 (backlog) 解决方案组合积压工作 - 自定义工作项类型
战略主题 Wiki - 在项目 Wiki 中捕获
团队积压工作 用户故事积压 - 列出团队用户故事
团队看板 故事板

SAFe® 5.0 业务敏捷性

SAFe® 实践可帮助组织建立敏捷性、一致性和自主性文化,同时保持以客户为中心的文化。

请参阅以下相关文章,了解 Azure Boards 如何支持业务敏捷性:

SAFe® 团队结构和工件

下图显示了映射到区域和迭代路径的三级团队层次结构。 这些示例使用敏捷流程作为基础,但可以将这些模式应用于任何受支持的进程。

显示支持 SAFe® 的敏捷工具结构的屏幕截图。

敏捷功能、计划和组合团队

Azure Boards 为每个团队提供自己的工作视图。 配置分层团队结构,以便每个团队专注于其工作并汇总到更高级别。

显示 SAFe® 角色如何映射到团队层级结构的屏幕截图。

若要支持 SAFe® 团队,请提升默认团队以充当 Epics 的项目组合团队,然后创建计划和团队子团队。 通过适当分配区域路径和迭代路径,跨团队跟踪工作。

有关详细配置步骤,请参阅 “配置基本 SAFe® 结构”。

情景、功能、长篇故事、使能器和能力

记录工作项中的所有可交付成果。 每个工作项都使用特定的工作项类型和工作流。 可用的工作项类型取决于创建项目时选择的过程-敏捷、基本、Scrum 或 CMMI。

下图显示了“敏捷”流程积压工作项的层次结构:

显示敏捷工作项类型的图表。

  • 用户情景和任务用于跟踪工作。
  • 漏洞追踪代码缺陷。
  • 长篇故事和功能用于在较大的方案中对工作进行分组。

每个团队都可以在与用户故事或任务工作项相同的级别上配置如何管理 Bug 工作项。 使用“处理 bug”设置。 有关使用这些工作项类型的详细信息,请参阅敏捷流程

积压工作项可以称为 用户情景 (敏捷)、 问题 (基本)、 产品积压工作项 (Scrum)或 要求 (CMMI)。 它们都描述了客户的价值和交付工作。

  • 使用用户故事或特性跟踪启用项,并使用特性或史诗跟踪能力。
  • 如果需要专用跟踪,请添加自定义工作项类型

工作项支持:

  • 说明和验收条件
  • 分配给团队(区域路径)和所有者
  • 状态更新和迭代分配
  • 链接、附件和标记
  • 评论和讨论话题

有关工作项的详细信息,请参阅 “跟踪处理用户情景”、“问题”、“bug”、“功能和史诗”。

团队积压工作和版块

将 SAFe® 待办事项映射到团队、项目和项目组合待办事项。 敏捷流程默认提供 User Story、Feature 和 Epic 待办事项级别。 使用分层待处理事项来显示支持Epic的功能工作及其进度。

显示具有 Epic(史诗)、功能和故事的分层待办列表的屏幕截图。

每个团队都可以独立配置其董事会视图,以支持其特定的 SAFe® 角色和职责。

项目增量、版本发布和迭代

将 SAFe® 发布列车、项目增量(PI)、发布和冲刺映射到迭代路径。 跨团队层次结构共享迭代过程,使团队在发布日程表上保持一致。

SAFe® 发布列车如何映射到迭代的示意屏幕截图。

由于 Epics 可以跨越多个发布周期,因此项目组合团队通常不受限于特定迭代。 计划团队按 PI 跟踪功能;功能团队使用冲刺完成故事。

显示团队使用迭代跟踪可交付结果的屏幕截图。

价值流和预算

使用标记或自定义字段将功能和史诗映射到价值流、战略主题和预算。 定义汇总字段或使用查询和图表来聚合从子特征到 Epics 的预算估算值。

显示用于跟踪值流或关联预算的标记的屏幕截图。

使用标记和查询,可以:

  • 筛选积压和看板
  • 按标记生成查询并筛选结果
  • 基于标记创建图表和报表

对于可靠的映射,请在 Epics、Features 或 Stories 上添加值区域自定义字段,并使用汇总将估计值收集到项目组合视图中。

显示预算估算汇总的屏幕截图。

值区域分配准则:

  • 为映射到体系结构史诗的功能设置值区域 = 体系结构
  • 默认 业务 值适用于支持业务史诗的功能
  • 对支持体系结构与业务功能的故事应用相同的原则
  • 使用标记跟踪其他投资主题

有关高级值流跟踪选项,请参阅 添加 SAFe® 跟踪的自定义字段

项目组合愿景和战略主题

使用项目 Wiki 共享项目组合愿景、战略主题、分类、目标和目标。 Wiki 版本页面并支持 Markdown,因此你可以跟踪编辑和恢复以前的版本。

请考虑记录:

  • 如何使用标记或自定义字段指定值流
  • 组织的分类术语
  • 发布训练和冲刺的使用方式
  • 重要里程碑和事件
  • 以客户为中心的计划

有关详细信息,请参阅 “关于 Wiki”、“README”和“Markdown”。

迭代长远目标和短期目标

在以下项中捕获迭代目标和目标:

  • 带版本的文档Wiki项目
  • 团队仪表板使用Markdown组件
  • PI 或冲刺目标的工作项说明

Wiki 和仪表板都支持 Markdown,并允许团队存储可以轻松共享和更新的目标、目标和指南。

里程碑和关键事件

表示 SAFe® 里程碑(PIS 结束、冲刺、发布训练事件或 IP 迭代),使用:

  • 自定义里程碑或发布工作项字段(选择列表)
  • 用于标记里程碑关联的工作项上的标记
  • 表示具有目标日期的里程碑的工作项
  • 为特定事件日期设计的一日迭代路径

使用查询、仪表板和图表跟踪里程碑进度,并确保跨团队保持一致。

共享服务团队结构

将共享服务(例如 UX 或安全性)建模为自己的团队和区域路径。 共享区域工作项显示在他们支持的团队的待办事项和看板图上。

显示共享服务区域路径和团队结构的屏幕截图。

此结构允许共享服务团队:

  • 维护自己的积压工作和冲刺计划
  • 同时支持多个程序团队
  • 跟踪他们对各种 SAFe® 可交付结果的贡献

追溯和评论

使用 Microsoft DevLabs 的追溯扩展 来运行追溯、捕获反馈并创建后续工作。

显示回顾板的屏幕截图。

该扩展可帮助团队:

  • 收集有关里程碑和 PI 事件的反馈
  • 组织和确定反馈的优先级
  • 创建和跟踪用于持续改进的行动项目

跨团队共享信息

在 SAFe® 团队之间共享信息:

有关 Markdown 语法指南,请参阅:

配置基本 SAFe® 结构

本部分将指导你转换单团队项目以支持 SAFe® 计划和项目组合。

目标团队结构

创建以下团队层次结构:

团队,列表

注意

Azure Boards 不支持团队的层次结构。 但是,通过配置区域路径,可以有效地通过区域路径结构创建团队层次结构。

最终区域路径配置如下所示:

区域路径和团队配置

步骤 1:定义团队

首先添加每个团队,该团队会自动为每个团队创建默认区域路径。

注意

以下过程使用 “新建 Teams 页面” 用户界面。 若要启用此功能,请参阅 管理或启用功能

  1. 在 Web 门户中,选择 “项目设置>Teams”。

  2. 选择“新建团队”

  3. 配置每个团队:

    • 为团队提供名称和可选说明
    • 分配团队管理员(Scrum Master、Program Manager 或 Portfolio Manager)
    • 检查“创建包含团队名称的区域路径
    • (可选)添加团队成员
  4. 对 SAFe® 结构中的所有团队重复这些操作。

    • 项目组合团队(使用现有默认团队)
    • 计划团队(例如,Fiber Suite、Service Suite)
    • 敏捷功能团队(例如应用、移动、Web 等)。

步骤 2:配置区域路径层次结构

将平面区域路径结构转换为支持团队关系的层次结构。

  1. “项目设置”中,选择 “项目配置>区域”。

  2. 在父程序团队的区域路径下拖放每个功能团队的区域路径。

    区域路径,拖放到父节点

  3. 继续,直到区域路径结构与团队层次结构匹配。

步骤 3:定义 SAFe® 的迭代路径

创建支持程序增量、冲刺和 IP 冲刺的迭代结构。

  1. “项目设置”中,选择 “项目配置>迭代”。

  2. 创建程序增量迭代:

    • 在每个 PI 的根下添加子迭代(例如,“PI 1”、“PI 2”)
    • 为 8-12 周期间设置开始日期和结束日期
  3. 在每个 PI 下创建冲刺迭代:

    • 为每个 PI 添加 4-5 个冲刺迭代
    • 设置两周短跑持续时间
    • 在每个 PI 中包括一次 IP(创新和规划)冲刺。

    “迭代”页,迭代列表

步骤 4:配置团队设置

根据 SAFe® 层次结构中的级别配置每个团队。

项目组合团队配置

  1. 项目设置>团队配置中,选择项目组合团队。

  2. “常规”选项卡

    • 仅检查Epics以进行积压工作导航
    • 处理 bug 设置为“bug 不会出现在积压工作和面板上”

    团队配置、常规、积压工作 (backlog) 导航级别、仅长篇故事

  3. “迭代”选项卡

    • 默认迭代 设置为 @CurrentIteration
    • 积压工作迭代 设置为根(项目名称)
    • 不要选择任何特定的迭代
  4. “区域”选项卡

    • 设置为 “排除”子区域

计划团队配置

  1. “常规”选项卡

    • 检查特性故事,取消选中史诗
    • “处理 bug” 设置为“Bug 不在积压工作和看板中出现”
  2. “迭代”选项卡

    • 只选择 PI 迭代(而不是单个 Sprint)
  3. “区域”选项卡

    • 设置为 “排除”子区域

敏捷功能团队配置

  1. “常规”选项卡

    • 检查功能和故事,取消选中“史诗”
    • “处理 bug”设置为“将 Bug 与需求管理”
  2. “迭代”选项卡

    • 选择冲刺迭代(包括 IP 冲刺)
  3. “区域”选项卡

    • 保留默认“包括子区域”设置

高级自定义

自定义流程的主要原因是支持进度跟踪和监视、报告关键指标以及满足特定业务需求。 本部分介绍可以实现的过程自定义,以补充 SAFe® 做法。 其中大多数自定义项都是可选的。

关于自定义和继承的流程

Azure Boards 提供图形用户界面,用于支持通过继承过程自定义项目。 对该过程进行自定义时,使用继承进程的所有项目都会自动更新。

有关可以进行的所有自定义的概述,请参阅 “关于进程自定义”和“继承的进程”。

自定义工作项类型

每个工作项类型定义捕获和存储信息的字段。 可以通过以下方式自定义现有工作项类型以支持特定的 SAFe® 跟踪要求:

有关详细信息,请参阅添加和管理工作项类型

为 SAFe® 跟踪添加自定义字段

添加自定义字段以支持现有字段未满足的跟踪数据要求。 请考虑添加这些字段以支持 SAFe® 做法:

字段名称 工作项类型 注释
预算成本 功能、长篇故事 记录估计成本。 使用汇总功能捕获Epic特性的总估计成本。
类别或组 功能、长篇故事、用户情景 指定 SAFe® 类别的选取列表: 功能功能启用器解决方案
里程碑 功能、长篇故事、用户情景 指定工作项应满足的里程碑事件的选取列表。
价值流 功能、长篇故事、用户情景 指定选择列表以支持值流的分类。

有关详细信息,请参阅将自定义字段添加到工作项类型

字段与标记用法

可以使用字段或标记捕获值流。 请考虑以下因素:

  • 字段:较为正式,可以通过规则进行要求,支持图表查询
  • 标记:非正式的临时方法,任何人都可以添加新标记
  • 筛选:两者都支持筛选待处理事项、板和查询
  • 增长:标签数量可能在缺乏管理的情况下迅速增长

自定义现有字段

自定义现有字段以支持:

  • Relabel 字段名称
  • 更改字段位置或从表单中删除字段
  • 添加或更改选取列表(例如,展开业务体系结构以外的值区域
  • 更改默认域分配
  • 字段设为必填
  • 添加字段规则

有关字段参考,请参阅 “工作项”字段索引。 有关自定义详细信息,请参阅 添加和管理继承进程的字段

添加自定义规则

字段规则通过根据条件指定动作来支持业务用例。 例如,根据其他字段的值来设置字段为必填项。

支持的条件 支持的操作
显示条件列表的屏幕截图。 显示操作列表的屏幕截图。

有关详细信息,请参阅向工作项类型添加规则(继承过程)。

自定义 SAFe® 的工作流

自定义 User Stories、Features 和 Epics 的工作流,以匹配 SAFe® 进程。 早期自定义可最大程度地减少团队的板配置。

默认的敏捷过程包括“新建”“活动”“已解决”“已关闭”状态。 请考虑添加积压工作分析开发测试和完成等工作流状态,以匹配进程流。

面板列的概念图,用于可视化流和限制 WIP。

有关详细信息,请参见:

添加自定义控件和扩展

自定义控件向工作项窗体添加丰富的功能。 控件是 Azure DevOps 市场扩展功能的一部分

SAFe® 相关扩展:

  • WorkBoard OKR:在整个业务中对齐和度量目标与关键结果(OKR)

添加自定义工作项类型

虽然 User Story、Feature 和 Epic 支持大多数 SAFe® 方案,但请考虑为以下项添加工作项类型:

  • 客户反馈捕获
  • 客户请求
  • 解决方案级跟踪

定义新的工作项类型时,请考虑:

  • 用于捕获、跟踪和报告的信息
  • 怎样记录工作进程
  • 支持跟踪的工作流

尽可能尽量减少自定义 - 在合适的情况下,将现有工作项类型与自定义字段一起使用。

自定义 SAFe® 层级的待办事项列表

每个团队的积压工作支持特定的工作项类型:

  • 敏捷发布团队:用户情景和 bug(可选)
  • 计划团队:功能
  • 项目组合团队:长篇故事

以支持 SAFe® 层次结构,你可以最多添加三个项目组合待办事项。

积压工作 (backlog) 选择列表的屏幕截图,其中显示了五个级别的项目组合积压工作。

提示

对于 "方案(功能)待办事项" 作为 "计划(特性)待办事项" 的父级,请禁用继承的 Epic 工作项类型,然后重新创建为自定义类型。 请参阅 自定义流程积压项和看板

有关详细信息,请参阅自定义积压工作或面板(继承的流程)

SAFe® 市场扩展

为增强的 SAFe® 功能添加以下扩展:

注意

在自定义项目之前,请阅读 “配置和自定义 Azure Boards ”,了解有关管理多个团队和业务目标的项目的详细信息。

监视进度和指标

Azure Boards 提供内置的 SAFe® 指标,通过:

  • 汇总列:跨工作项层次结构聚合进度
  • 速度报告:跟踪团队完成率
  • 累积流图:监视流并确定瓶颈
  • 交付前置时间/循环时间:衡量交付性能
  • 交付计划:跨团队路线图视图

显示汇总进度栏的屏幕截图。

关键 SAFe® 仪表板

使用以下内容配置仪表板:

  • 团队速度部件
  • 每个级别的CFD图表
  • 功能时间线规划图
  • 史诗式进度汇总

有关仪表板设置的详细信息,请参阅《关于仪表板、图表、报表和小组件》

查看进度汇总

使用每个团队待办事项中的汇总列查看和监视进展。 以下示例显示了从子工作项汇总的进度数据。

显示汇总进度栏的屏幕截图。

其他汇总选项包括:

  • 按特定工作项类型划分进度。
  • 按故事点进度(已完成与计划)。
  • 在一段时间内完成的工作项计数。
  • 用于聚合数值数据的数值字段的总和。

有关配置和显示汇总进度或总计的详细信息,请参阅 显示汇总进度或总计

查看团队速度

每个团队都可以通过上下文中的速度报告查看进度。 报告展示了过去六次(或更多)迭代期间计划、已完成、已超时完成、不完整工作的条形图。 该图表显示显示迭代的平均速度。

显示速度故事点的屏幕截图。

使用平均值来帮助预测团队可以承担多少工作。

使用 Forecast 工具

团队可以将故事点分配给用户故事,然后使用预测功能来估算能完成多少。 有关详细信息,请参阅 预测产品积压工作

显示“预测”工具的屏幕截图。

查看累积流图 (CFD)

每个待办事项和看板都提供可配置的CFD视图,以便每个 SAFe® 级别的团队都可以监视流并识别瓶颈。

显示一个CFD图表的屏幕截图。

根据需要,使用积压工作或看板视图中的CFD图表,然后将其添加到仪表板中。 有关详细信息,请参阅 “查看/配置累积流图”。

查看提前期和周期时间图表

将提前期和循环时间部件添加到团队仪表板,以了解以下内容:

  • 前置时间:从创建日期到完成可交付成果所需的平均天数。
  • 周期时间:从工作开始日期完成可交付结果的平均天数。
  • 用于更深入分析的离群值数。

这两个控件均以含有交互式元素的散点图控制图表形式显示。 若需指导,请参阅 累积流、前置时间和周期时间指南

提前期小组件示例

示例交货期小组件的屏幕截图。

周期时间小组件示例

显示示例周期时间小组件的屏幕截图。

查看和更新路线图

使用交付计划、功能日程表和 Epic 路线图工具查看 SAFe® 可交付结果和路线图。 交付计划显示你指定的团队和工作项类型,并允许交互式规划。

审阅功能团队交付计划

项目团队审查其敏捷发布团队的故事和功能路线图。 以下示例展示了 Fiber Suite 团队的故事交付物。

显示 Fiber Suite 团队可交付结果的计划视图的屏幕截图。

展开功能团队以查看详细信息。 通过传递计划,可以拖放工作项以更新冲刺分配,或打开工作项以更新字段并添加批注。

显示“计划”视图的屏幕截图,其中已展开了 Fiber Suite App 团队可交付成果。

查看项目组合功能可交付结果

项目组合团队审查开发团队开发中的特性。 以下示例显示了映射到程序递增时间框的功能。

显示产品组合功能交付成果的功能时间线视图的屏幕截图。

查看功能时间线路线图

功能时间线提供了另一个路线图视图。 以下示例演示功能时间线工具中的 Epics。 配置进度栏以反映已完成的故事或工作量。

显示项目组合功能交付时间线视图的屏幕截图。

查看并验证配置

使用此综合清单来确保在团队开始使用系统之前正确设置 SAFe® 配置。

验证清单

在团队开始使用系统之前验证以下关键领域:

团队结构

  • [ ] 组合团队仅显示 Epics
  • [ ] 项目团队展示功能和故事(无史诗级任务)
  • [ ] 区域路径创建适当的层次结构

迭代次数

  • [ ] PI 迭代周期为 8-12 周
  • 冲刺迭代在 PI 中通常为 2-3 周。
  • [ ] 包括 IP 冲刺

工作项

  • [ ] 层次结构链接函数(史诗→功能→故事)
  • [ ] 团队的积压列表显示正确的工作项
  • [ ] 汇总列正确显示

快速测试

  1. 创建示例 Epic → 功能→情景层次结构
  2. 确保每个团队看到适当的工作项
  3. 测试带有正确迭代的冲刺规划
  4. 确保每个级别的报告功能正常

重要说明

在第一个程序增量之前完成验证。

规划和跟踪 SAFe® 计划和项目组合

定义工作层次结构

使用映射工具创建工作项并建立 Epic → 功能→故事关系:

  1. 项目组合级别:使用业务/体系结构价值区域指定创建史诗
  2. 程序级别:创建特性并映射至父史诗
  3. 团队级别:创建情景并映射到父功能

对于批量导入,请将 Excel 与区域路径分配一起使用,以自动建立层次结构。

使用映射工具映射工作项

  1. 从任何积压工作中,选择>映射
  2. 选择父积压工作 (功能史诗, 故事功能)
  3. 将子项拖到父项上
  4. 启用 视图以验证关系

显示将功能拖放到史诗上的屏幕截图。

管理看板和规划

每个团队都使用看板进行视觉管理,并作为规划工具。

  • 项目组合板:通过子项汇总监控Epic进度
  • 讨论板:跨 PI 管理功能开发
  • 团队板:规划冲刺并跟踪任务完成

有关详细的版块自定义,请参阅 “自定义版块”。

命令行和编程工具

大规模SAFe®设置自动化:

Azure DevOps CLI

# Create teams and configure iterations
az boards team create --name "Portfolio Team"
az boards iteration create --name "PI 1" --start-date "2025-01-01"

批量操作

  • Excel 导入:具有区域路径分配的工作项层次结构
  • PowerShell 脚本:团队配置自动化
  • REST API:自定义集成和批量更新

有关完整的 CLI 参考,请参阅 Azure DevOps CLI 文档