所有文章
方法2026年9月4日 · 2 分钟阅读时间

模拟流程:八个步骤,并带有完整计算示例

简而言之

模拟一个流程意味着:用一句话界定范围,把流程大致分成五到十个步骤;为每个步骤收集数量、处理时间范围和产能;描述到达流的波动与尖峰因子;让模型运行数百次;用 Little's Law 将结果与现实核对;然后只改变一个杠杆并重新计算。工作量大约半天,其中大部分时间用于数据收集,而非计算。结果是一段由 P50 和 P90 表示的区间,加上对措施后瓶颈去向的说明。

Inhaltsverzeichnis

本指南与工具无关:它同样适用于仿真实验室、Python 库或精简的决策工具。适用于 FlowVisual 的按键版请参见实践指南

第 1 步:用一句话界定范围

“从发票到批准付款。”

这句话必须得到所有相关者的一致认可。没有它,两个领域会就不同的流程争论,不理解为何它们的数据不一致。

如果缺少这句话,那么界定范围本身就是主要工作,而不是计算。

第 2 步:粗略分解,五到十个步骤

不要三十个。瓶颈出现在利用率最高的环节,粗略建模下这一点和精细建模一样明显。每增加一个活动就需要五个输入字段,且不会改变结果。

三条规则:

  • 只有在流程真正分叉时才建分支,并标注每条边的占比。
  • 对所有离开流程的情况建终止:撤回、拒绝、流失。没有终止项会导致计算的量永远到不了终点。
  • 等待时间不是步骤。 当产能紧张时,等待会在模型中自然产生。把“滞留时间 3 天”作为步骤填写,就是在预先决定结果而不是计算结果。

第 3 步:每步三项数据

项目来源替代方法
每日到达量ERP、工单系统、收件清单统计四周
处理时长 范围工时记录、自述分别询问三名处理者,取他们回答的区间
产能编制 × 有效工作小时人数 × 小时 × 0,7

关于区间:“5 到 15 分钟”比“平均 10 分钟”更有价值,业务方也更愿意提供,因为更诚实。变异不是不确定性,它是队列形成的原因。

关于产能:按每个全职岗位每周七个有效工作小时来算,而不是八个。会议、询问和干扰不计入处理时间。

第 4 步:描述到达流

这是最常被跳过、但后果最严重的一步。需要三项说明:

  • 工作日平均到达量。
  • 波动性: 到达是均匀分布还是成批到来?
  • 峰值因子: 强日比平日多多少?月末或周初通常出现,因子常见在 1,5 到 2 之间。

用平滑平均数计算,就相当于模拟一个永远不受负荷影响的过程,会得到在真实运营中不存在的流转时间。

第 5 步:让模型多次运行

一次运行只是样本数为一。只有用新的随机数重复运行多次,才能得到目标结果:一个分布,从中读取 P10、P50 和 P90。

您需要的输出:吞吐量、作为区间的流转时间、各步的利用率、队列长度。

第 6 步:交叉验证

Little's Law 是最便宜的检验方法,且不依赖分布假设:

平均流转时间 W  =  在途量 L  ÷  吞吐量 λ

统计当前在等候的事项数量,除以日吞吐量,与模型输出对比。

  • 大致吻合: 继续。
  • 模型明显比现实快: 缺少某个队列。几乎总是因为一个询问、第二道审批或汇总处理被忽略。
  • 模型明显比现实慢: 您低估了产能或遗漏了一个能把量抽走的分支。

第 7 步:只改一个杠杆

先保存现状。然后只做一个改变:

  • 增加产能
  • 降低变异(按类型分流,平滑入口,取消询问)
  • 改变量的去向(设定价值阈值,抽样替代全检)
  • 步骤自动化

重新计算并比较。然后恢复并尝试下一个杠杆。三个改动同时进行会得到一个无法归因到单个杠杆的数值。

