Dynamic Work Planning and Scheduling

Dynamic Work Planning and Scheduling is scheduling an organization's Work Tasks while taking into consideration the importance of work, the availability of the resources as well as possible constraints. The scheduling process is carried out in the IFS Advanced Optimization & Scheduling engine. Material, tool availability, and additional qualifications may be used as constraints in the scheduling process. Scheduling is based on the value of the work.

The scheduling process considers the constraints placed by Work Orders, Resources and Part stocks that are actually loaded into a particular dataset and not all the Work Orders, Resources and Part stocks available in the organization.    

Dynamic Work Scheduling Dataset

A work scheduling dataset is the entity on which planning needs to be carried out. It can be a single site or a collection of sites. Multiple datasets can be created to plan different sites of an organization. However, it is important to note that different datasets are entirely independent of each other and know nothing about the existence or planning of other datasets. If a dataset is created per single site, it is important to make sure resources and parts stocks used by that site are not used by other sites that are loaded into other datasets. It is expected that the same data, resource or part stocks are not sent to multiple datasets.

Scheduling Concept

A Work Task is the smallest schedulable entity. The scheduling engine essentially focus on allocating resources to do the work, taking other constraints into consideration. A single resource requirement for the task is called an activity in scheduling. If a work task requires multiple resources, that means the task has multiple activities and these multiple activities should work together to complete the work task. For example, if a task requires three resources, this is handled as three activities that should be planned in the same time slot. 

The minimum requirements for a Work Task to be considered for planning using Dynamic Work Planning and Scheduling solution are as follows:

The goal of the scheduling process is to achieve the highest value in the overall scheduling solution. This means work tasks that have higher values gets prioritized over those having lower values.

A successful scheduling process will result in the following:

Setting Value for Work Tasks

Value can be assigned to work tasks based on Work Type, Equipment Criticality and Task Priority. This setup is done at the Dynamic Work Scheduling Dataset level. The goal of the whole scheduling solution is to achieve maximum value. This means tasks with higher values, defined by the value configuration, gets prioritized higher in the scheduling process.

 

Resources

Resources can be planned on resource group level or individual level.

Other Scheduling Constraints

While Work Tasks and Resources are the two main entities required for Scheduling, there are other entities that can be used as constraints. It is possible to switch there constraints on/off at the dataset level.

Materials

Whether to use material as a constraint can be set in the dataset. Material stocks include:

NOTE: Parts are not reserved as a part of the scheduling process. Material orders are also not created by scheduling process. MRP/PMRP processes handle the part supply function.

Additional Qualifications

Additional qualifications include competencies and certificates. These constraints can also be enabled or disabled at the dataset level. When enabled, Additional Qualifications are treated as a skill connected to the resources.

 

Early start and late finish date

The Dynamic Work Planning and Scheduling solution tries to plan tasks within the early start and late finish period. However, if this is not possible due to constraints, task may be planned after the late finish date.

 

Continuous Planning and Change Detection 

The Dynamic scheduling process runs continuously in the scheduling server.  Changes to the tasks, such as creating new tasks and changing the resource demand(s) of tasks can be detected and sent to the scheduling process that runs in the server. For this, relevant database triggers should be activated. The scheduling server will send a new update to the business application regularly and these updates may also change the planning of currently planned tasks. This may be due to the scheduling server finding new optimum solutions during the dynamic scheduling process as well as due to changes in work tasks that were sent to the server automatically by enabling triggers.

 

Results from Scheduling Process

Successfully scheduled work tasks will have the planned start and end dates set. In addition, if the resources are planned on individual level, assignments are also created for successfully scheduled work tasks.

Work Tasks not Planned during the Scheduling Process

There can be multiple reasons for work tasks to remain unplanned after the scheduling process including the following:

Work Tasks Planned Later than the Latest Finish Date

The scheduling process tries to plan all tasks between the early start and late finish dates specified in the task. However, there can be situations where the overall scheduling process cannot plan all the tasks within early the start and late finish dates. In such a situation, the scheduling process may plan some of the tasks later than late finish date.

Handling Exceptions

There can be different actions needed if the result of the planning process is different from expected results including the following:

Manually Adjusting the Plan

Adjustments to the output from the scheduling process can be done in the IFS business system. However, it is important to note that the dynamic scheduling process sends updates to the IFS business system continuously. New optimizations to the plan or changes in Work Tasks may override manual changes.

Setting the manual adjustments to not be overridden can be done as follows:

Access Requirements for Different Users