>Often I hear business and IT people say that Service Oriented Architecture (SOA) is the way ahead to achieve greater interoperability of systems, process integration, and business efficiency in the enterprise. Usually, this is quickly followed by discussion about rolling out the Enterprise Service Bus (ESB). However, very infrequently do I hear discussion about the necessary data architecture to achieve the vision of SOA.
Stephen Lahanas has an interesting article, “Enable SOA Transformation and Cross-Domain Data Fusion” in DM Review Magazine, January 2008 that addresses the importance of Data Management to SOA. (http://www.dmreview.com/issues/2007_43/10000444-1.html)
“While SOA has long considered universal description, discovery and integration (UDDI) as its primary discoverability mechanism, the reality is that nearly all integration with an SOA environment is based upon data exchange and will ultimately be demonstrated through data exploitation interfaces (agile BI). Once SOA architects fully realize the implications of this revelation, then agile data architecture will become the facilitating mechanism for cross-domain data fusion and enterprise integration.
Mr. Lahanas provides four fundamental elements for building an agile data architecture, as follows:
- Actionable enterprise architecture—“a tangible way to connect architecture layers (EA, segment and implementation) and perspectives (application, process, data). One of the main reasons that large integration projects fail is due to the inability to successfully map the various architectures within a meaningful combined picture. Every agile data architecture begins here.”
- Federated data orchestration—“allow data owners to collaboratively manage resources across domains based upon a shared set of rules rather than a shared single data model. This is an excellent example of a user-centric approach. One of the major shortcomings of massive data warehouse projects has been the lost connections between users and developers and resulting data integrity issues.
- Enterprise Master Data Management—“Metadata is not just a technical consideration; it can define productivity in our knowledge economy.”
- Agile Business Intelligence—“A new generation of BI capabilities is bringing user control to more sophisticated report generation tools with much more accurate results… Based upon user queries and activities, we gather metadata, optimize caches and determine cross-domain mapping strategies.”
Two ideas that I particularly like in Stephen’s article are:
- Linkage of SOA to Data Architecture—“Agile data architecture is a parallel and complementary design philosophy and methodology to SOA and agile application development. Both can be mapped together within the larger actionable enterprise architecture.”
- Focus on User-centricity—“User-centricity is the primary motivating force behind the development of all agile solutions. The user provides:
- Immediacy – the desire for near-term real-world capability.
- Relevance and context.
- Performance expectations.
- Direction, domain knowledge and the logic behind every solution.”
In developing SOA, we cannot forget the necessity of building a meaningful data architecture that facilitates the discovery and exchange of data via SOA and ESB. Further, all our architecture and IT solutions must be user-centric if they are to be relevant and effective to the enterprise’s end-users.