The Planning and Scheduling Optimization (PSO) makes the best possible use of the dates given on work tasks to calculate the optimal schedule. What is optimal depends on the setup and the schedule is continuously recalculated as work progresses.
The PSO always calculates the start date of the work task activities. Therefore, calculations are required to accommodate the latest finish dates, i.e., the duration of the work task must be subtracted before it is sent to the Planning and Scheduling Optimization. In addition, a buffer time can be defined to manage the set-up time between work tasks.
The scheduling is dependent upon the importance of the work task and the urgency of the work. The importance is determined by a scheduling value called base value. The urgency is determined by the restricting dates which indicate when a work task should be performed.
From the restricting dates either one or two periods are calculated. These two periods are called the primary period, which is when the work task should be performed due to the restricting dates, and the secondary period which is when the restricting dates are not met.
An important part of the Scheduling process is the SLA (Service Level Agreement) calculation. The SLA latest start and SLA latest finish dates will receive calculated values if there is a valid service contract with service lines and SLAs defined for one or several work types.
The SLA dates together with the planned and required dates are the restricting dates used when calculating the periods.
To handle the different business requirements there are several ways of setting restricting dates used by the PSO:
The specific external dates can be of the following types:
Date Field / Scenario | Description |
Appointment to Start | An interval when the work task is required to start. This is set from booking an appointment for the work task with the Appointment Booking Engine. The Appointment Dates are visible as Scheduling Information connected to the work task. |
Appointment to Complete | An interval when the work task should have been started and finished. his is set from booking an appointment for the work task with the Appointment Booking Engine. The Appointment Dates are visible as Scheduling Information connected to the work task. |
Earliest Start | The earliest date and time the work task is to be started. This is a constraining date, meaning it is the first date at which the work task can start. This could be according to an agreement with the customer, or that the object to be worked on is not available until this point in time. |
Latest Start | The latest date and time by which the work task must start in order to meet the date/time indicated in Latest Finish. This can either be a calculated value or manually entered. |
Latest Finish | The latest date and time the work task is to be finished. This is a soft constraining date, for instance a wanted delivery date for a service from a customer. |
Appointment dates are only enterred through the appointment booking client. The Earliest Start, Latest Start and Latest Finish dates are manually entered on the work task or retrieved from PM Actions.
The generic external dates can be of the following types:
Date Field / Scenario | Description |
SLA Earliest Start | The latest time the work task can be started without missing its SLA (Service Level Agreement). This value is calculated from the response time for the SLA Order connected to the work task. This field is only applicable for work tasks that have originated from a service contract. |
SLA Latest Finish | The latest date and time the work task is to be finished in order to meet its SLA. This value is calculated from the resolution time for the SLA Order connected to the work task. This field is only applicable for work tasks that have originated from a service contract. |
These dates are set automatically based on the SLAs on the service contract.
The internal dates can be of the following types:
Date Field / Scenario | Description |
Planned Start | The date when the work task is planned to be started by internal planning. The planned start can also be used in combination with the SLA dates to set an earliest start. This is set by entering the planned start date, but can also be set automatically if the work order is generated from a PM Action. |
Planned Finish | The date when the work task is planned to be finished by internal planning. This is set by entering the planned finish date, but can also be set automatically if the work order is generated from a PM Action. |
The following table illustrates the different scenarios described above:
Date Field / Scenario | Entry Date | Planned Start | Planned Finish | Earliest Start | Latest Start | Latest Finish | SLA Earliest Start | SLA Latest Finish | Appointment Start | Appointment Completion |
Appointment to Start | X | X | ||||||||
Appointment to Complete | X | X | ||||||||
Earliest Start | X | |||||||||
Earliest Start with SLA Dates | X | X | X | |||||||
Latest Start and Latest Finish | X | X | X | |||||||
SLA with Entry Date | X | X | X | |||||||
SLA with Planned Start | X | X | X | |||||||
Planned Start and Planned Finish | X | X | ||||||||
Planned Start | X | |||||||||
No Dates | X |
When the primary period and the secondary scheduling period are calculated, the work task dates are considered in certain precedence. First, the work task is evaluated in order to verify whether it is an appointment. If it is an appointment, the primary period is calculated according to the scenario below for appointments. If it is not an appointment, the work task will be evaluated according to the earliest start scenario and so on. This evaluation will continue until either a primary and/or both primary and secondary scheduling period can be calculated.
The default values which are defined in scheduling basic data will be used for these calculations. These can be defined per work type so that the work type on the work task determines the values to be used. To differentiate between the work types used in Service and Maintenance/Basic Data/Maintenance Basic Data, the default values per work type (in scheduling basic data) are referred to as activity type defaults. These default values can also be defined for SLAs and are only used in the scenarios where the durations are calculated based on the given SLA dates.
Following is a list of the activity type defaults:
The SLA default values used are:
- Appointment to Start - When an appointment with the appointment mode Appointment to Start have been booked in the Appointment Booking Engine (ABE). In this scenario, the appointment dates will correspond to become the start of the primary period and the a the finish of the primary period. The Appointment Mode for the work task will be set to Apointment to Start.
- Appointment to Complete - When an appointment with the appointment mode Appointment to Complete have been booked in the ABE. In this scenario, the appointment dates will correspond to the slot that is booked in the ABE. The appointment start date will become the start of the primary period, and the appointment complete date minus the work task duration minus the buffer will become the finish of the primary period.
- Earliest Start - When the earliest start date is the only date which has been entered. In this scenario, the earliest start date will become the start of the primary period. The end of the primary period, which is also the start of the secondary period, is the earliest start plus the default primary duration which is defined in the Scheduling Basic Data/Work Task/Activity Type. The finish of the secondary period will be the end of the primary period plus the default secondary duration defined in the Scheduling Basic Data/Work Task/Activity Type.
- Earliest Start with SLA dates - When the earliest start has been entered together with the SLA dates. In this scenario, the earliest start date will become the start of the primary period. The finish of the primary period, which is also the start of the secondary period, is the earliest of the SLA earliest start and SLA latest finish dates minus the work task duration minus the buffer. The end of the secondary period is calculated by finding the secondary scheduling type duration (firstly on the SLA Order or if not found on the SLA, retrieved from the activity type). This duration is then added to the start of the secondary period.
- Latest Start and Latest Finish - When the latest start date is entered together with the latest finish date, the start of the primary period is the registration date on the work task. The end of the primary period is the earliest of either the latest start date or the latest finish date minus work task duration minus the buffer defined on the activity type. The start of the secondary period is the same as the end of the primary period. The finish of the secondary period will be the end of the primary period plus the default secondary duration defined in the scheduling basic data (activity type defaults).
- Latest Start or Latest Finish - The start of the primary period is the registration date on the work task. The end of the primary period is either the latest start date or the latest completion date minus the work task duration minus the buffer defined on the activity type. The start of the secondary period is the same as the end of the primary period. The finish of the secondary period will be the end of the primary period plus the default secondary duration defined in the scheduling basic data (activity type defaults).
When the work task has a valid service contract with service line and SLA, the SLA earliest start and SLA latest finish dates on the work task will receive calculated values from the SLA Order.
If the earliest start, latest start or latest finish dates have not been entered, the SLA dates are sent to the Scheduling Engine. The start of the primary period is the planned start date or if empty, the registration date. The end of the primary period will be the earliest date of the SLA earliest start and SLA latest finish minus the work task duration minus the buffer defined on the activity type. This date is also the start of the secondary period.
The end of the secondary period is calculated by finding the secondary scheduling type duration (firstly on the SLA Order or if not found, on the SLA retrieved fetched from the activity type. This duration is then added to the start of the secondary period.
The planned start and planned finish dates are internal planning dates These dates are used to define the slot when the work is planned to be done. The planning dates are seen as the slot matching the duration of the work task to be done.
The start of the primary period is the planned start date or if it is not entered the registration date. The end of the primary period is the planned finish date minus the work task duration minus the buffer defined on the activity type. This is also the start of the secondary period.
If the planned finish date has not been entered, the end of the primary period is calculated by adding the primary scheduling type duration on the activity type to the planned start date. This is also the start of the secondary period. The end of the secondary period is calculated by adding the secondary scheduling type duration on the activity type to the end of the primary period.
If no dates are entered on the work task, the start of the primary period is the registration date on the work task. The end of the primary period is calculated by adding the primary scheduling type duration of the activity type to the registration date. This date is also the start of the secondary period. The end of the secondary period is calculated by adding the secondary scheduling type duration on the activity type to the end of the primary period.