Employee Task Management System

Programming Projects

I was contacted by a client to create a system which calculates the workload for employees based on their assignment to tasks and appointments. The system needs to solve two problems: Firstly, different staff members work different numbers of hours, which makes it hard to allocate tasks fairly and proportionally. Secondly, the client wanted to use the system to analyse past workloads and to anticipate future workload, in order to improve her system of work.

Implementation

Screenshot of ETMS
Screenshot of ETMS.

The solution contains an algorithm to suggest new employees to tasks, based on the type of tasks they are currently assigned to, how many hours they should work a week, and how what they are doing at the time.

The solution was written as a web application, using Python, Flask and SQLAlchemy.

ETMS' Graphs
Server side rendered graphs in ETMS.

Originally I created the graphs using a HTML5 canvas. However, during the first client feedback sesson, I found out they used Internet Explorer with JavaScript disabled. This meant that I needed to move all of the graph rendering to the server. I used the Python Imaging Library (PIL) to do this.