Customer Use Cases: A customer use case is:
Relatively stable over time.
Create, manage and protect my source code - Source Code Management (SCM) I need a better way to manage changes to documents, software, images, large web sites, and other collections of code, configuration, and metadata among disparate teams. (Examples in GitLab include Git, branches, merge requests, code review, InnerSourcing, WebIDE, and files.)
Analyst Coverage: No recent reports, though Gartner may be considering a future report.
Increase the quality of my code while decreasing time to delivery - Continuous Integration (CI) I need to automate the build and testing processes to consistently integrate code and continuously test. I want to run the unit and integration tests, measure performance and automate manual QA processes. I may use GitLab SCM or another. (Examples in GitLab include Pipeline, CI Runner, Jobs, Scheduled Jobs, Testing, Security Scanning (SAST), and Code Quality).
Analyst Coverage: Forrester CI and Forrester Cloud CI
Want to speed up my build and release process and empower my developers to automatically deploy code - (CI/CD) I want to automate the build, test and packaging, configuration and deployment of applications to a target environment. (Examples in GitLab include: Pipeline, CI Runner, Jobs, Scheduled Jobs, Testing, Security Scanning (SAST), and Code Quality.CI Runner, Container Repository, Deploy Boards, Canary Deploys, Partial Deploys, Manual Deploys, Environments.)
Analyst Coverage: Gartner ARO, Forrester CDRA
Test for application security vulnerabilities early in my app dev lifecycle - (Shift-left security or DevSecOps) I need to identify vulnerabilities during development with actionable information to empower dev to remediate vulnerabilities earlier in the life cycle. (In GitLab, SAST, DAST, Dependency Scanning, and Container Scanning.)
Analyst Coverage: Forrester SCA Wave, Gartner Application Security MQ
Need a better way to manage projects using Agile methodology - (Agile Project Management) I need a better way of initiating, planning, executing, controlling, and closing the work of a team to achieve specific goals and meet specific success criteria at the specified time. (Examples in Gitlab include Issues, Issue Boards, Issue Weights, Labels, Milestones, and burndown charts.)
Analyst Coverage: Gartner EAPT, Forrester PPM
Want to achieve expected results of DevOps given siloed teams, lack of visibility and collaboration which inhibits my speed of delivery - (Simplify DevOps) I want to manage my entire DevOps lifecycle more efficiently with better outcomes. The number of tools and maintenance of integrations is overwhelming and costly and security is challenging to integrate. My processes may include planning to production or may be a segment of the SDLC. (GitLab examples: Epics, Issue Boards, Source Code Management, CI, CD, Security Scans and Monitoring from GitLab. Value Stream Management: (VSM) helps you visualize and manage the flow of new innovation from ideas to customers. In GitLab, cycle analytics is a key element of managing the value stream.)
Analyst Coverage: TBD
Want to use more modern, cloud-native approaches to application development (cloud native) I want to use things like containers, K8s, and/or serverless for new development or containerize legacy applications. Help me lift and shift to cloud. Minimize my learning curve to set up, maintain and use clusters.
Analyst Coverage: TBD
Want to automatically provision, administer and maintain infrastructure as code - (CI/CD Infrastructure-as-code or GitOps) I manually stage and test environments for infrastructure making it hard to track and error-prone. I want to stage all components and test them to be sure it works to automate my release pipelines, provide consistency, reduce cost, and eliminate errors. I may frequently leverage integration with Terraform, Kubernetes, Ansible, OpenStack and others.
Analyst Coverage: TBD
Repository Management: I want a package repository so that I can manage my organization's dependencies and control how they are built, published and shared throughout my organization. I need a local repository to store, version and access dependencies, that allows me to cache, proxy and audit all of my external dependencies in one place. I want all of the above to work securely and seamlessly with my pipelines so that I never have to worry about external dependencies causing problems during the software development lifecycle.
Application Monitoring: (APM) Monitoring application performance and feedback is a most critical step in the DevOps lifecycle. Product teams need to understand how their changes impact the business value of their applications. Examples in GitLab include Application Performance monitoring, server monitoring, Kubernetes Cluster Monitoring, and Kubernetes pod log review.
Portfolio Management: The goal of portfolio management is to determine the optimal resource mix for delivery and to schedule activities to best achieve an organization’s operational and financial goals, while honoring constraints imposed by customers, strategic objectives, or external real-world factors. Examples in GitLab include epics, roadmaps, and milestones. Analyst Coverage: Gartner EAPT, Forrester. GitLab does Agile project mgmt, not Portfolio Mgmt at this time.
Incident Management: I need a platform that consumes alerts from from my monitoring stack and provides me with tools to take action on the critical ones by creating incidents. This tooling would allow us to triage, troubleshoot, remediate, and optimize to reduce risk of future incidents.
Specific GitLab Usage Examples