diff options
Diffstat (limited to 'doc/user/analytics')
-rw-r--r-- | doc/user/analytics/img/mr_throughput_chart_v13_3.png | bin | 62510 -> 17870 bytes | |||
-rw-r--r-- | doc/user/analytics/img/mr_throughput_table_v13_3.png | bin | 55637 -> 20273 bytes | |||
-rw-r--r-- | doc/user/analytics/img/new_value_stream_v13_3.png | bin | 82797 -> 31215 bytes | |||
-rw-r--r-- | doc/user/analytics/img/vsa_filter_bar_v13.3.png | bin | 117834 -> 33694 bytes | |||
-rw-r--r-- | doc/user/analytics/index.md | 11 | ||||
-rw-r--r-- | doc/user/analytics/merge_request_analytics.md | 15 | ||||
-rw-r--r-- | doc/user/analytics/productivity_analytics.md | 28 | ||||
-rw-r--r-- | doc/user/analytics/value_stream_analytics.md | 50 |
8 files changed, 33 insertions, 71 deletions
diff --git a/doc/user/analytics/img/mr_throughput_chart_v13_3.png b/doc/user/analytics/img/mr_throughput_chart_v13_3.png Binary files differindex 04fa54f323c..100c9a8557c 100644 --- a/doc/user/analytics/img/mr_throughput_chart_v13_3.png +++ b/doc/user/analytics/img/mr_throughput_chart_v13_3.png diff --git a/doc/user/analytics/img/mr_throughput_table_v13_3.png b/doc/user/analytics/img/mr_throughput_table_v13_3.png Binary files differindex 63ffb9389f4..bb63770dc3f 100644 --- a/doc/user/analytics/img/mr_throughput_table_v13_3.png +++ b/doc/user/analytics/img/mr_throughput_table_v13_3.png diff --git a/doc/user/analytics/img/new_value_stream_v13_3.png b/doc/user/analytics/img/new_value_stream_v13_3.png Binary files differindex 4284b8ab194..bc8502e85a6 100644 --- a/doc/user/analytics/img/new_value_stream_v13_3.png +++ b/doc/user/analytics/img/new_value_stream_v13_3.png diff --git a/doc/user/analytics/img/vsa_filter_bar_v13.3.png b/doc/user/analytics/img/vsa_filter_bar_v13.3.png Binary files differindex 71e59892434..506765f63cb 100644 --- a/doc/user/analytics/img/vsa_filter_bar_v13.3.png +++ b/doc/user/analytics/img/vsa_filter_bar_v13.3.png diff --git a/doc/user/analytics/index.md b/doc/user/analytics/index.md index 044b9eb3e64..54b4c702c5c 100644 --- a/doc/user/analytics/index.md +++ b/doc/user/analytics/index.md @@ -25,10 +25,8 @@ The following analytics features are available at the group level: - [Contribution](../group/contribution_analytics/index.md). **(STARTER)** - [Insights](../group/insights/index.md). **(ULTIMATE)** - [Issue](../group/issues_analytics/index.md). **(PREMIUM)** -- [Productivity](productivity_analytics.md), enabled with the `productivity_analytics` - [feature flag](../../development/feature_flags/development.md#enabling-a-feature-flag-locally-in-development). **(PREMIUM)** -- [Value Stream](value_stream_analytics.md), enabled with the `cycle_analytics` - [feature flag](../../development/feature_flags/development.md#enabling-a-feature-flag-locally-in-development). **(PREMIUM)** +- [Productivity](productivity_analytics.md) **(PREMIUM)** +- [Value Stream](value_stream_analytics.md). **(PREMIUM)** ## Project-level analytics @@ -40,6 +38,5 @@ The following analytics features are available at the project level: - [Issue](../group/issues_analytics/index.md). **(PREMIUM)** - [Merge Request](merge_request_analytics.md), enabled with the `project_merge_request_analytics` [feature flag](../../development/feature_flags/development.md#enabling-a-feature-flag-locally-in-development). **(STARTER)** -- [Repository](repository_analytics.md). -- [Value Stream](value_stream_analytics.md), enabled with the `cycle_analytics` - [feature flag](../../development/feature_flags/development.md#enabling-a-feature-flag-locally-in-development). **(STARTER)** +- [Repository](repository_analytics.md). **(CORE)** +- [Value Stream](value_stream_analytics.md). **(CORE)** diff --git a/doc/user/analytics/merge_request_analytics.md b/doc/user/analytics/merge_request_analytics.md index 6a18d46fd1a..04a5fa71e19 100644 --- a/doc/user/analytics/merge_request_analytics.md +++ b/doc/user/analytics/merge_request_analytics.md @@ -73,18 +73,3 @@ The **Merge Request Analytics** feature can be accessed only: - On [Starter](https://about.gitlab.com/pricing/) and above. - By users with [Reporter access](../permissions.md) and above. - -## Enable and disable related feature flags - -Merge Request Analytics is disabled by default but can be enabled using the following -[feature flag](../../development/feature_flags/development.md#enabling-a-feature-flag-locally-in-development): - -- `project_merge_request_analytics` - -A GitLab administrator can: - -- Enable this feature by running the following command in a Rails console: - - ```ruby - Feature.enable(:project_merge_request_analytics) - ``` diff --git a/doc/user/analytics/productivity_analytics.md b/doc/user/analytics/productivity_analytics.md index 653836de8be..951be1c550b 100644 --- a/doc/user/analytics/productivity_analytics.md +++ b/doc/user/analytics/productivity_analytics.md @@ -13,7 +13,7 @@ Track development velocity with Productivity Analytics. For many companies, the development cycle is a black box and getting an estimate of how long, on average, it takes to deliver features is an enormous endeavor. -While [Value Stream Analytics](../project/cycle_analytics.md) focuses on the entire +While [Value Stream Analytics](../analytics/value_stream_analytics.md) focuses on the entire Software Development Life Cycle (SDLC) process, Productivity Analytics provides a way for Engineering Management to drill down in a systematic way to uncover patterns and causes for success or failure at an individual, project, or group level. Productivity can slow down for many reasons ranging from degrading code base to quickly growing teams. In order to investigate, department or team leaders can start by visualizing the time it takes for merge requests to be merged. @@ -62,29 +62,3 @@ The **Productivity Analytics** dashboard can be accessed only: - On [Premium or Silver tier](https://about.gitlab.com/pricing/) and above. - By users with [Reporter access](../permissions.md) and above. - -## Enabling and disabling using feature flags - -Productivity Analytics is: - -- [Enabled by default](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18754) from GitLab 12.4, - but can be disabled using the following feature flags: - - `productivity_analytics`. - - `productivity_analytics_scatterplot_enabled`. -- Disabled by default in GitLab 12.3, but can be enabled using the following feature flag: - - `productivity_analytics`. - -A GitLab administrator can: - -- Disable this feature from GitLab 12.4 by running the follow in a Rails console: - - ```ruby - Feature.disable(:productivity_analytics) - Feature.disable(:productivity_analytics_scatterplot_enabled) - ``` - -- Enable this feature in GitLab 12.3 by running the following in a Rails console: - - ```ruby - Feature.enable(:productivity_analytics) - ``` diff --git a/doc/user/analytics/value_stream_analytics.md b/doc/user/analytics/value_stream_analytics.md index 14012d4a28d..86525587b30 100644 --- a/doc/user/analytics/value_stream_analytics.md +++ b/doc/user/analytics/value_stream_analytics.md @@ -12,26 +12,26 @@ info: To determine the technical writer assigned to the Stage/Group associated w Value Stream Analytics measures the time spent to go from an [idea to production](https://about.gitlab.com/blog/2016/08/05/continuous-integration-delivery-and-deployment-with-gitlab/#from-idea-to-production-with-gitlab) -(also known as cycle time) for each of your projects. Value Stream Analytics displays the median time +(also known as cycle time) for each of your projects or groups. Value Stream Analytics displays the median time spent in each stage defined in the process. -For information on how to contribute to the development of Value Stream Analytics, see our [contributor documentation](../../development/value_stream_analytics.md). - Value Stream Analytics is useful in order to quickly determine the velocity of a given project. It points to bottlenecks in the development process, enabling management to uncover, triage, and identify the root cause of slowdowns in the software development life cycle. -Value Stream Analytics is tightly coupled with the [GitLab flow](../../topics/gitlab_flow.md) and -calculates a separate median for each stage. +For information on how to contribute to the development of Value Stream Analytics, see our [contributor documentation](../../development/value_stream_analytics.md). + +## Project Level Value Stream Analytics **(CORE)** + +Project Level Value Stream Analytics is available via **Project > Analytics > Value Stream**. -## Overview +## Group Level Value Stream Analytics **(PREMIUM)** -Value Stream Analytics is available: +From GitLab 12.9, group level Value Stream Analytics is available via **Group > Analytics > Value Stream**. -- From GitLab 12.9, at the group level via **Group > Analytics > Value Stream**. **(PREMIUM)** -- At the project level via **Project > Analytics > Value Stream**. +## Default stages -There are seven stages that are tracked as part of the Value Stream Analytics calculations. +The stages tracked by Value Stream Analytics by default represent the [GitLab flow](../../topics/gitlab_flow.md). These stages can be customized in Group Level Value Stream Analytics. - **Issue** (Tracker) - Time to schedule an issue (by milestone or by adding it to an issue board) @@ -96,8 +96,7 @@ Value Stream Analytics records stage time and data based on the project issues w exception of the staging stage, where only data deployed to production are measured. -Specifically, if your CI is not set up and you have not defined a `production` -or `production/*` [environment](../../ci/yaml/README.md#environment), then you will not have any +Specifically, if your CI is not set up and you have not defined a [production environment](#how-the-production-environment-is-identified), then you will not have any data for this stage. Each stage of Value Stream Analytics is further described in the table below. @@ -109,7 +108,7 @@ Each stage of Value Stream Analytics is further described in the table below. | Code | Measures the median time between pushing a first commit (previous stage) and creating a merge request (MR) related to that commit. The key to keep the process tracked is to include the [issue closing pattern](../project/issues/managing_issues.md#closing-issues-automatically) to the description of the merge request (for example, `Closes #xxx`, where `xxx` is the number of the issue related to this merge request). If the issue closing pattern is not present in the merge request description, the MR is not considered to the measurement time of the stage. | | Test | Measures the median time to run the entire pipeline for that project. It's related to the time GitLab CI/CD takes to run every job for the commits pushed to that merge request defined in the previous stage. It is basically the start->finish time for all pipelines. | | Review | Measures the median time taken to review the merge request that has a closing issue pattern, between its creation and until it's merged. | -| Staging | Measures the median time between merging the merge request with a closing issue pattern until the very first deployment to production. It's tracked by the environment set to `production` or matching `production/*` (case-sensitive, `Production` won't work) in your GitLab CI/CD configuration. If there isn't a production environment, this is not tracked. | +| Staging | Measures the median time between merging the merge request with a closing issue pattern until the very first deployment to a [production environment](#how-the-production-environment-is-identified). If there isn't a production environment, this is not tracked. | How this works, behind the scenes: @@ -123,13 +122,23 @@ How this works, behind the scenes: we need for the stages, like issue creation date, merge request merge time, etc. -To sum up, anything that doesn't follow [GitLab flow](../../workflow/gitlab_flow.md) will not be tracked and the +To sum up, anything that doesn't follow [GitLab flow](../../topics/gitlab_flow.md) will not be tracked and the Value Stream Analytics dashboard will not present any data for: - Merge requests that do not close an issue. - Issues not labeled with a label present in the Issue Board or for issues not assigned a milestone. -- Staging stage, if the project has no `production` or `production/*` - environment. +- Staging stage, if the project has no [production environment](#how-the-production-environment-is-identified). + +## How the production environment is identified + +Value Stream Analytics identifies production environments by looking for project [environments](../../ci/yaml/README.md#environment) with a name matching any of these patterns: + +- `prod` or `prod/*` +- `production` or `production/*` + +These patterns are not case-sensitive. + +You can change the name of a project environment in your GitLab CI/CD configuration. ## Example workflow @@ -345,7 +354,7 @@ administrator can open a Rails console and disable it with the following command Feature.disable(:cycle_analytics_scatterplot_enabled) ``` -## Type of work - Tasks by type chart **(PREMIUM)** +## Type of work - Tasks by type chart > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/32421) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.10. @@ -368,11 +377,8 @@ The current permissions on the Project Value Stream Analytics dashboard are: You can [read more about permissions](../../user/permissions.md) in general. -For Value Stream Analytics functionality introduced in GitLab 12.3 and later: - -- Users must have Reporter access or above. -- Features are available only on - [Premium or Silver tiers](https://about.gitlab.com/pricing/) and above. +For Value Stream Analytics functionality introduced in GitLab 12.3 and later, +users must have Reporter access or above. ## More resources |