Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Maturity LevelsHow does the KPI help

Overview

Definition (Hover Text)

measures Measures ratio of the total number of defects (bugs) linked to closed stories and the size of a closed stories

Source Tools

Jira, Azure

Graph type

Line Chart

Filters

<None>

Hover Format on KPI

Sprint Name: <<Percentage Value>>

Defects: <<Value>>

Total Size of Closed stories : <<Value>>

Fields on Overlay

  1. Sprint Name

  2. Story ID

  3. Issue Description

  4. Linked Defects to Story

  5. Size(story point/hours)

Business Logic

Calculation Formula

No. of defects tagged to all stories closed in a sprint/ Total size of stories closed in the iteration

  1. Numerator :

    • This is the count of defects (bugs or issues) that were found in all the stories that were completed in a sprint.

  2. Denominator :

    • This is the total size of all the stories that were completed in the same sprint. The size can be measured in story points, hours, unit your team uses to estimate the work.

  3. Quality Indicator: This metric shows the quality of the work done in a sprint. A lower defect density means fewer issues were found relative to the size of the work completed, indicating higher quality.

Example

Imagine your team completed stories with a total size of 100 story points in a sprint. Out of these, 10 defects were found. The Defect Density would be:

Defect Density=10 / 100 ​=0.1 or 10%

Trend

Positive trend indication - Decrease

This means there were 10 defects for every 100 story points of work completed, helping to understand the quality of the work done during the sprint.

Trend

A downward trend in DD is desirable. This means fewer defects are being injected over time.

Maturity Levels

DD maturity is assessed by averaging data from the last 5 sprints. This helps in understanding the stability and improvement over time.

M1: > 90%

M2: 60% -90%

M3: 25%-60%

M4: 10-25%

M5: <10%

*Please note:- KPI widget denotes the average maturity over data points

Instance level thresholds

Target KPI Value denotes the bare minimum a project should maintain for a KPI.

Global Configurations- (Field Mapping)

Processor Fields

NA

KPI Specific fields

  • Issue Type Mapping

    • Issue Type which will have Linked defects eg; Story Enabler Story, Tech Story

  • WorkFlow Status Mapping

    Status consider for Issue closure eg; Closed, Done, Ready for Delivery

    Whenever we update the defect mapping and issue type mapping, whether we add or remove any issue type, we must run the processor. This is necessary to show the changes in the KPI.

    Defect Mapping :

    image-20240704-094534.pngImage Added

     

    Mandatory fields

     

    Project Settings

    1. Navigate to Project Settings: Start by going to the Project Settings in your application.

    2. Access the Mapping Section: Within Project Settings, find and click on the Mapping option.

    3. Mandatory Field: In the Mapping section, you’ll find the Mandatory Field. This is where you’ll configure the necessary global mapping fields.

    4. Configure the Fields:

    Defect Mapping :

    • Issue Type to identify Defect - all the issue type that signify defect

    image-20240704-094534.pngImage Added

    Issue type Mapping :

    • Issue type for subtask Defect - Any specified issue category will be treated as a subtask that is linked to a story.`

     

    image-20240704-104755.pngImage Added

    How to Validate KPI

    Suggested ways of working

    This measures the ratio of the total number of defects (bugs) linked to closed stories and the size of those closed stories.

    1. Ensure Defects are Tagged to Stories:

      • Mandatory: All defects must be linked to user stories. since unlinked defects will not be considered

      • Sprint Closure: Ensure that these stories are closed within the same sprint.

    2. Include/Exclude Rejected, Dropped, or Abandoned Defects/Stories:

      • Include: If you want to include these defects/stories in your validation, ensure they are part of your JQL query.

      • Exclude: If you want to exclude them, modify your JQL query accordingly.

    3. The issues identified as stories and defects should belong to the sprints of the configured project scrum board

    4. Verify the sprint snapshots of closed sprints

    Sample JQLs

    project in ("XYZ") and component =ABC and type in (Defect) and issueFunction in linkedIssuesOf("type in (Story) AND sprint in(406)")

    project in ("ABC") AND component = "xyz" AND type in (Defect) AND issueFunction in linkedIssuesOf("type in (Story) AND sprint in (40756)") AND status NOT IN (Rejected, Dropped, Abandoned)

    Best Practices

    Automate Testing

    Implement automated testing (unit, integration, and end-to-end tests) to catch defects early in the development process.

    Pair Programming

    Implement pair programming to increase code quality and reduce the likelihood of defects being introduced.

    Adopt TDD/BDD

    Use Test-Driven Development (TDD) or Behavior-Driven Development (BDD) methodologies to write tests before code, ensuring that functionality is well-defined and tested from the start.

    Use Static Analysis Tools

    Implement static code analysis tools to automatically check code for potential defects and enforce coding standards.

    Benefits of KPI

    Quality Measurement

    It helps in measuring the quality of the code being produced and identifying areas where improvements are needed.

    Predictability

    Understanding the defect Density can help in forecasting the amount of rework required and in planning more accurately.

    Cost Reduction

    Reducing the Defect Density can lead to lower costs associated with fixing bugs, especially those found later in the development cycle or after release.

    Process Improvement

    By tracking this metric, teams can identify stages in the development process where defects are commonly introduced and take steps to improve those stages.

     

     

    C