Skip to content

Components

The Scheduling system consists of a number of components including windows services, web services and databases. Each component has its own installation .msi file or database creation script delivered as part of a release. Please see the Installation Guide for details on how to install the various components.

Please note that all scheduling components should be at the same major release number (e.g. 5.8.0) to ensure that the system is operating correctly.

For most services multiple instances can be created operating on different servers. Only one instance of each service may operate on single server or virtual machine.

The system can be used for a number of different purposes, and the components required for a particular installation will vary depending on which functionality is required.

Requirements

The following tables show which databases and software components are required for each functional area of the scheduling system. For scheduling problems, see the section on sizing to determine whether particular data should be treated as a large schedule.

Database Requirements

SchedulingResource PlanningWISESchedule Archive
Scheduling System DatabaseMMMM
Scheduling DatabaseM-MNote 1
Resource Planning DatabaseNote 2M-Note 1
Scheduling Simulation Database--M-
Schedule Archive DatabaseMMMM
Hierarchical Travel Matrix Database (HTM)Note 3-Note 3-

Software Component Requirements

SchedulingResource PlanningWISESchedule Archive
Appointment Booking EngineNote 4---
Dynamic Scheduling EngineM-M-
Resource Planning Service-M--
Schedule Administration ServiceMMM-
Schedule Archiving ServiceMMMM
Schedule Broadcast ManagerM---
Schedule Dispatch ServiceNote 6---
Schedule Distribution ServiceNote 5---
Schedule Input ManagerMMM-
Schedule Query ManagerM-M-
Scheduling RESTful GatewayMM--
Scheduling Service ManagerMMMM
Scheduling Simulation--M-
Scheduling Travel AnalyserNote 8---
Scheduling WorkbenchMMM-
Schedule Explainability ServiceNote 9---

Key

  • M = Mandatory component
  • - = Not required
  • Note 1 etc. = See notes below

Notes

  1. The data archive can be used for recording changes to both scheduling and modelling data.
  2. The modelling database can be used to store scheduling related data that is not present in the external application.
  3. For most scheduling problems an HTM database will be required.
  4. The Appointment Booking Engine is required if using the system for appointment booking.
  5. The Schedule Distribution Service is used to control the amount of data which is sent to a single DSE to be scheduled. See the sizing section to determine if this service may be required.
  6. The Schedule Dispatch Service is used to automatically suggest when activities should be committed to resources. It is recommended that this service is used when scheduling dynamically.
  7. The Scheduling Service Manager is used to restart services when the administration service detects issues. It is recommended that this should be installed on every server.
  8. The Scheduling Travel Analyser is an optional component which provides additional travel information, and is used for the calculation of isochrones.
  9. The Schedule Explainability Service is an optional component which can be used to explain why certain scheduling decisions have been made by the DSE.

Databases

The following database schemas are used within the IFS Scheduling product suite. All databases can be installed on either a SQL server or an Oracle database. See the Installation Guide for details of supported versions. Multiple schemas can be contained in one database instance.

Scheduling System Database

This database holds all data relating to users, security, system settings and monitoring.

Scheduling Database

This holds all scheduling related input data and all plans produced by the system. The data format is detailed in the Scheduling Schema document.

Resource Planning Database

This holds all planning data used within the Advanced Resource Planner, and also all data used within the WISE. The data format is detailed in the Modelling Schema document.

Scheduling Simulation Database

This holds all the data related to running WISE simulations.

Schedule Archive Database

The Archive Database is a mandatory database that is used to record a history of all changes made to either the scheduling, modelling or system databases. It can also be used to record snapshots of both scheduling and modelling data at a given point in time. Additionally, the Archive Database is used to store reporting data generated from scheduling data snapshots. For more information refer to the ScheduleSchedule Archive Guide.

Hierarchical Travel Matrix Database (HTM)

This is a read only database used by the Dynamic Scheduling Engine and other services to estimate travel times between any two locations used in the scheduling. The appropriate travel matrix must be loaded as part of the install for all geographic regions required.

Products

The core products of IFS Scheduling are outlined in the table below.

Product Names

Product NameDescription
IFS Dynamic SchedulingThe scheduling of activities to resources (using the Dynamic Scheduling Engine)
IFS Appointment BookingThe booking of appointments (using the Appointment Booking Engine)
IFS Schedule DispatchSuggesting when activities should be pushed to mobile devices (using the Schedule Dispatch Service)
IFS Schedule ModellingSetting up base scheduling data (including basic shift planning) via the Scheduling Workbench
IFS Advanced Resource Planner (ARP)Planning shifts for resources to meet general or project requirements, including automatic generation
IFS What-If Scenario Explorer (WISE)Trialling different scheduling scenarios, with automated resource balancing
IFS Schedule ArchivingRecording historical schedules and analysing trends

Software Components

A brief description of each core software component supplied is given below.

Appointment Booking Engine (ABE)

