InfoQ

News

David Chappell: Introduction To Cloud Computing

Posted by Dilip Krishnan on Aug 20, 2008 11:00 PM

Community
Architecture,
SOA
Topics
Cloud Computing ,
SaaS
Tags
S+S ,
EC2

David Chappell published a white paper last week on Introduction to Cloud Platforms, with "the goal of categoriz[ing] and briefly describ[ing] those technologies as they’re seen by someone who creates enterprise applications. The paper was sponsored by Microsoft, but it’s not Microsoft-specific".

He categorizes cloud computing platforms into the following types :

  • Software as a service (SaaS): A SaaS application [which] runs entirely in the cloud [...] most well-known example of a SaaS application today is probably Salesforce.com.
  • Attached services: On-premise applications whose experience is enhanced by services in the cloud. A popular consumer example of this is Apple’s iTunes.
  • Cloud platforms: A cloud platform provides cloud-based services for creating applications. The direct users of a cloud platform are developers, not end users.

He states that most modern applications consist of the following parts ...

  • A foundation: This typically includes various support functions, such as standard libraries and storage, and a base operating system.
  • A group of infrastructure services: Applications frequently use basic services provided on other computers. It’s common to provide remote storage, for example, integration services, an identity service, and more.
  • A set of application services: As more and more applications become service-oriented, the functions they offer become accessible to new applications and end up being an application platform.

... and gives examples of real world cloud computing platforms Amazon's EC2 and Googles AppEngine goes on to map his definition of an application to the available services. Be sure to check out the original white paper.

A couple of clarifications by David Chappell Posted Aug 21, 2008 12:07 AM
Kudos to the Cloud Crowd for Re-Inventing the Wheel! by Bruce Arnold Posted Aug 22, 2008 7:13 AM
Re: Kudos to the Cloud Crowd for Re-Inventing the Wheel! by Paul Beckford Posted Aug 23, 2008 6:48 PM
  1. Back to top

    A couple of clarifications

    Aug 21, 2008 12:07 AM by David Chappell

    Just a couple of clarifications on your comments, Dilip: First, the paper actually calls out SaaS applications, attached services, and cloud platforms as three types of cloud computing, not three kinds of cloud platforms. Cloud platforms are one of these categories, the one the paper focuses on. Also, the paper's three-part model--foundation, infrastructure services, and application services--describes an application platform, not an application. It's what developers build applications on, whether on-premises or in the cloud. In any case, I appreciate you taking the time to write about the paper.

  2. One thing 30 years in the IT industry has taught me is that the more things change, the more they stay the same. Another is that the only memory we seem to access is short-term. A third is that techno-marketeers rely on that, so they can put labels like "revolutionary" and "innovative" on platforms, products and services that are mere re-inventions of the wheel ... and often poor copies at that. A good example is all the latest buzz about "Cloud Computing" in general and "SaaS" (software as a service) in particular: http://tinyurl.com/6let8x Both terms are bogus. The only true cloud computing takes place in aircraft. What they're actually referring to by "the cloud" is a large-scale and often remotely and/or centrally managed hardware platform. We have had those since the dawn of automated IT. IBM calls them "mainframes": http://tinyurl.com/5kdhcb The only innovation offered by today's cloud crowd is actually more of a speculation, i.e. that server farms can deliver the same solid performance as Big Iron. And even that's not original. Anyone remember Datapoint's ARCnet, or DEC's VAXclusters? Whatever happened to those guys, anyway...? And as for SaaS, selling the sizzle while keeping the steak is a marketing ploy most rightfully accredited to society's oldest profession. Its first application in IT was (and for many still is) known as the "service bureau". And I don't mean the contemporary service bureau (mis)conception labelled "Service 2.0" by a Wikipedia contributor whose historical perspective is apparently constrained to four years: http://tinyurl.com/5fpb8e Instead, I mean the computer service bureau industry that spawned ADAPSO (the Association of Data Processing Service Organizations) in 1960, and whose chronology comprises a notable part of the IEEE's "Annals of the History of Computing": http://tinyurl.com/5lvjdl So ... for any of you slide rule-toting, pocket-protected keypunch-card cowboys who may be just coming out of a fifty-year coma, let me give you a quick IT update: 1. "Mainframe" is now "Cloud" (with concomitant ethereal substance). 2. "Terminal" is now "Web Browser" (with much cooler games, and infinitely more distractions). 3. "Service Bureau" is now "Saas" (but app upgrades are just as painful, and custom mods equally elusive). 4. Most IT buzzwords boil down to techno-hyped BS (just as they always have). Bruce Arnold, Web Design Miami Florida

  3. +1

    I was beginning to think that I was the only one who noticed. Nicely put. I've been guilty of using such terminology too, but I agree such terms are vague and un-precise and even if the people that coined terms like 'cloud computing' are well meaning, such terminology quickly becomes the fodder for marketers who stretch it to mean what ever they want it to.

    I come from a telecoms background, and in comparison the Software Industry has a lot of growing up to do. We are maturing I think, but only very slowly. Alan Kay was right on several fronts when he said the software revolution hasn't happened yet:) Paul.

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.