Software as a service is well understood and, if the good folks at Gartner are to be believed, it's a $9 billion yearly business. That's not a huge number, but it shows that the concept is valid, and the smaller and newer the customer firm, the more SaaS makes sense. More mature organizations will likely have systems and processes in place that a SaaS application must displace, and therefore the range of questions that must be answered before deciding to go the SaaS route is larger for them. In my mind, there's no right answer when it comes to replacing in-house apps with SaaS, no more than there's a right answer to buying or leasing a car. You have to go through the exercise of evaluating your needs and understanding the risks associated with each option. (If someone says there is a right answer, you know who you're dealing with--think car salesman.)
Platform as a service is becoming well understood, thanks in great part to Apple. In the B2B world, perhaps the best known PaaS is Salesforce's Force.com. When you go there, you'll find a bunch of interesting applications, but the relationship between them isn't crystal clear. The business model for PaaS becomes much clearer (or at least it does to me) when you look at the iPhone. The Apple iPhone offers application developers access to motion sensors for games, GPS to locate itself in the world, a touch screen, 2G/3G and Wi-Fi wireless to connect to the Internet, and a great development environment for a portable device that even makes phone calls. Apple created the killer packaging for the platform, and developing for it will be strictly an iPhone game. The same is true for Force.com. If there's no high affinity with the things that Salesforce does, then using its platform for your applications doesn't make sense. That's the piece that was missing from interesting early PaaS offerings like Coghead. All it had was a development platform without the cool ancillary services and huge customer base. Unless as a business you've hitched your wagon to a large partner like Apple or Salesforce, PaaS probably isn't for you.
Infrastructure as a service is one of those things that sounds great but can quickly lose its attraction as you investigate. There's probably not a CFO in the country who hasn't drooled at the notion of dropping data centers off the company's cost portfolio. Data centers are one of those big fat expenditures that often lead to contempt for IT. The well-meaning CFO will probably do the math at some point and ask the CIO a question like, "If Rackspace can lease us a server for $10 per month, how is it that ours seem to be costing orders of magnitude more?" And while you can start the conversation by pointing out that you can buy a terabyte external drive for your laptop for under $100 but the same enterprise-quality terabyte from EMC costs thousands, there's obviously some sense to looking at using outsourced infrastructure for some applications. Again, in the general case, small and startup companies will have an easier time building their businesses around these systems than large enterprises.
The auto buy-or-lease analogy is instructive here, too. Zipcar brought a great twist to the equation by offering cars for $7 an hour. Suddenly, city dwellers who couldn't justify the cost and hassle of owning or leasing a car had an alternative. But the alternative makes sense only for a certain set of would-be drivers. The same is true of IaaS. If you have an application that runs for a long time and takes a lot of CPU cycles but operates on comparatively small data sets, then IaaS may be perfect for you. Need to run a bunch of Monte Carlo simulations once a month on data sets of a few gigabytes? Then step right up. But if you need to run the jobs much more frequently and if you need to operate on multiterabyte-size data sets--and thus, simply transmitting the data to the IaaS provider becomes an expensive proposition--then there's probably a better, more cost-effective solution. These sorts of hit-and-run computing applications certainly exist, but they aren't the norm.
If you simply want someone else to run your data warehouse or other application, you'll find yourself either looking at SaaS or a classic outsourcing agreement, where you specify SLAs and negotiate how your data will be treated while in the outsourcer's hands. While cloud computing subsumes all of these services, it's just as likely that cloud adherents are speaking more conceptually, endorsing the idea of decoupling applications and operating systems from the underlying hardware. Here our survey speaks loud and clear: IT professionals think of this as virtualization, and it's among their highest priorities. If you want to call it cloud, then have at it. But why would you? While it's possible to take advantage of external servers and storage systems without virtualization, it makes a lot more sense to have broken that application-to-hardware bond internally and then go thinking about using compatible external systems.