Requirements for Cloud Computing (Part 1)

Requirements for Cloud Computing (Part 1)

Our experience demonstrates conclusively that providing example requirements to business analysts for use as a starting point for projects significantly improves the quality of requirement documents.  Analysts use the example requirements to get a fast start on projects, others use them for training less experienced analysts, and still others use them as a checklist to ensure they do not overlook key requirements.  Our customers tell us that the use of example requirements leads to faster and higher quality requirements. We include thousands of example requirements in our Enfocus Solutions Requirement Coach™ product organized by business process, industry, and technology.

Many clients have asked us for requirements for cloud computing. We are in the process of developing a full set of these requirements.  However, we thought this topic would also be a great subject for our blog.  This is the first of a series of articles that will discuss requirements for cloud computing. Before we get into defining requirements, let’s discuss what cloud computing is and discuss how it might impact your organization.

Cloud Computing

Introduction to Cloud Computing
You can hardly open any technology or business journal, website, or newspaper today without hearing something about cloud computing—what it is and how it will change IT and business. Cloud computing’s impact will continue to be felt for many years regardless of how it all comes together in the end.  Cloud computing is not a revolution but an evolution of existing enterprise computing architectures, dating back to the first instance of networked computing. The vast advances in virtualization in nearly every aspect of the data center and the continued growth of the internet have fueled the growth of cloud computing.

The cloud is an ecosystem of many components and not a point product or single vendor solution.  For enterprise organizations, cloud-computing requirements must include scalability, adaptability, extensibility, and manageability. In addition, the cloud must exhibit additional capabilities that address the best-in-class requirements of the enterprise—such as providing for security, real-time availability, and performance.
Cloud computing can be categorized into three areas:

  • IaaS – Infrastructure as a Service
  • PaaS – Platform as a Service
  • SaaS – Software as a Service

IaaS
Infrastructure as a Service (IAAS) is a cloud computing model based on the premise that the entire infrastructure (servers, storage, network) is deployed in an on-demand model. This almost always takes the form of a virtualized infrastructure and infrastructure services that enable the customer to deploy virtual machines that are managed through a console. Physical resources such as servers, storage, and network are maintained by the cloud provider while the infrastructure deployed on top of those components -databases, web servers, etc.-  is managed by the user.  IaaS users are almost always IT experts that are knowledgeable in the required infrastructure components. Major IaaS providers include:

  • Amazon Web Services
  • RackSpace
  • AT&T Synaptic Compute as a Service
  • Verizon Computing as a Service
  • Unisys Secure Cloud Solution
  • Sunguard Enterprise Cloud Service
  • HP Enterprise Cloud Services
  • IBM

PaaS
Platform as a Service (PaaS) is a cloud computing model in which an independent entity provides a specific development and deployment platform. PaaS offerings facilitate deployment of applications without the cost and complexity of buying and managing the underlying hardware and software and provisioning hosting capabilities.  PaaS provides all of the facilities required to support the complete life cycle of building and delivering web applications and services over the Internet.  Examples of PaaS offerings include:

  • Salesforce.com
  • Force.com
  • EngineYard – Rails Application Cloud
  • Google AppEngine
  • Microsoft – Windows Azure

SaaS
Software as a Service (SaaS) is a cloud computing model in which pre-built applications (such as CRM, SFA, word processing, spreadsheets, and HRM among others) are offered to customers via a web browser or other local interface such as a mobile device application.  Well known SaaS offerings are Google Apps and CRM from Salesforce.com.  Of course our product, the Enfocus Solutions Requirement Suite™ is also a SaaS offering.

In future articles, I will discuss how to get started with defining requirements for cloud computing and discuss such topics as defining business objectives for cloud computing and give examples of key cloud requirements in the areas of scalability, adaptability, extensibility, manageability, security, real-time availability, and performance.  We will also investigate the practical issues associated with transitions from legacy premises-based application to the cloud.

1 Comment

  1. I am a .net developer. Would like to learn Cloud computing . What do you advise me.

    Reply

Submit a Comment

Your email address will not be published. Required fields are marked *