Building a rewards DSL
The old adage that 80 percent of business comes from your existing customers while 20 percent comes from new customers is as true today as it ever was. Every business, at some point in time, considers offering incentives to its customers in order to increase sales. Rewards can take the form of everything from the selective discounting of end-of-line items, through buy-one-get-one-free promotions, to customer loyalty points schemes.
Marketers constantly devise new ways to promote products and services to customers, but often the problem is that these promotions can be difficult to manage when they need to be implemented in the various backend systems. Configuring a reward could involve applying cross-cutting logic across several systems. Developing and deploying a promotion can take weeks or months to complete, while the marketing department wants to be able to respond to the conditions in the market today.
In this next example, we will take an imaginary broadband service...