One of the cloud-related items people ask me about is how or why they would want to go outside the enterprise. Besides the obvious points around scale and cost, the reasons are variable based on your existing infrastructure as well as your business processes.
Without getting into a semantics discussion, I divide the cloud into two buckets:
1. Consumption of Internet-based applications: e.g. Gmail or Salesforce.com
2. Consumption of Internet-based computing resources: e.g. Amazon EC2 or Google App Engine
Somewhere within these two buckets are a great many other things such as PaaS (platform as a service), virtualization, and all manners of management, but I am fairly confident that those two major sectors make sense.
The challenge at the moment is that this is a very nascent trend and the media tend to lump the whole Internet, or at least any application that can run in a browser into "the cloud."
To the extent that you are already using hosting services in conjunction with your enterprise data center, the cloud can be very helpful in augmenting for scale and redundancy. However, I don't see a reason why you would forcibly move applications out to a hosted infrastructure that you wouldn't already be running outside of your enterprise.
Joe Weinman, strategic solutions sales VP for AT&T Global Business Services outlined five questions you should ask yourself regarding cloud consumption:
1. Is demand constant?
2. Is growth predictable?
3. Can demand be shaped?
4. Where are the users?
5. Is the application interactive?
The answers to these five questions along with the big question of whether you need to "own" the infrastructure should help decision making.
In the SOA (service-oriented architecture) context, I often make the statement that the cloud is just another endpoint or node in your environment. That's the end result that service orientation and abstraction suggests, but the reality may be entirely different. Upfront planning will help you decide how you move toward your future-state architecture.