One of the philosophies of SCRUM is that how much work you have done is irrelevant to meeting the sprint goals. Knowing you have done 5 hours of work is not important, what is important is knowing you have 10 hours left. In my experience, it is not uncommon to start with an estimate of 8 hours, and after 5 hours of work still have 10 hours (not 3 hours) to go. The actual scope of the work becomes more visible to the person doing the work as the work progresses. This was one of the real 'ah-ha' points of Scrum management for me.
So, have the team keep their remaining work updated (this is a better predictor of when you'll be ready to deliver).
The important factors are team capacity remaining and estimated work remaining as related in the sprint burndown chart. Make sure the burndown line approaches 0 work left to go @ 0 time left to go. Above this line, and its time to reduce scope, below this line, and it 'may' be time to add to the scope.
If you absolutely have to track work done for project billing, it is pretty easy if everything in the sprint is for a single project. Otherwise, you should have multiple sprint team assignments to separate the projects. At the end of each sprint, in the sprint retrospective, you should always bring up estimation lessons learned to be applied to future sprint planning. At first every team I have worked with over-estimates, and after a few months starts to get it really right.
I hope that helps...
Dan
Hi Dan, sorry I managed to miss your response for a few weeks.
I have worked out an efficient way to capture actuals now.
However what you say seems like an 'ah-ha' leap I'm still not quite getting. Do we not need to capture actuals at all?
I anticipate invoicing the team's time weekly... showing actuals against agreed product backlog items selected for the current iteration. So each week the customer will see how much they have invested in each backlog item.
If you do not record actuals, and you had to invoice team time weekly, what would your invoice contain? A list of product backlog items actually worked on? How would derive the hours to charge?
Or would you use a completely different approach to working out what to bill?
Another way of looking at the problem is... if the customer wants to see how much hrs you have spent on a product backlog item at a point in time, where would you pull that number from?
Thanks,
Mike