Team Foundation Server is a fantastic piece of software: its power and flexibility allows you to tailor TFS to your existing processes instead of the other way around. Microsoft's Team System Web Access
add-on is an equally excellent piece of software that adds a web frontend to TFS, freeing you from the requirement of having everyone at your company install a fat client in the form of Visual Studio Team Explorer. However, the one thing that was missing from the equation was some sort of timesheet application: time tracking is a big requirement at many companies and mine is no exception. So I thought that it would be great if I could create a timesheet extension for TSWA that integrated with work items in TFS and was driven off of values that the user entered in the "completed work" fields. From this, the TFS Timesheet project was born. It's integrated completely into the TSWA interface and contains important features such as the aforementioned work item integration and administrative review. In the future I hope to add things like data export to standard timesheet file formats. I hope that this is useful to someone whose firm is considering migrating to TFS and if you have any problems or feature suggestions, please let me know.
Basically, here's how it works: once you have everything installed, you'll see a new tab called "Timesheet" on the far right when you access TSWA. Clicking on this will take you to your timesheet for the current week where you can alter the values that were spent on various work items each day. As you do work on an item and update the value of the "Completed Work" field for it, the increase in the amount worked gets added to an entry for that work item on the current day. While these values get added automatically to the current day, you can easily alter the allocations if you forget to enter time for a few days. As you increase or decrease timesheet values for a particular work item, the completed work and remaining work fields in the work items are updated accordingly: for instance, if you add hours to a work item, that same number of hours will be added to the work item's completed work field and deducted from the remaining work field. Finally, for administrators, you will see an administration button when you click on the timesheet tab that allows you to browse through timesheets on a per-user basis or go straight to the ones that have been marked as completed and need your approval. If you mark a timesheet as approved, it becomes locked down and can no longer be modified. If you set a timesheet to rejected, you will see a text box that allows you to enter comments and an email notification will be sent to the affected user.
For installation instructions, please see Readme.txt in the Install directory (if you downloaded a release package) or in Stratman/Web/VSTS/Install (if you downloaded the source).