Solving the SOA mystery
- Use SOA to attack the most problematic area Business is facing from IT implementation — Every organization has a few scenarios like Order Processing and implementing data as a service, that are ideal for SOA adoption. In such cases, organization realize the true value of SOA only when they see SOA based approach and technology is enabling them to ease out their core business pain points. Prioritization is a must in every SOA adoption journey.
- Adopt pragmatic approach for identifying Service — Classic SOA Approach (Top down, bottom up and meet in the middle) is the best approach. However, the investment, business time and type of program charter required to adopt this type of approach is always difficult to get. We may argue to say for SOA approach we would require business involvement, but in reality it is always difficult to get. This leaves us with implementation of service from IT’s view of business process. However this is not a bad start at all, but at the same time we should have a provision to come out with a view of how business processes are implemented within IT. This was a specific approach we had taken in one of our client where we applied a common event infrastructure with service based integration where we generated event from service invocation which were correlated and a business process view was shown to the business with possible bottlenecks. This enabled business teams to identify relevant avenues for process improvement.
- Build your SOA infrastructure incrementally — Non functional requirement drives SOA infrastructure and it is difficult to get all these upfront. This escalates the cost of SOA adoption without seeing the value. However the effort should be made to provide a SOA infrastructure based on the business criticality and end point application quality of service. Hence there is no point in making SOA infrastructure highly available and perform if the business criticality and application quality of service do not meet the standards.
- Manage SOA adoption through a COE — SOA based solution has lot of features in common and as an organization goes through the adoption journey, it is important to manage the cost of solution from day one. If we are not able to re-use the common services like error handling, logging, data referencing, exception handling, it would be difficult to sell the idea of re-use of business services. In addition the COE should own up the initial governance of the service on business behalf in the earlier phase of SOA adoption. Also COE plays an important role in provisioning of SOA infrastructure ensuring re-use at infrastructure level.
- Standards are good to have but not a must have feature for SOA adoption — Standards enables easier integration is a truth, however SOA adoption should be standard based is a miss understanding. Service is all about how one exposes business function of an application to be re-used or how to construct a new business service which can be used for wider range of requirements. This can be achieved by simple message based interaction with application using MQ or any other messaging platform which the application supports. The important aspect that should be key focus for service implementer on 'what' aspect of service rather than the 'how' aspect of the service. Most of the SOA platform provider would have capability to address the how aspect but it is the onus of the implementer to identify the what aspect.
End to the day, it is good to have a service portfolio and plan out service rollout. Since business is eager to see the value added, adding business value must take the center stage during SOA adoption. I welcome your opinion on the findings above.


