The way to give better end-user service is to show the links between SDLC events while using DevOps metrics. Read on for the full story.
Mcdonalds and Burger King are rivals. As two of the largest fast-food chains in the world, they are constantly battling over the different food items that they provide. It’s more than that though. Another theater of the ongoing BK McDs rivalry is in their mobile apps that feature ordering options, detailed menus, and more. To gain ground against each other both companies are warring over who can provide the best value to their customers via quality mobile apps developed and released at speed.
What these companies require to one-up their competition is a way to quickly develop new ideas quickly, and deliver them to their users’ error-free. DevOps and VSM (value stream management) gives businesses the ability to scale their development and testing efforts, and accelerate release velocity with out harming the result.
As companies reprioritize to promote digital innovation one thing is clear. Good customer experiences boost businesses, and the fastest and most consistent way to deliver delightful experiences is with digital assets like mobile apps.
The way that companies achieve these results is through a combination of Agile and DevOps methodologies. DevOps tools which are also growing in popularity make it easier for companies to do continuous everything like:
The what and why of Value Stream Mapping
We have written about this subject before, but it bears repeating. Value stream mapping uses flowcharts to analyze and enhance each step of the software delivery process from ideation to release. Each step in the process is reflected on these flowcharts and they are mapped as either adding or not adding value from the customer perspective.
Everyone wants their company to be high performing. This is more than simply finding and using the right tools. An awesome CICD infrastructure is great but only builds potential. To deliver on that potential you need an SDLC that focuses on the customer, while combining the strengths of everyone from product owners, to developers, testers, and release managers. When you get it right, and believe me you will know, your DevOps powered and VSM enabled SDLC will raise your potential to new heights.
VSM and DevOps a match made in heaven
Developed from the principles of Agile and Lean DevOps is a cultural approach to software delivery. DevOps spreads the responsibility for continuous delivery to every team in an organization from planning to development, and from production to continuous improvement. It is an ongoing cross-functional approach to software development.
DevOps still has aspects of it that are considered a gamble. Once Agile and DevOps are implemented speed does improve, but that is not quite good enough. You don’t always know if you are moving in the right direction.
That is why the pairing with a VSM works so nicely. As we have mentioned value streams allow you to integrate the different tools used across the SDLC and measure and track the most important data that is then reported to managers and turned into action. A VSM will help you measure the value that your DevOps tools and practices give you.
Some reasons why DevOps teams benefit from a VSM are that VSM:
- Helps you detect pain points and bottlenecks
- Manages bugs, errors, and defects
- Lends greater visibility through the SDLC
- Removes processes that repeat or are wasteful
- Improves collaboration across teams
- Shows automation opportunities
- Integrates faster feedback
- Clarifies processes with context provided by visual data
- Highlights results
When working with DevOps and a VSM you need the right metrics to make sure that information flows freely while improvement is continuous. It is not only about disassembling your SDLC to look for broken processes and bottlenecks. When you use the tools to analyze your value streams you will show business leaders that focus is placed on the correct projects.
When you use VSM to measure KPIs and other metrics to scale your company, you will have the data to back up your decisions which benefits everyone.
The Feedback and the metrics
Metrics are necessary to help you understand what works and what does not work to prove success. It is more than focusing on teamwork and tooling which is also important.
You believe that your teams produce amazing results in good time. Without metrics, it is nearly impossible to prove. What you need is information that will prove your beliefs with valuable insights. These insights will also affect your company positively overall. It should go without saying as well that the faster and more often you can get this feedback the better off you will be overall.
One challenge that business face when gathering feedback and using metrics is that their tools are not integrated and manual data collection is an iffy process. The data comes from all over with no unifying system in place to collect and parse it all out.
So let’s take a closer look at which metrics are the most important and helpful for a VSM in a DevOps environment.
It is all in the metrics
This brings us to our main point in this blog post. The metrics. When you create your value stream map it is essential that you start with your SDLC and work through QA and release teams. The diagram you build when creating a value stream map is defined by the metrics that will help your continuous improvement.
When working in a DevOps environment, however, what and how you measure might look a bit different. You can still use the accepted standard metrics.
There are three components to your DevOps metrics:
Value Added Time – The time your teams spend working on their projects. This is actual work time. If there is no change to a development project you should consider that non-value-added time.
Lead Time – The total time it takes a team or even an individual to complete a task. This stat is usually measured as a combination of value-added and non-value-added time.
Complete % and Accurate % – This is the percent of work that is fully complete with no necessary edits and no rework necessary.
Within that, there are two more types of metrics. We will discuss them one at a time.
Your teams should start working with the metrics that show the throughput and stability of your company’s value streams. With these metrics, you will understand how healthy your value streams are and how they change over time.
Some of the most important DevOps metrics include:
- Deployment frequency – How often you deploy code to the production environment.
- Lead time – The time it takes from when you commit the code to when it successfully runs in production.
- Mean time to repair – Amount of time taken to restore service in case of a system crash or service outage that affects end-users.
- Change fail rate – Percentage of changes that degrade service when put in production, and require immediate intervention.
Once you integrate the DevOps metrics into your processes the next step is to add flow metrics. With flow metrics, you discover insights into the values stream as you analyze flow items. Each flow item is a piece of the work. For example, features, defects, risks ad debt.
Here are some important flow metrics:
- Flow velocity – Number of flow items completed over a specific amount of time. This is also known as throughput and will tell you if your value delivery is increasing.
- Flow Distribution – Measurement for the ratio of flow items completed over time. Helps to prioritize work during pre-determined time frames.
- Flow Time – Measurement of time it takes for flow items to go from start to finish. This includes working and waiting times.
- Flow Efficiency – Another ratio, this time from active to wait times during an entire flow. Helps to identify waste.
- Flow load – Measuring the number of active flow items in a given value stream. Gives you the ability to see what value streams are either over or underutilized.
Communicating your insights
We all know the dramatic importance of communication between business leaders and technical teams. The best way to get feedback and to share information, and the way we do it is by using Confluence. Prepared presentations are also a worthwhile way to share. It should be done in a more formal setting as the insights gained from these metrics will show stakeholders and technical teams how your apps and software are brought to market.
While speed is essential in today’s mobile app world, the insights you will gain from VSM and DevOps metrics are about continuous improvement over velocity. VSM as we know it is about bettering your end-user service. The way to provide that is by seeing the links between SDLC events using DevOps metrics. Value Stream management success comes when you deliver amazing software and apps to your customers. With the tips and help, we put forth here you will delight your customers by using problem-solving tools that will continuously improve your software.
If you want to get a full look at VSM from end-to-end then download our VSM eBook which is available now.