A service-level agreement is an agreement between two or more parties, where one is the customer and the others are service providers. This can be a legally binding formal or an informal "contract" (for example, internal department relationships). The agreement may involve separate organizations or different teams within one organization. Contracts between the service provider and other third parties are often (incorrectly) called SLAs – because the level of service has been set by the (principal) customer, there can be no "agreement" between third parties; these agreements are simply "contracts." Operational-level agreements or OLAs, however, may be used by internal groups to support SLAs. If some aspect of service has not been agreed upon with the customer, it is not an "SLA".
SLAs commonly include many components, from a definition of services to the termination of agreement.[2] To ensure that SLAs are consistently met, these agreements are often designed with specific lines of demarcation and the parties involved are required to meet regularly to create an open forum for communication. Rewards and penalties applying to the provider are often specified. Most SLAs also leave room for a periodic (annual) revisitation to make changes.[3]
Since the late 1980s SLAs have been used by fixed-line telecom operators. SLAs are so widely used these days that larger organizations have many different SLAs existing within the company itself. Two different units in an organization script an SLA with one unit being the customer and another being the service provider. This practice helps to maintain the same quality of service amongst different units in the organization and also across multiple locations of the organization. This internal scripting of SLA also helps to compare the quality of service between an in-house department and an external service provider.[4]
The output received by the customer as a result of the service provided is the main focus of the service level agreement.
Service level agreements are also defined at different levels:
A well-defined and typical SLA will contain the following components:[5]
A service-level agreement can track multiple performance metrics. In this context, these metrics are called service level indicators (SLIs). The target value of a given SLI is called a service-level objective (SLO).
In IT-service management, a common case is a call center or service desk. SLAs in such cases usually refer to the following SLIs:
Uptime is also a common metric, often used for data services such as shared hosting, virtual private servers and dedicated servers. Common agreements include percentage of network uptime, power uptime, number of scheduled maintenance windows, etc.
Many SLAs track to the ITIL specifications when applied to IT services.
Specific examples[edit]
Backbone Internet providers[edit]
It is not uncommon for an internet backbone service provider (or network service provider) to explicitly state its SLA on its website.[7][8][9] The U.S. Telecommunications Act of 1996 does not expressly mandate that companies have SLAs, but it does provide a framework for firms to do so in Sections 251 and 252.[10] Section 252(c)(1) for example ("Duty to Negotiate") requires Incumbent local exchange carriers (ILECs) to negotiate in good faith about matters such as resale and access to rights of way.
New emerging technologies such as 5G bring new complexities to the network operators. With more stringent SLAs and customer expectations, problem resolutions must be prioritized based on impacted subscribers.[11]
5G slicing[edit]
With the introduction of 5G network slicing, the need of having a 360º view of the 5G slices becomes imperative to deliver premium SLAs and monetize service faster.
WSLA[edit]
A web service level agreement (WSLA) is a standard for service level agreement compliance monitoring of web services. It allows authors to specify the performance metrics associated with a web service application, desired performance targets, and actions that should be performed when performance is not met.
WSLA Language Specification, version 1.0[13] was published by IBM in 2001.
Cloud computing[edit]
The underlying benefit of cloud computing is shared resources, which are supported by the underlying nature of a shared infrastructure environment. Thus, SLAs span across the cloud and are offered by service providers as a service-based agreements rather than a customer-based agreements. Measuring, monitoring and reporting on cloud performance is based on the end UX or their ability to consume resources. The downside of cloud computing relative to SLAs is the difficulty in determining the root cause of service interruptions due to the complex nature of the environment.
As applications are moved from dedicated hardware into the cloud, they need to achieve the same even more demanding levels of service than classical installations. SLAs for cloud services focus on characteristics of the data center and more recently include characteristics of the network (see carrier cloud) to support end-to-end SLAs.[14]
Any SLA management strategy considers two well-differentiated phases: negotiating the contract and monitoring its fulfillment in real-time. Thus, SLA management encompasses the SLA contract definition: the basic schema with the QoS parameters; SLA negotiation; SLA monitoring; SLA violation detection; and SLA enforcement—according to defined policies.
The main point is to build a new layer upon the grid, cloud, or SOA middleware able to create a negotiation mechanism between the providers and consumers of services. An example is the EU–funded Framework 7 research project, SLA@SOI,[15] which is researching aspects of multi-level, multi-provider SLAs within service-oriented infrastructure and cloud computing, while another EU-funded project, VISION Cloud,[16] has provided results concerning content-oriented SLAs.
FP7 IRMOS also investigated aspects of translating application-level SLA terms to resource-based attributes to bridge the gap between client-side expectations and cloud-provider resource-management mechanisms.[17][18] A summary of the results of various research projects in the area of SLAs (ranging from specifications to monitoring, management and enforcement) has been provided by the European Commission.[19]
Outsourcing[edit]
Outsourcing involves the transfer of responsibility from an organization to a supplier. This new arrangement is managed through a contract that may include one or more SLAs. The contract may involve financial penalties and the right to terminate if any of the SLA metrics are consistently missed. The setting, tracking and managing SLAs is an important part of the outsourcing relationship management (ORM) discipline. Specific SLAs are typically negotiated upfront as part of the outsourcing contract and used as one of the primary tools of outsourcing governance.
In software development, specific SLAs can apply to application outsourcing contracts in line with standards in software quality, as well as recommendations provided by neutral organizations like CISQ, which has published numerous papers on the topic (such as Using Software Measurement in SLAs[20]) that are available in to the public.