Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Warning

This feature is not yet stable. It is in preparation for the next release and will be available until end of June 2012.

Idea

There are two different time planning levels within ictime:

...

Apart from having two different places to enter time budget planning information, there is also a specific approach for being able to manage rough time budget plans and detailing planning at the same time. This is explained in detail in this chapter 

Info
titleNew Features

Version 2.0.1
Correct handling of issues assigned to more than one component, load issues on opening of component, keep configuration in session (when used via JIRA "Project" tab), deactivate non-working issue operation option.

 Before using the planning sheet, please make yourself familiar with the planning concept of ictime, specifically with the concept of generic values versus values retreived from lower hierarchy levels (see Planning Concept).

Info

Please note that planning in ictime is always time-based. Even though you can assign a cost/price to you work for time you log, we do not offer financial budget planning at this stage, but just time-planning.

Planning Approach

When you plan your project, especially in the beginning, you might only have a very high-level planning (e.g. time budgets on project or component level), and with the time, you can go more into details (tasks, sub-tasks). So you need to start planning with very rough numbers, but of course with the time, you want to benefit from being able to plan more in detail. It also might happen that some people in general prefer to plan top-down and others want to plan bottom-up:

  • top-down planning, where planning only takes place on project and maybe component level,
  • bottom-up planning, where plan figures for a project or component (only) arise from the plan figures for tasks and sub-tasks.

In fact both approaches have serious disadvantages. The first does not allow for control on lower levels, the second leads to a situation where the planning only gets complete towards the end of the project, because you usually can't pre-define all tasks and sub-tasks in the beginning of a project.

As a conclusion and to cover both needs, you need to set top-down time budgets on a certain level, and at the same time, you want to use bottom-up time budgets that are derived from a more detailed planning on lower levels. How this can be reached is described in the following.

When doing the planning and when showing time planning values, we distinguish two kinds of values:

Planning ValuesDescriptionRemarks
genericplan-values entered on this level, you set this valuepossible for components and project; on task level, this is simply the JIRA work estimate
calculatedtime is retrieved from lower levels, you see this value, but can't set itthis is a value calculated by ictime from available data on the next-lower level according to the logic explained below

Depending on the level (project, component, task) you are working on, these values have a slightly different idea for the ictime project time planning sheet:

LevelValueDescription
Sub-Taskgeneric*JIRA work estimate on sub-task level
Taskgeneric*JIRA work estimate on task level
Componentgenericif you set this value, it will be considered to calculate the total for the project, if you do not set it, the calculated value for this component will be taken instead
 calculatedsum of work estimates of all tasks of this component, will be considered to calculate the total for the project if no generic value is set for this component
Projectgenericwill be displayed for information purposes
 calculatedsum of plan values of all components (generic and/or calculated, this is decided on component level)
Expand
title* Note ... click here to expand

In fact, JIRA calculates the work estimate for a task as sum of work estimates of all sub-tasks + the work estimate for the task itself; but from ictime planning point of view, this is not a calculated value, as in our project time planning sheet, we do not show the sub-task level, but our starting point is the JIRA work estimate result on task level. This way, work estimates for sub-tasks are fully considered, but we do not show this as explicit planning level.

Tip

Even though it might be difficult to understand in the beginning, it is very simple. It's basically all about the component time planning value. By setting a generic plan value on component level, you decide that this value should be used for calculating the results for the project (top-down approach, not very detailed). By not setting it, you decide that the calculated result for the component (= work estimates for all task/sub-tasks of the component) should be used for calculating the project time budget (bottom-up approach, detailed).

Examples

Have a look at the following example:

LevelGenericCalculatedRemarks
Task A1-015h We have made a work estimate of 5h.
Task A1-0210h We have made a work estimate of 10h.
Component A130h= 15hWe have planned 30h for component A1, and we have a calculated plan value for this component of 15h from task level. Obviously, the generic value is to high or we are still missing work estoimates for tasks of this component.
Component A220h We have planned 30h for component A2. No work estimates for tasks yet, so no calculated value.
Component A310h We have planned 10h for component A3. No work estimates for tasks yet, so no calculated value.
Projekt A100h= 60hWe have planned 100h on project level. We have a calculated value of 60h from component level. So still some planning to do on lower levels ...
Tip

You remember, we wanted to plan top-down and bottom up at the same time, and the key is how we handle component planning values. The example above shows a planning situation where we are still missing some detailed planning. As we are aware of that, we still have set plan values directly on component level, and we also still maintain a generic value on project level. This way we have decided that we want to use the (rough) component values for calculating the project plan and are not ready yet to replace them by calculated values from task level. All this gets transparent as we can see that generic and calculated values are present and still don't fit very well.

Now have a look at the same project in a later planning stage:

LevelGenericCalculatedRemarks
Task A1-015h We have made a work estimate of 5h.
Task A1-0210h We have made a work estimate of 10h.
Task A1-0310h We have added this task and have made a work estimate of 10h.
Component A1 = 25hWe have deleted the generic value for component A1, as we have decided that the detailed planning for tasks of this component is ready now. So we only have a calculated plan value for this component of 25h from task level (doing the detailed plan on task level, we also realised that 30h was to much).
Task A2-0110h  
Task A2-0225h  
Component A2  =35hWe have deleted the generic value for component A2, as we have decided that the detailed planning for tasks of this component is ready now. So we only have a calculated plan value for this component of 25h from task level (doing the detailed plan on task level, we also realised that 20h was not enough).
Component A310h We have planned 10h for component A3. No work estimates for tasks yet, so still no calculated value.
Projekt A = 70hWe have deleted the generic value on project level, as we think that planning for components is now okay and reflects the overall time budget we will need. So we have a calculated value of 70h from component level, and big parts of that planning value is a result of work estimates on task level.
Tip

