Showing epic progress within current sprint

Hi all,

I would like to have a report whose rows are any epic that has tickets assigned to the current sprint. I would like for the columns to show:

  1. Percentage complete for that epic at the start of current sprint
  2. Issue count (within that epic) complete at the start of current sprint
  3. Total issue count (within that epic) at the start of current sprint
  4. Percentage complete for that epic now (at the time of report execution)
  5. Issue count (within that epic) complete now (at the time of report execution)
  6. Total issue count (within that epic) now (at the time of report execution)

where percentage complete is simply calculating percentage of tickets done/closed vs total issues; regardless of size of the issue; in other words, this report is intended to be a high level swag, sort of assuming all composite stories are the same size.

Any ideas on how to approach this?

Thank you!
-gene lewin

I would suggest using Epic Link dimension in a report to represent Epics. Epic link dimension will give you count of issues in Epic, except Epic itself and Sub-tasks. This is a typical Sprint scope.

Default measures Issues created and Issues resolved should represent all issues in epic and resolved ones at the report execution time.

You can define new calculated member in Measures with this formula to represent the current progress:

CASE WHEN 
[Measures].[Issues created]>0
THEN
CoalesceEmpty([Measures].[Issues resolved],0)/
[Measures].[Issues created]
END

The measures at the current Sprint start requires some additional calculations.
I would suggest defining a new calculated member in Measures for Current Sprint start date with this formula:

Cache(Tail(Order(
  Filter(
  [Sprint].[Sprint].Members,
  NOT [Sprint].CurrentMember.GetBoolean("Closed")
  AND
  NOT isEmpty([Sprint].CurrentMember.Get("Start date"))
  AND
  ([Measures].[Story Points created],
   [Time].CurrentHierarchy.DefaultMember) > 0),
  [Sprint].CurrentMember.Get("Start date"),BASC)
).Item(0).Get("Start date"))

You would like to set formatting as Time for this calculated measure.

Then you can define new calculated members in Measures for Issues created at current sprint start and Issues resolved at the current sprint start with the formula example:

CASE WHEN not isEmpty([Measures].[Current Sprint start date])
THEN
Sum(
  PreviousPeriods(
    [Time].CurrentHierarchy.Levels("Day").DateMember([Measures].[Current Sprint start date])
  ),
  [Measures].[Issues created]
)
END

This formula example is for Issues created at current Sprint start date, you can define a similar one for Issues resolved at Sprint start date using measure Issues resolved instead of Issues created.

Then you can define progress at current sprint start date with the similar formula as the first on of current progress using newly defined formulas for created and resolved issues at current sprint start date instead of default measures for created and resolved issues.

Daina / support@eazybi.com