Wednesday, March 26, 2008

Project Server 2007 Timesheets the goods and bads

By now we all know that Task updates and timesheet entry are 2 separate functions within Project Server, generally that is a good thing. The not so good thing is that task updates and timesheet entry is not tightly integrated in Project Server 2007. A user will actually need to import timesheet data into my tasks or vice versa. That is cumbersome as we know.

Having used Timehseets for a while now, I thought I write the pro's and contras of Project Server's timehseet functionality.

Lets start with the Pros:
  • You can maintain timesheet data and task data separate:
    Why is this a good thing I hear you say :) . Well, many organisations would like to plan project tasks in a much more granular level than actually entering time against. Essentially it means that you can maintain your project task information separately from the timesheet data. The timesheet data can be entered on a Project level ( not task level ).

    The downside to this is obviously that a PM still requires to reconcile the Project data based on the actual time entered on a Project level. This can be an unnecessary overhead.
  • Timesheet has a separate workflow to Task update
    When users enter timesheet data and submit this data, it will go to the so called "Timesheet Manager". This could be a resource manager or team leader. The timesheet data can then be approved or rejected by the timesheet manager. This will not influence the project at all.

    Should you want Project Managers to approve the time spend on a project, what needs to happen is Timesheet data needs to be imported into the My tasks and then needs to be submitted by the resource. This will ensure that the PM will receive the Project update ( not the timehseet update).
    Since many organisations want to have this done in one hit, Microsoft made code available that allows you to automate this function. Check out the following link:

    The downside is that a resource cannot update the remaining work, since only the actual timesheet data is populated in the My Task and the task update is automatically submitted to the PM
  • Non Project Tasks - Admin Tasks
    timesheet data can include not only project work, but also administrative tasks, which are managed separately from project tasks.
  • Administrative Time
    Some Administrative tasks can go through an approval process. ( e.g. annual leave ). Once this admin task has been approved, the resource utilisation will show that the resource is not available
  • Great Reporting
    Project Server consists of many OLAP cubes ( 14 in total ) some of them are fully dedicated to timesheet information. You can essentially get all timesheet data out of the OLAP cubes, making the management of timehseeting much easier.

    Further to this Project Server consists of a fully dedicated reporting database. You can extract any timehseet data out of the reporting database with any SQL reporting tool like reporting services, or the report builder.
  • Timehseet Periods
    You can manage your organisational timehseet periods separately from your project periods. Generally I would assume that weekly periods are appropriate, but you can have daily or monthly periods if you like
  • Timehseet Classification
    For Accounting purposes, you have the ability to create your own timsheet classification. Timehseet classification allow you to uniquely identify different types of timesheets, which could be useful for financial consolidation. BE AWARE.... only the general classification is imported into the task update.
  • Different Times
    A user can maintain Actual time , Actual non billable time, overtime, and non billable overtime
  • Surrogate Timesheet
    You can maintain timesheets for someone who is not able to update his/her timehseet

I am sure I forgot some of the great features of the timesheet. To ensure that you have all the info check out this link which explains the timesheet functionality in detail:

Now to the well..... not so nice features, the cons :)

  • Integration with My Task
    As much as it can be a good feature not to have your tasks updated based on your timesheet automatically, as much it can be a curse. I personally find it more of a curse than a good feature. One of the compelling reasons to use the timesheet / taskupdate in Project Server 2003 was that it automatically updated your tasks as well. I truly hope and believe that this will be better in the P14 ( next release )
  • Adminstrative Tasks for everyone
    You cannot determine that certain tasks are only for certain user groups. That is extremely annoying, especially if you have a long list of admin tasks. Essentially it means that a developer can see and enter time against an admin task that is only for Account Management. I hope that this will be rectified in the next release.
  • Timesheets do not automatically update
    Once you create a timesheet, it actually ( depending on how you set it up) looks up the tasks you are supposed to work on this week and updates your timesheet with these tasks. GREAT, but what happens if the PM gives you a new task that you meant to work on this week? I would assume that the newly assigned task is displayed in the timesheet, but no it is not. You will actually need to hunt for it using the "add lines" picker. Which brings me to my next con :)
  • Add lines picker
    Come on Microsoft you can do better than that. If I have many projects and tasks, how do I find the my tasks in the add line picker? It is not a nice User Interface and I hope that the next release will include a more appealing dialog window.
  • Year to Date....
    The year to date vacation time used and the year to date sick used, which can be found in the timesheet header section cannot be reset. hmmmmm. It would be nice to have some kind of admin function that allows me the reset these numbers. Also, Vacation is not the generally used term in Australia, it is Annual leave. It would have been nice to consider a name change.
  • Timehseet approved, task isnt approved
    It is great that you can have different approval process in timehseet and tasks, but ( and I guess that comes back to the tighter integration), if you have a timehseet approved, and then submit your task update, which may was rejected, it is complicated to update your already submitted timesheet. you essentially have to recall your timesheet, change the actual figure, import the task again, resubmit both timehseet and task. hmmmm not sure what the best answer is, but I do know that this is tedious. Lets hope MS comes up with something more slick in the next release.

Well, I dont think I have all the cons covered, but believe the main annoying ones. Please give me your experience with the timesheet. All in all I am sure the Project Server is on the right track with task update and timesheet, but there are still some miles to cover :)

I hope you enjoyed this post