Table of Contents | ||||||
---|---|---|---|---|---|---|
|
...
Excerpt | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Metrics by Data Source Types
Release and task tracking
...
Summary | Purpose | ||
---|---|---|---|
CI/CD Summary (roll up report over multiple Jobs/Pipelines) | Bird-eye view on key metrics about CI/CD with ability to drill down. | ||
A number of deployments per calendar month/week - to assess the average pace. According to Agile principles, a rule of thumb is to deploy smaller increments but more frequently. | |||
A ratio of commits led to broken builds within a day, compared to a total amount of commits for that day. Allows to check how good are quality guards controlling the code before it is committed. The greater this figure the worse. | |||
Average time, in minutes, of a build process along with all automated test verifying build per pipeline. The less the better. | |||
Shows how fragile is the code base of a project; extremely helpful on a stabilization phase of a project/release when no active development but rather a bug fixing is supposed. | |||
Shows on a daily basis the percentage of successful builds for last 7 days to give a confidence that build pipeline is pretty stable because no failures happen thus pre-commit validation of code changes is performed well enough by developers. | |||
Overall health of a CI/CD builds chain as a time waste due to build failures. The less the better. | |||
Timing of stages on a CI/CD pipeline, helps to understand the overall 'Lead time in pipeline' as well as see bottlenecks. The less the better. | |||
Shows a an average time a pipeline takes to recover from a failure. | |||
Shows a percentage of pipelines successfully integrated by week. | Shows a pipeline count by status in the last 30 days prior to today and today's value. |
Source code management
List of supported source code management systems:
...
Summary | Purpose |
---|---|
Version Control Summary (roll up report over multiple code repositories) | Bird-eye view on key metrics from the source code repository on with ability to drill down. |
Helps find out the most fragile points in the code base / architecture by showing a modification frequency for files in a project code base. | |
Shows the top of biggest commits in a project code base (last 7 / 30 / 90 days) to identify the biggest pain points for code review; the smaller the better. | |
Shows an amount of code lines changed (added, modified, deleted) over last 6 months. | |
Shows a size of individual commits in a project code base per selected GIT repositories (branches) and selected team member(s) for the last 180 days | |
Shows a number of individual commits in a project code base per selected GIT repositories (branches) and selected team member(s) for the last 180 days. | |
Shows the avg speed of new changes being incorporated to a master code due to delays on code reviews. The less the better - means less overhead for dev process/team to handle merges. |
DevOps industry standard metrics
This is a set of measures and metrics described in the "Accelerate" book and summarized in this article.
"Accelerate" DORA metric | Meaning | Relevant metrics in PERF | PERF data sources |
---|---|---|---|
Deployment frequency | By “deployment” we mean a software deployment to production or to an app store. The reason the frequency of production deployments matters is because it tells you how often you’re delivering something of value to end users and/or getting feedback from users. | Jenkins, GitLab CI | |
Deployment Frequency (Custom Metric v2) | JIRA, Rally | ||
JIRA, Rally | |||
Lead Time for changes | The time it takes to go from code committed to code successfully running in production. | Jenkins, GitLab CI | |
Time between Done and Released (TBD) | JIRA, Rally | ||
Lead Time for Changes (Custom Metrics v2) | JIRA, Rally | ||
JIRA, TFS, Rally | |||
JIRA, TFS, Rally | |||
JIRA, TFS, Rally | |||
Time to restore service | The time to restore service or mean time to recover (MTTR) metric calculates the average time it takes to restore service | Pipeline Mean Time to Recovery | Jenkins, GitLab CI |
Mean Time to Recovery (Custom Metric v2) | Jira, Rally | ||
Change Failure Rate | A measure of how often deployment failures occur in production that require immediate remedy (particularity, rollbacks). | Jenkins, GitLab CI | |
Jenkins, GitLab CI | |||
Change Failure Rate (Custom Metrics v2) | JIRA, Rally | ||
JIRA, Rally |
Per-person metrics
Warning |
---|
Disclaimer! Please always remember that 1) Metric is just an indicator. As a manager you always see a bigger context in which you should interpret numbers. 2) Metrics depend heavily on how well you have set up your data sources. Remember: if you set up the rules of interpretation that are right for your project, you will get the right metrics. |
PERF is more focused on Team-level view. Although, there’re a few per-person metrics/widgets available:
...