[DevOps adoption] Instance-level adoption + Segments
## Problem As a GitLab champion, I've been an advocate for the value that GitLab can bring to my company. As a result, we've invested into the tool and run a large EE instance on Premium or Ultimate - and I'd like to keep an eye on how teams are using the application. Different teams will be adopting GitLab at different rates, and I'd like to find centers of excellence (teams that are early adopters and are models for using the tool to collaborate and ship). I'd also like to find teams that are lagging behind, and encourage them to use the application more. It's also not a guarantee that my company will be using GitLab for all 10 stages, so I need to realize some value from the tool even if I'm only using GitLab for SCM. ## Vision (WIP) ![image](/uploads/9b21b778798fe90981e3b56e55cef342/image.png) This vision is very much a work in progress and feedback is appreciated. A few key elements of this design: * Users can create a segment, which creates a boundary around a specific set of groups (this could represent a team or a business unit). * For each segment, show KPIs on how that segment is using GitLab. * For each category of KPIs, allow an admin or owner to set goals. Show, in red/yellow/green fashion, whether or not that segment is meeting those goals. * Compare to previous period and show a trend. ### Creating a segment * Specify a set of groups/subgroups/projects under a segment label. * Example: Project X, Project Y, and everything under Subgroup A == Search Department ## Additional issues to create * Enhanced segmentation with multi-select * Select a subset of members in a group as a segment * Additional metrics cards for DORA, code quality, security scanning, compliance, CI, CD, planning, tech debt, defect management... * Set goals ## Other questions * How should we handle permissions? * Where does this page go? We should make this available to as many users as we can. Ideally, we should find a place in the UI for instance-level features. If we don't have one, we can make this page admin-only for now. * How often should this page get updated? Because of performance concerns, it probably won't be possible to query this information in real-time. We can compute this daily and communicate in the UI when the info was collected. cc @npost @djensen @wortschi
epic