I rarely talk about work, and specifically what I do there, but I have recently been working on a small, but interesting project that I think is worthy of description. It’s a project resource tool.
You see, we have numerous project managers for the endless list of projects that have to be managed. Naturally, there is a limited supply of people to work on those projects and often there is conflicts over who get whom to work on what.
For a while, the way that this has been managed is through email and Excel spreadsheets. Here’s how it works:
Once a month, all project managers open an Excel template. This template contains a table which they fill out, copy, paste into an email message and send to a distribution list. Program managers monitor this list and approve or deny the resource requests. It’s time consuming on both ends. I suggested a web-based tool for automating this. It would be simple, and it would save nearly everyone involved a small chunk of time each month.
I met with some of the key players involved, developed a data model and a UML use case diagram. From that, I held a small design review to make sure that I wasn’t breaking any Laws of the Universe, and once everyone agreed that I was not, I proceeded with the coding. For the last two days, I’ve been doing nothing but coding, and I am nearly finished.
I am developing this as a .NET application using C#. Most people reading this probably wouldn’t know what this means, but lets just say it’s Microsoft’s latest and greatest. The coding is rather tedious because this application is completely object-oriented. There is a Project object, a Resource object, a Group object, and a Request object and these objects interact with each other and the application interfaces to make the application work. The tedious part is that all of the objects have to be developed and fully “encapsulated” before they can be tied to the interface, so I have not been able to see the final result yet.
However, it should be pretty cool. There is a simple interface whereby Project Managers see a list of only those projects in which they manage. From this web page, they can do a number of things, for instance, request additional resources, or get a report on their projects resource usage. Furthermore, the application will highlight those resources who have been over-requested (or close to it) as well as those being under-utilized. Resource managers can approve or deny the requests. Project administrators can add new projects to the system, and naturally, it generates a bunch of reports.
Before this application, it would take me about 10 minutes to do my project resource request for the month. With this application, I can do it in about 2 minutes. Keeping in mind that we have dozens of projects managers making requests each month, this should make everyone’s life a little bit easier.
And so there you have an example of how I spend my days. It’s not saving lives or anything but maybe the extra eight minutes each month that someone has because of this application allows them to relax just a little bit more, get a cup of coffee, even smile. More than likely, however, it just means they can focus on other things.