Reputation: 17295
We have a in-house tool that manages email subscriptions for customers of a website - basically a very simple email CRM tool.
These customers can be in different states - e.g. newly joined, never clicked on an email link, VIP customers, not subscribed etc.
Currently, we use a number of ad-hoc SQL queries and manual entry to manage the various groups.
I'm new to the program, and was thinking of using a finite state machine to manage the transitions between the different groups.
So we'd use different events (e.g. customers buying a product, or unsubscribing from a list, or some kind of timer expiring) to do the transitions between states.
I was just curious why this approach doesn't seem to be mentioned more in CRM tools or literature, or in other tools (MailChimp, ExactTarget etc.)
The only mention I was able to find was in this article from back in 2007:
I'm guessing there's some glaring issue with using state machines to manage CRM? Or are there any other issues you can see with this approach?
Upvotes: 2
Views: 277
Reputation: 2989
I walked this path last winter, it works well. You need to mix in a bit of Kripke structures to make it work. I published my results in paper called "State Machine Abstraction Layer" on EurAsia-ICT 2014 conference. I also have working open-source implementation, which I plan to release in next few months.
Upvotes: 1