If you think good architecture is expensive, try bad architecture.
—Brian Foote and Joseph Yoder
A service level agreement (SLA) is an agreement between the cloud service provider (CSP) and the cloud service consumer (CSC) that sets the expectation of the level of service that the CSP promises to provide to the CSC. SLAs are critical for cloud-based services because the CSPs take on responsibilities on behalf of the consumer. Consumers need assurance that the CSP will provide services that are reliable, secure, scalable, and available. There are two sides to this coin when it comes to SLAs. On one side, a company building cloud services on top of an Infrastructure as a Service (IaaS) or Platform as a Service (PaaS) provider has to consider the SLAs of its CSPs. The other side of the coin is the company needs to establish SLAs that can satisfy the needs of its customer base. This chapter reviews steps for defining SLAs.
Factors That Impact SLAs
SLAs in the cloud can be rather complex, especially when multiple CSPs are involved in the makeup of a cloud service. It is not uncommon that a company builds a solution that is made up of cloud services of each cloud service model. For example, our fictitious start-up, Acme eAuctions (AEA), uses an IaaS CSP to provide the infrastructure layer, a PaaS provider to provide the application stack layer, and a collection of Software as a Service (SaaS) solutions and third-party APIs for various core utility functions. ...