精益软件开发

以最少的浪费,创造最大的价值

思想谱系

阶段 核心思想 局限 / 转化
福特流水线 标准化、规模化、流水线生产 高效率但刚性强,容易产生库存浪费
丰田生产系统 TPS JIT + 自働化 在资源有限条件下追求低库存、高质量
精益软件开发 把制造业精益思想映射到软件开发 库存 → WIP,生产线 → 开发流程

三大支柱

JIT:准时化

需要什么、什么时候需要、就生产多少。

软件中的对应:

  • 按真实需求开发
  • 少做提前设计
  • 少堆积未完成任务
  • 避免“为了以后可能用到”而开发功能

Jidoka:自働化

带有人判断能力的自动化。

软件中的对应:

  • CI 红灯即停
  • 测试失败阻塞合并
  • 构建失败先修复,不继续堆代码
  • 发现异常可以暂停发布流程

同构映射

把制造业概念翻译成软件开发概念。

制造业 软件开发
库存 WIP:未完成工作
次品 Bug / 缺陷
停线 CI 失败阻塞合并
生产线 开发、测试、上线流程
拉动生产 按需求拉取开发任务

精益软件开发七大原则

原则 核心含义
消除浪费 不创造客户价值的活动都应减少
内建质量 质量要在开发过程中保证,而不是事后检查
创建知识 软件开发本质是持续学习和知识沉淀
推迟决策 在信息更充分时再做关键决策
快速交付 缩短从需求到上线的周期
尊重人 让团队有自主性、能力成长和心理安全
全局优化 优化完整价值流,而不是局部 KPI

软件开发中的七种浪费

浪费类型 典型表现
部分完成的工作 未合并分支、半成品 PR、搁置需求
多余功能 用户不用的功能、过度配置
缺陷 Bug、回归错误、返工
任务切换 同时做多个项目,频繁切换上下文
等待 等评审、等环境、等审批、等依赖
不必要复杂性 过度设计、抽象过多、提前扩展
重新学习 同样的问题反复踩坑,知识没有沉淀

浪费不是做得少,而是做了不该做的。

关键实践对应关系

截屏2026-06-03 14.19.13

工程师视角升级

层级 关注点
看见代码行 语法、API、函数实现
看见价值流 需求如何从想法变成上线功能
看见系统 团队、流程、客户、运维之间的反馈关系
看见人 尊重人的创造力、动机和成长