前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >敏捷软件开发-规模化敏捷框架(SAFe)

敏捷软件开发-规模化敏捷框架(SAFe)

原创
作者头像
学习中心
发布2023-03-28 11:07:09
1.5K0
发布2023-03-28 11:07:09
举报

本文作者:何文强 — CODING 高级解决方案架构师 具有一线互联网、物联网独角兽、全国股份制银行、新型智慧交通等跨行业从业经历,历任 Java 开发高级工程师、DevOps 技术专家、高级研发经理等职,对微服务、敏捷、DevOps、容器技术有深刻的理解和丰富的实践。

SAFe 概述

SAFe ® for Lean Enterprises 是一个知识库,其中包含使用精益、敏捷和 DevOps 实现业务敏捷性的经过验证的集成原则、实践和能力。

SAFe 框架总结了“阶段 -> 门限法”的四个关键错误,这些错误是导致项目延期和失败的主要原因。

阶段 -> 门限法四个关键错误:

  1. 将需求集中起来,同时进行职能筒仓式的设计决策,导致了后续的解决方案缺乏完整性。
  2. 过早的设计决策和“虚假的可行性”。
  3. 假设存在一个确定的解决方案,而且只进行一次尝试就可以构建成功。
  4. 在前期就就进行决策,创建了大批量的需求、代码和测试,形成了很长的队列,导致大批量的工作交接和延迟的反馈。

传统瀑布方法与敏捷 -> 精益方法比较:

传统方法

精益 - 敏捷方法

中心化决策

去中心化决策

项目过载

按需管理,持续的价值流动

详细的项目计划

轻量级的、仅有史诗需要的商业案例

中心化的年度计划

去中心化的滚动式计划

工作分解结构 WBS

敏捷估算和计划

基于项目的资金投入和控制

精益 - 敏捷预算和自我管理的敏捷发布火车

瀑布式的里程碑

客观的、基于事实的度量和里程碑

SAFe 框架的思想基础是精益和敏捷思维,它源自 SAFe 领导者和实践者们对敏捷宣言和精益思想的拥抱。SAFe 的知识体系涵盖了敏捷开发、精益产品开发和系统性思维。这使得 SAFe 的知识面非常广泛、深入,并且可扩展,SAFe 提供了不同层级的配置,如基本型 SAFe、解决方案层 SAFe、投资组合层 SAFe 和全功能型 SAFe,丰富的 SAFe 配置供不同规模企业的进行灵活选择。

SAFe 定义的精益企业的 7 大核心能力中,4 个价值观,以及 SAFe 的 10 个原则。因 SAFe 是一个面向规模化组织的精益敏捷框架,并且吸收了敏捷 -> 精益 -> 系统思考的众多思想,SAFe 相对于 Scrum 等更为重量和复杂,涉及到的内容更多范围更广,因篇幅有限,本文主要基于最新的 SAFe 5.1,对 SAFe 最重要的原则、价值观、SAFe 精益屋、实施路线图等做简要介绍,达普及和扫盲之效。

SAFe 自 2001 年首次发布依赖,SAFe 进行了五次重大更新,SAFe 5.0 于 2020 年 1 月发布,恰逢新冠疫情初期,转眼已过两年,全球经济结构发生重大变化,也改变了敏捷组织的协作方式。SAFe 与时俱进,在 2021 年 2 月将 SAFe 升级为 5.1,与 5.0 对比,SAFe 5.1 新增了运营价值流、开发价值刘、参与式预算、在投资组合中指明解决方案、持续交付管道、解决方案图标、商务|技术、DevSecOps、SPC 等内容,进一步紧扣时代主流,提升了 SAFe 的适应性。

SAFe 四个价值观

1 协调一致(Alignment)

一致性和自主性并不是二分法,并不是非黑即白。如果只有一致性,团队完全受到命令和控制,被动地去执行,团队将失去参与感、创造力、积极性;如果只有自主性,没有一致性,团队无法对齐目标和愿景,无法形成合力,就会是一盘散沙,特别是在大型组织,拥有大量敏捷团队的环境下。

