WIP: Improving usability of one cross CI/CD workflows

❓ What?

Cross-CI/CD JTBD

When verifying and merging changes made to a software, I want visibility into and control over the system so I can avoid any potential performance and security threat.

Related JTBDs

Stage groups JTBDs
Runner
  1. Runner: When I am reviewing previously released changes of a software for compliance, I want to see who made the changes, when and why they were made, so I can ensure our process stays compliant.
  2. Runner: When managing my deployment platform, I want to monitor and have historical context about the different deployed versions of code across my application, so I can make effective decisions.
Package When my code relies on dependencies, I want to ensure these dependencies don't introduce security vulnerabilities and compliance violations to my codebase, so my development and product ecosystem can operate without interruption.
Pipeline authoring When architecting pipeline configuration, I want to be able to define the variable so that it is dynamically inherited across all hierarchies of a repository and upstream or downstream a pipeline in order to perform complex operations without scripting those tasks to save time across repositories.
Pipeline execution When working in a large team, I want the changes to be merged without hassle or delay, so I can ensure my performance is unaffected.
Release When releasing software, I want to manage application environments across multiple teams and projects, so I can lower risks and guarantee higher organizational performance.

Each one of these JTBDs point towards user efficiency while performing tasks that may and may not involve a high volume of resources.

Supporting evidence

  • System Performance Report - Slide 13
  • MR Performance Workshop

Additional resources

  • 🕊️ Dovetail project
  • 🔍 Research epic

❓ Why?

To allow users to verify and ship new changes faster and securely.

From a strategic research, we learnt that the path to DevOps maturity is to have a better integration between CI and CD workflows and move them up in maturity. Highlights 1 . Highlights Key insights:

  • Current workflows are very complex for developers
  • In a continuous delivery path, every commit is a potential release
  • Users want to continuously reduce wastage
  • Cross CI/CD workflows are confusing

Many aspects of usability, including 7th Heuristics of NN - flexibility and efficiency - gets affected as we move from 10 to 1000 items on the screen. If this is left unchecked, this can result in decline in overall sellability of the tool.

In addition to that, in Ops, most S1 and S2 usability problem lies in the CI/CD section: Sev 1 Sev2

Business Goal

  • To increase product maturity and strengthen GitLab as a one-DevOps tool that allows the core personas such as Devon, Sasha to move faster without worrying about compromising product security and quality.
  • To make GitLab more usable and attractive for Developer personas, indirectly making it more popular
  • Will highlight the integration opportunities
Details > One of the major project strategies to support GitLab's 10 years vision to establish itself as single DevOps platform replacing all point solutions is GitLab-hosted first. This implies that we need to work towards making GitLab as a product robust enough to be able to handle higher volume of resources and operations that our users currently prefer self managed for. Flexibility and efficiency is imperative to this goal.

📝 Plan

Understand the common challenges, document them and decide the next step forward.

Detailed Plan

Week Action Challenges DRIs
1 - 2 Identify the workflows in Verify/Package/Release that relate to the cross-CI/CD JTBD
3 - 5 Audit the usability of the features/Pages related to those JTBDs and refer to past researches
5 - 6 Analyse the findings, determine the core usability problems that are most impactful and need attention
7 - 8 Based on the overall findings, work on proposals

📈 How would be measure success?

  1. Higher UX scorecard scores for the product areas.
Edited Dec 30, 2025 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading