My previous blog on intelligent part numbers generated a lot of good response on LinkedIn. The general consensus seems to be that intelligent part numbering is anything but, and that there is a lot more “bad and ugly” than “good”. Most arguments centered on the idea that Product Lifecycle Management (PLM) and Enterprise Resource Planning (ERP) tools like Agile PLM from Oracle or PDMLink from PTC, with their intelligent databases and attributes, tend to minimize the benefit of intelligent part numbering and the changing nature and complexity of most companies will ultimately lead to intelligent part numbering systems breaking down. In this installment we continue the Clint Eastwood theme by making most configuration managers’ day by discussing the virtues and pitfalls of hybrid and random part numbering systems.
1. Semi-Intelligent (or Partial Significant) Part Numbers
Semi-Intelligent part numbers are simply a hybrid between random and intelligent part numbers. A portion of the number is considered significant or intelligent and the remainder is random. This affords simple categorization while relying on the system to keep the numbers unique through a randomly generated portion.
Arguments for Semi-Intelligent Part Numbers
On the pro side, Semi-Intelligent part numbers allow for easy identification of classes or families of parts based on a portion of the number. Typically, there is a prefix added to the part number that is a cage code or a commodity code. This allows for defining searches easily by entering the portion of the number that is intelligent, narrowing significantly the return results. Also when working with external systems, it's easy to identify, sort, and in general work with sets of numbers. Combine a coherent description and you have a numbering system that holds up well and assists with user discernment based on the number alone. Also, learning a set of cage codes or classifications is much easier for a user to come up to speed. Accordingly, most systems today support being able to build autonumber sequences that have a static prefix and post-fix, making entry less prone to error. The user is selecting from a list of numbers instead of having to type these manually and enter the entire number.
Arguments Against Semi-Intelligent Part Numbers
There are several valid arguments against semi-intelligent part numbers. First, when dealing with commodity codes, these usually represent classes or families of part. For instance, class 9XX could be hardware, 91X could be screws, 915 could be cap head types. But the issue that comes up often due to the rapid development of new types of components is commodity codes can quickly fall short based on a predefined length of characters. Also what happens when a company takes on a new product line that requires a completely new classification of components, fitting this in to the existing schema can be challenging and sometimes render the significance of the schema useless in certain situations. Also, what happens if a part falls into multiple categories due to ambiguous categorizations? Its sounds impossible, but I have seen this happen. There are a lot of scenarios which can cause a violation of the original intent of the semi-intelligent schema which can render the system useless. Also, just like with intelligent numbers, what happens if the company is acquired? Most times the commodity codes will not match up and once these are merged, they are rendered ineffective from an intelligence standpoint. Also, because the intelligent nature of these types of numbers requires some level of human discernment, errors are significant due to mis-categorization based on errant selection. Not to mention the need for user training and some type of support system to understand the intelligent portion of the numbers. Finally, there is the issue of data reuse. With semi-intelligent – due to the portion of the random number – it is easy to create duplicate parts (from a form-fit-function standpoint) without additional attributes being added to augment proper categorization and recognition and help assure uniqueness in the system.
2. Random (or Non-Significant) Part Numbers
Random part numbers are the simplest numbering schemas available and derive absolutely no significance from the number itself. It is, as the name suggest, completely random and the number is assigned by the system of record.
Arguments For Random Part Numbers
Probably the most notable argument for random part numbers is the ability to assure uniqueness. Although the name states these are random, systems usually derive these sequentially from a 'next number' entry in the database. However, in relation to the part's form, fit, function, etc… the number has no significance and as such is termed random. This makes data migrations due to combining systems, upgrading or moving to new systems, or company acquisitions much easier and less costly. It requires less data cleansing, less data correction, and greatly reduces the possibility of data collision due to duplicate part numbers. Accordingly, random numbers require no user training on how to configure or select the number. This greatly reduces costs and eliminates errors due to human intervention. Also, random numbers are infinitely expandable and require no planning for growth. System design becomes much simpler and reduces costs. And a side benefit, there is no infighting and acrimony due to the individual's take on how to best set up the significance of a numbering system. If you have ever been through a design session on how to configure or define part numbers and derive significance, you will know what I am talking about… even religious wars aren't as heated.
Arguments Against Random Part Numbers
There are some valid arguments against Random part numbers. Probably the most notable is the inability to understand what the part is based on the number alone. Without additional attribute information it is impossible to tell the form, function, etc… of a given part. CAD designers like the fact that they can search for a specific number based on the schema and determine if the part exists by the number alone. In order to produce the same functionality, you not only have to set up the system to capture the attributes but it also requires users configure these and set/input the values in order to make an object intelligible. Accordingly, the random part number is only useful if the associated attributes are available. If the system is down, then it's difficult at best to decipher the part based on the number alone. Also where random part numbing systems rely heavily on the description, it gives rise to user error based on inputs.
In my next article we will have the final bake off among part numbering systems and I will share my experience with all of the various systems and explain which one works best in various circumstances. As always, your input is appreciated so feel free to share your thoughts.