North Star Metrics

North Star metrics give the team high-level goals on which to align. These north star metrics act as beacons - highlighting potential problems as they occur.

Cycle Time

Cycle Time gives us a sense of the team's speed and tempo. It gives us a picture into how quickly work is completed. Teams should aim for shorter cycle times.


Definition: Time from First Commit to Pull Request Merged.

Average: The average Haystack team has a Cycle Time of less than 3 days.

Throughput

Throughput gives us a sense of the team's bandwidth. It gives us a picture into how much work we can typically accomplish. Teams should aim for consistent throughput.

Definition: Number of merged pull requests

Average: The average Haystack team has a weekly Throughput of at least 3 pull requests per member

Lifecycle Metrics

Lifecycle Metrics allow for deeper dives into the delivery process and allow teams to identify bottlenecks and friction. These lifecycle metrics allow the team to debug their process and prioritize improvement efforts.

Development Time

Development Time is the time spent in development prior to code review process. This gives us a sense of how long features are being developed. Teams should aim for shorter development times.

Definition: Time from First Commit to Pull Request Opened

Average: The average Haystack team has a Development Time of 2 days.

Review Time

Review Time is the time spent in the code review process. This gives us a sense of how long it takes features to be reviewed. Teams should aim for review times of roughly 24 hours.

Definition: Time from Pull Request Opened to Merged

Average: The average Haystack team has a Review Time of 24 hours.

Code Review Metrics

Code Review metrics allow the team to optimize their code review process. The passing of work between parties is notorously difficult. Code Review metrics allow us to see inefficiencies in the code review process as this happens.

First Response

First Response Time is the time spent in the code review process waiting for the first response (approval or comment). This gives us a sense of how long developers spend waiting for their team to respond. Teams should aim for first response time within a few hours of opening.

Definition: Time from Pull Request Opened to First Approval or Comment

Average: The average Haystack team has a First Response within a few hours.

Rework

Rework Time is the time spent 'reworking' code after the pull request has been opened. This gives us a sense of how long developers spend rewriting code to get an approved pull request. Teams should aim for first rework time of less than 2 days.

Definition: Time from Pull Request First Response to Last Commit

Average: The average Haystack team has a Rework Time of less than 2 days.

Idle Completion Time

Idle Completion Time is the time from last commit to the pull request merged. This gives us a sense of how long the final review process takes. Teams should aim for idle completion time of a few hours.

Definition: Time from Pull Request Last Commit to Merge

Average: The average Haystack team has an Idle Completion Time of a few hours.

Red Flag Metrics

Pull Request Size

Pull Request Size gives us a sense of how large or complex pull requests are. Teams should aim to work in small batches and maintain an average pull request size of less than 200 lines of code.

Definition: Number of lines changes per pull request

Average: The average Haystack team has an average pull request size of 200 lines of code.

Work In Progress

Work in Progress (WIP) gives us a sense of how many outstanding pull requests are actively being worked on across the team. Teams should aim to reduce WIP per member and maintain an average of no more than 2 pull requests per member.

Definition: Number of open pull requests

Average: The average Haystack team has an average WIP less than 2 per member.

Weekend Activity

Weekend Activity gives us a sense of how many members feel the need to work over weekends. This gives us a sense of how overworked the team is. Teams should aim to reduce weekend work.

Definition: Sum of github activities (commit, comment, push) over the weekend

Average: The average Haystack team has less than 1 weekend activity on average.

Did this answer your question?