Affects Version/s: None
Fix Version/s: 4.3
When dealing with small technical debts measures (<1 day), it's hard to track the amount of technical debt because the values may be rounded to "0 days".
We should find a way to display this technical debt with more precision, a bit like what's done for unit test execution time (see this page for instance).
Updates should be done in any page that potentially displays technical debt:
- measure drilldown
- resource viewer
- issue detail on issues page
- widgets of any kind, even for widgets based on visual representations and measure filter WS
- Ex: the bubble chart for instance (see this screenshot)
- The WS should provide a formatted value along with the raw value
Technical details :
- Currently, the format of technical debt (issues.technical_debt) is a long : DDHHMM (where DD is the number of days, HH the number of hours, MM, the number of minutes), but it should be replaced by a number of minutes (for instance, a debt of 2 days should be persisted as 2*8*60=960 if the number of working hours in a day is set to 8).
- A new type of metric should be created for this new format
- This new format should be used when storing debt values in DB in :
- Issues technical debt
- Issue changelog on technical debt
- Measures on technical debt and added technical debt
- Following migrations will have to be created (using the property sonar.technicalDebt.hoursInDay to convert from old format)
- Update all issues on technical debt
- Update all issues changelog on technical debt
- Update all measures on technical debt (value and variations)
- Update all measures on added technical debt