Time estimation and tracking?

Hi,

I am sure you have something planned for time estimation and tracking. A simple implementation could be the following:

Record Time: User can enter any time spent on that entity in terms of hh:mm or from-time to to-time. These records create a Time Log for the entity and also gets added to the Timesheet for the respective users.

Time Spent: Always shows the total duration of time spent on the entity (like task). This is calculated from the logged time.

Time Log: Shows an expandable list of all time logs recorded for this entity by all users. Shows date, from-time to to-time (optional) and duration.

Estimated Time Remaining: At the start of a task (entity), user can enter the estimated time required to work on this task/entity. Afterwards, it is updated by user to always reflect the time actually remaining to finish the task at any point. This is NOT calculated. User can edit this field and enter the time that is estimated to be remaining for that entity at any time, reflecting the real situation.

Timesheet: Standard timesheet for the user, collating all time spent in all entities, shown for each day of a time period, with totals for day and totals for period. A supervisor can view all subordinate users timesheets.

Thanks!
Shafqat

2 Likes

We can quite quickly create such Time Tracking app (without timesheet so far). In fact it will take few minutes. The tricky part is Formula for Total Time Spent. While we do have formulas, they are extremely hard to setup so far.

This is how you can create Time Tracking app

And this is how formula works

Time list inside Task should be improved to display more info. It will be done in future. I just show how it can work.

2 Likes

Yes, I just discovered the Formula thing but got scared seeing the code!

But all these are very promising indeed!

For our use, Time Tracking is very essential.

Yeah, soon we will move formula to a field with a sane excel-like syntax :slight_smile:

3 Likes

Sounds great!

I think Time Tracking may be better done by Extensions. Whenever these generic mechanisms will compromise usability, I think Extensions is the answer for that.

From UI point of view this is true. Timesheet, for example, will be a UI extension.

1 Like

Hey, just wanted to weigh in here, @Shafqat_Ullah you really summarized Time Tracking perfectly, kudos! Your description pretty much covers all that I think should be needed in any time tracking, and most apps out there only get part of it right. We too really need Time Tracking and it would be terrific if Fibery could offer it just as you describe it.

In particular, a great feature is a log where as you log your time - either manually, or by turning off a timer you started earlier - and then add your “log” such as “wrote first draft” or “narrowed target list down to 50,” the log associate with the time will also go into the Entity’s activity stream, along with other comments and other history, such as “state changed to ‘in progress’”

Very eager to see this feature come through!

3 Likes

I wanted to add to this post some additional details about what I’m hoping to see in Time tracking
What I’m hoping for is a typical set up you’d see in the likes of Jira and other dev apps:

  1. @Shafqat_Ullah, you mention the ability to manually update the Estimate:

I agree that is a great feature and needed. However, I’d also like to see the ability for this to happen automatically, so the “Remaining” will update as time is logged against the Estimate. I’ve found that this is sometimes easier for the person logging time. All this would be registered in the Entity’s Activity log, including when he Estimate is updated. So ideally, you’d have the option to both manually update the Estimate, or have it automatically adjusted based on time logged against it.

  1. The Estimates would also factor into Gantt/Dependency and scheduling. So when scheduling, the end date could automatically create if an Estimate has already been provided. So if you first provide an Estimate of say 8 hrs, then schedule, the end date would automatically be one day later than the start date you set up. Moving dependencies around will also affect these.

  2. A time log would add entries into the Activity Log to register all this (partially what I meant with the first point).

Hope this is useful, and thanks guys!

1 Like

There can be another field called “Time Remaining based on Original Estimate (TROE)”, which can track original estimation vs actual automatically, as an an informational aid to improve accuracy of estimation for similar task in future (could also show percent overrun). Manually updated “Time Remaining based on Current Estimate (TRCE)” field is needed to reflect the actual current situation. Most of the time people do optimistic estimation and hence the TRCE field is required for real-time planning. The field should be updated by task performer at the earliest time s/he realizes more time than originally estimated will be required eventually to complete the task.

In a Gantt-like view, both these values (TROE and TRCE) can be easily visualized (for the task or rolled up at any higher level for parent task/item).

1 Like