Tuesday, May 10, 2016

What if for Project Management

Please scroll down for additional details regarding this application.



Introduction

Are you responsible for allocating resources to projects? And would you like to see what the timelines (Gantt chart) look like when you allocate resources to projects considering;

- Priorities for each resource;
- Productivity for each resource;
- Fixed projects.

Are you interested in seeing what would happen when you increase or decrease the amount of time a resource can spend on projects?

Well I was!

The solution

For this particular question I coded a Shiny application (with R) that loads a spreadsheet with input data to generate a Gantt Chart (using ggplot of course).

The basic input contains the person (or role), the assigned project and the given priority.



Each project has an estimate to complete:



This data is used to generate the Gantt Chart:


Use cases 

I built this application with a specific use case in mind. In this case resources work both on projects as on support tasks. And, each resource can cover multiple areas.

In this use case a resource can basically jump in to help his co-worker to finish his project early.

One could change the slider to see how timelines change when more time is spent on support tasks. It could also reflect the impact of hiring additional capacity for projects.

Next Steps 

For those interested in using the application, please comment on this post. I will provide the excelsheet and publish your Gantt Chart online. You will receive your specific url.

The details

In order for the application to work specific functionality was needed.  I will explain the details of this functionality in this section.

Working on projects with equal priority

Its very likely resources work on multiple projects simultaneously, however they do not spend an equal amount of time on each project. Therefore its needed to specify the percentage of time spent on each project.

Productivity

In many cases, especially BI, resources can cover multiple (functional) areas. However their productivity might be less in some areas.

Fixed projects

Changing the amount of hours a resource can spend on all projects they are assigned to is nice. However there might be projects that simply require an amount of effort. So some project, resource combinations need to be fixed.

Setting the parameters 

The parameters / settings mentioned above can be provided via the excelsheet:


The first three column are the basic input. The columns 'Fixed' and 'Hours' are related. When 'Fixed' is set to 1, it will look at the hours and use this amount of hours regardless of the slider value. You will see when you give it a try.

The percentage column is used when a resource has multiple projects with equal priority. The available hours (provided by the slider) will be allocated according to the given percentage.

The last column contains the efficiency. The slider value will be adjusted with the percentage when allocating the hours.