Continuous Improvement: A Lean Guide To Business Efficiency

Sep 30, 2020

You’re a seasoned professional. A DevOps engineer or a release manager with the virtual scars to show you’ve been around the block a few times. You’re proud of your work and the solutions you deliver.

But you feel the stress of your organization’s digital transformation efforts. Because they just keep asking for more features and for you to deliver them ever faster and cheaper. How on earth can you do that without compromising the quality of your work?

What if I told you there is a way?

Continuous improvement. It’s the way to maintain quality standards while cutting time and cost.

Sounds like Utopia? Well, it isn’t. The roots of continuous improvement go way back and are firmly grounded in the reality of manufacturing businesses operating in highly competitive environments.

So read on and learn what continuous improvement is, what practices and tools to use, and its relation to lean manufacturing and lean software development. You’ll also learn how you can incorporate lean manufacturing’s continuous improvement processes into software development to help your organization achieve its digital transformation goals.


Streamline your software delivery with Plutora!

Streamline your software delivery with Plutora!

Imagine a single dashboard managing all enterprise software delivery, boosting visibility, efficiency, and cutting costs. Experience Plutora's solutions today!

Imagine a single dashboard managing all enterprise software delivery, boosting visibility, efficiency, and cutting costs. Experience Plutora's solutions today!

What Is Continuous Improvement?

Well, it’s about improvement, and it’s about continuous effort. Or rather continual effort because continuous means you can’t take a break and continual just means you do it regularly and frequently.

When you practice continuous improvement, you engage in an ongoing effort to improve your products or services and the processes you follow to manufacture or provide them.

The Origins of Continuous Improvement

Continuous improvement has a long history. Its pioneers were W. Edwards Deming, Walter A. Shewhart, and Joseph M. Juran. In the 1920s, they worked together at the Western Electric Company to improve production processes by applying the scientific method of inductive and deductive thinking used in hypothesis testing.

Quite a mouthful, isn’t it? Yes, and it was way over the heads of Western Electric’s shop floor workers. That’s why Shewhart converted it to something much simpler: the Shewhart or PDSA cycle. “Plan it, Do it, Study it, and Act on the results.” Now that’s easy to remember and easy to follow.

It’s also often referred to as the Deming cycle or PDCA cycle for Plan, Do, Check, and Act (or Adjust).

The Japanese Obsession With Mastery and Perfection

A very successful “implementation” of continuous improvement is the Kaizen approach. Kai means change, and zen means good. So Kaizen translates as “good change” or improvement. It originated as a practice in the Toyota Production System.

Leave it to the Japanese and their obsession with mastery and perfection to develop an approach to manufacture high-quality products while lowering costs and streamlining delivery. And they achieved all that by leaving it in the hands of the workers. Imagine that. Knowing how hierarchical Japanese society is and how you’re not supposed to disagree with those higher up, that’s revolutionary. Or maybe not. Respect for people is also highly valued in Japanese society.

The 1986 book Kaizen: The Key to Japan’s Competitive Success made it famous and put continuous improvement on the map.

Lean manufacturing as we know it today came out of the Toyota Production System. It spread across the world and industries. And then it made its way to knowledge work.

Both in lean manufacturing and in software development, you see Kaizen together with Kanban (see below), not surprisingly, because Toyota developed it as a way to improve the flow of work and materials through the production process.

Five Features of Kaizen

Talk to different people and you’ll get different numbers of Kaizen features, but what they talk about is the same. They just group or split things differently. So please take this list for its spirit and not its letter.

  1. Evolution over revolution

While radical, revolutionary changes for improvement can’t always be avoided and are necessary for radical innovation, small incremental improvements go a long way.

  1. Having your feet in the mud

Respect and use the talents and the knowledge of the people doing the work. They have their feet in the mud and most clearly see what’s inefficient. That’ll give them valuable ideas to improve it.

  1. Small is beautiful—and cheap

Incremental changes tend to be cheap to implement. They usually require much less capital investment than the changes thought up in research or by expensive consultants. And if the changes don’t work out, they’re easy to revert without destroying a lot of capital in the process.

  1. Every day 1 percent better than yesterday

Okay, it’s actually James Altucher who advocates this. But Kaizen also stresses the importance of everybody being responsible for reflecting upon and seeking ways to improve their performance.

  1. Power to the people

When you can and are expected to, improve your work results by changing how you do it. That’s power that encourages ownership. Not to mention engagement!

And when you work in a team, you can usually only change results for the better by working as a team, by collaborating on solutions. And teamwork generally improves motivation.

What Does Continuous Improvement Seek To Achieve?

As already mentioned, continuous improvement seeks to maintain quality standards while cutting time and costs.