SAFe 提供了实现企业级敏捷不同层次对齐的实践,例如通过战略主题定义组织级战略和目标,建立战略主题和投资组合的连接,通过投资组合看板可视化投资组合中 Epic 的流动,通过 Program 看板实现价值流的可视化,通过 PI Planning 进行 PI 目标的对齐和同步,跨团队的 Scrum of Scrums,以及 PO 的同步等等。

SAFe 在协调一致上提供了以下实践:

  1. 从投资组合的战略和投资决策出发,映射到战略主题和投资组合待办事项列表,然后传递到愿景、路线图和 SAFe 各层级的待办事项列表。所有这些内容都是可视化的、可讨论的、可解决的、透明的。
  2. SAFe 对于工作内容负责的授权角色有非常清晰的路线,从投资组合层出发,涉及主要的产品和解决方案管理者的角色,一直延伸到管理层产品负责人的角色。
  3. 对交付的期望和承诺是通过 PI 目标和迭代目标进行协调同步的。
  4. 通过确定的节奏和同步机制确保协调一致,或者尽在合理的财务状况和时间范围内,可以做适当的调整。
  5. 项目群架构、用户体验指导和组织治理,有助于确保解决方案的技术性、健壮性和可扩展性。
  6. 基于当前的环境和演进状况,使用经济的优先级排定方法,可以保持利益相关者的持续地、认同地、滚动式的参与优先级排序。
2 内建质量(Built In Quality)

“检验不能提高质量,也不能保证质量。检验为时已晚。产品中已经有好坏之分。无法检查产品或服务的质量;它必须内置在其中。”—— 戴明

内建质量的核心是在开发产品/服务的过程中保证质量,而不是事后通过测试和检验来保证质量。要在交付过程中保证质量,需要关注整个价值流和反馈循环,通过持续集成、TDD,BDD,LeanUX 等实践的引入,在 Feature、Story、Code 等不同层次上建立快速的反馈循环,从而在开发的过程中保证质量。通过关注不同维度的质量要求扩展完成的定义(DoD),比如架构和设计的质量、代码的质量、系统质量、发布质量等维度。针对于特定的解决方案要求,我们不仅仅要考虑产品或解决方案本身的质量,还需要考虑合规性要求,稽核要求等。

SAFe 软件内建质量借鉴了 XP(极限编程)的一些核心实践,包括:

  1. 测试先行:测试驱动开发(TDD)、接手测试驱动开发(ATDD)和行为驱动开发(BDD)是一组工程实践,它鼓励团队在实现源代码前深入思考预期的系统行为。
  2. 持续集成:是一种软件工程实践,它每天不间断的把开发人员工作空间中的代码合并到单一主干代码分支上。
  3. 重构:一种“有纪律的技术,用于重构现有代码,在不改变其外部行为的情况下改变其内部结构”。
  4. 结对编程:结对编程是重构、持续集成、测试自动化以及代码集体所有权的重要基础。
  5. 共同所有权:要求所有团队成员对解决方案有共同的理解和责任的一种实践。
  6. 敏捷架构:一种平衡浮现式设计与意图架构以实现增值交付的方法。这种方法避免了大量前期设计(BDUF)和阶段门限的“启动-停止-启动”的本质。
3 透明(Transparency)

“透明“建立信任,信任是开放的基础,有了开放,决策和执行都会变得简单。决策有了事实和数据依据,团队执行有了清晰的目标和方向。信任在于业务和研发之间能够对彼此充满信心,相互依赖,特别是在团队面临困难和挑战的似时期。透明和信任的建立需要可视化相关的工作、包容失败、建立从失败中进行学习和改进的文化,精益敏捷领导层也需要创造环境来培养透明和信任。

