There is no single answer or standard. However, typically people have some combination of a random/sequential index and a smart number that encodes some information. Additionally, in complex products, major subparts (e.g. PCB's) are usually individually serialized as well.
Remember, generally speaking it is not design engineers that deal with serial numbers day-to-day. (Empathetic engineering)
However, regardless of what scheme choose, I would make sure it plays nice with any company database systems. Which may be prescriptive or inflexible in implementation.
As an example, a major chip manufacturer was recently acquired by another company, and as a result issued thousands of product change notices because the new parent company business systems did not support the -
character in the existing part and serial numbers...
I would also encourage you to consider the following
- Is it sufficient for a unit to be uniquely identifiable?
- Do you anticipate many alternate manufacturers and complex supply chain?
- Do you anticipate many variants and subtypes that you may want to differentiate in serial number
- Is it important for a repair person or a customer to know what parts/lots are inside an assembled unit without needing to open it?
- Is it critical that competitors and customers can learn no internal information from the serial number (production numbers, lots, and date codes may be trade secret in certain instances).
- If you have to do a recall, service bulletin, or other service event, is it important that you can call out ranges of serial numbers without having to list them individually?
Other things to consider:
The needs of Service and Sales personnel.
It may seem reasonable to query a production database today, but may become problematic if you have a large repair crew or contractors/distributors/affiliates that now require those databases to be exposed or otherwise shared.
The needs of contract manufacturers and mfg personnel
Contract manufacturers can save you effort by serializing for you, if they can do that without asking you for a batch of new numbers it can save you time and effort
Sanity
Meaningless, long numbers are easier to lose track of. If a production technician can look at a unit and determine what it is and if its in the right place based on the serial number, this can save much time and frustration vs a computer lookup.