Welcome!

Bick Group

David Linthicum

Subscribe to David Linthicum: eMailAlertsEmail Alerts
Get David Linthicum via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: Cloud Computing, Virtualization Magazine

Cloud Computing: Article

Defining the Cloud Computing Framework

Refining the concept

As cloud computing emerges there is a lot of discussion about how to define cloud computing as a computing model. Maturity models have been published and debated, and providers clearly have a model for their own products.

In attempting to define this better to my clients, I came up with a "stack" of sorts, which I think makes logical sense, considering each component of cloud computing and how they interact. While clearly this could be much more complex, I don't think it needs to be. In essence, this is a model as to how one defines and refines the concept of cloud computing (see Figure 1).

While I'm sure many can debate the components, I see 10 major categories or patterns of cloud computing technology, including:

  • Storage-as-a-Service
  • Database-as-a-Service
  • Information-as-a-Service
  • Process-as-a-Service
  • Application-as-a-Service
  • Platform-as-a-Service
  • Integration-as-a-Service
  • Security-as-a-Service
  • Management/Governance-as-a-Service
  • Testing-as-a-Service

Although I could write very long articles on each, I'll define them at a high level here.

Storage-as-a-service, as you may expect, is the ability to leverage storage that physically exists remotely, but is logically a local storage resource to any application that requires storage. This is the most primitive component of cloud computing, and is a component or pattern that's leveraged by most of the other cloud computing components.

Storage-as-a-service providers include Amazon S3, Box.net, and Google Base.

Database-as-a-service provides the ability to leverage the services of a remotely hosted database, sharing it with other users, and having it logically function as if the database were local. Different models are offered by different providers, but the power is to leverage database technology that would typically cost thousands of dollars in hardware and software licenses.

Database-as-a-service providers include Amazon SimpleDB, Trackvia, and Microsoft SSDS.

Information-as-a-service refers to the ability to consume any type of information, remotely hosted, through a well-defined interface such as an API, for example, stock price information, address validation, or credit reporting. There are over a 1,000 sources of information that can be found these days, most of them listed in www.programmableweb.com

Process-as-a-service refers to a remote resource that's able to bind many resources together, either hosted within the same cloud computing resource or remote, to create business processes. These processes are typically easier to change than applications, and thus provide agility to those who leverage these process engines that are delivered on-demand.

Process-as-a-service providers include Appian Anywhere, Akemma, and Intensil.

Application-as-a-service, also known as software-as-a-service (SaaS), is any application delivered over the platform of the Web to an end user, typically leveraging the application through a browser. While many associate application-as-a-service with enterprise applications, such as Salesforce SFA, office automation applications are indeed applications-as-a-service as well, including Google Docs, Gmail, and Google Calender. This was really the first drive into modern cloud computing, but is based on the more traditional timesharing model from years past where many users shared one application and one computer.

Application-as-a-service providers include Salesforce, Netsuite, Oracle On Demand, and Google Apps.

Platform-as-a-service is a complete platform, including application development, interface development, database development, storage, and testing, delivered through a remotely hosted platform to subscribers. Based upon the traditional timesharing model, modern platform-as-service providers provide the ability to create enterprise-class applications for use locally or on-demand for a small subscription price or for free.

Platform-as-a-service providers include Bungee Labs Connect, Coghead, Google App Engine, Long.jump, Force.com, Etelos, Oracle SaaS, and Apprenda SaaSGrind.

Integration-as-a-service, something I helped create back in the late '90s, is the ability to deliver a complete integration stack from the cloud, including interfacing with applications, semantic mediation, flow control, and integration design. In essence, integration-as-a-service includes most of the features and functions found within traditional EAI technology, but delivered as a service.

Integration-as-a-service providers include Amazon SQS, OpSource Connect, Boomi, and Mule OnDemand.

Security-as-a-service, as you may have guessed, is the ability to deliver core security services remotely over the Internet. While typically the security services provided are rudimentary, more sophisticated services are becoming available such as identity management.

Security-as-a-service providers include Ping Identity.

Management/governance-as-a-service is any on-demand service that provides the ability to manage one or more cloud services, typically simple things such topology, resource utilization, virtualization, and uptime management. Governance systems are becoming available as well, such as the ability to enforce defined policies on data and services.

Management/governance-as-a-service providers include RightScale, rPath, Xen, and Elastra.

Testing-as-a-service is the ability to test local or cloud-delivered systems using testing software and services that are remotely hosted.  It should be noted that while a cloud service requires testing unto itself, testing-as-a-service systems have the ability to test other cloud applications, Web sites, and internal enterprise systems, and do not require a hardware or software footprint within the enterprise.

Testing-as-a-service providers include SOASTA.

More Stories By David Linthicum

Dave Linthicum is Sr. VP at Cloud Technology Partners, and an internationally known cloud computing and SOA expert. He is a sought-after consultant, speaker, and blogger. In his career, Dave has formed or enhanced many of the ideas behind modern distributed computing including EAI, B2B Application Integration, and SOA, approaches and technologies in wide use today. In addition, he is the Editor-in-Chief of SYS-CON's Virtualization Journal.

For the last 10 years, he has focused on the technology and strategies around cloud computing, including working with several cloud computing startups. His industry experience includes tenure as CTO and CEO of several successful software and cloud computing companies, and upper-level management positions in Fortune 500 companies. In addition, he was an associate professor of computer science for eight years, and continues to lecture at major technical colleges and universities, including University of Virginia and Arizona State University. He keynotes at many leading technology conferences, and has several well-read columns and blogs. Linthicum has authored 10 books, including the ground-breaking "Enterprise Application Integration" and "B2B Application Integration." You can reach him at david@bluemountainlabs.com. Or follow him on Twitter. Or view his profile on LinkedIn.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Michael Sheehan 01/15/09 06:36:00 PM EST

David,

Thanks for this. It's a good list but I was surprised that you left out Infrastructure-as-a-Service which is at the foundation level (where GoGrid and EC2 reside). Also, you might be interested in these two posts on "cloudcenters" vs. Infrastructure Web Services where we are trying to articulate the differences:
Post #1
Post #2
Would be interested in your read.
Thanks,
Michael Sheehan
Technology Evangelist for GoGrid