| Shop Floor Control (SFC) | |
| 🏭 Executing the production plan | |
| Also known as | Production Activity Control (PAC), Manufacturing Execution |
|---|---|
| Scope | Work order release through completion |
| Key inputs | Released orders from MRP, routings |
| Key outputs | Completed production, feedback data |
| Part of | MRP II |
Shop Floor Control (SFC), also called Production Activity Control (PAC), is the execution layer of MRP II. While MRP and CRP determine what to produce and whether capacity exists, SFC manages the actual execution on the factory floor — releasing work orders, dispatching operations to work centres, tracking progress, and reporting completions back to the planning system.
stateDiagram-v2
[*] --> Planned : MRP creates
Planned --> Released : Materials & capacity OK
Released --> InQueue : Arrives at work centre
InQueue --> InSetup : Dispatched
InSetup --> InRun : Setup complete
InRun --> InMove : Operation complete
InMove --> InQueue : Next operation
InRun --> Complete : Last operation
Complete --> [*] : Received into inventory
InRun --> OnHold : Problem (material, quality)
OnHold --> InRun : Resolved
Each work order passes through a series of states. At each transition, SFC records actual times and quantities, which flow back to CRP (actual vs. planned capacity), Inventory Management (WIP and finished goods), and cost accounting.
When multiple jobs compete for the same work centre, SFC uses priority dispatching rules to determine sequence:
| Rule | Logic | Best for |
|---|---|---|
| Earliest Due Date (EDD) | Process the job due soonest first | Minimising maximum lateness |
| Critical Ratio (CR) | Time remaining ÷ work remaining; lowest ratio first | Dynamic priority adjustment |
| Shortest Processing Time (SPT) | Process the quickest job first | Minimising average flow time |
| First Come First Served (FCFS) | Process in arrival order | Perceived fairness |
In MRP II, the most common approach is due-date-based priority (EDD or Critical Ratio), since the system's primary goal is on-time completion relative to the MPS.
SFC is the primary source of actual performance data that closes the loop in MRP II:
graph LR
SFC["Shop Floor
Control"] -->|"actual production"| INV["Inventory
(update stock)"]
SFC -->|"actual hours"| CRP["CRP
(update load)"]
SFC -->|"completion status"| MRP["MRP
(update receipts)"]
SFC -->|"schedule performance"| MPS["MPS
(variance reports)"]
style SFC fill:#cedff2,stroke:#333
Without accurate and timely shop floor reporting, the entire planning system degrades: inventory records drift from reality, CRP load projections become unreliable, and MRP generates incorrect action messages.
Input/output (I/O) control monitors the flow of work into and out of each work centre. It compares:
When input exceeds output, queues build and lead times grow. When output exceeds input, the work centre starves. I/O control helps maintain stable, predictable lead times — a prerequisite for accurate MRP planning.
graph TB
MRP["MRP"] -->|"released orders"| SFC["SFC"]
CRP["CRP"] -->|"feasible schedule"| SFC
INV["Inventory"] -->|"material availability"| SFC
SFC -->|"completions"| INV
SFC -.->|"actuals"| MPS["MPS"]
PUR["Purchasing"] -->|"bought parts"| INV
style SFC fill:#cedff2,stroke:#333