Master Production Scheduling & Factory Capacity Planning
Rough-Cut Capacity Planning (RCCP) & Overtime Formula
Validate a Master Production Schedule (MPS) using APICS Rough-Cut Capacity Planning (RCCP): Required Standard Hours, Demonstrated Capacity (Machines * Clock_Hours * Utilization_Efficiency), Load-to-Capacity Ratio, and Clock Overtime Hours.
Divide standard-hour shortfalls by Utilization*Efficiency when scheduling clock overtime!
Master schedulers frequently sign off on an unachievable Master Production Schedule (MPS) because they compare Required Standard Hours (MPS_Units * Run_Std_Hrs + Batch_Setup_Hrs) against GROSS machine clock hours (Machines * Scheduled_Clock_Hrs)—forgetting APICS Demonstrated Capacity derating! In Rough-Cut Capacity Planning (RCCP), true Demonstrated Capacity in standard hours equals Machines * Scheduled_Clock_Hrs * Combined_Util_Eff (where Utilization * Efficiency captures preventive maintenance, tooling changeover, and operator pace)! Worse yet, when Load exceeds Demonstrated Capacity by Delta_Std_Hrs, scheduling only Delta_Std_Hrs of overtime STILL misses the MPS—because overtime shifts operate at the same Utilization * Efficiency factor, requiring Clock_Overtime_Hours = MAX(0, Load_Std_Hrs - Demonstrated_Cap_Std_Hrs) / Combined_Util_Eff!
Verify on a Bottleneck CNC Milling Cell—MPS_Quantity = 2,000 units (B2), Unit_Run_Standard_Time = 0.30 std hrs/unit (B3), Campaign_Setup_Hours = 40 std hrs (B4 -> Required Load = 2,000 * 0.30 + 40 = 640.00 std hrs in E2), Parallel_CNC_Centers = 4 (B5), Monthly_Clock_Hours_Per_Machine = 160 hrs (B6 -> 640 gross clock hrs!), and Demonstrated_Util_Eff_Factor = 0.80 (80.0%, B7): Demonstrated Capacity is 4 * 160 * 0.80 = 512.00 std hrs (E3); Work-Center Load Ratio hits 640 / 512 = 1.2500 (125.0% overloaded in E4); requiring (640 - 512) / 0.80 = 160.00 clock overtime machine-hours (40 hrs/machine, NOT 128 hrs, in E5)!
| APICS RCCP Bottleneck Metric (2,000 Units @ 0.30h + 40h Setup; 4 Mach * 160h * 0.80) | Formula | Verified Output |
|---|---|---|
| Required MPS Load (Std Hours) | MPS_Units * Run_Std_Hrs + Setup_Hrs | 640.00 std hrs (460.00 @ 1,400 u) |
| Demonstrated Capacity (Std Hrs) | Machines * Clock_Hrs * Util_Eff | 512.00 std hrs (vs 640 Gross!) |
| Work-Center Load Ratio | Required_Std_Hrs / Demonstrated_Cap | 1.2500 (125.0%; 0.8984 @ 1,400 u) |
| Required Clock Overtime (Hrs) | MAX(0, Load - Cap) / Util_Eff | 160.00 clock hrs (0.00 @ 1,400 u) |
APICS RCCP Clock Overtime Requirement Formula
Validate MPS_Units >= 0, Run_Hrs > 0, Setup_Hrs >= 0, Machines >= 1, Clock_Hrs > 0, and 0 < Util_Eff <= 1.5!
=LET(mp_u, B2, rn_h, B3, st_h, B4, mc_n, B5, cl_h, B6, ue_f, B7, IF(OR(mp_u < 0, rn_h <= 0, st_h < 0, mc_n < 1, cl_h <= 0, ue_f <= 0, ue_f > 1.5), "Invalid RCCP Work-Center Spec", LET(ld_s, mp_u * rn_h + st_h, cp_s, mc_n * cl_h * ue_f, ROUND(MAX(0, ld_s - cp_s) / ue_f, 2))))Feasible Level-Loaded MPS Check (Set MPS_Units = 1,400)
Reduce MPS_Units B2 to 1,400: Required Load drops to 460.00 std hrs (Load Ratio E4 = 0.8984 <= 1.00) and Required Clock Overtime E5 drops to 0.00 hrs!
=IF(ISTEXT(E5), E5, ROUND(E2 / E3, 4))Try the example
Use the original values or change them to test your understanding.