I give up.
After fighting a rearguard action against the term "private cloud," I accept its inevitability.
It's not that I ever disagreed with the premise that many (even most) enterprises would want to keep significant swaths of their computing infrastructure within their firewalls. And it wasn't that I thought IT departments would eschew techniques and computing models from the cloud for their internal applications.
Rather, it was simply that the grand vision of cloud computing as the electric power grid for a new age specifically excludes everyone continuing to run their own data centers.
Put another way, this vision is about economics, not technology. Sure, it is made possible by things like distributed computing architectures and fast networks. But, as electricity just happens to be the form of energy that can be practically delivered over a power grid, so too are the tools of cloud computing merely the means to let multi-tenant providers deliver software services at massive scale.
There are certainly interesting economics associated with public clouds for SMBs and for larger organizations that need temporary capacity for specific projects. But cloud computing is not solely about Amazon, Google, and Microsoft. Or even mostly. There is no "Big Switch."
Therefore, while it's probably more accurate to call it private cloud-style computing or something along those lines, that's unbearably awkward, so we might as well just go with "private cloud."
So does that mean that all enterprise IT is, or will become, some sort of internal cloud?
Here I draw the line. Composing black-letter rules for what is and isn't cloud computing within an organization isn't productive. But cloud computing at least tends toward a number of properties and characteristics. At least some of these have to be present to greater or lesser degree if calling something a "cloud" is to have any meaning at all.
Dynamic IT infrastructure. To a lot of people, this means server virtualization (that is, a hypervisor) in concert with orchestration software that can allocate resources to workloads in real-time in response to established policies. That's fine as far as it goes, although I'd argue that high-performance computing and Web 2.0 services can benefit from analogous but different approaches to dynamism and that such infrastructures are legitimately clouds as well.
Services orientation. Cloud computing is Service-Oriented Architecture 2.0, in a sense, albeit an SOA that's more loosely coupled and more "Webby" in nature than the original enterprise application-flavored SOA. Essentially SOA means that an "application" is actually an assembly of autonomous services. This is a good fit with dynamic infrastructures because these services can easily scale independently from each other in a way that would be difficult if they were hard-wired.
Network-centricity. Even absent cloud computing, there's already been a significant shift toward applications that are delivered to users in a more device- and location-independent way. In practice this often means through a browser, although other types of relatively lightweight clients (such as Rich Internet Applications) are common as well. This sort of delivery even more strongly defines cloud applications, often combined with self-service provisioning through some sort of portal. Network-centricity has other implications as well -- such as a security model that doesn't depend on locked-down endpoint devices.
Other characteristics include metering that enables chargeback and usage-based billing and interoperability in various forms.
Ultimately, cloud computing is not a checklist of very specific things so much as a general approach for the next wave of computing. And a lot of enterprise IT shops are genuinely interested in the idea of cloud computing -- even if they're not about to move important applications to Amazon Web Services.
— Gordon Haff, Senior Analyst at Illuminata Inc. on grids/supercomputing