The People Suite Scheduler automates the process of generating employee schedules, taking seconds to find you the best schedule within the bounds of your business policies and rules. You can quickly set-up and resolve scheduling problems using an intuitive visual interface, or experiment with ‘what-if’ scenarios to see how changes in policy would affect your employees and your costs.

Key features:

Fully automated scheduling down to 15-minute accuracy, 24 hours a day. We use state-of-the-art, no-compromise algorithms that generate extremely high quality schedules.

Dynamic rescheduling helps you react quickly to unforeseen circumstances such as employee absenteeism.

Handles variable labor demand at 15-minute accuracy. Labor demand can be on a per skill basis for complex work environments. Schedules match the demand for each skill as closely as possible with available resources.

Handles multi-skilled employees, making sure there are always enough employees working with the right skill sets.

Easy creation of ‘what-if’ scenarios lets you see the effects of policy changes on schedules and costs.

Demand forecasting helps you predict your staffing needs based on sales projections and historical data.

Web-based, scalable architecture for multi-user or standalone deployment. Simple and efficient design for low-cost deployment.

Easy integration points help you couple the entire People Suite to your existing systems and data sources.

 

Technical Overview of PeopleScheduler

PeopleScheduler is a web-based scheduling system for creating optimized workforce schedules. The scheduling algorithms obey your operational rules, business policies and legal requirements and generate an optimized schedule that accurately aligns your workforce with your labor demand. Scheduling takes into account the staff availability, staff skill sets and the labor demand for each working station throughout the day.

PeopleScheduler generates schedules by translating the real scheduling problem into a mathematical model, and then using optimization technology to solve this model. The scheduling process is entirely automatic and very fast - a one-week schedule normally takes less than a minute. The generated schedules are of very high quality and can be used without further modification. The user can view and interact with the schedule using a highly graphical front-end interface. Users can modify schedules and reschedule, if they wish.

PeopleScheduler consists of the following main modules:
- Scheduling Interface. Allows the user to control and interact with the schedule.
- Optimization Engine. Performs the automated schedule generation.
- Analysis and reports. Analyzes schedules and generates reports.
- Administration. Manages the data needed for scheduling.
- System Administration. Manages the multi-user system.
- Data Exchange. Manages data exchange.

Each of these modules is described in greater detail below.

Scheduling Interface

This is the main module where the user views and manipulates the schedule using the interactive Gantt chart, and where the user defines the scheduling rules and constraints for the store. The user can scroll from day to day, zoom in and out, create tasks for staff, move tasks between staff or to a different time, stretch tasks, change stations allocated, and so on. Below is a screenshot of the interface.

 

If the user wants to control how certain parts of the schedule are generated, they can manually modify parts of the schedule and "freeze" those tasks in place. If a task is frozen, the automated scheduling will generate a schedule around the task and will not change it. Training and any 'pre-scheduled' tasks are also displayed in the Gantt chart, but are not changed by automatic scheduling. The policy editor allows the user to set or change the policies to be used when scheduling and when checking schedules - these are the 'rules' about what makes a valid schedule. Policies can be set at staff individual staff level, contract level, store level, or at a higher organizational level (e.g. departmental level).

Optimization Engine

The optimization engine uses state-of-the-art algorithms to generate staff schedules. The generated schedules make the best use of available staff to meet labor demand, subject to the policies and rules configured for the store. The scheduling algorithm determines when staff start and finish work, assigns tasks to them throughout their shift, and determines when they will take their main breaks (e.g. meal breaks). The system can handle any mixture of fixed and flexible shift types. For example, you may have some permanent staff working fixed shifts and some part-time staff who can work flexible shifts.

Scheduling takes into account each staff's skillset, allocating them tasks that they are qualified at, putting them on the tasks they are best at, and making sure the best staff are on duty during peak periods. The currently supported policies include the following:

- Staff min/max working days per week
- Staff min/max working hours per week/day
- Meet demand for each skill type
- Staff work within their availability period
- Min/max skills used per shift, per staff
- Vary skill use over time
- Minimize the number of skill transitions
- Ensure minimum skill level met at each time point
- Minimum period between shifts
- Minimum duration using one skill
- Break policy
- Shift patterns (for fixed-shift workers)
- Staff maximum consecutive working days

Analysis and reports

This module lets you generate reports that show the schedule itself, analysis of labor costs, crew assignments, exceptions and so on. Reports are generated on-the-fly and appear in the web-browser on the client machine as Adobe Acrobat documents that can be printed or saved locally.

Administration

This module manages the data needed for scheduling, such as staff availability, staffing demand for each station, store operating hours, and so on. The store and staff details can be edited/created in this module.

System Administration

Users can be created or deleted, access permissions granted or removed, controlled shutdown, usage monitored, error logging, purging of old data, etc.

Data Exchange

This module controls the movement of data between PeopleScheduler and other systems (payroll, HR, legacy systems, etc).

 

Technical Architecture

PeopleScheduler has a web-based, multi-tier architecture using Java standards (JDBC, Servlet) to support quick and flexible deployment. The main server application runs on a web server or appserver able to run Java servlets (e.g. Apache Tomcat, iPlanet, WebSphere etc). See the diagram for an overview of the architecture.

The main PeopleScheduler application is pure Java and can therefore run on almost any platform. We support Sun Solaris, Linux, Windows NT/2000 server operating systems, and Sun iPlanet, Apache Tomcat and LWS web servers. Database access is via JDBC, which works with most relational databases - we support Oracle, Informix, Microsoft SQLServer, and Postgres.

PeopleScheduler integrates with legacy systems using "DataServers". These are small, flexible interface programs (in Java) that reside on the legacy system and move data to/from the PeopleScheduler application. For example, a DataServer might run external scripts on a legacy server to obtain data and then transfer it to PeopleScheduler.

Schedule optimization is done using "OptiServers" that can run on separate machines and connect to the main application (see diagram). The ability to run OptiServers on different machines from the main server makes it easy to scale the application for more stores simply by adding machines. The OptiServer is a native application, so you need a version for the particular platform you want to run it on. We support versions for Sun Solaris, Linux and MS Windows.

DIAGRAM BELOW: