How it's calculated
Middleware can display DORA Metrics using exclusively GitHub Data. The aim is to provide DORA metrics to anyone and everyone using their Git data, regardless of other integrations.
DORA metrics are derived from Pull Requests, Deployments, and Incidents.
For simplicity, we synchronize your Pull Request data and classify reverted Pull Requests as incidents and merged Pull Requests as Deployments.
Lead Time for Changes
- Lead time consists of First Commit to PR Open time, First Response Time, Rework Time, Merge Time, and Merge to Deploy Time.
- When calculating DORA using git-based data, PR merges are regarded as deployments, hence the merge to deploy time is considered as 0, while the rest of the time components remain the same.
Deployment Frequency
- This metric gauges how frequently code changes are deployed to production.
- When considering PR merges as deployments, this can also represent the daily/weekly/monthly frequency of PR merges.
Mean Time to Recover (MTTR)
- MTTR measures how swiftly a team can restore service after a failure occurs in production.
- The team's average incident resolution time is utilized to compute its MTTR.
- When treating Revert PRs as incidents, the resolution time for an incident is calculated from the merging of the original PR to the merging of the revert PR.
Change Failure Rate (CFR)
- CFR quantifies the percentage of changes that result in a service impairment or outage in production, aiding in the evaluation of deployment process stability and reliability.
- CFR is computed by linking incidents to deployments within an interval; each deployment may have several or no incidents.
- Deployments that can be linked to any incident are considered as causing a failure or outage.
- The fraction of deployments causing outages to the total deployments in an interval is used to determine the CFR.