ServiceGrid Article - Service Level Calculation
Abstract - Management Summary
The Service Level Agreement (SLA) is the agreement between the service customer and the service provider in which time the service has to delivered. The call processing is based on this agreement, and there cannot be a call created without defining which service level is applied for this case.
The Operation level Agreement (OLA) is an agreement within a service organization and is contracted between these departments which supply the service for the customer.
Service Level Agreement (SLA)
Generally, the service level will be defined for the following two different time periods:
The ResponseTime defines the time period between the moment when the Call is opened until the end customer receives a callback from the helpdesk or a technician arrives on site. Both the end and start time of the ResponseTime period are set in the respective CallStates.
The RecoveryTime typically defines the time period between the moment when the Call is opened until a resolution is provided. Both the end and start time of the RecoveryTime period are set in the respective CallStates.
Service Level Fulfillment
The degree of fulfillment of service level will be visually represented by the application as follows:
- Green: The business case is completed and the agreed time was not exceeded
- Red: The business case is completed and the agreed time has been exceeded or the business case is still ongoing but the agreed time has already been used.
- Yellow: The business case is still ongoing and it is undefined as to whether the SLA will be violated. It can be both achieved or exceeded.
Operation Level Agreement (OLA)
In addition to the SLA, there can be different customizable Operation Level Agreements (OLAs) defined depending on a workflow. An OLA can be defined either as a retention period for several callstates or as a time between one or more arbitrary start and end state.
Features and Functions Overview
The following are the features and functions overview:
| Function|| Description|| Call by|
| SLA Administration|| Defining the SLA for one certain ContractElement.|| BasicData/ContractElements/SLA|
| Defintion of the SLA for a certain Service.|| BasicData/ServiceItems/SLA|
| Servicetimes|| —|| BasicData/MyCompany/Setups/ServiceTimes|
| SLA Actions (Timestamps)|| Administration of callstates depending on SLA relevant Actions.|| BasicData/MyCompany/Setups/CallSystems/Workflow/CallStates|
| OLA Administration|| Defining the OLA within one Workflow.|| BasicData/MyCompany/Setups/CallSystems/Workflow/OperationLevelAgreements|
| Retentionperiod|| Administration of the retention periods for each callstate.|| BasicData/MyCompany/Setups/CallSystems/Workflow/Callstates|
| Administration of retention periods depending on contract elements.|| BasicData/ContractElements/RetentionPeriods|
| Administration of retention periods depending on Service.|| BasicData/ServiceItems/RetentionPeriods|
| Assignment of one or more holiday calendars to an organization.|| —|
The SLAs are managed in the menu BasicData > ContractElements or in the service items. Within an SLA, it is possible to define a response time and a recovery time.
SLA times are only calculated and compared to SLA targets during the time periods defined by the servicetime. If the SLA, for example, applies only weekdays from 9 am to 5 pm, the SLA clock will stop on a Friday at 5 pm, then continue to run on Monday 9 am, regardless of what the status of the ticket is.
Response and RecoveryTimes will also consider the servicetime. In the above example, if the ticket is created on Friday 4 pm, with a Response target of two hours, the EndOfRespnse will be calculated as Monda 10 am.
Servicetimes can be set directly here or may be copied from a set of predefined servicetimes. The latter can be set under MyCompany>Setups>Contracts>Servicetimes.
We can define the duration of retention period for each call state. In addition, it is possible to define different retention periods for one callstate depending on contractelements or services.
One or more holiday calendars can be assigned to an organization. The holiday calendar is maintained by Cisco ServiceGrid and can be viewed in CommonContent. When the SLA is calculated, it will be checked per day if this day is registered as a holiday in the holiday calenders of the customer organization. If a day is marked as a holiday, the service times which are valid on sunday will be used for that day.
- Hold SLA
- Measurement of responsetime
- Measurement of recoverytime
- Next Businessday
- Overnight SLA
- SLA depending on priority
- SLA depending on location
- SLA depending on service time
- Cut off
Usage for the User
- Display SLA in call list
- Display SLA in call detail form
- Timestamp form
Customizing for Admins
- Data upload
The SLA Calculation is always executed with each update of an existing call or when creating a new call. It will be checked which timestamp should be set depending on the new call status. Below, you can find an overview of the functionalty. Check the SLA Calculation page for details.
Setting timestamps in a call
- If a timestamp flag is set to "Yes", then the appropriate timestamp field in the call will be filled, if this field has not entered any value. It will set either the value entered by the user or sent by converter or if no value is defined, the current system time is used.
- If the flag is set to "Overwrite", the timestamp will be set although the timestamp field has stored a value. It will only be stored a new timestamp value if the user has entered a new value or a new value is sent by the bridge. The SLACalculation does not overwrite a stored value to the system time.
- When starting the SLA, the start time is set in the call and all relevant SLA timestamps will be deleted.
- Thereafter, the applicable SLA is determined and the current settings are copied from the contractelement or SLAExtensions into the call. All SLA fields up to the service hours will be stored in the call.
- Finally, the maximum end time for response, recovery, and the recoveryalert time will be calculated. When using cut-off or if the flag "CustomerRequestedEndTime" is used as the end time for recovery, the duration time of the SLA will be calculated.
- In the call, the response time will be set. If no value is given for the response time, the system time is taken.
- At that time, if no start time for the SLA is set, then the response time will be copied into the start time.
- If setting the response time is triggered by an update of the call in the online interface, the response time must be after the start time.
- If the call is updated through the converter and the response time is before the start time of the SLA, then the start time will be overwritten with the response time.
- Finally, it will be calculated how long the response lasted. The duration is stored as the minutes value in a separate field in the call.
- In the call, the recovery time will be set. If no value is given for the recovery time, the system time is taken.
- At that time, if no start time for the SLA is set, then the recovery time will be copied into the start time.
- If setting the recovery time is triggered by an update of the call in the online interface, the recovery time must be after the start time and response time.
- If the call is updated through the converter and the recovery time is before the start time of the SLA, then the start time will be overwritten with the recovery time.
- Finally, it will be calculated how long the recovery lasted. The duration is stored as the minutes value in a separate field in the call.
- The SLA will be held only if the SLA has been started and if it is not currently stopped.
- The system time is shown in the field "HoldTime" and a flag will be set indicating that the SLA is stopped.
- Once an SLA is stopped, it cannot be exceeded. Therefore all current endtimes stored in the call will be removed for the following conditions:
If an SLA for response is defined and at the hold time response has not been received, the maximum end time of response will be removed.
If an SLA for recovery is defined and at the hold time recovery has not received, the maximum end time of recovery and both recovery alert times will be removed.
- The SLA can only be continued if it is held now.
- If in the call, it indicates "SLA is stopped," set to N and the date of the continuation will be deleted.
- In addition, it will be store the duration of minutes when the call is stopped.
- Finally, like starting the SLA, the maximum late response and recovery and both alert times will be recalculated. In this calculation, the already spent time will be deducted from the response time and recovery time defined in the SLA.
Calculation retention periods
When saving a call, two calculations are performed for the retention period:
- It is calculated for the last call status as long as the call has been in this state. The retention period is stored in two values. One contains the retention based on the service times defined for this call (field RetentionPeriodSL). The second value indicates the absolute time spent (field Retentionperid24). This corresponds to the length of stay based on a service time from Monday to Sunday from 00:00 to 24:00 (7x24) hrs.
- For the new call status is calculated by when the call may remain in this state. If a retention time is defined for the current callstate by the contractelement, this time is taken. Otherwise the retentiontime defined for the callstate will be used.
- All values of the retention period are stored in the call for both, the customer and the provider.
Within a callsystem system, different OLAs can be created. For each OLA, the maximum time duration in minutes and by what call state the OLA starts to run and by what call state it is stopped have been defined.
While saving the call in the DB, it will be checked for both the customer and the provider state whether this state has been defined as the start- or the stop state for one or more OLAs.
- The OLA will be started if not yet started for the current call or if this OLA has been stopped once before.
- If an OLA is started for a second time, the target time of this OLA will be added to the existing target time and the end time of the last calculation will be deleted.
- If this OLA is already ongoing for this call, it will not be started for a second time.
- When starting an OLA, the maximum end time is calculated for this OLA. Either service times are assigned to this OLA if these times are used or if no service times are defined for this OLA the servicetimes of the contract element are used.
- When an OLA is stopped, the system time is stored as the end time.
- The difference between end time and start time is based on the service time of the OLA or the contract item will be calculated and stored as minutes value in the DB.
- If an OLA is started more times for a call, then all durations will be added.
For a complete list of Cisco ServiceGrid Articles, go to the List of Articles page.