SAFe 提供了以下实践:

  1. 企业高管、投资组合经理和其他利益相关者可以看到投资组合看板和项目群待办事项列表,他们对每一个 ART 和解决方案或者的PI目标没有清楚的认识。
  2. ART 可以清楚的看到团队待办事项列表,可以看到其他项目群的待办事项列表。
  3. 团队和项目群会做出短周期和可视化的承诺,并且兑现承诺。
  4. 检视和调整工作坊可以邀请所有利益相关者共同从经验教训总结中创建和改进待办事项列表。
  5. 团队和敏捷发布火车(ART)可以清楚的看到投资组合业务和使能史诗,他们能够可视化的看到这些举措。
  6. 进展是基于对于可解决方案的客观度量进行。
  7. 每一个人都能理解端对和项目群的速度以及在制品(WIP),企业战略和执行能力是可视化和协调一致的。
4 项目群执行(Program Execution)

很多企业开始采用敏捷团队进行组织转型时,他们通常会进行大型解决方案的交付过程中,处理可靠性和有效性问题时遭受挫败。SAFe 将实施聚焦在项目群层面上,价值流的交付依赖于 ART 和解决方案火车的交付能力。

项目群执行并不仅仅是基于团队、自上而下的。想要成果扩展敏捷-精益的执行,不仅仅需要团队的参与,也需要精益-敏捷领导者的积极支持,领导者能够把内部领导力进行有效整合,使之面向客户成果。

业务敏捷七大核心能力

1 精益敏捷领导力

在精益敏捷的领导能力介绍精益敏捷的领导者如何推动和增强个人和团队,以达到最高的潜力维持组织变革。他们通过以身作则,采用精益敏捷的心态,并引领变革到新的工作方式来做到这一点。结果是更多的员工敬业度、更高的生产力和创新以及成功的组织变革。

2 持续学习的文化

在持续学习的文化竞争力介绍了一组价值观和鼓励个人和企业,以增加知识,能力,业绩,创新不断实践。通过致力于不断改进和促进创新文化,组织成为一个学习型组织。

3 组织敏捷力

组织敏捷能力描述精益思维的人,敏捷团队如何优化业务流程,演变战略,明确和决定性的新的承诺,并根据需要利用新的机会,快速适应组织。

4 精益投资组合管理

在精益投资组合管理能力对齐战略和执行应用精益和系统思维的方法,以战略和投资资金,敏捷投资组合运作和治理。这些合作使企业能够将战略与执行保持一致,可靠地履行现有承诺,并实现创新。

#5 企业解决方案交付

企业解决方案交付能力介绍如何精益敏捷的原则和做法适用于规范,开发,部署,运行和发展的世界上最大,最复杂的软件应用程序,网络和网络物理系统。

6 敏捷产品交付

敏捷产品交付能力是一个以客户为中心的方法来定义,建立和释放的有价值的产品和服务,为客户和用户的连续流。这种能力使组织能够提供令客户满意、降低开发成本、降低风险并在竞争中胜出的解决方案。

7 团队和技术敏捷力

团队和技术敏捷能力描述了关键技术和精益敏捷的原则和做法,高绩效的敏捷团队和敏捷团队的团队用它来为客户创造高品质的解决方案。结果是提高了生产力、更好的质量、更快的上市时间和可预测的价值交付

SAFe 十大原则

1 采取经济视角

以可持续的最短前置时间为人类和社会交付最有的价值,需要对系统构建者所负使命的经济状况有最基本的了解。

精益 -> 敏捷优化经济成果的两个基本方面:

尽早和经常交付。

  1. 瀑布模式并没有考虑得到解决方案相关反馈的好处,且最终可能无法按时交付,并且无法正式可用性。
  2. 只要质量满足要求,产品和服务越早投入市场,价值就越高。这意味着在早期提供给客户最小可行产品(MVP),也比在后期提供全面的功能更有价值。

理解每一个项目群和价值流的经济平衡参数。

经济平衡 5 种参数:

  • 开发费用:为了实现某种能力所需要的人力和物料成本;
  • 周期时间:为了实现某种能力的时间(前置时间);
  • 产品成本:(销售商品的)制造成本/或部署运营成本;
  • 价值:所实现的能力对于业务和客户的经济价值;
  • 风险:解决方案的技术或业务成功与否的不确定性。
2 运用系统思考

优化一个组件并不能优化整个系统,为了能够提高改进,每个人都必须理解致力于系统的目的。系统化思考被应用于构建整个系统的组织以及正在开发中的系统。SAFe 来源于三个基础知识体系:系统思考、敏捷开发和精益产品开发。

