Three Tests for the Cloud's Future
We couldn't help but notice how fast Cloud Computing has gone to the top of the hype cycle over the last month. You could say the Cloud is "the internet" in general and it has been there all along, and in fact, it may have been referenced 10 or more years ago. This time it is new and improved, and it is really getting attention as a philosophy that is broader than SOA - you can't click twice in your IT news feed without sniffing this version of the Cloud.
Alas, this is probably the time that the big SaaS and internet platform providers like eBay and Amazon, Google and Salesforce, really come of age. Joe McKendrick recently put out some good coverage on this on his FastForward blog, "Cloud Computing: Uh Oh, Now It's Getting Serious".
To us, this is not a mind-blowing concept -- it is a natural move for services, and applications to "live" in the cloud. However, there are 3 tests that Cloud Computing will need to overcome if it is indeed going to become the air we breathe:
To us, this is not a mind-blowing concept -- it is a natural move for services, and applications to "live" in the cloud. However, there are 3 tests that Cloud Computing will need to overcome if it is indeed going to become the air we breathe:
1. There is no "free beer" for the consumption of the Cloud.
Just like we saw a few years ago in SOA, there a perception that Cloud resources will be freely available for use in designing and building your architectures. But that is not a sustainable model. And no, it's not going to be supported by advertising (on your iPhone for Facebook, etc.). If someone is offering an application that we rely on, they will need to ensure that they cover those support costs and that the consumers are using the applications in ways that can be supported without unduly impacting other users of the cloud. Strong Validation of new offering and intended uses puts responsibility for reliability on both the producer and consumer of Cloud resources. If there is healthy competition in the Cloud Computing market, the most reliable applications will win the most subscription dollars or usage fees.
2. There is still dependency, in fact, dependency may increase.
So if you are relying on the Cloud to provide data, transactions and other services, how can you test and validate your own business workflows and continue to evolve, if the Cloud may either not be available or ready to take your team's test and development transactions? Lack of ability to validate your own business applications against Cloud resources creates a huge bottleneck to productivity and agility. This is where behavioural Virtualization of the Cloud becomes of primary importance. If you could capture and simulate your expected interactions with the Cloud, that would eliminate a lot of the dependency and bring back the agility you expected.
3. Fad resistance. (Uh, what were we talking about again?)
When the Cloud hype dissipates, how will this IT approach be driven by business, and not by the "coolness" of the technology? The world's leading companies will be taking more cautious wing-flaps into the Cloud - after all, they are still working on integrating and consolidating their most critical live applications for end customers. Vendors will continue to attempt to assert dominance over the definition of Cloud Computing - you might call it a shared Grid for a variety of apps, or a suite of apps running as a SaaS on a hosted provider's servers. Interoperability definitions and standards will be in flux. Nobody wants to be left behind when the definition and practise continues to change, and it certainly will continue to evolve.
We have been asked about this a lot lately, in terms of how to test, validate and virtualise Cloud Computing environments. And what we've found is that most of the same concepts that we saw in SOA apply to the Cloud - if you are going to rely on these services and apps for business, the risks have to be mitigated with continuous testing, and you need to isolate your own teams from dependency on the Cloud by virtualizing those behaviours. In this way, you can reap the benefits of ubiquitous availability of Cloud resources (services and data) as a platform for your apps, while still being able to productively design, test and develop (and keep working) when the cloud isn't available.
Anyway, this is just an initial take on the topic. We will be there at SYS-CON's first "cloud computing expo" in San Jose in November, and talking much more about how cutting edge companies are making the cloud work for the business in the future.
0 Comments