Content
View differences
Updated by Niels Lindenthal over 2 years ago
# Goal ### **Environment**:
OpenProject contains extensive project controlling functions (effort estimation, progress calculation, time recording **OpenProject 12.2 RC**
### Current behavior and reporting). These existing functions steps to reproduce
<img class="op-uc-image op-uc-image_inline" style="width:697px;" src="/api/v3/attachments/36001/content">
[https://niels.openproject-edge.com/projects/progress-calculation-1/work\_packages?query\_id=338](https://niels.openproject-edge.com/projects/progress-calculation-1/work_packages?query_id=338)
1. Unset estimated times are to be extended for use in hybrid large-scale projects in which a combination of agile and classic process models not considered as 0 h.
2. It is used. In particular, it should be not possible to record or calculate the following values of set a work breakdown structure both top-down and bottom-up via a hierarchy.
# Relevant work package attributes
The following work package attributes are focussed on. They will also be renamed in this epic to make them more consistent with percentage % for the project management frameworks.
<figure class="table op-uc-figure_align-center op-uc-figure"><table class="op-uc-table"><thead class="op-uc-table--head"><tr class="op-uc-table--row"><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Name 13.0</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Name 13.1</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Editable estimated time that is defined for a parent work packages</p></th></tr></thead><tbody><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Estimated time</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Work</p></td><td class="op-uc-table--cell"><ul class="todo-list op-uc-list_task-list op-uc-list"><li class="op-uc-list--item"><label class="todo-list__label"><input type="checkbox" disabled="disabled" checked="checked"><span class="todo-list__label__description"></span></label></li></ul></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Remaining hours</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Reminaing work</p></td><td class="op-uc-table--cell"><ul class="todo-list op-uc-list_task-list op-uc-list"><li class="op-uc-list--item"><label class="todo-list__label"><input type="checkbox" disabled="disabled" checked="checked"><span class="todo-list__label__description"></span></label></li></ul></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Progress (%)</p></td><td class="op-uc-table--cell"><p class="op-uc-p">% Complete</p></td><td class="op-uc-table--cell"><ul class="todo-list op-uc-list_task-list op-uc-list"><li class="op-uc-list--item"><label class="todo-list__label"><input type="checkbox" disabled="disabled" checked="checked"><span class="todo-list__label__description"></span></label></li></ul></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"></p></td><td class="op-uc-table--cell"><p class="op-uc-p">Currently values can not be edited for parent work packages</p></td></tr></tbody></table></figure>
## Support multiple units
* Recording and display in different units (hours, days, weeks, months)
* Definition and application of conversion coefficients between the different units (e.g. hours per working day, working days per week, working days per month, etc.)
## Calculation and display in work packages views
* package.
**Example 2**: The work package attributes estimated time for % Progress, Work and Remaining work Child 1.1 itself is 24 h. It is not possible to define Progress % value for a work package have two values:
* those 24 h. The value for the the parent work package itself.
* The total sum inclunding all children work packages (including non-visible work packages).
* Both the values of the respective work package and the aggregated values including the sub-elements should be displayed in the cells.
* When filtering child work packages from the list the sum values after "Σ" remain unchanged. The percentage shown 50 % for the filtered work packages in the sums row only includes the values of the filtered work packages. It does not include the values is derived from children values which are filtered out.
# Out of Scope
* Display of historical values using the baseline comparisson feature.
* Enhancements to time recording
* Extension of the work packages filter _Grandchildren 1.1.1_ and _Grandchildren 1.1.2_.
# Visuals ## Expected behavior
<figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/78899/content"></div><figcaption class="op-uc-figure--description">Full hierarchy</figcaption></figure> <img class="op-uc-image op-uc-image_inline" src="/api/v3/attachments/47266/content">
<figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/78898/content"></div><figcaption class="op-uc-figure--description">Child work packages filtered out</figcaption></figure>
# Acceptance criteria
* For the estimated time field it is possible to understand whether a value is empty (not set) or set to 0 h. This allows to better understand if an estimate has been made or not.
* Unset estimated time is included by 0 h into the calculation.
## Visuals
[https://www.figma.com/file/znrocQvFNLb5jXRXNo7oeD/Progress-estimation?node-id=52-9257](https://www.figma.com/file/znrocQvFNLb5jXRXNo7oeD/Progress-estimation?node-id=52-9257)
# Open
* How does the progress calculation currently works? I tried setting estimated time and log some time spent. Neither progress (%) or remaining time changed.
> NL: Currently the attributes remaining hour and progress (%) are not connected. Both attributes are currenlty set manually.
* It looks like progress calculation is only children, and aggregated on parent. New implementation will have possible to take into account that parent can have its own progress too.
* Correct?
> NL: Correnct
* Unset estimates are not considered as 0h
* So how are they handled?
> NL: Don't know how is this currently handled. Let's think it through what makes sense.
* When changing "Calculate set the work package done ratio with" "Use work package status", and then changing status, nothing happens. It was a bit disappointing. I later read Progress % for the docs and learned that statuses have to be configured to associate estimated time of a progress to them.
parent work packages.
* Couldn't this information be given through the UI somehow?
> NL: Good idea. We could add the pre-defined The Progress % values to the status label and to the status selection dialogue. We could also use Harvey balls to show the progress.
* vocabulary is not consistent: "done ratio" VS "progress (%)"
> NL: Yes. let's clean this up.
* some progress values could be seeded by default.
> NL: Good idea.
* As reported in ##49409, when using "Use value for a work package status", work packages with "rejected" status are still taken into account for calculating progress. has two values:
* Typical use: you can increase The Progress % for the progress estimated time of an epic by adding a lot of of rejected child packages to it. Nothing changed, but the progress increases. parent work package itself.
* It sounds like a wrong behavior. Should it be changed? How?
> NL: Good point. We need to explore this. I agree it does not really make sense to include rejected work packages into the calculation. A workaround could be to manually remove rejected work packages from the work package hierarchy. Please keep in mind The Total Progress % that the status "Rejected" is an individual configuraiton. This might be different for each installation. This implies that we need to have a new setting for also includes all children work package status like "not included in progress calculation".
packages.
* When using "Use work package field", what happens when some progress % are set on work packages, and the setting is switched to "Use work package status"?
> NL: Never tried this. I would assume the manually entered values for progress % get lost. Can you please check the current behavior and update the docs accordings?
* In description: "When filtering child work packages from the list the sum values after "Σ" remain unchanged. _The The percentage % for the filtered work packages only includes the values of the filtered work packages._ packages. It does not include the values from children values which are filtered out."
* So considering a work package with two children, one 100% complete, the other 0% complete. Depending on the view and filters, the parent can be shown as 0% complete, 50% complete, or 100% complete? How can this value be trusted by users if its value is so volatile?
* Or maybe it is referring to the totals row? out.
> NL: The specs were a little confusing. I updated it. It refers to the totals row. Good catch! ## Visuals
* There is [https://www.figma.com/file/znrocQvFNLb5jXRXNo7oeD/Progress-estimation?node-id=52-9257](https://www.figma.com/file/znrocQvFNLb5jXRXNo7oeD/Progress-estimation?node-id=52-9257)
<img class="op-uc-image op-uc-image_inline" src="/api/v3/attachments/47267/content">
## Alternative concepts
Work packages that has children get their estimated time automatically calculated from this ones and can't have an "alternative concept" section in own estimate. Adding a subtask deletes the description. That's not clear.
* What is its purpose? What is values entered for the gif demonstrating? Should it be implemented? If not why keep it in the description? summary task.
> NL: Not sure why this is part of the description. I removed it. <img class="op-uc-image op-uc-image_inline" style="width:772px;" src="/api/v3/attachments/36015/content">
### Related bug reports:
##49409
OpenProject contains extensive project controlling functions (effort estimation, progress calculation, time recording
### Current behavior
<img class="op-uc-image op-uc-image_inline" style="width:697px;" src="/api/v3/attachments/36001/content">
[https://niels.openproject-edge.com/projects/progress-calculation-1/work\_packages?query\_id=338](https://niels.openproject-edge.com/projects/progress-calculation-1/work_packages?query_id=338)
1. Unset estimated times
2. It
# Relevant work package attributes
The following work package attributes are focussed on. They will also be renamed in this epic to make them more consistent with
<figure class="table op-uc-figure_align-center op-uc-figure"><table class="op-uc-table"><thead class="op-uc-table--head"><tr class="op-uc-table--row"><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Name 13.0</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Name 13.1</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Editable
## Support multiple units
* Recording and display in different units (hours, days, weeks, months)
* Definition and application of conversion coefficients between the different units (e.g. hours per working day, working days per week, working days per month, etc.)
## Calculation and display in work packages views
*
**Example 2**:
*
* The total sum inclunding all children work packages (including non-visible work packages).
* Both the values of the respective work package and the aggregated values including the sub-elements should be displayed in the cells.
* When filtering child work packages from the list the sum values after "Σ" remain unchanged. The percentage
# Out of Scope
* Display of historical values using the baseline comparisson feature.
* Enhancements to time recording
* Extension of the work packages filter
# Visuals
<figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/78899/content"></div><figcaption class="op-uc-figure--description">Full hierarchy</figcaption></figure>
<figure class="image op-uc-figure"><div class="op-uc-figure--content"><img class="op-uc-image" src="/api/v3/attachments/78898/content"></div><figcaption class="op-uc-figure--description">Child work packages filtered out</figcaption></figure>
# Acceptance criteria
* For the estimated time field it is possible to understand whether a value is empty (not set) or set to 0 h. This allows to better understand if an estimate has been made or not.
* Unset estimated time is included by 0 h into the calculation.
## Visuals
[https://www.figma.com/file/znrocQvFNLb5jXRXNo7oeD/Progress-estimation?node-id=52-9257](https://www.figma.com/file/znrocQvFNLb5jXRXNo7oeD/Progress-estimation?node-id=52-9257)
# Open
> NL: Currently the attributes remaining hour and progress (%) are not connected. Both attributes are currenlty set manually.
* It looks like progress calculation is only children, and aggregated on parent. New implementation will have
* Correct?
> NL: Correnct
* Unset estimates are not considered as 0h
* So how are they handled?
> NL: Don't know how is this currently handled. Let's think it through what makes sense.
* When changing "Calculate
> NL: Good idea. We could add the pre-defined
* vocabulary is not consistent: "done ratio" VS "progress (%)"
> NL: Yes. let's clean this up.
* some progress values could be seeded by default.
> NL: Good idea.
* As reported in ##49409, when using "Use
* Typical use: you can increase
* It sounds like a wrong behavior. Should it be changed? How?
> NL: Good point. We need to explore this. I agree it does not really make sense to include rejected work packages into the calculation. A workaround could be to manually remove rejected work packages from the work package hierarchy. Please keep in mind
> NL: Never tried this. I would assume the manually entered values for progress % get lost. Can you please check the current behavior and update the docs accordings?
* In description: "When filtering child work packages from the list the sum values after "Σ" remain unchanged. _The
* So considering a work package with two children, one 100% complete, the other 0% complete. Depending on the view and filters, the parent can be shown as 0% complete, 50% complete, or 100% complete? How can this value be trusted by users if its value is so volatile?
* Or maybe it is referring to the totals row?
> NL: The specs were a little confusing. I updated it. It refers to the totals row. Good catch!
* There is
<img class="op-uc-image op-uc-image_inline" src="/api/v3/attachments/47267/content">
## Alternative concepts
Work packages that has children get their estimated time automatically calculated from this ones and can't have
* What is its purpose? What is
> NL: Not sure why this is part of the description. I removed it.
### Related bug reports:
##49409