系统思考要求领导者和员工掌握完整的价值流,并对其不断进行优化,特别是当价值流跨域技术和组织边界时。

系统思考的三个层面:

  • 解决方案本身是一个系统
  • 构建系统的企业也是一个系统
  • 优化整个价值流
3 假设变异性,保留可选项

在开发周期内更长时间的保留多个需求和设计选项。使用经验数据来收窄关注点,从而产生能够创造更好经济效益的设计方案。

4 通过快速集成学习环进行增量构建

可工作增量可以快速获得客户反馈和降低风险,并且也可作为最小可行产品(MVP)或者原型用于市场测试和确认。产品的集成点,是控制产品开发和提升系统的关键支点(杠杆点)。没有没有处理好集成点,项目就会陷入困境。

在传统瀑布开发中,“阶段-门限”流程容易导致错误和问题,经常导致失去客户的信任。

集成点可以在不确定中获取知识。

基于一定范围的需求和多种设计选项进行一系列短周期(时间盒)的增量式解决方案构建。每一个基于时间盒的活动都会产出一个可工作系统的增量。每一个集成点都会通过将不确定性转化成经验知识的方式交付价值。

通过更快的周期进行更快的学习。

集成点越频繁,学习的速度就越快。

5 基于对可工作系统的客观评估设立里程碑

在精益敏捷开发模型中,每个集成点头提供了一个客观的里程碑,从而可以频繁的进行评估并贯穿于整个开发生命周期中。这种客观评估提供了财务、技术、以及符合目标的治理,从而确保持续投资将产生与之匹配的回报 。

系统进行增量式的构建,每一次构建都是一个集成点,在集成点上可以演示一些已经实现的内容,以验证当前解决方案的可行性。与“阶段 -> 门限法”不同,基于客观事件所设立的每一个里程碑都包含研发的所有步骤——需求、设计、开发、测试,从而达到增量式的价值交付。

6 可视化和限制在制品减少批次规模管理队列长度

接近满负荷的使用产品开发流程是一场经济灾难。

实现流动的三个关键点:

可视化和限制在制品数量,从而限制对实际生产能力的要求。

  1. 过多的在制品(WIP)会影响优先级,导致频繁的在不同工作场景之间进行切换,并增加开销;
  2. 工作过载会导致生产力和吞吐量降低,增加交付新功能的等待时间;
  3. 限制在制品(WIP)是需要有知识、有纪律和有承诺的。需要进行有效的在制品管理。

减少工作项的批次规模,以促进工件在系统中的可靠流动。

  1. 小批量通过系统的速度更快,变异性更小,并能够促进快速学习;
  2. 从经济学角度,最优的批次规模依赖于持有成本(延迟反馈、库存损坏和延迟价值交付带来的成本)和交易成本;

管理队列长度,从而减少对系统新功能的等待时间。

  1. 利特尔法则:系统提供服务的等待时间等于队列的长度除以平均的处理效率;
  2. 要实现更快的服务,就必须减少队列长度或者提高处理效率。
7 应用节奏通过跨领域设计进行同步

节奏为开发活动创建了可预测性,并提供了韵律节拍。同步能够促使人们同时理解、解决并集成多个视角。

节奏是流程中稳定的心跳,可以提供一种优雅的节拍模式。节奏带来以下好处:

  1. 等待时间可预测,如果你所需要的工作交付物不在当前的这个项目群增量(PI)时间盒内,那么可能就会在下一个时间盒内;
  2. 通过引导计划活动,使人员和资源的使用更加有效;
  3. 降低了关键活动的交易成本,这些活动包括计划、集成、演示、反馈和回顾等。

同步允许在同一时刻从不同的角度出发,进行工作任务的理解、解决和集成。

  1. 将系统中不同的资产进行整合,以评估解决方案的可行性;
  2. 将开发团队和业务团队的共同使命协调一致;
  3. 将客户融合到开发的流程中;

通过跨领域计划进行同步。

