As a Customer, I Want To See Up-to-Date Costs I’ve Incurred, Using a Web Application
I think it's important, that in a software development company, as all others, customers get transparent up-to-the-minute information about what costs they have incurred. Alas my company can't provide that at the moment, due to our tooling (this is a deficiency, or at least difference of opinion, between me and LiquidPlanner, the tool we use for tracking time.) This is the email I sent to LiquidPlanner support explaining my position:
I and my team do work. We use LiquidPlanner to track our done time. I can export the timesheet data and write invoices to my customers once a month. So far so good.
However, imagine half way through the month, a customer thinks "I wonder how much work Adrian and his team have done? My budget is a bit tight, I hope they're not working too much, and I'm going to get a bill I can't afford!".
- For my cellphone I can log into my cellphone provider's website and see more-or-less up-to-date information about how many calls I've made and what their costs are.
- With my credit card I can log in and see what I've already purchased this month.
I would like that my customers are able to log on somewhere, and see, "what work has Adrian's company done, that I haven't been billed for yet?"
My customers currently get a "shock" when they receive the bill at the end of the month.
- On one side, obviously I want them to be informed, and know how their bill is increasing as each day goes by, for the sake of transparency.
- On the other side, it's a good argument for me, if the customer asks us to do lots of work during a month, and then when I send them the bill, says "I didn't know you were working this much! I can't pay the bill!" after we've already done the work. If I can argue "You could have logged in any time to see how the charges were progressing" then I have a better argument that they have to pay the bill.
- It's a good argument to my employees to keep their timesheets up-to-date: if they know customers might use the information without warning at any time. (Employees, otherwise, are not notoriously good at keeping their timesheets up-to-date..)
One company I worked for used Redmine to track time. Their customers could log in to Redmine and see the amount of work done. This was a simpler system, in this case they could only see "Employee X has worked N hours this month", but as I charge a fixed hourly rate per employee (not per project, not per activity) this would have sufficed for my purpose.