Design – Inventory management system design problem

design

What are the conventions for item batch identifiers in inventory management systems?

For example:

A retail supermarket can order 'Item X' from either 'Supplier A' or 'Supplier B'. When it completes an order for the item from either supplier, it needs to store the record of the receipt. Inventory quantity for the item is increased upon receipt of the order.

However it is also required to store some record of the supplier. Thus some sort of batch identifier is required. This batch identifier will uniquely identify the item received and the supplier from whom it is received. A new batch is created each time items are received in stock (for example, after an order).

Hence, for purposes of accounting / auditing, information available to identify an item after it was sold comprises of ITEM_CODE, ITEM_NAME, BATCH_CODE. The BATCH_CODE is unique and is associated with DATE_RECEIVED, SUPPLIER_CODE, QTY_RECEIVED.

Is this a complete system specification for the above scenario or has anything significant been left out?

Best Answer

There are a number of potential gaps in this analysis that may or may not pose a problem in a particular implementation. I would argue that some of them lie way outside of the topic of the site (accounting and supply chain management).

However, there is one gap that you will definitely need to close based on the facts mentioned in the question.

You will need to split the term "Item X" into at least two concepts already at the configuration side; inventory item from your site's perspective, and a supplier's item. For example, stock levels or the link to a corresponding retail item are attributes of the former. Order code is an attribute of the latter. The mapping between these two concepts will likely evolve as suppliers pop into and out of business relations with you.

Related Topic