"I’m really surprised when people say they’re not doing SOA now, they’re doing 'cloud.' Statements like that really concern me. Because it reflects a lack of understanding that these are not in any way competing or alternative approaches to building and evolving IT enterprises. It's the opposite."
Those are the cautionary words of Thomas Erl, co-author of the just-released book, Cloud Computing: Concepts, Technology & Architecture, who points out that a lot of the work that took place behind creating and building service oriented architecture is now serving to better plan and deploy cloud computing-enabled systems. I recently spoke with Thomas, who is also CEO of Arcitura Education, an SOA an cloud certification and training firm, about the evolving cloud architecture space, as well as his latest book.
While the latest Cloud Computing book doesn't mention SOA per se, the best practices detailed in the work are built on years of research and applications of service-oriented principles. Thomas, who documented and published hundreds of service oriented architecture patterns to the SOApatterns.org site and a complementary book, has also been leading a similar effort for cloud patterns. "The cloud computing design patterns catalog now has about 40 to 45 patterns that have been documented," he says. "That all originated from research that was carried out for the cloud architect certification program that we did with Cloud School (offered through Arictura), then was published at cloudpatterns.org, right alongside what we did with SOApatterns.org. So its following a similar path. The SOA design patterns emerged out fon the SOA architect program, the cloud computing design patterns emerged as a cloud architect program." Eventually, Thomas hopes to have about 80 patterns completed, as well as a follow-up book.
The current cloud computing book, co-authored with Zaigham Mahmood and Ricardo Puttini, points to both the opportunities and challenges cloud computing presents both to IT and business leaders. As the authors note early on in the book:
"By leveraging cloud environments to make IT resources highly available and reliable, organizations are able to increase quality-of-service guarantees to customers and further reduce or avoid potential loss of business resulting from unanticipated runtime failures....' However, "cloud environments can introduce distinct security challenges, some of which pertain to overlapping trust boundaries imposed by a cloud provider sharing IT resources with multiple cloud consumers."
Building on SOA patterns, cloud patterns "add a whole layer of depth to the patterns catalog that we did not explore with the SOA catalog," Thomas says. "Because the SOA catalog is more about applying and establishing a paradigm, whereas the cloud computing design pattern catalog is more about establishing and applying technology independent of paradigm."
The strategic goals associated with SOA are "dependent upon successful sharing of logic, normalizing of logic, streamlining the IT enterprise, and maximizing the potential to utilize that for roi and responsiveness and agility purposes," Thomas continues. "There’s never been a greater potential to realize that than there is now with cloud-based resources that can provide dynamic and extremely high levels of scalability. The elasticity characteristic of cloud provides the ability to put shared service out there that have almost unlimited reuse potential. And if you marry the two correctly, you can achieve the very same original strategic goals of SOA to a greater extent than ever before by using cloud-based technology."
Again, while the Cloud Computing book focuses on cloud computing and doesn't discuss SOA, the evolution from one to the other is clear, Thomas adds. "Having written about SOA, and now having written ablut cloud computing, those connection points just became so clear to me, as it is I’m sure to many who understand those areas. I think it's very much worth taking the time to understand SOA, especially with organizations looking to make larger investments in cloud environments.
"If you understand SOA enough from a strategic perspective, and a technical perspective, you’ll be able to connect those dots on your own just by understanding cloud computing from that abstract perspective. SOA is naturally a vendor-neutral architectural model. By minimizing dependencies to the technology to the cloud environment, you really give the organization the best possible chance to not only get a return on investment to increase the organizational agility with what they build, but also to maximize the longevity of their investments. That’s where SOA gives you that very clear and direct guidance."