story #10670 a BurnUp chart based on Done stories
a BurnUp chart based on Done stories

I can track development effort vs. budget

BurnUp will be a new field of an artifact (like burndown) with 3 fields to configure:

  • start_date: when to start computation
  • duration: how long should it last
  • capacity: how much effort is targeted (for ideal burn-up line)

Difference with burndown:

  • Rendering is done with D3js lib (instead of EOL jpgraph)
    • REST route /artifacts/:id (or equivalent) must return the values
    • Need to implement the rendering with the new lib. We cannot re-use directly what's already present for agile dashboard home page because it lacks of
      • abscissa and ordinates legend
      • abscissa scale (days)
      • labels for each line
    • Rendering must use the same style (colors, fonts…) as the Kanban's cumulative flow chart
  • Computation is done like:
    • The elements linked to the current artifact
    • Within this list, only artifacts that are declared "Done" (story #10631) are taken into account
    • For those items, we sum the value of the field declared in "initial_effort" semantic

Things that's need to be verified / sorted-out during implementation:

  • What about several burn-up fields on 1 artifact (with different target_fields tought). Verify it's possible and it doesn't mess the global computation. If it's not easly possible, ensure it's not possible to configure 2 burn-up fields.
  • Ensure fixes made for Timezone handling on burndown are present

Things to test:

  • Verify behaviour with a burndown and a burn-up field
  • Verify that deletion of field (tracker, project) means no longer any computation for this field

New field check list:

  • Tracker Field Structure
    • Specific properties
      • Yes configuration based on other fields TBC...
    • Field can be switch to another type (only sb/msb)
      • No
    • Shared Fields
      • No
    • Import/Export XML
      • Yes
    • Field is duplicated on tracker inheritance (both tracker and project creation)
      • Yes
    • Definition is NOT given through SOAP @deprecated
      • Correct  
    • Definition is given through REST (representations)
      • Yes
    • Migrate field from TV3 (if not done)
      • No
    • Does new field can be used for burndown?
      • No
    • Can the field be required
      • No
  • Artifacts
    • Export/import CSV
      • No
    • What does ‘None’ mean for this field?
      • No
    • Default value
      • No
    • Field is involved in notifications
      • Yes (<img src="">)
    • New value is sent in notifications
      • See notif
    • Diff of the field appears in changesets
      • No
    • Get/create/update NOT through SOAP @deprecated
      • Correct
    • New value is Copyed on Artifact copy
      • No
    • New value can be used in semantic
      • No
    • New value can be updated on masschanges
      • No
    • On an artifact with artifact links, on creating directly a child the field can be used
      • No
  • Reports
    • Field is searchable through criteria
      • No
    • Field is displayed as a column in table
      • No
    • Field is used to sort
      • No
    • Field is used for aggregates
      • No
    • Field is used to build charts
      • No
    • Field is used to build cardwall
      • No
  • Angular
    • Create/ edit modal
      • No
    • Cardwall edit in place
      • No
    • Card field in planning v2
      • No
    • Card field in kanban + filter + highlight
      • No
    • Does field can be directly updated in Cardwall
      • No
    • Modal edit Release
      • No
    • Modal add a Task
      • No
  • User documentation is accurate
    • Yes

Technical points:

  • System event for daily burndown computation can be re-used to add the burn-up computation
  • A new system event is needed to re-compute 1 burn-up in case of error
  • [ ] Does it involves User Interface? 
  • [ ] Are there any mockups?
  • [ ] Are permissions checked?
  • [ ] Does it need Javascript development?
  • [ ] Does it need a forge upgrade bucket?
  • [ ] Does it need to execute things in system events?
  • [ ] Does it impact project creation (templates)?
  • [ ] Is it exploratory?
Manuel Vacelet (vaceletm)
2018-01-19 09:53
2017-09-20 14:35

Referencing story #10670

Git commit