《SAFe 4.0参考指南:精益软件与系统工程的规模化敏捷框架》一2.6 原则#6——可视化和限制在制品,减少批次规模,管理队列长度

简介:

本节书摘来自华章出版社《SAFe 4.0参考指南:精益软件与系统工程的规模化敏捷框架》一书中的第2,第2.6节 作者[美]迪恩·莱芬(DeanLeffingwell),更多章节内容可以访问云栖社区“华章计算机”公众号查看。


2.6 原则#6——可视化和限制在制品,减少批次规模,管理队列长度

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

——Donald Reinertsen

为了实现可持续的最短前置时间,精益系统构建者们努力实现持续流动的状态,即新的系统可以迅速地从概念到盈利。实现持续流动需要消除传统方法中的基于“开始–完成–开始”的项目启动和开发流程,也要消除阻碍流动的现行“阶段–门限”的方法(原则#5)。

实现流动的三个关键点是:可视化和限制在制品,减少工作项的批次规模,以及管理队列长度。

可视化和限制在制品

团队和项目群的工作过载,任务量超出了他们所能承担的范围,这是一个常见且有害的问题。系统中如果在制品(Work in Process,WIP)过多,就会导致人员复用和频繁地在不同工作场景之间进行切换。这种情况会使员工工作过载,减少了对正在执行任务的专注度,降低了生产力和吞吐量,并增加了交付新功能的等待时间。

第一步是让当前的在制品对所有利益相关者清晰可见。这个可视化说明了在每一个步骤的工作总量,也作为对初始过程的诊断,并显示出当前的瓶颈。在某些情况下,仅需简单地可视化当前的工作,就可以唤醒开发人员,让他们开始意识到要解决同时开展工作太多而没有形成流动的问题。下一步就是处理在制品数量和可用开发容量平衡的问题。如果在执行过程中达到了在制品的上限,就不再承接新的工作任务。

 

然而,限制在制品是需要有知识、有纪律和有承诺的。甚至有些时候是看起来是反直觉的,比如以前有些人认为放入系统的工作越多,完成得就越多。在一定程度上这是正确的,但是如果超出了一定的限度,系统就会变得动荡,也会降低流动性。这说明,有效的在制品管理是不可取代的。

减少批次规模

减少在制品和提高流动性的另一种方法是减少工作的批次规模,这些工作包括需求、设计、编码、测试和其他相关工作。简单地说,小批量通过系统的速度更快,变异性更小,并能够促进快速学习。显而易见,因为随着批次规模的增加变异性是累积增加的,所以批量越小速度越快。

从经济的角度上来看,最优的批次规模依赖于持有成本(延迟反馈和价值交付带来的成本)和交易成本(实现和测试的成本)。如图所示,说明了“U型曲线”是批次规模的最优曲线(参考资

料[1])。

为了提高处理小批量的经济效益,从而增加吞吐量,主要的工作重点需要聚焦在减少批次的交易成本上。通常包括更加关注在基础设施和自动化上的投资,比如持续集成和构建环境、DevOps自动化,以及系统测试的配置时间。以上这些都是与系统思考的融合(原则#2),也是进行长期优化的关键要素。

管理队列长度

实现流动性的第三个措施是管理队列长度(一般来说是减少队列长度)。利特尔法则(基于排队论的法则)告诉我们,系统提供服务的等待时间等于队列的长度除以平均的处理效率(这可能看起来很复杂,可是在星巴克排队买咖啡的时候也会用到这个公式)。因此,假设平均的处理效率一定,队列越长,等待时间越长。

对于解决方案开发来说,这意味着无论团队多么有效地处理工作任务,只要团队实现的工作任务队列越长,那么等待时间就越长。如果你需要更快地完成,就必须减少队列的长度或者提高处理效率。虽然提高处理效率是我们都希望达到的共同目标,但是减少等待时间最快的方式是减少队列长度。在工作中,可以通过保持较短的待办事项列表和并不过多进行承诺来做到这一点。同时,可视化工作可以极大地帮助过程改进。

减少队列长度可以减少延迟、减少浪费,增进对于成果的可预测性。可视化和限制在制品,减少批次规模和管理队列长度,这三种方式对于提高吞吐量非常有效。通过采取这些方式,可以在客户满意度和员工参与度方面达到快速和可衡量的改进,对系统构建者及其客户也可以带来全面的经济效益。

参考资料

[1] Reinertsen, Donald G. The Principles of Product Development Flow: Second Generation Lean Product Development. Celeritas, 2009.

相关文章
|
人工智能 安全 算法
AI应用如何进行测试?
AI应用如何进行测试?
1647 0
|
开发者 Python 容器
深入理解Python迭代器:迭代机制的核心与应用
本文介绍了Python迭代器的核心概念、工作原理和应用场景。迭代器是遍历容器类型数据结构(如列表、元组、字典和集合)的对象,遵循迭代器协议,具有记忆遍历位置和一次性特点。通过实现迭代器协议,开发者能为自定义类型定义迭代行为,实现高效处理大量数据和与其他迭代工具协同工作。迭代器与可迭代对象的区别在于,可迭代对象实现`__iter__()`方法,返回迭代器,而迭代器实现`__next__()`方法,用于逐个访问元素。理解并运用迭代器能提升Python代码的性能和可读性。
|
8月前
|
数据可视化 安全 持续交付
敏捷方法大比拼:Scrum 适合你,还是 Kanban 更合适?
在数字化时代,企业面临项目管理的诸多挑战,如信息不透明、沟通低效等。Scrum 和 Kanban 作为敏捷管理方法,通过迭代优化和流程可视化提升协作效率与交付速度。Scrum 适合周期性迭代交付,强调短周期冲刺;Kanban 则适用于持续交付,强调任务流动性和灵活性。两者结合可形成 ScrumBan 模式,进一步优化任务处理。 对于数据安全要求高的企业,私有化部署工具(如板栗看板)确保数据自主可控、高安全性及定制化需求,保障业务连续性。选择合适的敏捷方法并结合私有化部署,能有效提升团队协作效率,助力企业在竞争中保持领先。
|
并行计算
ERROR: cuda requested, but not all dependencies are satisfied: ffnvcodec
ERROR: cuda requested, but not all dependencies are satisfied: ffnvcodec
740 0
|
10月前
|
机器学习/深度学习 人工智能 数据格式
Make-It-Animatable:中科大联合腾讯推出的自动生成即时动画准备资产
Make-It-Animatable是由中国科学技术大学和腾讯联合推出的数据驱动框架,能够在不到一秒内将任何3D人形模型转换为可用于动画的状态。该框架支持多种3D数据格式,并采用从粗到细的表示策略和结构感知建模,显著提升了动画准备的质量和速度。
204 7
Make-It-Animatable:中科大联合腾讯推出的自动生成即时动画准备资产
|
12月前
|
运维 供应链 监控
一文带你了解什么是TOGAF?及TOGAF的应用?
TOGAF(The Open Group Architecture Framework)是由The Open Group组织开发的企业架构框架,提供了一套方法论、工具和术语,帮助企业设计、规划、实施和管理企业架构。其核心是架构开发方法(ADM),涵盖从架构愿景到实施的各个阶段。TOGAF支持跨部门协作、持续改进和项目成功,适用于新系统开发、系统升级、业务流程优化和组织变革管理等场景。
1933 1
一文带你了解什么是TOGAF?及TOGAF的应用?
|
存储 Kubernetes 网络协议
k8s学习-StatefulSet(模板、更新、扩缩容、删除等)
k8s学习-StatefulSet(模板、更新、扩缩容、删除等)
650 0
|
11月前
|
存储 数据采集 数据库
用 Python 爬取淘宝商品价格信息时需要注意什么?
使用 Python 爬取淘宝商品价格信息时,需注意法律和道德规范,遵守法律法规和平台规定,避免非法用途。技术上,可选择 Selenium 和 Requests 库,处理反爬措施如 IP 限制、验证码识别和请求频率控制。解析页面数据时,确定数据位置并清洗格式。数据存储可选择 CSV、Excel、JSON 或数据库,定期更新并去重。还需进行错误处理和日志记录,确保爬虫稳定运行。
|
12月前
|
安全 前端开发 测试技术
【灵码助力安全2】——利用通义灵码辅助复现未公开漏洞的实践
本文介绍了利用通义灵码辅助复现未公开漏洞的过程,包括XSS和文件包含两种典型漏洞类型。通过具体案例,展示了如何结合CVE描述和源码,使用灵码定位漏洞位置、分析漏洞原因,并验证漏洞的存在。文章强调了灵码在提高漏洞复现效率、减少手动排查时间方面的优势,同时也指出了其在复杂场景下仍需人工判断的局限性。未来,期待灵码能在自动化安全测试、动态分析及威胁建模等领域发挥更大作用,全面提升软件安全性。