There's nothing obvious about how to successfully implement service-oriented architecture (SOA) in a way There's nothing obvious about how to successfully implement service-oriented architecture (SOA) in a way that will win business converts. Quite often, business decision-makers simply don't understand what it is all about in the early days. You really can't blame them either. How do SOAP or WSDL or UDDI connect to ROI? What does it have to do with PROFIT and REVENUE? Tough conversation for an IT guy.
But SOA guru David Chappell has some useful advice. Think bottom-up (at least initially): "The IT organization builds a service-oriented application solely because doing so makes sense for them. The architects and developers who create this app know that it will be accessed by diverse clients or other applications, and so making it service-oriented from the start will make their lives easier. The IT organization then builds another service-oriented app, and so on. Whenever required, an existing application is wrapped with services to let it participate in this new world. Creating a service-oriented organization in this fashion is inelegant, certainly, even ugly. But it's also the only viable approach in a majority of cases, and it's what I see people doing most of the time.
Soon problems will emerge: "managing the services you're creating, securing them in a consistent way, and more. Get further down this path, and the advantages of the top-down approach will become clear. You'll hunger for a broader view of your organization and its business processes. Given this, organizations start bottom-up, then attempt to take some kind of broader view once they've gotten part way down this path…If IT organizations had more credibility with business people, the top-down option would be more feasible. Given the reality in most companies, though, the bottom-up approach, followed later by some kind of broader perspective, looks like the path that most organizations will take."