This is a the landing page for the paper entitled Automated Validation of Compensable SLAs

During the last years the use of Service Level Agreements (SLA) is on the rise to describe the rights and obligations of parties involved in service provisioning (typically the service consumer and the service provider). Amongst other information, SLAs have associated a set of service metrics on which some Service Level Objectives (SLOs) can be guaranteed to either the consumer or the provider. Such SLOs usually have associated compensations (penalty or reward) as consequence of under or overfulfilling them. However, although this is a common practice in industry, existing research proposals towards the automation of the SLA management do not consider the associated compensations.

In this article we provide: (i) a characterization model for compensations that consider both, penalties and rewards; (ii) an automated technique to validate SLAs taking into consideration the compensations; (iii) a tooling support that implements our validation technique; and (iv) a validation of our proposal by modelling and analysing the compensations of more than twenty SLAs of real-world scenarios. As result, our technique was proved to be useful for detecting mistakes that are typically derived not only from the manual specification of SLAs in natural language; but also from the complex nature of compensations definitions.

Tooling

In order to have an anonymous demostration of the tool with a preloaded workspace of SLA samples, please go to this link.

Please note that by default a user-friendly form representing the agreement is shown. In order to see the iAgree version, you need to follow the following steps:

  1. Activate the "Advanced Mode" slider in the botton left of the tool:

  2. Click on the appropriate agreement document (with extension ".ag"):

  3. Click on YML (or JSON) tab below the editor:

In order to register and have a persistent workspace please go to this link. In such a case, you can import the demo workspace by typing in the console (with the advanced mode activated) the following command:

generateDemoWorkspace 2017-12-Compensations

SLA groups in dataset

# Organization SLA Ids
A01 GNWT A01G01-A01G23
A02 Amazon A02G01-A02G07
A03 Rackspace A03G01-A03G14
A04 OVH A04G01-A04G02
A05 MS Azure A05G01-A05G52
A06 Joyent A06G01
A08 HostEurope A08G01
A09 Factobyte A09G01
A10 CloudClockSC A10G01
A11 Cisco A11G01
A12 CDMon A12G01
A13 GoogleCE A13G01-A13G03
A14 Verizon A14G01-A14G19
A15 GoGrid A15G01
A16 Sandetel A16G01-A16G06
A17 Geronte A17G01-A17G37
A18 Kerala A18G01-A18G10
A19 GSANetwork A19G01-A19G04

The full agreement dataset can be found here.

Glossary

Term Definition
SLA Service Level Agreement
SLO Service Level Objective
Guarantor Party that guarantee the SLOs of an SLA to the other party (beneficiary)
Beneficiary Party that benefits from the SLOs of an SLA that are guaranteed by the other party (guarantor)
SLO unfulfilling When the guarantor does not hold what an SLO established in the SLA
SLO overfulfilling When the guarantor provide more service level than an SLO established in the SLA
Compensation Consequence of unfulfilling (penalty) or overfulfilling (rewards) SLOs of an SLA
Penalty Compensation from the guarantor to the beneficiary
Reward Compensation from the beneficiary to the guarantor
Compensable SLA SLAs that include at least a compensation action, either a penalty or a reward
Compensation validity A compensation is said to be valid if it is well defined in order to avoid undesirable consequences (i.e. specifying all the required information and without mistakes). That is specially important if the action derived from the compensation is automated.
AWS EC2 Amazon Web Service – Elastic Compute Cloud
MUP Monthly Uptime Percentage
GNWT Government of the Northwest Territories
EDP Elapsed Days Percentage
PIP Penalty Invoice Percentage
Metrics (Mm) Set of al values for a metric m.
Utility Function (Um) Function that associates an utility to each of the values of a service metric; i.e. it defines which metric values are more interesting for a given party.
Utility Precedence Precedence relation defined on a service metric that denotes that a value of the service metrric is less interesting than other, using an utility function defined for the same metric.
Compensation Function (CFm) Function that associates a compensation to each of the values of a service metric. Penalties are modeled as positive compensations; and rewards as negative compensations.
Compensation Regions A compensation Function defines three compensation regions, namely: penalized, rewarded, and neutral.
Penalized region A region of values for a service metric that have an associated penalty.
Neutral region A region of values for a service metric that have not associated neither a penalty nor a reward.
Rewarded region A region of values for a service metric that have an associated reward.
Compensable Guarantee (CG) A guarantee that includes either a penalty, a reward, or both.
Constraint Satisfaction Problems (CSP) A CSP is defined as a triple (V,D,C) of a set of variables (V), their domains (D) and a number of constraints (C). A solution of a CSP is an assignment of values to the variables in V from their domains in D so that all the constraints in C are fulfilled. A CSP that has at least one solution is called satisfiable (SAT), and there are a number of solvers that can automatically check the satsifiability of a CSP through the operation solve.
WS-Agreement A standard specification that provides a framework to define SLA languages.
iAgree A WS-Agreement compliant SLA language developed by the authors in previous works.
map(CF) Function to map a compensation function into a CSP.
c Compensation unit
Pcond,i Pval,i Penalty condition and value, respectively
Rcond,i Rval,i Reward condition and value, respectively
HRS number of Human Resource Substitutions

Powered by ISA group