In Time Tracking and Agile Software Development we overviewed why teams should consider tracking their time. Primary reasons include:
- You’re billing your customer by the hour
- Your organization wants to account for CapEx/OpEx
- Your organization wants to take advantage of tax credits (typically for R&D work)
A secondary reason to track time is because the team wants to measure where they are spending time so as to target potential areas to improve. This is more of a side benefit than anything else – if this was your only reason to track time you’d be better off simply discussing these sorts of issues in your retrospectives. But if you were already tracking time then running a quick report to provide the team with intel likely makes sense for you.
So what are your options for recording time? Potential strategies, which are compared in the following table, include:
- Automated report from an agile management tool. The basic idea is to extract data from an agile management tool (JIRA, TFS, LeanKit, …) and load it into your time tracking system.
- Manual input by team members. Each team member, typically once a week, inputs their time into the time tracking tool.
- Manual input by the Team Lead. The Team Lead (ScrumMaster) inputs the time for their team into the time tracking tool.
- Manual input by a Project Manager/Coordinator. A PM or Project Coordinator, often in a support role to the team, inputs the time of team.
- Don’t track time at all. ‘Nuff said.
Table: Comparing options for tracking time.
|Automated report from agile management tool
- Very efficient because it doesn’t require ongoing data input
- Sufficient for CapEx/OpEx purposes
- Sufficient for customer billing when the billing units are by the day (or greater)
- Requires a bit of development work to feed data from your agile management tool into your time tracking system
- May motivate the team to start treating the agile management tool like a time tracking tool (which often negates the value of the management tool)
- Often requires a bit of (programmatic) fudging of the data to calculate the time not captured in the tool (such as coordination meetings, demos, retrospectives, …)
- May require a bit of negotiation with your organization’s auditors (if any)
- Only an option for teams using agile management tools
- Works well for teams that are working in a fairly consistent manner (i.e. mature teams that have gelled)
|Manual input by team members
- Potentially the most accurate approach
- Sufficient for CapEx/OpEx, tax credits, and customer billing
- Team members often perceive this as an overhead
- People will be motivated to input what they believe management wants, particularly if any sort of rewards or punishments are thought to be connected
- Potential for significant expense across the organization (a few minutes per person per week starts to add up) if this gets too detailed or complicated
- For people working on multiple teams (a question idea anyway) time tracking often becomes onerous
|Manual input by Team Lead
- Shifts the data input burden away from the team
- Sufficient for CapEx/OpEx and tax credits
- Likely sufficient for customer billing
- Not as accurate as other strategies
- Takes the Team Lead away from leadership tasks
- Requires the Team Lead to know what is going on within the team (which frankly should be a given)
|Manual input by Project Manager/Coordinator
- Same as manual input by Team Lead
- Not as accurate as other strategies
- Likely requires the PM to interview/badger team members to find out what they did during the week
- Little better than “make work” for the PM
|Don’t track time at all
- Your organization may be losing out on tax credits
This blog posting was motivated by a conversation that I had with Stacey Vetzal on Twitter.