Cloud Computing: Demystifying IaaS, PaaS and SaaS
Commentary – Cloud Computing has the entire IT industry buzzing, with companies such as Microsoft, IBM, Amazon, Google, and others investing billions of dollars in this new form of computing in recognition of its potential to usher in a new era of responsiveness, effectiveness, and efficiency in IT service delivery. In fact, Gartner recently named Cloud Computing as the second most important technology focus area for IT users in 2010. But what is Cloud Computing exactly?
Generally, the way I like to think of the Cloud is as any Internet-accessible service that you could leverage as a business. These could include services around standard business processes such as CRM, ERP, Marketing Lead Generation, Office Productivity Suites, Product Lifecycle Management, and Supply Chain Management. But they can also extend to technical services for software development and infrastructure; this is where some of the more recent developments around Cloud Computing have occurred.
There has been explosive growth in the industry in data and processing requirements to support businesses. This has led to increased power consumption and the need to add data center capacity. The Cloud has provided an alternative to large capital investments required for data center expansion, infrastructure hardware and software purchases, and application software purchases.
You may be asking yourself, “How do I leverage the Web to extend my infrastructure to the Cloud? How can I use the Web as a platform to build software and products? How can I use the Cloud to run key business processes?”
To help understand the next level of detail around Cloud Computing, I like to segment the topic by the following categories:
• Infrastructure as a Service (IaaS) provides data center, infrastructure hardware and software resources over the Internet. IaaS can provide server, operating system, disk storage, database, and/or messaging resources. The highest- profile example is Amazon’s Elastic Compute Cloud (AWS), but IBM, VMware, HP and other traditional IT vendors are also offering services. IaaS has also introduced other usage and billing models around the concept of “Elastic Cloud” – using and paying for what you need at any given time.
• Platform as a Service (PaaS) provides infrastructure on which software developers can build new applications or extend existing applications without requiring the need to purchase development, QA, or production server infrastructure. Salesforce.com’s Force.com, Google’s App Engine, and Microsoft’s Azure are examples of PaaS. These Platform features enable companies to create custom applications, but also allow Independent Software Vendors and other third parties to create solutions for vertical niches.
•Software as a Service (SaaS) is the most mature, widely known, and widely used “flavor” of Cloud Computing. It can be defined as a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network, typically the Internet. Also known as “on demand” software, it is the most mature type of Cloud Computing because of its high flexibility, proven support services, enhanced scalability, reduced customer maintenance, and reduced cost due to their multi-tenet architectures. Examples include Salesforce.com, NetSuite, Google’s Gmail and SPSCommerce.net.
Drawing a distinction between PaaS, IaaS and SaaS is somewhat secondary, since all these approaches involve outsourcing the burden and personnel expense of managing and maintaining server hardware, network hardware, infrastructure software, and/ or application software. At a high level, they all attempt to solve the same business problem – provide function, scale, service, and business value with little or no capital expenditure. The lines also tend to blur as a particular Cloud offering gains success. Successful SaaS or IaaS offerings can easily extend their capabilities to become Platforms.
For CIOs or business executives considering Cloud Computing, or one of these “flavors” of Cloud Computing, my advice would be to follow the standard process you would for any business or technical investment.
• First, it’s important to start with a business case. Calculate the net financial impact that an investment or change is going to have to your business.
• When considering Cloud Computing, it is very important to consider your network bandwidth requirements, and understand how much data you will need to move across the network, as well as the network response requirements for the particular service.
• Security is another big factor, so you need to know your security requirements and how your internal capabilities compare to those of the Cloud provider.
• With any development or change, it is always good to look at things from a risk perspective. I’m a big fan of researching a solution, as well as running a pilot before making a larger commitment or investment.
• If the business service for which you’re looking to leverage the Cloud is mission critical production, be sure to look closely at the Cloud service provider, its organization, and its business sustainability. For example, are they profitable, are they growing, and do they have a strong balance sheet?
In terms of leveraging the Cloud for Supply Chain Management and EDI functions specifically, one of the first things a company should do is look at is the size of the providers overall network. A large network provides scale and quality that can be easily leveraged to provide faster and higher quality implementations. This scale also provides the same value when adding pre-wired connections to Trading Partners to accommodate business growth and change.
Make sure you look at the implementation process and organization for your Supply Chain service. Are they tried, true, and professional? Evaluate their service delivery model, their overall capacity, and their track record for getting businesses up and running on their service.
Finally, one of the most important things you should do is look at the ongoing service and support around the application. For example, most SaaS applications are sold under a subscription model, which is great for the customer because it means the provider has to provide ongoing value and support to you. The subscription is not just about access to a set of technology but just as importantly access to a set of people of people who provide customer support, change management, and overall business value every day, every week, every month.
As a Supply Chain Cloud customer, another item you should also examine is how well the provider benchmarks and scorecards themselves in meeting their customers’ service level agreements. Many Cloud providers do this at a global level, across their entire service, but it is equally or even more important to do benchmarking and scorecarding for individual customers. This enables you to determine if your Cloud provider is meeting your particular SLA objectives around items such as uptime, processing speeds, and responding to support inquiries. This is especially critical for mission-critical systems in insuring the Cloud provider is meeting its commitments to the requirements of your business.