Monday, December 15, 2008

The Information Perspective of SOA Design

Seen this post on InfoQ. I like to see that most people agree on the need to reintroduce the data aspect into SOA. You should read the full article from IBM, but they basically insist on 3 points:
  • Define data semantics.
  • Canonical modeling.
  • Data quality.

The 2 first points are at the heart of any Data Services Platform.

Defining Data Semantics is very important and should be done with extended metadata. The richer the metadata are, the further we can decouple data sources form data consumers. And this is a strong requirement if you want to be more "policy-driven" and less hard-coded in your data access strategies.

Canonical modeling is sometimes seen as a burden by database purists. However, it is required as soon as you need to federate heterogeneous data sources, that is the common case in SOA. On top of that, canonical models offer a more business-friendly view of data. The question remain about the scope of canonical modeling. Very large business models, at the enterprise level, are known to be very difficult to design and to maintain. DSP must offer a way to select the best granularity for canonical models. One model for all applications is a myth (at least today), but conversely, one model per application does not allow reaching the promises of reuse of SOA. On this aspect it is also interesting to track what vertical standardization efforts (SID, HL7, Acord, SWIFT, etc.) could bring on the table. We now see users starting to use the Telco SID model outside of the Telco market, for instance (from a 40,000 ft perspective, a customer is a customer).

The third one, is a market by itself (MDM) but should also be accessible from within a Data Services Platform. Relationhips between MDM and DSP technologies are multiple. DSP can be used as a synchronization layer for MDM products. DSP can support reference data, as a new kind of data sources, capturing their specific meaning (reference data can be a link to the real data, of maintain a link with it). DSP could use data cleaning services to improve data quality. These are just examples.

All in all, this is all going in the right direction.

No comments:

Post a Comment