1.4 Master data model & SSOT rules: BOM, routing, resources
Master Data functions as the executable code of the factory. If the Bill of Materials (BOM) or Routing contains an error, the MES will unknowingly automate the production of a defect. Therefore, Master Data must not be treated merely as static documentation, but as a rigid configuration set that requires careful version control, validation gates, and data integrity checks.
Canonical master data entities
Section titled “Canonical master data entities”A production process relies on four distinct data entities. Each entity must have a unique immutable identifier (Primary Key) to prevent ambiguity.
1. Bill of Materials (BOM)
Section titled “1. Bill of Materials (BOM)”- Definition: The hierarchical list of components and raw materials.
- Primary Key: PartNumber + Revision (e.g. PCBA-1001-Rev02).
- Constraint: A BOM should not be modified in place. Any significant change generally requires a new Revision ID to maintain traceability.
2. Routing (bill of labor)
Section titled “2. Routing (bill of labor)”- Definition: The sequential list of operations, capable work centers, and standard times.
- Primary Key: RouteID + Revision.
- Constraint: Every Operation Step must map to a valid Resource Type.
3. Resources (work centers)
Section titled “3. Resources (work centers)”- Definition: Physical assets (Machines, Lines, Benches) or Logical groups (Test Stations).
- Primary Key: AssetID (Physical) or ResourceGroupID (Logical).
- Constraint: Resources must have an Active / Maintenance / Decommissioned state flag.
4. Recipes / programs
Section titled “4. Recipes / programs”- Definition: Machine-specific files (Pick & Place placement files, Reflow profiles, In-Circuit Testing (ICT) test scripts).
- Primary Key: ProgramName + Checksum (MD5/SHA256).
- Constraint: The Manufacturing Execution System (MES) should verify that the machine has loaded the correct program specified in the Routing before processing begins.
Synchronization logic
Section titled “Synchronization logic”The integrity of the system depends on the proper alignment of these entities. The following logic should be considered to enforce the “Digital Triad” (Bill of Materials (BOM) + Route + Work Instruction).
- When a Bill of Materials (BOM) Revision increments (e.g. Rev A to Rev B), the system should flag the associated Routing for review, as new parts frequently necessitate changes to the assembly process.
- When the active Work Instruction Revision does not match the Active Routing Step Revision, the system should block the operation to prevent assembly using obsolete documentation.
- When the Recipe Checksum currently loaded on the machine does not match the approved Checksum stored in the MES Master Data, trigger an alert or interlock to halt the process until verified.
Lifecycle state machine
Section titled “Lifecycle state machine”Data typically matures through defined states. The implementation of a State Machine helps prevent the premature or unauthorized usage of data on the shop floor.
State definitions
Section titled “State definitions”- Draft: Under construction. Visible to Engineers only. Action: Block from Production Orders.
- Pending Approval: Locked for editing. Awaiting Quality Assurance (QA)/Production Manager signatures.
- Released (Active): The Single Source of Truth (SSOT). Available for scheduling.
- Obsolete: Legacy data. Action: Block from new Orders. Retain only for historical genealogy.
Transition rules
Section titled “Transition rules”- When the State is set to “Released,” the record should be locked as Read-Only.
- When a modification is required on a Released record, the system should encourage the creation of a new Revision (Rev N+1).
- When a critical quality issue is detected, authorized personnel have the ability to force the State to “Hold” or “Obsolete” to prevent further use.
Drift controls & reconciliation
Section titled “Drift controls & reconciliation”Over time, the ERP (Financial view) and MES (Manufacturing Execution System) will drift apart without active policing. These automated controls must be implemented to detect and block drift.
1. Blocking conditions
Section titled “1. Blocking conditions”- Checksum Mismatch: Before releasing a Work Order, the system should calculate the hash of the combined Bill of Materials (BOM) and Routing. If the calculated hash of the Order does not match the hash of the approved Master Data, flag or quarantine the Order for review.
- Ghost Resources: If a Routing specifies a Resource (e.g. Resource_A), but that Resource is currently flagged as “Decommissioned,” the system should restrict scheduling.
2. Reconciliation reports
Section titled “2. Reconciliation reports”A scheduled job to compare data between the ERP and MES databases must be run:
- Orphaned Parts: Items existing in MES BOMs but deleted/inactive in ERP.
- Unit of Measure (UoM) Conflicts: ERP uses “Each”, MES uses “Meters”. Action: Flag for manual correction.
Change control: ECO & flushing strategy
Section titled “Change control: ECO & flushing strategy”Engineering Change Orders (ECO) naturally introduce some risk. Defining exactly how a change enters the production stream is beneficial to avoid mixing revisions unintentionally.
Effective date logic
Section titled “Effective date logic”- Immediate: The line must be stopped. All WIP must be purged. The new revision must be setup. (Only for Safety/Critical Quality).
- Rolling (Flush): Current WIP is allowed to finish on Old Revision. New Orders are started on New Revision.
WIP compatibility logic
Section titled “WIP compatibility logic”- When a change affects Form, Fit, or Function, it is usually necessary to scrap the existing WIP or route it for documented rework.
- When a change is primarily limited to documentation, you may safely allow the existing WIP to complete its normal routing.
Versioning syntax standard
Section titled “Versioning syntax standard”Ambiguity can hinder traceability. The adoption of a clear syntax helps distinguish prototype data from mass production data.
- Pre-Production: Use Decimal or Alphanumeric (0.1, 0.2, A, B).
- Mass Production: Use Integers (01, 02, 03).
- Rule: A change in a child component (Part A → Part B) should ideally force a revision increment of the parent assembly.
Recap: Master Data Validation and Production Release
Section titled “Recap: Master Data Validation and Production Release”| Entity | Primary Key | Core Constraint / Requirement | Production Blocking Condition |
|---|---|---|---|
| Bill of Materials (BOM) | PartNumber + Revision | Significant change requires new Revision. MBOM is distinct from EBOM. | State is not “Released”. |
| Routing | RouteID + Revision | Every Operation Step must map to a valid Resource Type. | State is not “Released” or linked Resource is “Decommissioned”. |
| Resources | AssetID / ResourceGroupID | Must have an Active / Maintenance / Decommissioned state flag. | State is “Decommissioned”. |
| Recipes / Programs | ProgramName + Checksum (MD5/SHA256) | MES must verify machine-loaded program checksum matches master data before processing. | Checksum mismatch. |
| Master Data State | State (Draft, Pending, Released, Obsolete) | “Released” state is read-only SSOT. Modification requires new Revision. | Work Instruction Revision does not match Active Routing Step Revision. |