Over the summer the enterprise IT blogosphere was swept up in a conversation around the concepts that many are calling Web-Oriented Architecture, or WOA. A different way to think about service-oriented architecture, WOA extolls a different but related set of technologies, in particular how to apply them in specific ways to connect our systems together into the solutions we need to take on our daily business challenges. WOA offers the exciting and fast-growth promise of the Web 2.0 world, while SOA has been seen as struggling and encountering low engagement in most organizations.
For those just joining the conversation, SOA is the most common set of top-level organizing principles and technologies that enterprises use to organize and connect their IT systems. However, SOA is increasingly in the firing line for less-than-stellar results and lack of business alignment. Few promising solutions for this have emerged lately, with the increasingly notable exception of WOA. WOA describes a compelling new focus that can address many existing SOA issues, but is sometimes at odds with traditional IT and business thinking.
Along with different technology emphasis, WOA offers a compelling new perspective on service uptake and consumption and offers potent ways of thinking about business models that can directly drive innovation and growth. Even better, we can now point to existing WOA success stories, albeit most of them in the online world. In short, SOA (of which WOA is a part) hasn't looked this interesting in years. But like most new ideas, it inevitably faces challenges from the old guard.
For its own part, far from being a boring, back-office story about plumbing and infrastructure, SOA has actually seen better results than most of the enterprise architecture models that came before it. However, these returns have been fairly lackluster compared to what most business were actually looking for and what SOA practitioners wanted and were actively trying to achieve, certainly when any measurements of the ROI were taken. My detailed WOA overview last April tells the story: The Burton Group ultimately concluded earlier this year that "that SOA is not working in most organizations" based on extensive conversations with clients.
I've covered this territory a number of times in the past, most notably with an in-depth exploration of What is WOA?, but the story remains the same: WOA is being driven by the widespread success that lightweight Web services -- and particularly their use in open APIs -- are having on the open Web. The broad lesson that has been dawning on the enterprise architecture world this year is that this is what's actually working in terms of what SOA has been trying to accomplish, but with a uniquely different approach.
Explore several WOA success stories and how they are driving SOA.
The tide seems to be turning in terms of the industry's perspective of WOA as well. Respected SOA expert David Linthicum recently asked "SOA out, WOA in?" and seemed to think it was, noting it will take a long time, like SOA did, to make inroads in the enterprise despite its widespread adoption on the Internet. ZDNet's own Joe McKendrick recently noted that "WOA wins hands-down over SOA in popularity contest" and Dave Rosenberg recently discussed WOA on CNET and took it as a forgone conclusion. And this is a key point: Many organizations I talk to are already using some WOA to some degree on the ground today, it's just not being promoted like traditional SOA is, thereby missing the benefit of the support, documentation, guidance, management, and infrastructure/tools support needed to fully flourish.
We have started to see traditional organizations begin to offer WOA-friendly services to the world at large. For example, the World Bank recently opened its Web API to developers using the increasingly popular Mashery service, which allows an organization to outsource their WOA. Of course, WOA can be used solely inside the firewall but some of the most interesting scenarios involve integration with business partners, on demand in a very agile, lightweight fashion.
And in the end, this is the challenge. The use of WOA on the technology side is only interesting if there is support for the business for the scenarios it encourages. You could convert all your Web services from SOAP or REST and be fully ready for the resulting stream of consumer and enterprise mashups, API customers, and hundreds of new business partners, but not if you've not redesigned your business a bit. This is also one key reason WOA isn't synonymous with REST. WOA is architecture, both technical and business, while REST is a style building WOA services. The implications of WOA also go beyond REST to include other Web-oriented scenarios such as widgets, browser-based interfaces, and so on.
WOA entails both technology and business change
Unfortunately, many businesses have not yet absorbed the lessons of the Web 2.0 era and still look at the Web simply as a way to deliver Web pages. This limited view and understanding of the Web's potential means that most organizations do not have it on the radar to link themselves together in the enterprise-wide and Web-wide ecosystems of creation and integration that WOA can enable. SOA has always been about connecting systems and people together and -- at long last -- we have a clear path to potentially wonderful outcomes in terms of unintended uses. This includes the ability to access business opportunities inside of time windows which would previously have been unattainable with our traditional, heavyweight SOA models. But only if we truly change the way we think about how to leverage the network.
One last thing, it's important to remember that no small system can sustain contact with a large system for very long without being fundamentally changed by it. This is what is happening with businesses (the small system, no matter how large) and the Web today (the big system.) The intrinsic nature of the Web is driving major changes in how we create network-based products and services and is inexorably turning us into Web-oriented businesses. Businesses that want to be successful on this network without understanding its fundamental nature and capabilities are only delaying the time it takes to reach the full potential the Web offers.
In this way, WOA often describes network business models (such as open Web APIs) that often seem very foreign to non-Internet businesses but are powerfully aligned with the way that the Web works. These models are almost certainly essential to be successful and flourish in the modern competitive landscape on our networks today. In this way, too many organizations will ignore adding a WOA aspect to their SOA work until it's too late and the ability to generate strong network effects in their industry is greatly reduced.
WOA is just one of a set of transformative new distribution models for network-based systems.
So how do organizations start down this route to investigate the WOA way of doing SOA and seeing if it works for them?
Like many aspects of Web 2.0, WOA is not complex or overly expensive, it's a way of thinking about interacting over the network and all the classic SOA principles still apply, which just create and expose them differently.
- Learn about WOA. Study the technology (HTTP, REST, syndication, open Web APIs, widgets, metadata documentation, Ajax, mashups, JSON, etc.), as well as the business and implementation side, including partner ecosystems, developer support sites, monetization, and chargebacks.
- Adapt WOA to your organization. Every organization will have a landscape of existing SOA approaches and technologies that WOA approaches will need to be added to. Furthermore, WOA does little good unless you're willing to use it for what it does well: Provide the fuel for RIA-powered portal applications, enterprise mashups, your public APIs, and so on. Begun working through how WOA security will work in your organization (inline or through HTTPS, for example) and other key starter issues that are (hopefully) already described in your SOA governance documents.
- Conduct a pilot. Validate the items in #2 with a small pilot. Select a mashup platform that works well for your organization and try it out. WOA enables SOA to be used in a much more agile, open, and effective manner, with the right tools involved but only in an environment that supports it all the way through the "stack" from browser, server, database, development tools, and management infrastructure.
What are your thoughts on WOA? Will this finally be where the rubber meets the road for many SOAs?