Value Stream Mapping the DevOps Void
Ever wonder why your releases take so long?
After all, your company just invested a “zillion” dollars on a whole bunch of great ‘agile’ tools and a cloud framework. Tools that allow you to automatically provision your infrastructure, applications, data and ensure that all your security obligations are met.
Hey! With this new” DevOps toolchain”, we should be moving our releases, from request to delivery, in a matter of minutes. You know … full push-button automation! … environments on demand! … And all that stuff!
Yeah! Right! But no! That’s not how it typically plays out.
In fact, a more realistic example might follow a storyline as follows:
- Project manager raises a request for a Test Environment.
- Request sits in it service management queue for a few days.
- Gets approved & assigned by Test Environment Manager & distributed to engineering teams.
- Sits in the team ITSM queues for another few days.
- Apps team build the package in 5 minutes, but can’t deploy as infra not ready.
- Infra team provisions.
- Test team can’t start testing as data not ready.
- Data team ensures Data secure & Compliant.
- Data team provisions.
- Sorry, testing now too busy with another test cycle.
- Test teams spot a defect with the build.
- Higher priority project comes along and acquires environment.
- Go back to go.
I think one gets the point, the issue with DevOps efficiency is rarely down to a single atomic task.
In fact (as illustrated in the diagram below), if you were to take a step back, you would probably realise the inefficiency is not in the operations themselves (like a build task) but in fact the “void” (or the wastage) in between.
In the above multi-process diagram, we can see the Data team takes:
- 180 minutes of operations (real value),
- 5 days of waiting (wastage),
- Or 2.5% Efficiency (Value Operation / [Value Operation + Wastage]).
Not exactly something you want to write home about. However, not an “untypical” in-efficiency, and a serious opportunity for improvement.
Imagine if for each team could move from 2.5% to just 25%. The benefits would be enormous, and over the lifetime of a project we could be saving weeks, maybe months, of time which translates to early “time to market” and significant IT project cost savings.
Enter Value Stream Mapping
Originally employed in the car manufacturing space, Value Stream Mapping (VSM) is a lean method that helps you better define a sequence of activities, identify wastage & ultimately improve your end-to-end processes. A set of methods that can be applied to any type of operation, including of course Test Environments & DevOps.
Wikipedia Definition: Value-stream mapping is a lean-management method for analyzing the current state and designing a future state for the series of events that take a product or service from its beginning through to the customer.
How do I go about implementing a simple* Value Stream Mapping for DevOps?
- Select the Product e.g. CRM application
- Select the Delivery Process of Interest e.g. Build a test environment
- Gather the SMEs, as VSM is a team event.
- Visually Map Current State (material flow / operational steps)
- Identify Non-Value between steps
- Add a timeline for both Operations (green line above) + Non-Value (red line above)
- Review Value Stream
- Design Future State (Optimize)
- Return to (3).
Tip: When getting started, steps 4 to 8 may initially be completed on whiteboards and simply use guesswork (in place of real data). However, for ongoing improvements, consider using tools that allow you to model your DevOps processes, track the operations and report on stream actuals. As an example, you could use the “Visual Runsheets Manager” functionality inside the Enov8 platform.
Benefits of DevOps Value Stream Mapping
- Baseline existing Operations
- Standardise Operations
- Identify Wastage
- Highlight Operational Bottlenecks *non-automated
- Lift Efficiency *continuous improvement
If you want to know more about how to leverage VSM in your IT delivery process then feel free to contact the Enov8 team. Enov8 is a complete solution that helps you streamline delivery via automating your Release Management, IT Environment Management and DataOps / Data Compliance activites. And offers real-time insights, through customizable ‘information walls’, that help you measure performance and be “agile at scale”.
An Enov8 Information Wall
02NOVEMBER, 2022 by Sylvia Froncza Original March 11 2019An IT and Test Environment Perspective Traditionally, test environments have been difficult to manage. For one, data exists in unpredictable or unknown states. Additionally, various applications and services...
01NOVEMBER, 2022 by Justin Reynolds.Businesses across the board are spinning their tires when it comes to data and analytics, with many of them failing to unlock maximum value from their investments. According to one study, 89% of companies face challenges around how...
02NOVEMBER, 2022 by Eric Boersma *Original 22 October 2019If you're like a lot of developers, you might not think much about software security. Sure, you hash your users' passwords before they're stored in your database. You don't return sensitive information in error...
14 OCTOBER 2022 by Daniel de OliveiraIn today’s application-based world, companies are releasing more applications than ever before. Software delivery life cycles are becoming more complicated. As a result, large companies require hundreds and even thousands of test...
01NOVEMBER, 2022 by EricStaging Server Success: The Essential Guide To Setup and Use Release issues happen. Maybe it's a new regression you didn't catch in QA. Sometimes it's a failed deploy. Or, it might even be an unexpected hardware conflict. How do you catch...
19 NOVEMBER, 2020 by Michiel Mulders What Makes a Good Test Data Manager? Have you implemented test data management at your organization? It will surely benefit you if your organization processes critical or sensitive business data. The importance of test data is...