The example above shows a more detailed planning. Except for the component A3, where we do not have tasks with work estimates yet, we have decided to basically rely on the work estimates from task level, and we also have decided that planning is good enough to eliminate the general time budget for the project itself, as the data we get from lower levels is complete enough.

...

Setting Plan Values

Work Estimates (Issue Level)

Plan values on the level of tasks and/or sub-tasks are managed via the respective JIRA functionality. See http://confluence.atlassian.com/display/JIRA/Logging+Work+on+an+Issue#LoggingWorkonanIssue-Specifyingtimeestimates and Work Estimates, Remaining Estimate.

 

Component

Project

Target/Actual Comparison (Reports)

Accuracy / Planning Progress

Difference in % between a generic and calculated value on one level (indicates that detailed planning is required)

...

Planning is also not related to resource-allocation, so you are not planning who is going to do what, but just which time budgets you expect on the level of project, component and issues. These plan values will then be compared with the time logged in the Plan/Actual interface (see Plan/Actual Comparison).

Table of Contents

...

Accessing Plan/Actual Comparison

You can either access the plan/actual sheet via the JIRA project tab or via the ictime navigation.

Plan/Actual Comparison via ictime Navigation

Image Added

When accessing via the ictime navigation, you have to choose a project first when entering the plan/actual comparison.

Image Added

Choose a project and click on the "Show" button.

Plan/Actual Comparisonvia JIRA Project Tab

Choose a project via the JIRA project tab and select the navigation tab "Plan/Actual":

Image Added

If you once have entered the plan/actual comparison sheet this way, you can change the project in JIRA and will directly go to the plan/actual comparison sheet for the respective project.

Basic Structure of the Plan/Actual Comparison

The plan/actual comparison sheet consists of the filter bar, the project section and components.

Filter

The filter bar helps you to restrict the display to a project (only if called via ictime navigation), component, version or user (coming soon - currently, only component is available).

Image Added

Info

Whatever filter you apply, the plan/actual comparison values on project and component level will not consider this filter. Reason is that plan values might be generic, and it does not make sense to compare a generic plan value that has been set for a whole project or a whole component with real values that are filtered and only include some components or some issues etc. Idea of the filter is basically restricting the issues displayed to a dimension you are interested in.

Plan/Actual Comparison for Project

This is the highest plan/actual comparison level.

Image Added

FieldDescriptionRemarks
PlanPlan value on project level.either generic or as result of all plan values of all components
Actual (Logged)Time logged on all issues of the project. 
RemainingSum of all remaining estimates for all issues of the project. 
DifferencePlan minus time logged.due to JIRA options for handling of remaining estimate this value is not necessarily the same like "Remaining"
QualityA quality factor for the overall project planning. The indicator is calculated based on the quality factor of all components.

The quality factor can only be calculated if there is at least one issue that

  • has an estimate
  • has time logged
  • and is resolved or closed.

Plan/Actual Comparison for Components

This is the second plan/actual comparison level. If you did not define components for your project in JIRA, ictime will automatically display a component "Without Component".

Image Added

Field/OptionDescriptionRemarks
PlanPlan value for component.Can either be generic or retrieved form the issues of this component, see Planning Sheet and Planning Concept.
LoggedTime logged for all issues belonging to this component. 
RemainingThe "remaining estimate" value from the respective JIRA field for all issues of that component.Keep in mind that this is not necessarily the difference between plan and logged, as JIRA offers various options how to set the remaining value when cerating/editing an issue and when logging work.
DifferenceThis is the real effective difference between planned and logged for all issues of that component. 
QualityQuality indicator for planning on the level of this component. The indicator is calculated based on the plan/actual difference of issues of that component that are resolved or closed, and we consider the plan value amount, so issue with high plan values have an higher impact on the quality factor compared to issues that have low time estimates.

The quality factor can only be calculated if you have at least one issue that

  • has an estimate
  • has time logged
  • and is resolved or closed.

When clicking on the component, you get access to all issues of the component and can see the plan/actual comparison on issue level (see next chapter).

Plan/Actual Comparison for Issues

When clicking on a component, you get access to all issues of that component and can plan time on these issues. Issues will only be loaded in this moment, and we will store in your session that you have opened this component. This setting will be kept, even if you navigate through JIRA or ictime.

This way, you can see the plan/actual values for all issues in one place.

Image Added

Field/OptionDescriptionRemarks
TaskTask key (clickable, directs you to the issue screen), name 
TypeIssue type 
StatusIssue status. 
AssigneeAssignee of this issue 
EstimatePlan value ("work estimate") for this issue. 
Remaining EstimateThe remaining estimate.Uses the respective JIRA field.
DifferenceThis is the real effective difference between planned and logged. 
QualityQuality indicator for planning on the level of this component. On issue level, quality is simply time logged divided by time planned. Quality 1 means that plan and actual result are the same, so the planning was perfect. Quality factors > 1 mean that you have spent more time than planned, and < 1 that you have spent less time than planned.

The quality factor can only be calculated if there is at least one issue that

  • has an estimate
  • has time logged
  • and is resolved or closed.