在 SAFe 的所有活动中最关键的一环是:所有的利益相关者定期聚集在一起进行跨领域的计划和同步。这项活动成为 PI 计划,有三个主要目的:

  • 评估解决方案的当前状态;
  • 再次对齐所有利益相关者的共同技术和业务愿景;
  • 有助于团队对下一个项目群增量进行计划和承诺。
8 释放知识工作者的内在动力

提供自主性、使命感并尽可能减少约束,将会获得更高水平的员工敬业度,并为客户和企业产生更好的成果。提供目的、使命和最小可约束的自主性。

领导者通过一下指导鼓励团队做出最大努力。

  1. 确立使命感 —— 要有一个概要的目标和战略方向,以及一个强烈的愿景;
  2. 对于具体工作和项目计划,仅给出少量的、最小化的指导,甚至没有任务说明和计划;
  3. 对于需求和最小可能的约束条件发起挑战,有团队决定如何实现这些需求。

创造一个相互影响的环境。

  1. 在恰当的地方提出不同的意见;
  2. 鼓励员工坚持自己的立场;
  3. 让员工清晰自己的额目标并推动员工打成目标;
  4. 促进管理者和员工共同解决问题;
  5. 协商、让步、同意和承诺。
9 去中心化决策

去中心化决策可以减少延误、改善产品开发流动、促进更快反馈,并能根据具体的上下文信息产生更有创意的解决方案。

战略性决策中心化进行。

  1. 发生频率不高;
  2. 长期有效;
  3. 对于经济效益有重大影响。

其他类型决策去中心化进行。

  1. 发生频率高;
  2. 时间上很紧急;
  3. 需要本地信息。
10 围绕价值流组织团队

今天的许多企业都是按照上个世纪发展起来的原则进行组织架构设计的。以提升效率的名义,大多数都是围绕功能专业知识来组织的。但在数字时代,唯一可持续的竞争优势是一个组织能够以新的和创新的解决方案对其客户的需求做出反应的速度。这些解决方案需要所有职能部门之间的合作,以及它们现有的依赖关系、工作移交、浪费和延误。因此,业务敏捷性要求企业围绕价值流进行组织,以更快地交付产品。当市场和客户需求发生变化时,企业必须围绕新的价值流进行快速、无缝的重组。

SAFe 精益之屋

一个目标

价值:可持续的最短前置时间。对人类和社会提供最佳的质量和最优的价值。高昂的士气、安全的实施、客户的满意。

四个支柱

尊重个人和文化

  • 由人执行所有的工作;
  • 客户消费和使用我们的工作成果;
  • 不要让客户负荷过重;
  • 不要让客户总是等待;
  • 不要强制客户无谓的浪费;
  • 不要总是一厢情愿;
  • 基于信任构建长期的合作伙伴关系;
  • 文化总是在最后才被改变,而不是首先改变;
  • 想要改变文化,首先要改变组织结构。

流动

成功实施 SAFe 的关键是建立一个持续的工作流动,基于持续的反馈和调整,并支持增量的价值交付。持续的流动可以促进更快的价值交付、有效的内建质量实践、坚持不懈的改进,以及基于事实的有效组织治理。

流动的原则包括:

(1)理解完整的价值流;

(2)可视化和限制在制品;

(3)减少批次规模和管理队列长度;

(4)识别和持续减少延迟成本和消除浪费(没有价值的活动)。

  • 优化持续的、可持续的价值交付吞吐量;
  • 内建质量,流动基于内建质量;
  • 理解、探索和管理变异性;
  • 避免频繁启停造成项目延迟;
  • 通过快速反馈使用非正式的决策。

创新

  • 生产者进行创新,客户进行验证;
  • 走出办公室;
  • 为创新提供时间和空间;
  • 应用创新核算方法;
  • 不带有任何怜悯和愧疚的进行转向。

坚持不懈的改进

通过持续反思和流程改进,鼓励学习和成长。持续的危机意识可以促进企业积极追求改进的机会。

  • 持续保持危机意识
  • 整体优化
  • 实事求是,快速行动
  • 应用精益工具识别和抓住根本原因
  • 在关键里程碑上进行省思,识别和改善不足

