In the electronics, mechanical, and chemical industries, a Bill of Materials (BOM) is a list of the raw materials that are required to manufacture or formulate an end product. A BOM is most often used to communicate material requirements to manufacturing partners and typically accompanies other data such as schematic drawings, procedural documents, or pick and place data for electronic assemblies.
A Bill of Materials (BOM) has three necessary components:
- Manufacturer and Manufacturer P/N – These are used to uniquely identify the item in the world of all components.
- Quantity and Units – How many parts (and the corresponding unit of measure) are used on your assembly.
- Reference Designators – Where the parts go on your assembly.
- Item description
- Component pricing (at various quantities)
- Supplier information such as distributor(s) and distributor inventory
- Lead time
- Vendor part numbers
- Datasheet links
- Alternative parts for substitutions
These are the essential components. There can be no compromises here. If any of these components is missing from the BOM, it is incomplete.
But this is also a sufficient set for a BOM. Any additional data can be acquired from other sources and is not required to completely describe the BOM. In fact, including additional data may be detrimental unless the BOM is well-maintained with timely data.
This is minimal set because if anything is left out, the BOM is incomplete. Let’s go through these one by one.
Manufacturer and Manufacturer P/N
The manufacturer and manufacturer part number (MPN) are required to uniquely identify the part. It is common to cheat and use a description for some generic components. For example, some folks find it acceptable to say “10kOhm, 5%, 0402 resistor”. While this may be acceptable for some applications, it is certainly not always acceptable. For any given resistor, the datasheet for that resistor includes a number of parameters. To thoroughly specify the lowly, mundane resistor, you’d have to attach a datasheet. Save everyone some grief and just pick a widely available part and be specific about the manufacturer and MPN. Use PLM software and other methods to specify and link acceptable alternates and substitutes. That way, if the part isn’t available, you can be specific about what to use in its stead.
In the PLM world, the MPN is basically a SKU (stock keeping unit). It uniquely describes an item of identical form, fit, function, or formulation. If any of these four change, a new SKU is necessarily created.
What is PLM?
PLM is, in many ways, the hardware equivalent of the software world’s Source Code Management (SCM). These days, even the most rudimentary software projects are managed under SCM systems such as Git, Subversion, Perforce, and others. SCM puts source code into a much richer context. Tracking changes, branch management, merges, code reviews, and more are all possible with SCM. These things are possible with folders and files but at a significant cost and reduction in operational efficiency. So anyone even remotely serious about software development is using SCM.
Similarly, PLM puts the hardware design into a richer structure that improves operational efficiency. Part and supplier information are managed in database records to avoid duplication of data. Assembly part lists (BOMs) link to these records and are also managed in database records so that comparison is easily done. Maintenance of project cost and inventory availability is all a free side effect of curating your entire part database.
Quantity and Units
Your purchasing folks need to know how many (or how much) of a particular item to purchase for each assembly. Most items will have the units of “each” but some items will require a broader set such as milliliters (adhesives, thermal paste, sealants, formulations), centimeters (wire, tape, heat shrink tubing), and so on.
The term “reference designator” is common in electronics manufacturing and refers to the typical way to call out an instance of a part on a schematic. C1, C2, C3 often refer to capacitors 1, 2, and 3 on the schematic. The prefix (C, R, U, etc) is a convenience and mostly irrelevant, but the designators themselves must be unique within the BOM.
Mechanical drawings have a similar style, but typically reference drawings of the part rather than the abstract representations seen on electronics schematics. In either case, the result is the same – each part in the CAD of the assembly is uniquely identified and references a unique part on the BOM.
Sufficient? (or When a BOM Becomes a Time Bomb)
BOMs can get pretty loaded with additional information. Some things often seen on BOMs are:
All of this information is undoubtedly useful in some context. It’s often helpful to know know additional information about an item on a BOM. Purchasing folks would like to know which items will require the longest lead time and what they can expect to pay for them. Engineers would like additional details about the part and reference datasheets. Manufacturers may like to know which parts they could substitute in case they are short on inventory.
The question is, are any of these required on the BOM and, if not required, should they be there anyway? I argue that they are not required. This is all information that lives elsewhere and is maintained elsewhere. If you’re using a good PLM & MRP software, this information lives in your database. If not, the information lives in a variety of other places such as manufacturer websites, supplier websites, and email interactions. Yes, it’s cumbersome to refer to these other places, but it’s also cumbersome to maintain a BOM that has captured all this data. (hint: this is why good software is helpful)
With this additional information, a BOM has a half-life and as that information expires, becomes less useful and more tedious to maintain. In fact, stale information can actually be detrimental and more costly than the absence of information.
Case Study Challenge – Packaging
Packaging presents a bit of a minor (maybe just annoying) challenge to defining a BOM. A widely seen example is in the distribution of small electronic components where the same fundamental part is sold is different packaging and quantities. Note that I’m not referring to the device package (like SOT-23 vs. QFN). I’m referring to the way the devices are packaged for sale such as plastic tubes, 250-pc tape & reel, or 3,000-pc tape & reel.
Texas Instruments is a large, well-known electronics component manufacturer. They use a suffix on their MPN to indicate delivery packaging which has absolutely nothing to do with the underlying part. For example, let’s take their TPS2552DBV, a precision adjustable power distribution switch. This device is available in 250-pc tape & reel (TPS2552DBVT) or 3,000-pc tape & reel packaging (TPS2552DBVR). Same part. Same device package. Different spool quantity.
Why is this a challenge? Because no one from engineering cares (nor do they need to care) what size the delivery packaging is. But when someone places an order with them, they need to know which packaging to send them. If you place an order for 3,000 TPS2552DBV, do you mean you want one TPS2552DBVR or twelve TPS2552DBVT?
And even the supply chain folks can get confused. Look at the Digi-Key prices for these two different part numbers.
These are the same part. They have the same form, fit, function, and formulation. No one (even at Texas Instruments) could tell any functional difference between these two parts and yet their price in Digi-Key cut tape quantities is different by about 13%. Consider a situation where your supplier is out of stock on one of these two part numbers with a lead time of 8 weeks but has the other part number in stock. Without this institutional knowledge, you could have a line-down situation for 8 weeks.
How can this be resolved? This is a common situation that quickly gets out of hand when working with spreadsheet BOMs, but is rather mundane for software to handle. The TPS2552DBV needs to present as a single component to your engineers, but provide additional depth to purchasing folks. Your part database needs to present a unified front: one part that your entire organization can agree is the same part, regardless of how it is packaged for sale.
One solution is to allow a single part record to link to multiple vendor part numbers with a brief description of what each one means. For example, the table to the right captures various vendors and their corresponding internal part number representations.
With this data available, quoting and purchasing software can use this to resolve any ambiguities. More importantly, since this is a known and documented software feature, the personnel handling purchasing know that they’re free to make decisions based on this information, confident that will not affect form, fit, function, or formulation of the final product.