shifts-solver

Finds a solution to fitting employees with preferences in a schedule for shifts-based operation (GWT, Google AppEngine).

View on GitHub

Shifts Solver

Finds a solution to fitting employees with preferences in a schedule for shifts-based operation using heuristical backtracking.

Shifts Solver is a Google AppEngine application. To try Shifts Solver install AppEngine SDK and/or an AppEngine IDE which allows you to run Shifts Solver localy or to upload it to Google infrastructure (you may use free AppEngine tier to run it). I implemented Shift Solver using Eclipse IDE for Java with AppEngine plug-in. Simply follow how-tos to set up the development environment and then use Eclipse project that can be found in my Git repository to import Shifts Solver project to Eclipse. Alternatively you may use your favorite tool/IDE to build and deploy the project.

Overview

Home:

[![Home](http://me.mindforger.com/project/s2/s2home.png "Home")](http://mindforger.com/project/s2/s2home.png)

Employees management:

[![Employees Management](http://me.mindforger.com/project/s2/s2employees.png "Employees Management")](http://mindforger.com/project/s2/s2employees.png)

Month preferences management:

[![Month Preferences Management](http://me.mindforger.com/project/s2/s2preferences.png "Month Preferences Management")](http://mindforger.com/project/s2/s2preferences.png)

Solution management:

[![Solution Management](http://me.mindforger.com/project/s2/s2solution.png "Solution Management")](http://mindforger.com/project/s2/s2solution.png)

[![Solution Dlouhan Management](http://me.mindforger.com/project/s2/s2dlouhan.png "Solution Management")](http://mindforger.com/project/s2/s2dlouhan.png)

[![Solution Employees Management](http://me.mindforger.com/project/s2/s2allocation.png "Solution Management")](http://mindforger.com/project/s2/s2allocation.png)

[![Solution Edit Management](http://me.mindforger.com/project/s2/s2solutionEdit.png "Solution Management")](http://mindforger.com/project/s2/s2solutionEdit.png)

Functional Specification

Employee roles:

Employee jobs:

Shift types:

Schedule:

Employee preferences:

Rules:

Technical Architecture

Frontend:

Backend:

Plan

The implementation plan: