Ok I’m probably a bit crazy but despite all the angst, minutia and roadblocks I really enjoy the work in getting the most out of data. And while a lot of focus is currently toward analytics implementing Master Data Management (MDM) to improve operational systems is a very useful first step. This yields near term benefits for days to day operations AND improves downstream analytics.
In fact I enjoy this enough that I decided to write a three article series on Operational MDM. In each article I will discuss a key architectural concepts that make implementations more successful. They are:
- Categorizing systems as consumers, creators and managers of data entities
- Understand how each should contribute to the mastered entity
- Determine at what level consumers should integrate with the MDM system
Background
A very simplified example, if you buy something in a store that has a loyalty program you walk up to a cash register hand someone something to buy and start a wonderful set off processes, They need to figure out who you are for the payment system, and for the loyalty system. The inventory control system wants to know the product as does the loyalty system (to figure out offered for you in the future). All of these systems are maintaining transactional information and most have independent ways for they customer sand product information to be managed.
Each of these systems provides a vital business function and is likely doing it just fine today. But often adding new functionality or understanding all the transactions associated with an entity across these systems is tedious and rife with errors. This is where Operational MDM helps. And it needs to provide the ability to ensure each system’s versions of an entity can be harmonized while being flexible enough not to minimize disruption to those systems. And oh by the way need to allow that other legacy system from next month’s merger to be on-boarded…
The first step to doing this is look at all the systems that touch the master data and determine what they do with it. The main behaviors are
- Consumers – Systems that need to understand a entity (e.g. customer, product, …) exists to identify the entity and capture transactional information about that entity
- Managers – Systems that allow updating of the information about an entity
- Creators – Systems that collect information about an entity that is currently unknown and then create the entity so that future transactions can be created
These are not mutually exclusive, and for example it is pretty common that a system that creates an entity also manages and consumes them. Also capture the behaviors a system has today and consider what they should be after implementing MDM. Often as part of designing and building an Operational MDM system it is desirable to start moving systems that create, manage and consume entity data to primarily being consumers.
For Managers and Creators of entities it is also important to note what specific types or sub types of entities they operate on and what process step makes them do so. This becomes critical information when trying to improve the workflow and improve operational effectiveness. By clearly categorizing the integrated systems by their interaction with master data you will be prepared to implement best practice integration decisions on how they will find and use entity data from you MDM implementation.
In the next posting I will focus on how each of these type of systems need to contribute to the MDM.