Sounds good, but what does it mean? What do you seek to change? What are you looking to gain or lose?

In the Kaizen approach, you actively seek to remove the following:

  • waste (Muda) such as defects and rework, waiting, process bottlenecks, double-handling

  • unevenness (Mura)

  • overburden (Muri)

It’s mura, the drive to control the flow of work to make it smooth and uninterrupted, that led Toyota to develop Kanban.

Why Is Continuous Improvement Important?

Let’s do a thought experiment. Imagine you’ve created an incredible software product and you’re selling licenses or subscriptions like there’s no tomorrow. Feels good, yes?

So you rest on your laurels a bit. Sure, you still develop new features and of course you fix bugs, but you see no need to change the way you work. Your processes worked just fine, creating this fantastic product. So leave well enough alone. Don’t fix what ain’t broke.

In the meantime, your success has had everybody else clamoring to get a piece of the action. They’ve created competitive products and are actively seeking to outdo each other and you. They improve their products and what they do to build them and deliver more value to their customers faster and cheaper.

By the time you wake up, you have brilliant ideas to outstrip these upstarts. But your processes are lagging. You can’t turn your ideas into valuable updates for your customers fast enough or reliably enough.

Ouch.

But what if you had adopted a continuous improvement attitude? What if you’d actively sought to increase the value your software delivers to your customers and the way you develop it? What if you’d frequently sought feedback, worked to cut out unnecessary activities, and put in place measures to avoid creating defects so you wouldn’t have to repair them later on?

A market leader bent on continuous improvement retains rather than loses its first-player advantage.

The upstarts wouldn’t have had a chance. Oh, they’d probably take a piece of the pie, but they wouldn’t be able to outdo or surpass you.

But Wait, There’s More

Obviously, continuous improvement is the way to stay competitive and get ahead of the competition. Toyota proved that using the Toyota Production System to go from a small car manufacturer to the world’s largest automobile manufacturer.

But there’s more.

Seventy percent of digital transformations fail. The principal and avoidable reason is exhaustion. People grow fatigued with continuous change throughout their organizations. The causes for that are threefold: not enough commitment to start with, trying to plan everything up-front (we know better than to ride a waterfall, don’t we?), and trying to modernize systems in one fell swoop before doing anything else.

A better approach is to understand first how your business needs to change to improve how employees and customers experience it. And then iterate to implement smaller changes that measurably increase the value delivered to customers.

And how do you do that?

By using value stream mapping and continuous improvement.

But how do you do continuous improvement?

The Six Practices of the Kaizen Process

As mentioned before, continuous improvement started with the PDCA / PDSA cycle of Shewhart and Deming. Toyota added a step to that, and the cycle became OPDCA, in which the O stands for Observe. You need to observe a process in its current state to identify improvement opportunities before you can plan them.

Toyota’s automation efforts led to another extra step in the cycle: standardize the solution. Automate it.

So now the Kaizen process has six steps. Along the way, the steps were shuffled a bit and received more descriptive names.

  1. Identify a problem or opportunity (observe)

  2. Analyze the process (observe)

  3. Develop an optimal solution (plan)

  4. Implement the solution (do)

  5. Study the results and adjust (check + adjust)

  6. Standardize the solution.

Four Tools for Continuous Improvement

1. Value Stream Mapping and Management

Like a Kanban board visualizes steps in a single process, value stream mapping visualizes processes at an organizational level. It shows the flow of actions and information you use to create value for your customers. It helps with continuous improvement by helping you identify (parts of) processes that do not add value to the end product or service for your customers.

When you’ve mapped your value stream or streams, you can move to value stream management: optimizing your value streams to be more efficient, predictable, and reliable.

Yes, exactly, value stream management is about the continuous improvement of your value streams.

2. Waste Elimination Using the 3Ms

No, not 3M the company, but the 3Ms of Muda, Mura, and Muri. These three inform where to look for waste so you can eliminate it to improve efficiency and reduce cost.

Muda is about waste in your process:

  • handovers

  • having work items lying around and not being worked on

  • inventory (in software development, that’s everything that’s not actively being worked on)

  • overproduction (in software that amounts to creating unnecessary bells and whistles)

  • defects (bugs!)

Mura is about waste through unevenness. Unevenness can be due to interruptions and too much work in progress simultaneously, causing multitasking that kills productivity.

Muri is about waste through overburden or overwork. Mura often causes Muri as it stresses people and processes. Too much work itself also causes stress and strain, leading to exhaustion and a decrease in productivity.

3. Root Cause Analysis and Five Whys

Root cause analysis is what you do to get to the bottom of a problem. To find the real cause and not stop at the symptoms.

