- Effort Estimation
- Initial Estimate
- Actual Time Spent vs Estimated Effort comparison report
- Iteration Velocity
- How Effort is calculated for high-level scopes of work: Features, Epics, Projects, Releases, Sprints, Team Iterations
- Estimation Board View
- How to limit total effort when estimations are made
In Targetprocess, Effort for a User Story or any other assignable entity (Task, Bug, Request, Test Plan Run) is calculated as sum of Role Effort values for the given entity. Additionally, for a user story, sum of effort of its tasks is also included into total effort.
The value showing the amount of work which is required for an assigned user of some role to complete a task/work item/entity.
Role Effort of a user story with single assignable role
Let's consider the most basic use case. There is a user story. It has only one assignable role named Developer. It is possible to input an effort for this role manually. We estimate that it will take 5 ideal hours from a Developer to make this user story done. We edit the Effort for Developer role and put 5 there.
Values are entered manually into the Effort field when the entity is created. For every entity its role effort can be updated later. Effort for Developer role can be set on the Estimation Board view. You can also import Effort values for multiple entities.
Role Effort for User Stories and Bugs is measured in Ideal hours or Points. The planning unit can be changed in process settings. Role Effort for Tasks is always measured in Ideal hours.
It is not possible to assign individual effort per user when both users are assigned to a story under the same role (for example two Developers are assigned). However it is possible to split story work by tasks and assign single developer to each task. Put individual effort to each task in such case.
Role Effort of a user story with many assignable roles
In the more complex example, a user story has three assignable roles: Designer, Developer and QA Engineer. Role Effort for Developer is set manually as 8 ideal hours. Role Effort for QA Engineer has not been estimated yet. For Designer role the Effort is not available at all.
The same way Role Effort works for tasks, bugs, requests and test plan runs when there are several assignable roles available.
The value showing the total amount of work which is required to complete a task/entity.
Effort for User Stories and Bugs is measured in Ideal hours or Points. The planning unit can be changed in process settings. For example, you may use Points effort units for one project and Ideal Hours for another project. Effort for Tasks is always measured in Ideal hours.
Effort of a user story with single assignable role
In the most basic example, when a user story has only one role Developer with estimated effort and no tasks are added yet, an effort for the user story is equal to its Developer role effort.
The same way effort works for tasks, bugs, requests and test plan runs when there is only one assignable role available.
Effort of a user story with many assignable roles
For a user story with multiple assignable roles and without tasks added the effort is equal to sum of role efforts of the story. For example:
Role Effort for Developer: 8h
Role Effort for QA Engineer: 2h
Role Effort for Designer: N/A
Effort: 8h + 2h + 0h = 10h
The same way effort is calculated for tasks, bugs, requests, test plan runs with multiple assignable roles available.
There is no possibility to input total Effort for an entity manually. It is always calculated as sum of efforts for assignable roles.
Effort of a user story with tasks
When a user story has tasks added, its effort consists of its own effort and the sum of effort for its tasks. Same is valid for user stories' time spent totals as well.
In the example below, a user story has two tasks. Each task is estimated as 2-hours task. Additionally, the story has 1 hour of its own effort for Developer role.
Effort of user story for Developer role: 1h
Sum of effort of tasks: 2h + 2h = 4h
Total effort for the user story is: 1h + 4h = 5h.
More complex use cases are also supported.
Effort of a user story where both the story and its tasks have multiple assignable roles
Here, a user story "User Login" has one task "Add Password Input". The task is estimated as 2-hour task for a Developer and 1-hour task for a QA Engineer. Total effort for the task is 1h + 2h = 3h. Additionally, the user story itself has its own independent estimation: 5 ideal hours for Developer role and 2 ideal hours for QA Engineer role.
Effort of user story for Developer role: 5h
Effort of user story for QA Engineer role: 2h
Sum of effort of tasks: 3h
Total effort for the user story is: (5h + 2h) + 3h = 10h.
Keep User Story Effort as sum of Tasks Effort
There is a checkbox in the Process settings that can help you to preserve total effort for a user story when you refine this user story with tasks.
The setting is available in Settings -> System Settings -> Processes -> [Edit your process...] -> Practices -> Planning -> Customize.
When this checkbox is checked, Targetprocess tries to keep total effort for a user story permanent. For example, there is a story with 5 hours of effort and no tasks.
And we add 1-hour task for a Developer into this user story.
Targetprocess automatically reduces 1 hour from Developer role effort for the user story itself. Developer effort is now 4 ideal hours, sum of effort for tasks is 1 hour and total effort for the user story is preserved as 5 hours estimated originally.
It works backwards the same way. Whenever you decrease hours for Developer role effort in one of the tasks, Developer role effort will be increased automatically in the user story. Same works for any role common for tasks and story assignments.
This checkbox setting does not affect any reports or progress calculations.
Effort of nested Bugs
It is possible to set up custom calculations and get total Bugs count, effort, time spent, cost displayed per User Story. Learn how: Metrics for Bugs in User Stories and Features.
How Effort is calculated for high-level scopes of work
User Stories and other work items can be assigned to Features, Epics, Projects, Releases, Iterations (Sprints). See how effort is calculated for these high-level scopes of work.