一个基础

精益 -> 敏捷领导力:精益的基础是领导力,这是团队成功的根本推动力。

SAFe 配置

Essential(基本型)SAFe

Essential 是框架的最基本配置,它提供了成功使用 SAFe 所需的最少元素。

Large Solution(大型解决方案)SAFe

大型解决方案适用于构建大型复杂解决方案的企业,这些解决方案不需要投资组合级别的构造。

这种解决方案的开发对航空航天和国防,汽车和政府等行业来说很常见,因为大型解决方案 -> 而非投资组合治理 -> 是主要关注点。

解决方案培训组织结构可帮助企业应对最大的挑战 -> 构建大规模,多学科的软件,硬件,网络物理和复杂的 IT 系统。开发这些解决方案需要额外的角色,工件,事件和协调。

Portfolio(投资组合)SAFe

投资组合提供战略和投资资金、敏捷投资组合运营和精益治理。投资组合 SAFe 配置提供精益项目组合管理能力,使组合执行与企业战略保持一致。它通过一个或多个价值流围绕价值流组织发展。

投资组合 SAFe 通过投资组合战略和投资资金,敏捷投资组合运营和精益治理的原则和实践提供业务敏捷性。

Full(完整)SAFe

最全面的配置,包括精益企业的七项核心能力。它支持构建通常需要数百人开发和维护的大型集成解决方案。

《数字化 IT 从业者知识体系》背景 数字化和可持续发展是中国企业未来发展的两大主题,掌握数字化知识,具备数字化能力,应用数字化技术是我们 IT 从业者未来核心竞争力所在。《数字化 IT 从业者知识体系》的初衷是为IT从业者提供的系统性的数字化知识体系,内容涵盖管理实践、工程实践、技术实践三个层次,涉及软件开发方法、应用技术架构、应用部署与管理、软件交付与协作四大方面。 在接下来的《数字化 IT 从业者知识体系》系列文章,何文强将从软件开发方法、应用技术架构、应用部署与管理、软件交付与协作四个方面,为大家进行逐一分享介绍:

  1. 软件开发方法主要包括瀑布、敏捷、精益等;
  2. 应用技术架构主要包括微服务架构、服务网格架构、无服务器架构、分布式多运行架构等;
  3. 应用部署与管理主要包括但不限于虚拟化技术、容器技术与容器编排等;
  4. 软件交付与协作主要包括但不限于CMMI、ITIL、DevOps等。

相信该知识体系有利于 IT 从业者构建丰富的技术体系、全面的技术视野和系统的能力建设。欢迎大家前往《数字化 IT 从业者知识体系》话题进行详细阅读。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SAFe 概述
  • SAFe 四个价值观
    • 1 协调一致(Alignment)
      • 2 内建质量(Built In Quality)
        • 3 透明(Transparency)
          • 4 项目群执行(Program Execution)
          • 业务敏捷七大核心能力
            • 1 精益敏捷领导力
              • 2 持续学习的文化
                • 3 组织敏捷力
                  • 4 精益投资组合管理
                    • 6 敏捷产品交付
                      • 7 团队和技术敏捷力
                      • SAFe 十大原则
                        • 1 采取经济视角
                          • 2 运用系统思考
                            • 3 假设变异性,保留可选项
                              • 4 通过快速集成学习环进行增量构建
                                • 5 基于对可工作系统的客观评估设立里程碑
                                  • 6 可视化和限制在制品减少批次规模管理队列长度
                                    • 7 应用节奏通过跨领域设计进行同步
                                      • 8 释放知识工作者的内在动力
                                        • 9 去中心化决策
                                          • 10 围绕价值流组织团队
                                          • SAFe 精益之屋
                                            • 一个目标
                                              • 四个支柱
                                                • 一个基础
                                                • SAFe 配置
                                                  • Essential(基本型)SAFe
                                                    • Large Solution(大型解决方案)SAFe
                                                      • Portfolio(投资组合)SAFe
                                                        • Full(完整)SAFe
                                                        相关产品与服务
                                                        容器服务
                                                        腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
                                                        领券
                                                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档