The Five Whys help you do just that. It’s simple and effective. You start by asking why a problem exists. Whatever your answer is, you ask why that happens or is the case. You keep going until you find the root cause however many whys that requires. You know you have found the root cause when addressing that reason takes away the original problem for good.

4. Kanban

Toyota developed Kanban as a way to improve the flow of work and materials through the production process. In knowledge work such as software development, that means the flow of work items such as feature requests and bug reports through a development team.

Kanban is the means to remove unevenness (Mura) from a process using the following six practices:

  1. Visualize your workflow

Create a visualization of the steps in your workflow, usually a column per action. This is generally known as a Kanban board. Use Kanban cards to represent work items on the board and move them from column to column as work progresses and stalls.

  1. Eliminate interruptions

Limit work in progress to eliminate multitasking, which is a productivity killer.

  1. Manage flow

Ensure smooth sailing by noticing when and where work gets stuck and addressing the bottlenecks.

  1. Make process policies explicit

Put them in the columns of your workflow visualization or place them near the Kanban board. You want everyone to have easy access to how they agreed to work so they’ll own and take responsibility for their process.

  1. Create feedback loops

Just like a central heating system needs a thermostat to keep it from overheating your living room, you need feedback (measurements) to know whether the changes you implement produce what you intended.

  1. Improve collaboratively

Ensure all team members collaborate on designing and implementing improvements. This way, you’ll take advantage of the crowd’s wisdom and have enthusiastic support for following through on the changes.

How Do You Incorporate Continuous Improvement into Software Development?

So what can you do to make continuous improvement an integral part of software development? The short answer is to adopt the Kaizen and Kanban practices, the latter even if you’re following Scrum. The two don’t bite. On the contrary, Kanban is a perfect way to implement the empiricism and the inspect-and-adapt approach that Scrum advocates. The longer answer is to find ways to incorporate the Kaizen and Kanban practices in your day-to-day work.

Retrospectives are a natural fit for Kaizen and the changes that result from Kanban practices to eliminate interruptions and managing flow. The daily standups that are part of Scrum and Kanban are also a natural fit to discuss bottlenecks that hamper the smooth flow of work. But you’ll want to support Kaizen initiatives much more proactively because improvements tend to get snowed under by the urgency of day-to-day work.

How To Keep Everyone Engaged

To keep continuous improvement top of mind for everyone, you can do the following:

  • Get ideas out in the open. Put up a board where everyone can post ideas. It’ll become a natural location to document and discuss them.

  • Set up quality circles where people can collaborate on implementing ideas. Encourage participation by allocating time; don’t expect everyone to do it as a matter of course.

  • Use a Kaizen board to track progress and visualize the benefits of each improvement.

  • Measure impact. Remember that while you’re aiming for improvements, not every change is an improvement. A change is the start of an experiment to determine whether it’s a good change or not.

  • Invest in facilitation skills for collaborative efforts. The wisdom of the crowd and good facilitation, especially of an ideation phase to come up with solutions, is key to getting it.

Measuring the impact of changes to a software development pipeline presents many challenges. It’s often where change initiatives fail or stall.

You need a lot of data across many different tools and the ability to visualize results in a way that tells you at a glance how you’re doing. Seeing the numbers, seeing them improve, is addictive and helps maintain momentum moving forward. That’s where Plutora’s business intelligence dashboards can make a huge difference.

Champion Continuous Improvement

You may think you don’t have time for continuous improvement. After all, your organization forever leans on you to deliver more features and deliver them faster and cheaper. But actually, you don’t have time not to pursue continuous improvement. Because it’s the only way to speed up your delivery of the features your business needs and cut costs without giving up the quality you hold dear, the quality you need to deliver to keep pride in your work and your professionalism.

Now you know how to go about it. What you need to do is incorporate continuous improvement into your daily practices.

So take that first step. Identify the first small improvement you can make in your process. Then make it and monitor the effect. Keep it if it works, chuck it if it doesn’t. Rinse and repeat.

You’ll be well on your way to championing continuous improvement and showing the way for your teams. Just be warned. Every improvement that works will feel like a delicious ‘shot.’ A couple of those, and you’ll likely turn into an improvement addict. Then again, it’s not a bad addiction to have.

Download our free eBook

Mastering Software Delivery with Value Stream Management

Discover the key to optimizing your software delivery process with our comprehensive eBook on Value Stream Management (VSM). Learn how leading organizations are streamlining their software pipelines, enhancing quality, and accelerating delivery.

Deliver Better Software Faster with Plutora

Deliver Better Software Faster with Plutora

Deliver Better Software Faster with Plutora