The Retail
Mix & Match Module (RM3) Engine is a promotion rule engine that is
specialized in processing promotions. A
promotion can be buy one get one or get 10% discount. To avoid coding these
promotions direct in the POS/register system or Webshop, the RM3 is invented. Besides
the flexibility the RM3 Engine also very fast in processing promotions. RM3
Engine can be used as java API or as a servlet. The RM3 Engine servlet can run
on nearly any application server that is based on java.
To proof
that the RM3 Engine could also run on a POS system, that is build on C
technology a Proof of Concept is executed.
Proof Of
Concept starting point:
- Connect
with a C program to the RM3 Engine
- A
minimum of 2000 promotions should be active
- A
minimum of 100.000 items should be part of the promotions
- Discount
results should be displayed per invoice line.
After a few
days, we had the Proof of concept ready. The result was a C program that
connected to the RM3 Engine and executed the promotion processing. The results
were amazing for the performance. Calculating the promotions for an invoice
with about 20 invoice lines took less than 100 milliseconds.
The
following steps were executed by the C program:
- starts
a JVM instance,
- Create
RM3 Engine instance.
- Loading
2000 promotions, which were based on 100.000 items.
- Validate
promotions
- Push
the invoice header information to the RM3 Engine
- Push
the invoice line information to the RM3 Engine
- After
each invoice line the RM3 Engine was started to calculate the promotions
- At
total
- Start
the RM3 Engine again for final calculation
- Print
invoice including discount information on invoice line level.