According to my personal experience in implementing SOA in IBM's information landscape, I have come to believe that a hybrid architecture style is needed. This hybrid architecture style brings together principles from SOA, Enterprise Information Architecture, and Event-driven architecture. Below is the value that each of them brings to the table.
The enterprise information architecture (EIA) defines trusted sources of information, metadata, business data standards, data quality, information integration and information aggregation techniques for the enterprise. As part of the enterprise information architecture, an enterprise needs to focus on:
- Enterprise subject areas to define data domains that are important to the enterprise
- Process and technical metadata
- Enterprise information model to graphically show how subject areas are related to each other and how they support business processes
The SOA provides an effective foundation to integrate data with application and process by creating loosely coupled components. The SOA enables the delivery of information as a service by providing one-to-one communication between system components, consumer-based triggers, synchronous operations, and standard specification for information exchange.
The event-driven architecture provides a foundation for establishment of asynchronous operations between data consumers and providers. The event-base triggers such as publication/subscription is used to establish many-to-many communications between system components.
I call this hybrid architecture style Enterprise SOA-based Information Architecture.
Without integration with EIA, application of SOA can potentially create redundant and inconsistent information services. Then, in addition to dealing with redundant, overlapping, and inconsistent data sources, we need to deal with redundant, overlapping, and inconsistent data services too. To avoid this problem, we should consider using Enterprise SOA-based Information Architecture. This also means that we need to integrate SOA governance with the data governance and extend the role of data stewards in this journey.
This is for now to get you thinking about this important topic. I will write more later.