Engineering Metrics

Introduction

Bunnyshell grants its users access to key metrics that allow them to monitor the efficiency of their release schedule. Named Engineering Metrics, this feature includes two main indicators:

  • Average Cycle Time

  • Deployment Frequency

Based on these two, we also display these additional indicators:

  • Monthly Cycle Time

  • Cycle Time Breakdown

  • Monthly Deployment Frequency

Accessing the Engineering Metrics

1. Log in to your Bunnyshell account.

2. Click the Engineering Metrics icon on the left-side of the main interface.

Repositories

By default, Bunnyshell displays the cumulated statistics for all your connected repositories.

You can also access statistics for each of the repositories from the drop-down menu on the upper-left side of the Engineering Metrics interface, as displayed in the screenshot below.

How to select the repositories to monitor

To choose the repositories that will be analyzed by Bunnyshell, follow the steps below:

1. Go to the Engineering Metrics interface.

2. Click the Settings button.

3. In the Git Repositories section, add or remove the desired repos.

Setting Release Detection

The central element on which we compile the data is the Release. Bunnyshell allows you to select the way in which releases are detected.

Users have the following two options to choose from:

  • Detect releases based on Pull Requests to a dedicated branch: based on branch regular expression provided by the user, our platform will detect releases every time a Pull Request is merged into a branch matching the regular expression

  • Detect releases based on tags: our platform will detect releases based on created git tags matching the regular expression.

circle-exclamation

How to set Release Detection

1. Go to the Engineering Metrics interface.

2. Click the Settings button.

3. In the Release Detection section, choose one of the two available options.

circle-exclamation

Regular Expressions

Depending on the Release Detection type , you can provide a regular expression to help Bunnyshell more easily identify releases.

1. Go to the Engineering Metrics interface.

2. Click the Settings button.

3. In the Regular Expression section, fill in the necessary info.

To get the most out of the Engineering Metrics feature, you will have to fill in a branch regular expression. This means only pushes made on the specified branch (or branches) will be recorded by Bunnyshell as actual Releases.

circle-exclamation
circle-info

Examples:

  • If you type ^master$ in this field, then Bunnyshell will only record the pushes made on the master branch as Releases.

  • If you type ^master$|^main$ in this field, then Bunnyshell will only record the pushes made on the master and main branches as Releases.

  • If you type ^master in this field, then Bunnyshell will record the pushes made to any branch whose name starts with master.

Average Cycle Time

The cycle time represents the time it takes for a feature to get into production. From a technical point of view, it represents the average difference between two moments:

  • The time when the branch enters a release (see above definition of a release)

  • The time when the first commit is made

The Average Cycle Time itself represents a useful statistic, as the Git Version Control System itself cannot capture the exact moment when work on a particular feature started.

circle-exclamation

Cycle Time Breakdown

The cycle time is further broken down into four intervals.

This is the time interval between the first commit and the opening of the Pull Request.

circle-info

If a Pull Request has no comments, the approval time will be considered instead.

Deployment Frequency

This metric indicates the average number of releases per month.

circle-info

The value displayed for the current month is running. This is why in some cases it may be lower when compared to previous months.

Monthly Deployment Frequency

The deployment frequency is further broken down by month. Bunnyshell will always display the deployment frequency for the last six months on the selected repositories.

Settings

You can personalize the Engineering Metrics further by clicking on the Settings button located in the upper-right corner of the main interface.

Git Repositories

Here you can select which repositories will be analyzed by Bunnyshell. By default, all your connected repositories are included, but you do have the possibility to select individual ones.

See the Repositories section for additional information.

Release Detection

This is where you select the way in which releases are detected. Read more about this in the Setting Release Detection section.

Regular expression

Here you can provide a regular expression to help Bunnyshell easily identify releases.

Scroll to the Regular Expressions section for additional info.

Last updated

Was this helpful?