第 8 步:把结果写下来并说明假设

四个部分:峰值日各步利用率的排序、流转时间的 P50 与 P90、杠杆的时间和欧元效果及新的瓶颈、以及未覆盖事项清单。

完整计算的示例

示例模型,无客户数据。

流程: 退款申请处理。每工作日 80 份申请,月初峰值因子 1,6。

步骤处理时长产能需求/日产能/日利用率
检查收件3–6 min1 人360 min420 min86 %
事实性审查8–20 min3 人1 120 min1 260 min89 %
批准2–5 min1 人(兼职)280 min300 min93 %
支付汇总处理每周 2 次

第一种解读: 瓶颈是批准(93 %),紧随其后是事实性审查(89 %)。三者均在 85 % 以上。这意味着等待时间已经是处理时间的若干倍,在峰值因子 1,6 时,三者的利用率都超过 100 %。

仿真结果: 流转时间 P50 = 4,8 天,P90 = 11,2 天。处理时间合计为 13 到 31 分钟。真正的问题在 25 分钟到 4,8 天之间。

交叉验证: 收件箱平均有 390 件,吞吐量 80/日 → 4,9 天。吻合。

杠杆 A,事实性审查增加半个岗位: P50 降至 3,9 天,P90 降至 8,4。瓶颈现在明确在批准(93 %)。

杠杆 B,为批准设固定代理而非由兼职人员兼任: P50 降至 3,1 天,P90 降至 6,0。批准步骤的变异是更大的杠杆,且几乎不需要额外岗位。

杠杆 C,将支付改为每日而非每周两次: P50 −0,7 天,几乎免费。

按投入产出排序: C、B、A。增加人员这一经典答案排在最后。

五个代价高昂的错误

  1. 把等待时间当作步骤登记。 这样会预先决定结果。
  2. 用平均值而非区间计算。 没有变异就没有队列,没有队列就没有真实的流转时间。
  3. 省略峰值日。 平均 85 % 的流程在峰值日会超过 100 %,由此产生的积压会持续数周。
  4. 建模过于细致。 三十个步骤,同样的答案,三倍的工作量。
  5. 未做交叉验证就发布。 Little's Law 只需五分钟,却能挽回可信度。

常见问题

模拟一个流程需要多长时间?

对于一个范围明确、包含五到十个步骤的流程:大约半天的纯工作时间,分布在大约一周的日历时间内。最大部分是数据获取,而不是模型构建。模型本身大约在30分钟内完成。只有在范围有争议时才会更久。

我至少需要哪些数据?

每个步骤三项数字(数量、作为区间的处理时间、容量)加上到达流的描述,包括波动和峰值因子。所有数据都可以估计,但估计必须作为假设随结果一并给出。事件日志不是必需的;只有当您要衡量过去而不是计算变更时才需要它。

我如何判断我的模型是错误的?

凭 Little's Law:数一数正在等待的事项并除以日吞吐量。如果测得的通过时间明显高于计算值,模型中就缺少一个等待队列。通常是一次询问、第二道审批或一次汇总运行。这个检查只需五分钟,却是最有效的检查。

我应该把等待时间建模为独立的步骤吗?

不应该。当某个步骤对到达量没有足够容量时,等待时间会在模型中自然产生。把它作为固定步骤录入,就先假定了本欲计算的结果。这样之后就无法展示当容量或波动改变时等待时间如何变化。

为什么每项计算只改变一个杠杆?

因为否则无法分配效果。若同时改变容量、波动和路由,您可能得到一个更好的数值,但不会有可行的业务案例:无人能说明投资的哪一部分产生了该效益。逐项计算会按每单位投入的效果生成排序,且通常在首位出现一项无需成本的措施。

FlowVisual

在您自己的流程上进行计算验证

FlowVisual 会把本文中的数字变成一个可运行的模型,使用您的数量、您的产能、您的利润率。

Guide: seven steps to the number