I’m working on a request to create S-Curve based on summing the status of issues within scope, where the status is converted to a weight. I started with ChatGPT and it produced this. I provided the weightings but some rational weighting of any workflow would work when explaining how to do it. I saw the S-Curve examples and that helps with the possibility of creating the ideal curve.
With various attempts to get a set of measures I seem to get a result of 0 or the calculation timing out.
-
Define the Weighted Status Calculation:
In EasyBI, define a calculated measure to assign weights based on the status history for each issue over time. This measure will sum the weights according to the status of each issue within each time period.
[Measures].[Status Weight] =
CASE
WHEN [Status].[Status].CurrentMember.Name = “Reopened” THEN 0.0
WHEN [Status].[Status].CurrentMember.Name = “In Review” THEN 0.05
WHEN [Status].[Status].CurrentMember.Name = “Refining” THEN 0.1
WHEN [Status].[Status].CurrentMember.Name = “Ready” THEN 0.15
WHEN [Status].[Status].CurrentMember.Name = “On Hold” THEN 0.2
WHEN [Status].[Status].CurrentMember.Name = “In Progress” THEN 0.3
WHEN [Status].[Status].CurrentMember.Name = “Test Ready” THEN 0.5
WHEN [Status].[Status].CurrentMember.Name = “Testing” THEN 0.7
WHEN [Status].[Status].CurrentMember.Name = “Ready For Release” THEN 0.95
WHEN [Status].[Status].CurrentMember.Name = “Closed” THEN 1.0
ELSE 0 – Default weight if status does not match
END -
Sum Weight Over Time for the S-Curve:
Using the weekly or periodic status history, sum these weights across all issues to create a cumulative measure.
[Measures].[Cumulative Status Weight] =
SUM(
[Issue].[Issue].Members,
[Measures].[Status Weight] * [Measures].[Issues history]
) -
Plot Cumulative Measure Against Time:
Create the S-Curve by plotting the cumulative measure (summed weight) against time.
I converted the latter into Pages, Rows and Columns
SELECT
{[Measures].[Cumulative Status Weight]} ON COLUMNS,
[Time].[Weekly].Members ON ROWS
FROM [Issues]
WHERE
([Project].[MYJIRAKEY], [Issue Type].[MYISSUETYPE])
ChatGPT Explanation of the MDX Query:
- Status Weight: This custom member uses a
CASE
statement to assign the weight based on each issue’s status. - Cumulative Status Weight: This measure accumulates the weighted progress over time by summing up the weighted values of statuses across all issues for each time period.
- Weekly Members: Plots the data on a weekly basis. Adjust to other time periods as needed.
This will result in a cumulative graph where you can see the weighted progress over time, forming an S-Curve.
This measures resulted in a timeout after 120s