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:
