Siebel Field Service Guide > Scheduling and Dispatch > Scheduling Administration >

Employee Availability and Schedules


Employee schedules (available and unavailable hours) are controlled by the Schedule field in the Administration - User screen > Employees view > Service Details subview and the exception records in the Administration - User screen > Employees view > Employee Exception Hours subview. The definition of the schedules that appear in the Schedule field are set in the Administration - Application screen > Schedules view.

The ABS uses the service region schedule as a base, and then refines its choices of time slots based on the employee schedules. For more information, see Service Region Schedules.

The Optimizer uses only the employee schedules.

Maintaining and Loading Employee Data

Employee data is loaded with service region data into the ABS or Optimizer cache. When activities are loaded, the Assignment Manager retrieves the list of eligible employees and the ABS or Optimizer loads this data.

When you load the data for a new employee, the list of employees eligible for existing activities is not updated. The result is that the new employee may not be eligible to carry out any of the existing activities, but is eligible for new activities. At the next reload of the service region and its employee data, the new employee is eligible for all activities.

Shifts

One employee can have only one shift per day, which can include rate types of normal time (RT), overtime (OT), and extended overtime (EOT), as defined for each employee. A shift must use rate types in the following order:

  1. EOT
  2. OT
  3. RT
  4. OT
  5. EOT

Any of these rate types can be missing from the definition of a shift, but the remaining types must be in this order. For example:

  1. OT
  2. RT
  3. OT

The rates for overtime and extended overtime are configured in the Administration - Pricing screen > Cost List view > Cost List Line Items subview as a percentage increase over regular time (Standard Cost). Standard Cost is set in the Administration - User screen > Employees view > Service Details subview.

Skills

Siebel Scheduling is capable of performing skill-based routing (meaning, assigning only people with a particular skill set to a job). The engines use the Assignment Manager to evaluate skills and it returns a list of appropriate employees, in the following manner:

  1. Each activity is submitted to the Assignment Manager.
  2. The Assignment Manager returns the appropriate people based on assignment rules.
  3. The Optimizer uses only these people when attempting to schedule that job.

For more information about how to set up skills and evaluation rules, refer to Siebel Assignment Manager Administration Guide.

Roles

For the purpose of assigning field service engineers to activities, you can add a role priority to each field service engineer that is associated with an asset. When Assignment Manager schedules field service engineers, it considers the role priority of the associated engineers. For example, Assignment Manager first tries to assign the primary engineer. If the primary engineer is not available, it tries to assign the secondary engineer.The role priority for a field service engineer can be either primary, secondary, and tertiary.

For more information, see Setting Up Assets.

Constraints

Service businesses have a number of union, legal, or business constraints under which they must operate. Here are a few examples:

  • Union contracts may stipulate that no worker does more than ten hours of overtime in a week.
  • There may be laws regulating worker safety that restrict employees from working more than twelve hours a day.
  • To keep costs down, management might specify that no service manager should authorize more than forty hours of overtime per week for all of their employees.

A constraint set for each service region provides the criteria that guides the Optimizer in searching for a solution. Constraints may be hard or soft. Schedules that violate hard constraints are discarded even though they may be better than other solutions. The Optimizer may use solutions that violate soft constraints, but assigns a penalty to these violations that may make one solution less favorable than another solution. The cost function calculated for each solution includes the penalties for violating soft constraints. For more information, see Cost Function.

Constraints are created using the Constraint Wizard, which walks the users through this process step-by-step. The user chooses a constraint template and then either chooses or fills in the appropriate values.

Constraints are designed for flexibility, but it is possible to write constraints that are contradictory and cause problems. For example, using these two constraints will cause problems, because the two are contradictory:

  • All employees should work at least 40 hours per week.
  • Employees performing break/fix activities should work no more than four hours per day.

If both are hard constraints, the Optimizer cannot find a solution and fails to schedule these activities. Be sure to test new constraints before releasing them into a production environment; leaving them as soft constraints may help to avoid problems. However, too many soft constraints hamper performance, so there needs to be a balance.

Constraints fall into the categories shown in Table 29.

Table 29.  Constraints for the ABS and Optimization Engine
Item
Description

Appointment Booking
Activity Time

Limits the time of day an activity of a specified type or priority can start or end.

Appointment Booking FSE Limit

Limits the number of activities of any type or of a specified type, or time spent on activities by any employee or a specific employee. Or, limits the number of activities or time spent on activities that have a specified service role (for example, Installation or Preventive Maintenance).

Appointment Booking Schedule Activity Type

Limits the number of activities of any type, or time spent on activities of a specified type for a whole schedule.

Optimizer Activity Time Hard

Limits when an activity of a specified type or priority must begin or end. This is a hard constraint.

Optimizer Activity Time Soft

Limits when an activity of a specified type or priority may begin or end. Also, specifies the penalty for violating this soft constraint.

Optimizer FSE Limit Hard

Limits the following values for any employee or a specific employee during a specified period:

  • % workload
  • Number of activities of any type or of a specified type
  • Total hours of travel time
  • Total work hours

This is a hard constraint.

Optimizer FSE Limit Soft

Limits the following values for any employee, a specific employee, or a specified service role (for example, Installation or Preventive Maintenance) during a specified period:

  • % workload
  • Number of activities of any type or of a specified type
  • Total hours of overtime
  • Total hours of travel time
  • Total work hours

Also, specifies the penalty for violating this soft constraint.

Optimizer Fairness1

Ensures the equal distribution of the following values for workload, specified as a percentage, for all employees or for a specified service role (for example, Installation or Preventive Maintenance):

  • Number of activities of any type or of a specified type
  • Total hours of overtime
  • Total hours of travel time
  • Total work hours

Also, specifies the penalty for violating this soft constraint.

Optimizer Schedule Activity Type Hard

Limits the following values for a whole schedule in a specified period:

  • Hours of work time for activities of a certain type
  • Number of activities of a certain type
  • Percentage count of activities of a certain type1
  • Percentage hours for activities of a certain type1

This is a hard constraint.

Optimizer Schedule Activity Type Soft

Limits the following values for a whole schedule:

  • Hours of work time for activities of a certain type
  • Number of activities of a certain type
  • Percentage count of activities of a certain type1
  • Percentage hours for activities of a certain type1

Also, specifies the penalty for violating this soft constraint.

Optimizer Schedule Overtime Soft

Limits the hours of overtime in a specified period for a whole schedule.

Also, specifies the penalty for violating this soft constraint.

Optimizer Travel Time

Limits the travel time between activities for all employees, specific employees, or a specified service role (for example, Installation or Preventive Maintenance).

This can be a hard or soft constraint.

1This is called a leeway constraint because it is based on a percentage rather than an absolute value. As this is an approximate number, it allows the Optimizer to achieve acceptable schedule assignments within acceptable times.

Examples of Constraints

The following constraints limit work hours:

  • An engineer cannot work more than 45 hours per week.
  • An engineer cannot engage in an activity type (for example, working with hazardous materials) more than four hours per day.
  • Total workload must be less than 95%.
  • Total workload must be greater than 60%.
  • An engineer cannot travel more than four hours a day, for safety reasons.

The following constraint limits timing of an activity:

  • All waste disposal activities must start before 8 p.m.

Breaks

Schedules can include any number of breaks. Breaks are defined as employee breaks or activity breaks:

  • Employee breaks are defined in the employee's schedule or as exceptions to this schedule.
  • Activity breaks are defined in Activities > Time Tracker as time periods with the Type field set to Break.

The following rules apply to the way the Optimizer uses breaks:

  • Breaks can have their start time = Start Time +1 second. This means that a break from 12 to 1 p.m. is the same as a break from 12:00:01 to 1:00:01.
  • Break times during OT or EOT are paid.

    NOTE:  Since breaks during overtime are considered paid time, it is recommended not to define breaks during overtime. Calculating these breaks may slow the Optimizer's calculations.

  • Breaks can be allowed during activities or excluded from specific activities.

    To include a break, set the Breakable flag in the Administration - Data screen > Activity Templates view > Activity Template Details subview. (If the Breakable field does not appear, it may be necessary to turn on the display of this field.) If this flag is not set, a break is not allowed during an activity.

    A normal user can set breaks for a selected activity in the Activities screen > Schedule view, Allow Breaks check box.

To define breaks and allow them for activities

  1. Navigate to the Administration - Data screen > Work Types view.
  2. Add a record and complete the fields as appropriate.

To set the name of the break type

  1. Navigate to the Administration - Application screen > System Preferences view.
  2. Click Query to find the system preference Sch:Break Time Id.
  3. In the System Preference Value field, enter the row ID for the break.

To record break time

  1. Navigate to the Activities screen > Activity List view.
  2. Drill down on the Type field for a selected activity and click the Time Tracker view tab.
  3. Add a record and complete the fields as appropriate.

Travel

The Optimizer uses employee travel conditions and travel time when obtaining the lowest cost solution for a schedule. These values are set in the Administration - User screen > Employees view > Service Details subview. The fields Start Shift From and End Shift At define the starting and ending conditions for travel to and from service calls. These are the possible values of these fields:

  • Home (Travel incl.).The employee travels from home directly to the first job. The Optimizer includes the cost of this travel when calculating schedules.
  • Home (Travel Not incl.). The employee travels from home directly to the first job. The cost of travel is not included.
  • Depot. The employee starts each day by going to a service depot or office. Travel costs are tracked starting from the depot.
Siebel Field Service Guide