Module: Category management¶
Executive summary¶
The very core of STOCK – based on the target Service Level (SL) – proposes purchase orders in such a way that over time, an optimum stock on hand is maintained. In the real world, however, there is need to limit the stock from the “top”. The most common reasons for such restrictions are spatial and financial limits.
An additional module Category management is here to make sure that the range of products is properly filtered – so that the limited capacity is fulfilled with an ideal combination of products and we thus reach a maximal gain in accordance with the set parameters.
Functional description¶
General framework¶
The module is designed to propose an optimum shelf – and intermediate steps leading to this state. As a shelf, in this module, we understand a user-defined, specific product category (not necessarily identical to any category used elsewhere in STOCK) at a specific store. The module works only with user-defined shelves: therefore, the shelves do not affect the entire sales network registered in STOCK.
It is far from a trivial task to find an optimal shelf combination. To do so, the module uses algorithms that defines a score for each product type. The score determines its priority in shelf-placement and STOCK take the score into account when purchase orders are suggested. This is also how the transition is driven: a transition from the (presumed) current state, via intermediate steps called alternative drafts to the optimum. Scores can range from 0 to 100: the most suitable product for optimal placement on a shelf has the value of 100, the rest is calculated proportionately.
For the purposes of the present module, products are divided into several groups (for clarity, we added a graphic representation):
Mandatory items:
The products placed on the shelf based on user intervention, regardless of their score.
Items in promotion:
The module considers them (internally) as mandatory items.
Base (items with non-zero sale potential):
- Effective base:
Those products that should appear on the shelf according to the optimal design, while the capacity constraints are respected (i.e., they are in, if they fit in – their score determines their priority).
Ineffective base:
Those products that should not be on the shelf, according to the optimal design respecting the capacity constraints (whether they fit or not is determined by their score).
Unsalable items (items with zero sales potential):
Their score is zero. Such products can never make it on the optimal shelf.

The algorithm for calculating scores is based on the values computed for ABC analysis; its final value is, however, influenced by numerous parameters (see below), and it is the user who determines their weight depending on their business strategy. Also, similar stores affect the score; similar stores, then, are searched by comparable revenues for a given product category. The total final score is then determined as a ratio of the score from the branch with respect to the average scores of similar branches.
To compute the score, these are adjustable parameters:
- Number of similar stores.
- Similar stores’ impact.
- Weights of individual ABC methods (frequency of sales, revenue, quantity, profit).
For the functionality of the module, we need to provide just a single entry from the primary system: this entry defines capacity constraints on the shelf.
Supported constraints of the shelf:
- Number of products.
- Volume capacity.
- Weight.
- Financial limit of the warehouse.
Structure and organization of the module within STOCK¶
Administration¶
Access in the settings (STOCK) > Administration of shelves.

This administration manages and edit the settings of rules in Category Management, used for stores and shelves. Tabular display gives a quick overview and orientation in the settings (settings / exception is active | setting level | store has / does not have its own warehouse | how to calculate optimal layout on a shelf | possibility to remove unsalable items off the shelf). For more detailed information, click the icon Edit settings: it displays the form for input.
The basic setting of rules for a regular nightly recomputation is called a global setting – and it is always active. For this default, we can define exceptions at a level of stores or at a level of shelves; just use the button Add settings.
Details of the input form (which is identical to the report as well) are to be found below. The only difference is that the administration only manages (and edits) the settings affecting the nightly recomputation – not modeling of various scenarios.
Report¶
The report models and displays optimal scenarios of orders such that the shelves contain optimal stock. After clicking the button Display in the entry form, you can explore various settings options – without the nightly recomputation being affected. Once you find the optimal scenario (for a specific store or shelf) and thus you want to order it, you need to save the required setting into the administration as an exception. Alternatively, you can also save an exception directly from the report, by clicking on the Save button in the entry form. To avoid creating exceptions accidentally, the user must confirm the creation in a pop-up window again. (Note: Global settings cannot be saved from the report.)
Detail tab¶
A - Entry form
It is here to manage category management rules to be applied for shelves. There are four main sections – shelf selection, selection of a method for computing stock, settings for unsalable items and settings for calculating score. Each of the sections (except selecting a shelf) is preceded by a check-box “I do not want to use the global settings”. If not checked, the preset values from administration used in the nightly recomputation are used (regardless of the current display).

