| By Kyle Gabhart | Article Rating: |
|
| February 23, 2009 04:45 PM EST | Reads: |
1,656 |
Recently I have been engaged in two Master Data Management (MDM) initiatives within the context of a larger Service Oriented Architecture (SOA) adoption plan. In both cases, the client found themselves at an impasse regarding how to resolve conflicts between the master data model and the data model required for one or more SOA artifacts (i.e. business process, service interface, etc.). Each client approached the problem from a different direction, but the conflict was essentially the same. Who wins and gets to run with their view of enterprise data? The MDM team or the SOA team? Alternately, the EA team might be wondering whether the MDM vision is compromised for the SOA vision or vice-versa.
Scenario 1: Client A has decided to build a canonical data model, independent of existing applications or business processes. The client follows a simple process:
- Build a Conceptual data model
- Identify Logical Sub-domains (Logical grouping of data)
- Construct Logical data model for this sub-domain
Now if a business process comes into picture (e.g. “pay claim to the provider”), this would involve accessing data from the Provider and Claims data domains. How can the client build the schema, and not break the relationship that is established in the logical canonical model? Alternately, how can the client connect this schema to the base canonical model? Either the master data model must be compromised for the sake of the service oriented view of the enterprise, or the service oriented view must be altered to align with the master data initiative.
Analysis: So the real problem here is that we have created a model in a vaccuum and we are now faced with a specific utilization of data that is potentially giving us new insight into how data is actually used within the business. There are a couple of perspectives here:
- We recognize this as an opportunity to modify the model and bring it in-line with real business usage.
- We dismiss it as a user/customer oddity that needs to be managed.
If we update the model based upon this new info there are risks that we have been skewed by a single process, but perhaps we recognize broader truths from the things this process brought to light. If we do not change the canonical model, then we either convince the customer to accept the ’standard’ model, or we put some data mapping in place so that the business process is able to engage services that are standardized in their respective data models. Regardless of the approach taken, service oriented design best practices would dictate that the business process only see a single data model. This could be a unique model derived from business use cases or the canonical model that was created previously. The origins are irrelevant, as long as the business process sees one model for data. Otherwise, the business process is no better than an Enterprise Application Integration (EAI) workflow and brings with it all of the complications around maintaining custom integration logic and juggling of disparate data models. This carries with it unacceptable maintenance costs, it is brittle, and prone to becoming outdated and unreliable.
Summary
The effective adoption of SOA requires a well-designed data model at the physical and logical levels. Many organizations even aim toward the development of a canonical domain model. The intersection between MDM and SOA is surfacing with increasing frequency and I expect this trend to continue for the next couple of years.
In this first post, I have explored one scenario regarding the conflict between an enterprise data model and a SOA-specific model. In a follow-up article, I will parse through an additional scenario from another client experience.
Published February 23, 2009 Reads 1,656
Copyright © 2009 Ulitzer, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Kyle Gabhart
Kyle Gabhart is a subject matter expert specializing in strategic planning and tactical delivery of enterprise technology solutions, blending EA, BPM, SOA, Cloud Computing, and other emerging technologies. Kyle currently serves as a director for Web Age Solutions, a premier provider of technology education and mentoring. Since 2001 he has contributed extensively to the IT community as an author, speaker, consultant, and open source contributor.
- Cloud Computing, SOA and Windows Azure
- Mark Hurd and Steve Mills
- Amazon’s Push for the Enterprise
- Let's Face It: PaaS Is Just SOA for Platforms Without the Baggage
- REST Security at JavaOne
- The Three-Minute Mile – Why Is My Project Team Killing Itself?
- Top Paid Tech Certifications, the One in Five That Fuel IT Professionals' Careers
- Cloud Ecosystem and How the Players fit in the End-to-End Solution for Enterprise Customers
- WS-I to Disappear into OASIS
- Epicor and Intermec Announce Expanded Strategic Alliance to Deliver Mobile Solutions for the Global Enterprise
- Dassault Systèmes Reports Second Quarter Results with Strong EPS Growth
- CloudFucius Corners: The Coin Operated Cloud
- Cloud Computing, SOA and Windows Azure
- Intel SOA Expressway: Delivering Runtime Governance Functions
- Mark Hurd and Steve Mills
- Amazon’s Push for the Enterprise
- Data Center Consolidation and Cloud Computing in Indonesia
- Let's Face It: PaaS Is Just SOA for Platforms Without the Baggage
- REST Security at JavaOne
- The Three-Minute Mile – Why Is My Project Team Killing Itself?
- Top Paid Tech Certifications, the One in Five That Fuel IT Professionals' Careers
- Cloud Ecosystem and How the Players fit in the End-to-End Solution for Enterprise Customers
- WS-I to Disappear into OASIS
- Epicor and Intermec Announce Expanded Strategic Alliance to Deliver Mobile Solutions for the Global Enterprise
- SOA Best Practices - Four Steps to Securing Your Web Services
- Katerina Muchachos, Kayikci and SOA World
- SOA Governance Best Practices – Architectural, Organizational, and SDLC Implications
- Service Versioning For SOA
- Ten Things to Think About When Building the Perfect SOA
- SOA Antipatterns
- Learning from SOA Mistakes
- Leveraging Your Host Systems with SOA Web Services
- SOA in the Cloud - Monitoring and Management for Reliability
- Understanding SOA Architectures and Models - Part 1
- 10 Principles of SOA
- Considering the SOA Reference Model

































Ulitzer content is offered under Creative Commons "Attribution Non-Commercial No Derivatives" License.
For any reuse or distribution, you must make clear to others the license terms of this work.
The best way to do this is with a link to this web page.
Any of the above conditions can be waived if you get written permission from Ulitzer, Inc., the copyright holder.
Nothing in this license impairs or restricts the author's moral rights.