# KPI Calculation Service¶

## Idea¶

The KPI Calculation Service computes Key Performance Indicators (KPIs) for an asset. It uses data source such as sensors, control events and calendar entries.

The service enables a user to get a unified view on an asset and to outline the following aspects:

- Industrial procurement: reliability, availability and maintainability
- Conditions monitoring: operating characteristics
- Alarm management and inferred events
- Risk assessments
- Diagnostics applications and Root-cause analysis
- Condition-based maintenance

## Access¶

For accessing this service you need to have the respective roles listed in Analytics Services roles and scopes.

## Basics¶

### KPI calculation¶

The KPI Calculation Service offers a set of computational procedures based on ISO 3977-9:1999. It works for both offline batch analysis and the online analysis of new data.

The calculation uses the following inputs:

- Time period
- Sensor data as time series
`{TimeStamp, SensorValue}`

and a threshold - Events/states as time series
`{TimeStamp, EventID/State}`

- Maintenance calendar data
`{StartTimeStamp, EndTimeStamp}`

- Initial and default unit states

Depending on the availability of the input data sources a specific computational procedure is applied.

The calculated output varies based on the input, but always consists of a set of KPI time and factor values.

### KPI states and time values¶

A unit spends time in various KPI states.

For a considered time period (Period Hours) the following hierarchy shows the resulting time values of a KPI calculation:

**Available Hours****Service Hours**

Unit is in-service.**Reserve Shutdown Hours**

Unit is available, but non-generating and not in service (default).

**Unavailable Hours****Forced Outage Hours**

Unit is unavailable due to a failure.**Planned Outage Hours**

Unit is unavailable and in a planned outage by calendar.

**Unknown Hours (NoData)**

Not all required data is available.

### KPI factors¶

The KPI calculation also produces values for the following KPI factors:

`availabilityFactor`

Probability that the unit will be usable (available without any outages).`unavailabilityFactor`

Probability that the unit will be unusable (not available due to outages).`reliabilityFactor`

Probability that the unit will not be in a forced outage condition.`serviceFactor`

Probability that the unit will be in an operating condition.`forcedOutageFactor`

Probability that the unit will be in a forced outage condition.

## Features¶

The KPI calculation Service exposes its API for realizing the following tasks:

- Calculate a set of KPIs within a time period
- Get the all KPI states within a time period

## Example Scenario¶

The manager of a brewery wants to calculate KPIs for parts of the production line.

The manager collects time series data of a relevant sensor of the production line using the IoT Time Series Service and feeds the KPI Calculation Service API with this time series and the desired time period.

## Related Links¶

## Any questions left?

*Except where otherwise noted, content on this site is licensed under the MindSphere Development License Agreement*.