Chapter 9
Finally, Let's Move to the Cloud
In our role as architecture iconoclast, when we see a growing hype bubble, we love being the ones to pop it. We relished dispelling the confusion over the SOA is dead meme, and now it's time to let a little air out of the latest gas bag: Cloud Computing.
Don't get us wrong—Cloud Computing is essential to the Agile Architecture Revolution, but that doesn't mitigate the fact that the hype around this trend is still ahead of the reality. So, let's begin with the reality. What is Cloud Computing, anyway?
The most widely adopted definition of Cloud Computing is the one the National Institute for Standards and Technology (NIST), an agency of the U.S. Department of Commerce, put together. NIST's formal definition of Cloud Computing is already well known—a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. Note that the word resource in the previous definition is different from—but often related to—a RESTful (Representational State Transfer) resource. Similarly, the word service is different from—but likewise often related to—the word Service in the SOA context.
NIST also hammered out now-commonly held definitions of four basic Cloud deployment models, three Cloud service models, as well as essential and ...