October 12, 2026
The original project which this effort is based on was in the Wine industry. Specifically, it was the largest application in that space, a custom application for the largest winery in the world. Oracle based their offering in that space based off of that system. Given all due respect to my previous employer, I have changed the industry we are focusing on, and made every effort to protect IP on their behalf. The concepts illustrated here are generic to beverage manufacturing, which makes things interesting. We are rolling with an imaginary process where we harvest oranges in effort to produce orange juice.
If you are browsing this article, short on patience, read this part and move on. Basically the process requires receiving raw materials, performing preliminary operations, producing finished product. The scope of the system is to to support purchasing of raw materials, every step of the manufacturing of the raw material into a finished product, and tracking ends at that point. Transportation, wherehousing, sales and distribution, logical next steps, fall beyond scope.
A lot of raw materials are purchased annually during limited harvest windows, initially processed, and stored in large longh term storage units. Further operations are performed on a on demand basis. The entire set of operations may be described as a lot of initial operations, folowed by numerous on demand operations. From initial operation to final product, the total process may take months, and given the nature of the products, the combined series of steps between start to finish to produce something into that ever so friendly package you see in the store may reasonable reach 50+ steps as we are dealing at scale.
So we are dealing with raw materials that are grown from nature, specifically oranges. We are not purchasing readily available materials and simply forming them into a product, that is the case when producing soft drinks, however not here. This creates an interesting set of challenges. Purchases are made in bulk, arriving in multiple truckloads, over somewhat extended time periods. Tracking individual transactions as a larger units presents an interesting problem as they don't occur simple back to back.
Was the requested total amount of product from a grower fullfilled, and if so, how much juice was actually yielded? We can operate off of projected estimates, howwever until a given entire set of operations is completed, we do not know the actual amount of product we will have on hand.
The next step after recieving physical raw materials is to perform a common set of operations, regardless of the final product, summarized as follows.