May 30, 2006
MDM, SOA and BPM
In the comments of my first entry (Hello World), Bill Rogers asks:
“In general, how would you explain the relationships (if any) between Master Data Management, Service Oriented Architectures and Business Process Management. To my mind these three "buzzcronyms" are linked; in that MDM can foster better SOA which in turn may enable better BPM. As such they should be considered a tripartite "whole" instead of individual initiatives and are in order of precedence in order for the success of that "whole" to be realized.
Would you agree or disagree?”
Well Bill, I’d say that in order to have a fruitful discussion on the topic, these terms need to be better defined, or rather, there needs to be more consensus on what their definitions are. I’ll try to stay within the well accepted boundaries of the terms MDM and BPM while giving my take on SOA in each context.
Most of the discussions around Master Data Management are based on a data-centric view of the enterprise. As such, the goals that are common in data-centric analysis, like normalization/removal of duplication, are scaled up. My personal view on MDM is that its data warehouses all over again, just marketed differently. After looking at the underlying messages of MDM, I’ve found overwhelming similarities with those present on data warehouse initiatives. That’s not to say that they’re the same, only that many of the DB-level practices seem to have been upgraded to enterprise guidance. Personally, I don’t see the relevance, so I’m not much of an advocate of MDM, regardless of SOA or BPM. (In which case I disagree with your above statement :) )
BPM is very interesting entirely on the business level even before we tie it to anything technical. I believe that enterprises can gain quite a lot of value, or at least reduced waste, by better understanding their business processes. Once these processes are understood and documented, then they can be mapped to the existing (and currently under development) IT landscape and a gap analysis can (and should) be performed.
But at the technical level, I think that the use of services as a unit of abstraction is extremely valuable for implementing systems that support the above business processes. However, that discussion is long enough to warrant its own post.
Posted by Udi Dahan at 05:59 PM Permalink
|