A service which processes appointment requests and provides appointment offers to the calling application. See section on Appointment Booking. This should not be located on the same server as the Dynamic Scheduling Engine in production environments. There may be more than one ABE running but each must process a separate dataset. This service needs to be installed on its own server in a production environment.

Dynamic Scheduling Engine (DSE)

The Dynamic Scheduling Engine is a service which should be run on its own dedicated server in production environments. This service processes the data from the Scheduling Database and returns plans back to it to be broadcast by the Schedule Broadcast Manager. This service needs to be installed on its own server in a production environment.

Resource Planning Service (RPL)

A service used to undertake processing of shift rotas and project planning typically for the Advanced Resource Planning functionality in the Scheduling Workbench.

Schedule Archiving Service (ARC)

This service is used to snapshot the scheduling and modelling databases and store the resulting data in the Schedule Archive database.

Schedule Broadcast Manager (SBM)

A service dedicated to the output of schedules from the database at specified times. The plans produced can be for all the data or just changes since the last plan. For definitions of how to setup broadcasts refer to the Scheduling Schema Guide entities Broadcast and Broadcast parameter.

Schedule Dispatch Service (DSP)

This service applies business rules to a plan to determine when activities should be committed to the external system. Better efficiencies are gained from the scheduling system when the activities are committed as late as possible to the external resource according to these configurable rules. The external system asks the Scheduling Dispatch Service via a web service what the next committed activity should be for each resource.

Schedule Distribution Service (DST)

An internal service used to control the flow of data between multiple DSE services operating on a single dataset. The DST load balances the data to be processed over a number servers depending on the size of the dataset and the processing capability of available servers.

Schedule Explainability Service (SES)

The Schedule Explainability Service processes explanation requests for a schedule produced by the Dynamic Scheduling Engine. This generates an explanation outcome detailing why the DSE had made a decision about where an activity was allocated in a schedule.

Schedule Input Manager (SIM)

A service which takes inputs from the Scheduling RESTful Gateway which conform to the Scheduling Schema and loads the data into the Scheduling Database.

Schedule Machine Manager (SMM)

This service is used in Portal mode cloud installs. It is responsible for determining how many virtual machines are required to process the requested datasets and scaling the scheduling system to meet the processing requirements.

Schedule Query Manager (SQM)

A service used to cache data from the database to be used by internet based clients. This enables faster response times, reduced network traffic and scalability. Performs security and data filtering tasks.

Scheduling Administration Service (ADM)

A service to provide housekeeping functions on the database and monitor each scheduling service for errors and computer resource usage. This service should not be located on the same server as Dynamic Scheduling Engine in production environments, and may be located on the same server as the Databases.

Scheduling Gateway (GWY)

The Scheduling Gateway is a WCF version of the Scheduling RESTful Gateway (SRG). This component is now obsolete, and integrators are recommended to use the Scheduling RESTful Gateway instead.

Scheduling RESTful Gateway (SRG)

The Scheduling RESTful Gateway is intended to provide a single secure point of entry for sending data to and receiving data from a PSO system.

Scheduling Service Manager (SSM)

This service is optional but is recommended to be used. The purpose of this service is to automatically initiate a service restart of any failed services on the server the SSM is installed on. It is recommended the SSM is installed on all servers operating scheduling services. The Scheduling Administration Service detects any unexpected failure of another component and sends a message to the SSM on the required server to attempt a restart. The SSM will only work if an instance of the Scheduling Administration Service is installed and functioning.

Scheduling Simulation Service (SML)

This service provides support for running WISE simulations.

Scheduling Travel Analyser (TRA)

This service provides travel analysis using the HTM to enable isochrones to be output.

Planning & Scheduling Optimisation Workbench (PSW)

An internet interface application allowing users to interact with the scheduling system.

The Workbench consists of a number of workspaces, detailed below. General details can be found in the user guides.

  • Scheduling Workspace - this provides a graphical and geographic representation of the schedule and allows for manual intervention. Details are included in the Scheduling Workbench User Guide.
  • Administration Workspace - this allow users to perform administrative functions such as setting parameter values and creating new users. See the Scheduling Administration Guide for details.
  • Planning Workspace - this provides a number of data management screens and also the ARP and WISE functionality. The data management screens provide a repository for standing data for use by the scheduling system, including resource details.

    • Data Management - provides a repository for standing data for use by the scheduling system, including resource details. See the Advanced Resource Planner Guide for details.
    • Advanced Resource Planning (ARP) - provides a tool for managing resources/shifts/skills and project based planning. See the Advanced Resource Planner Guide for details.
    • What If Scenario Explorer (WISE) - a tool enabling organisations to plan the number of staff they need, where they should be deployed, and the business performance (KPIs) that they may expect to achieve with those staff.
  • Data Capture Workspace - this allow users to configure and view details of the data archive database. See the Schedule Archive Guide for details.