IBM's SOA guru, Sandy Carter, has just published a great advocacy book on why and how and where businesses need SOA, covering a lot of the bases of business thinking.
Interestingly, she also devotes a chapter to Web 2.0 (wikis, mashups, collaboration). In fact, the title of the book, The New Language of Business: SOA & Web 2.0, elevates Web 2.0 from its single chapter to co-star status. Which is fine, since various Web 2.0 methodologies are increasingly facilitating SOA teamwork efforts. I get the feeling that the original title just had "SOA," but "Web 2.0" was added toward the end to reflect new shifts in IBM thinking.
Carter, in fact, attempts to connect the dots between SOA and Web 2.0 in the book, noting that the two methodologies are cut from the same cloth: Technically, protocols such as REST and AJAX -- seen as Web 2.0 standards -- are also enablers for SOA. Plus, both methodologies are about creating and capturing services:
"Web 2.0 drives the consumption of services. The key is to tie the flexibility of Web 2.0 to service-oriented principles of loose coupling, encapsulation, and reuse that are the heart and soul of SOA."
Carter adds that "it is imperative for business leaders today to ensure that they understand what Web 2.0 is and the advantages that SOA and Web 2.0 can bring to the table."
IBM may make its money off big-budget projects, but in this book, Carter clearly advocates a go-slow, incremental approach to SOA. And she makes the connection, through survey data, between the faster growth that companies with flexible IT infrastructures have experienced versus those with more rigid ITs. The only way to a flexible IT infrastructure, she says, is through SOA.
Carter also provides a top-10 list of "Don'ts" in SOA (which presumably can be applied to Web 2.0):
1) Don't expect maximum business without SOA.
2) Don't just "do technology."
3) Don't throw everything out.
4) Don't bite off too-big projects.
5) Don't forget to set expectations.
6) Don't expect to do SOA without a culture modification through governance.
7) Don't forget the right skills.
8) Don't expect flexibility without open standards.
9) Don't do SOA alone.
10) Don't forget the importance of the first project.