Once upon a time, all IT systems were located on-premises, in the data center. When project teams planned procurements, they generally used a build-or-buy analysis to determine whether to develop the application with internal resources, or license the software from some vendor. More recently, a third alternative has surfaced: leasing an off-premises solution in the form of some service accessed over the internet. Known as “Cloud Computing,” off-premises solutions present some interesting wrinkles for project managers charged with selecting and implementing them.
Cloud computing offerings can be broadly classed into three layers:
- Infrastructure as a service (IaaS), in which servers and the supporting communication, recovery, and security infrastructure are provided, so the customer doesn’t need to own a data center.
- Platform as a service (PaaS), in which the vendor expands on the IaaS concept to offer an entire computing platform, such as an Oracle cluster, or a solution stack, such as LAMP (Linux, Apache, MySQL, and PHP), so the customer only has to provide and manage the application.
- Software as a service (SaaS), in which the vendor provides access to a commercially available application, without customer-specific alterations.
In all cases, pricing is on a “utility” basis, meaning that charges are based on usage, rather than the cost of the underlying hardware and software. This is possible because of the multi-tenant nature of cloud computing – each customer may be sharing their resources with other customers, securely partitioned into their own logical area. The type of “metering” depends on the layer; for example, SaaS offerings are commonly priced on a per-user per-month basis, while PaaS offerings may be based on monthly data traffic, storage requirements, quality of service (QoS), or some combination.
The main attractions of cloud computing lie with the ability it affords customers to quickly implement and re-scale, and the ability to transfer risks and responsibilities associated with availability, security, and maintenance to the vendor. For many organizations, SaaS affords the opportunity to avoid involving their IT operations in the support of non-core business applications, or those applications with only a few users. It also allows the business to shift IT costs from the capital budget to the operating budget, chargeable directly to the using department. Perhaps most important, it reduces access requirements to a simple internet connection.
As IT project managers, we need to understand the ramifications and possible uses of cloud computing for our projects. Many organizations are using IaaS and PaaS offerings for proof of concept, software development, and pilot projects. Many geographically distributed organizations are using PaaS to simplify roll-out of strategic applications. And many more are using SaaS to get a relatively low-cost, good-enough solution that in some cases completely replaces well-established but resource-intensive heritage applications. The question for the IT project manager is: how do we get from here to there?
Next week, I’ll write about replacing heritage applications with SaaS. See you then!