原则#1——采取经济观点
领导链中的每个人——从高管、经理到知识工作者——都必须认识到他们的选择对经济的影响。
经济学应该为各个层面的决策提供信息并推动决策。糟糕的经济状况是导致解决方案失败的最常见原因之一。
要采取经济观点,您必须:
- 尽早且频繁地交付
- 应用经济框架
尽早交付通常会产生直接的经济效益。
与瀑布方法(仅在开发周期结束之前提供价值)不同,SAfe 在流程的早期就提供了价值,并且随着时间的推移不断积累。客户拥有它的时间越长,他们从中获得的价值就越大。
由于 SAFe 植根于精益敏捷开发,因此使用它的企业拥抱持续价值交付的模型。
应用全面的框架使团队能够与系统的核心经济保持一致。
最佳实践是:
- 在主导预算和护栏内运营 - 将资金分配给长期投资组合价值流,并实施护栏以指导持续的支出决策。
- 了解解决方案的经济权衡 - 认识到影响您决策的 5 个考虑因素,例如劳动力和材料成本、实施功能所需的时间、所售商品的制造成本、功能对企业和客户的经济价值,以及您的解决方案成功的不确定性。
- 在供应商和买家之间建立互惠互利的经济关系——要么是长期考虑,要么是并购。
原则 #2 — 应用系统思维
系统思维是解决方案开发的整体方法。
SAFe 基本上有 3 个系统。
第一个系统是您正在开发的解决方案本身。
这意味着开发人员需要了解系统如何与其环境以及周围的其他系统交互。
他们还需要认识到优化组件可能不会优化系统。组件可以吸收计算能力或内存等资源。
此外,需要持续关注界面和交互,以提供尽可能高的价值。
第二个系统是您的企业。
用于构建解决方案(第一个系统)的人员、管理、流程和工作流程构成了自己的系统。
为了优化这个系统:
- 领导者应该营造一种鼓励协作的环境,以实现越来越好的系统。
- 将供应商和客户视为合作伙伴。
- 消除孤岛并创建跨职能组织以加速流程交付。
第三个系统是完整的价值流。
价值流是 SAFe 的基础。
优化该系统的一个很好的做法是价值流图,它允许您查看所需的所有步骤。这可以让您识别出占总上市时间最小部分的步骤。
通过这种认识,您可以专注于消除步骤之间的任何延迟。
原则#3——假设可变性;保留选项
变化是不可避免的,也是不可避免的。
通过假设它会突然出现并保留选项,您将能够保持灵活性和控制力。
保留选项的方法是使用基于集合的设计。
这种方法允许开发人员在项目开始时考虑多种设计选择。然后,在基于集成的学习点,他们可以评估经济和技术的权衡。
随着时间的推移,开发人员会淘汰较弱的选项并集中在最终设计上。
这使得设计选项的开放时间更长,自然地组装最好的选项,并产生高价值的结果。
原则 4 — 通过快速、集成的学习周期进行增量构建
像瀑布这样的旧方法具有很高的投资成本,并且会不断累积直到最终交付解决方案。
这意味着只有在提交的每一项功能最终可用之前,才会提供价值。
集成点改变了这一点。
该解决方案不是在整个开发过程中必须承诺的单一设计和需求选择,而是在一系列短时间范围内逐步构建。
这些时间盒一个接一个地构建,不断改进解决方案直至发布。
很酷的是集成点可以充当测试市场和验证最新版本的可用性的原型。如果需要,这可以让您选择替代行动方案。
由于更频繁的点,它还可以加快学习速度。
原则 5 — 基于工作系统客观评估的里程碑
规模化敏捷框架以增量方式构建软件,每个里程碑都包含需求、设计、测试等;因此,每一个里程碑都是价值的增量。
这是常规完成的(我们将在原则#7中讨论)并允许定期评估。
在每个集成点,系统都可以被测量、评估和评价。
这意味着:
- 利益相关者可以放心,他们的财务投资是值得的。
- 测试人员可以在所有隐藏的错误和错误造成太大问题之前找到它们。
- 开发人员可以了解他们的进展情况。
原则 6 — 可视化并限制 WIP、减少批次大小以及管理队列长度
您的目标应该始终是实现连续的“流程”状态 - 尽可能快速、顺利地将新系统从想法转移到销售。
有几件事阻碍了您实现这一目标,其中之一就是有太多的在制品 (WIP)。
大量 WIP 会造成混乱、导致过载并增加开销。
承担超出你能力范围的工作并没有任何好处。
像看板这样的工具可以帮助您可视化所有需要完成的工作,并有意识地一次“拉动”足够的工作来推动项目前进,而不会被淹没。
以这种方式可视化工作还可以帮助您识别瓶颈,甚至识别您原本不会注意到的系统问题。
您还应该尝试减少每批工作的大小,例如需求、代码、测试和任何其他工作项目。
较小的批次可以更快地通过系统,且变化性较小。
管理队列长度是个好主意。
“固定系统中的长期平均顾客数量等于长期平均有效到达率 λ 乘以顾客在系统中花费的平均时间 W。”
基本上,排队的时间越长,等待的时间就越长。
缩短队列长度可以减少延迟和浪费,同时改善流量。
原则 #7 – 应用 Cadence,与跨域规划同步
Cadence 帮助开发人员专注于管理解决方案开发的可变部分。
同步可帮助您了解并集成多个解决方案以找到最佳的解决方案。
节奏可以:
- 将不可预测的事件变成可预测的事件。
- 支持跨职能协调和定期规划。
- 限制批量大小。
- 控制和规范新工作。
- 提供预定的集成点。
同步可以:
- 导致多个事件同时发生。
- 创建跨职能权衡。
- 提供多种反馈观点。
他们共同帮助 DevOps 团队在面对不确定性时取得进展。
原则#8——释放知识工作者的内在动力
您不必研究激励方法来释放知识工作者的内在动机,规模化敏捷框架本身就可以做到这一点。
SAFe 及其原则本身就是一个系统。
SAFe 允许知识工作者:
- 跨越运营边界进行沟通。
- 使用经济学来做决策。
- 快速收到有关解决方案功效的反馈。
- 参与持续、渐进的学习。
- 参与更高效、更充实的解决方案开发过程。
这个想法是,在某一时刻,如果你没有向开发商支付足够的钱,他们就不会有动力。
当这个目标实现后,随着时间的推移,金钱可能不再是动力;然而,正如金钱无法激励他们一样,恐惧或恐吓也无法激励他们。
知识工作者需要的是自主权。他们需要感受到并理解他们正在做的工作的使命和目的,以及他们工作的原因。
您还可以提供最低限度的项目计划或具体工作,让他们能够自我指导,同时为他们提供完成所从事工作的挑战性要求。
原则 9 — 分散决策
分散决策可以减少延迟并改善产品开发流程。它还可以促进更快的反馈和更智能的解决方案。
这并不意味着所有决策都应该分散。有许多战略性和影响深远的选择必须由特定的、选定的个人或团体做出。
频繁、时间紧迫且需要本地信息的决策都应该分散。