The section Shelf selection defines a group of shelves to be affected by the settings described below. There are three combinations of selection:
- Neither a store, nor a category is selected: a scenario for the global settings is modeled.
- A store is selected, but no category: a scenario for all shelves at the selected store is modeled.
- A store is selected and a category is selected: a scenario for this particular shelf at the particular store is modeled.
The section Stock on the shelf vs. at the store count as determines, whether the store has a storage space.
- The entire stock is on the shelf: no storage space available.
- Optimal inventory on the shelf: we rely on an unlimited storage at the store, where the goods are stored and employees replenish the shelf as needed, in accordance with the computation.
The section Optimal stock on the shelf count as adjusts the method of computing the quantity of pieces placed on a shelf. It is set separately for non-sporadic and sporadic items. If the computation of an optimal stock is selected for:
- Forecast or sales in the past, the following settings must also be set.
- Days: Number of days the designed stock should last on the shelf based on the expected average daily sales (i.e., how often is the shelf replenished).
- Months: Number of months for the forecast / history, from which the expected average daily sale is computed.
- Base stock: the whole base stock is to be placed on a shelf.
The section Unsalable items to be removed from the shelf defines the user’s access to unsalable items. If YES is selected, the system takes it that the space occupied now by these items is going to be freed – and, hence, the system can count with the space for new orders. If NO is selected, the system waits until all the items are sold out.
The section Settings for calculating a score
- The number of similar stores: determines how many stores affect the store’s score. Similar stores are determined by the size of their turnover. As an input, essentially any number can be entered: similar stores are chosen in sequence, from those closest to the present store (hence, with the smallest difference in absolute value of turnover). (Note: if your network only has 50 stores and number – say – 100 is entered, the computation takes all stores into account.)
- Effect of similar stores: it determines the ratio of an effect of an average score of the product in similar stores to the score at the selected store. 0% – the score is calculated exclusively from the given store; 100% – the score is computed only from similar stores.
- To each ABC methods (frequency of sales, revenue, quantity, profit), a weight for the computation can be set. Any value (as an integer) can be entered – in the computation, a ratio of the values is used.
B – Table of output data of an optimal shelf stock
The output table of the report provides detailed information on the stock, starting with a selection of a shelf to the level of individual products.
| ABC Group | Score | Financial potential – turnover / profit | Mandatory product | Promotion product | Estimated stock on a shelf | Estimated stock at storage space | Suggested stock based on availability | Optimal stock on a shelf | Ordering managed by Category management | Ordering disabled by a user |
A detailed explanation of the data displayed in columns is to be found in tooltip at the table’s header.
C – Chart of output data of an optimal shelf stock
The chart of output data interprets the data retrieved from the table listing, starting with an estimate of the current state of the shelf, through a design of current options after ordering, to an optimal state. Mandatory items are shown in blue, green is effective base, orange is ineffective base and in red, unsalable items. Full colors mark the products currently in stock, light colors, on the other hand, display products that are out of stock (notice that for the mandatory items, and for the effective base, it is a part of the portfolio that we want to be on the shelf).

Overview tab¶
On this tab, the user finds an overview of the basic information on shelves managed by the category management. You can compare an optimal condition of the shelf with the suggestion of a replenished shelf based on the current ordering possibilities. You can track information about financial potential, potential lost profit and of the shelves filling.
Calculation-administration module¶
The module first determines how many pieces of each product should be suggested for each shelf. The computation runs according to the setting in the administration. Based on the imported capacity of the shelf, the system determines the percentage each product on the shelf’s capacity occupies. Subsequently, it computes a score, it ranks products according to the score – and it starts to replenish a virtual empty shelf by the following rules:
- Computing an optimal shelf design:
- Fill all mandatory items (even if the capacity of the shelf is exceed).
- Add products based on their score (the higher score takes precedence), up to the shelf’s capacity. At this point, we know the ideal state of the shelf’s load (and we head towards it).
- Computation of a current shelf:
- Fill mandatory items.
- Add products currently in stock (depending on the settings, with / without unsalable items).
- Add products from the optimal design of the shelf (the higher score takes precedence). If we find that the product we want to add is already on the shelf (= is currently in stock), we mark it for ordering. We continue in this manner till the shelf’s capacity is full.
- When the capacity of the shelf is reached, we check whether the product (that is to be placed on the shelf) for the optimal design is in stock – if so, we mark it for ordering. Repeat, until you run out of all the products for the optimal shelf; the product will always be in stock.
- The output is a list of products that will fit on a shelf according to the criteria specified as the optimal fulfillment of the shelf (forecast, base stock).
- Ordering:
- We always order all mandatory items.
- Products labeled for ordering, are ordered in a standard way by STOCK.
- Other products will be ordered based only on customer orders.
Benefits in practice (a reference customer)¶
Extensions¶
[At this time, there are no extensions for the module.]

