In this video, we will discuss Lean principles. We will start with an overview of Lean principles. We're going to take a look at Lean principles because in many ways, the principles are more important than the practices or tools. Principles tend to be foundational and long lived even as the practices and tools change. Taiichi Ohno discusses the importance of understanding the principles in his Toyota Production Systems book. He said, "With a better tool, we can get wonderful results. But if we use it incorrectly, the tool can make things worse. We should not forget to always use the principles." Here are some of the Lean principles discussed in his book. We will go through these one at a time and you will see that we have already discussed many of these earlier in the course. This is a subjective list, you might read his book and come up with a different list. Toyota didn't invent many of these principles but the combination of them can and have been used very effectively for many types of projects and businesses. Next, we will discuss empowering the team. One of the key principles of Lean is to empower and leverage the creativity and talent of the team. This is not only a smart business, but improves overall team happiness. Taiichi Ohno said, "Operators acquire a broad spectrum of production skills that I call manufacturing skills and participate in building up a total system in the production plant. In this way, the individual can find value in working." These two sentences contain some key concepts related to the people on the team. First, they have a diverse set of skills including and understanding of Lean principles. This is different from a traditional mass production line or a command and controllead team, where team members tend to have specialized jobs. Acquiring this diverse set of skills means that the team members are always learning. He also mentions that team members participate in building the system. This means that the team is trusted to make decisions and even have the ability to stop the production line if necessary. Finally, not only is empowering the team good for the success of the company, it improves team satisfaction. Many people want to feel like they're contributing to something of value and empowering individuals provides that, even more than monetary or recognition rewards. Teamwork is a big part of empowering the team. Taiichi Ohno thought that we could learn a lot from sports teams. He mentions in his book that, A championship team combines good teamwork with individual skill. He stresses the importance of having a teamwork skill by saying, "In modern industry, harmony among people in a group, as in teamwork, is in greater demand than the art of the individual craftsmen." Next, we will discuss visualizing work. A principle that we have already discussed is to visualize work. We've seen that the work of Agile projects is usually visualized with boards and the progress of the team is visualized with charts. Toyota uses kanbans to signal and control the work. We have discussed kanbans and their benefits earlier. Toyota also has something called an andon board. This is an information board that shows any existing problems. He describes this in his book, "When one looks up, the andon comes into view, showing the location and nature of trouble situations at a glance." He also said, "Look straight at the reality. " Visualizing work tends to give a true transparent view into the status of the project, something that can otherwise easily be hidden. Next, we will discuss experimenting using the scientific method. The scientific method or similar experimental evidence-based methods are used to continuously improve. We have already seen that the scientific method is the foundation of Agile methods and this is also true with Lean thinking. Here's a quote from Taiichi Ohno's book to support this, "The Toyota production system has been built on the practice and evolution of this scientific approach." Related to continuously improving is the need to continuously learn. He said in his book, "Progress cannot be generated when we are satisfied with existing situations." Every organization should be a learning organization. Every team should be learning team. Everyone should realize that even if they are successful now, they have a lot to learn. A big focus at Toyota has been to continuously improve. Here's a quote from Taiichi Ohno was book that helps demonstrate that, "The new market demanded a constantly improving automobile." If you think about it, many markets such as markets for cell phones and software assume constantly improving products. A Lean principle is to embrace change rather than create a fixed process and stick to it. Here are some quotes from Taiichi Ohnos' book, "As long as we cannot accurately predict the future, our actions should change to suit changing situations. In industry, it's important to enable people to cope with change and think flexibly." "Build a fine tuning mechanism into the business so that change will not be felt as change." The second quote points out that, in a lean or agile environment, change feels normal. Next, we will discuss improving the flow of value. In a lean environment, you want to set up processes so that the value that you are creating flows from start to finish. One of the main reasons to do this besides faster delivery to the customer, is so you can immediately see and fix problems in your workflow. This leads to continuous improvement. Taiichi Ohno discusses this by saying, "Just-in-time means that, in a flow process, the right parts needed in assembly reached the assembly line at the time that they are needed and only in the amount needed." It's important to improve the whole system in addition to each part. He said, "Efficiency must be improved at each step and, at the same time, for the plant as a whole." Value stream mapping is a tool used for continuous improvement. Toyota calls this material and information flow mapping. You draw diagram with the steps involved in the process that you want to improve. These often are the steps in bringing a product to the customer. This is called the current state. You then identify the desired future state. This is done by finding ways to increase value and reduce waste in the process. This often includes finding better ways to do things, the organization's vision, and overall direction help to identify the desired future state. You then iterate towards the future state. You may never fully reach it, but iterating towards it is a way to continuously improve. You can see that this is a learning loop that is similar to the scientific method. It is also similar to the Agile approach of building the product incrementally. This simple exercise can be very good for planning and getting the team working in the same direction. The Wikipedia link provides more information on Value Stream Mapping. Earlier, we have discussed work in progress limits and described how limiting the amount of current work can increase the flow of value and increase overall productivity. Here are some quotes from Taiichi Ohno related to limiting work in progress. "Reducing the number of Kanban increases their sensitivity." In other words, if you limit the amount of work in progress, you are getting constant feedback and you tend to see problems easier because they don't get lost in a sea of other work. "People prefer working with large quantities. It's easier than having to work hard and learn from producing small quantities." In other words, some people like the comfort of not getting consistent feedback because it's easier to just continue what you are doing. We have discussed the concept of pulling work from the previous step rather than having work pushed on you. This allows you to limit inventory and manage the flow of value. Taiichi Ohno discusses this, "The conventional way was to supply materials from an earlier process to a later process. So, I tried thinking about the transfer of materials in the reverse direction." He was a big proponent of using this kind of unconventional thinking to help solve problems. One of the most important principles in Lean is to eliminate waste. Here are some quotes related to eliminating waste. "The basis of the Toyota Production System is the absolute elimination of waste." "All we are doing is looking at the timeline from the moment the customer gives us an order to the point when we collect the cash. And we are reducing that time by removing the non-value added wastes." "The vicious cycle of waste generating waste hides everywhere." He gives some examples of waste generating waste. For example, having too much inventory is a waste. It could cause the company to need a storage facility. This requires a system to manage the inventory. It also requires methods to make sure that the inventory does not degrade before it's used. While this is a physical example, this concept of waste generating waste is true with other types of products. For example, having too many features planned in detail is a waste because some features may never be built. Here are some types of waste that Taiichi Ohno pointed out in his book. These are examples from production at Toyota but with some minor changes, they can apply broadly. Types of waste include overproduction or producing more than customers use, waiting to do or receive work, unnecessary transportation, waiting for the processing of information related to the product, holding unnecessary inventory, unnecessary movement of employees or product, and making defective products. There are many other types of wastes depending on the circumstances. For example, if we think about how we use our time, most of us can identify wasteful activities that limit our productivity. One way to reduce waste is to reduce setup times. Toyota has flexible factories allowing small batches of a variety of products to be manufactured every day. For small batches to be practical, the tooling has to be fast. That's why Taiichi Ohno said, "Our production slogan is small lot sizes and quick setups." Reducing setup times is important in all types of work so that you can focus on doing the actual work. Reducing setup times often adds flexibility that can change the way that the team works. Another type of waste is not automating what should be automated. Toyota makes sure to automate where it makes sense. The same is true for any knowledge work tasks that can and should be automated. Taiichi Ohno points this out by saying, "With computers available, it's a waste to perform calculations by hand." Next, we will discuss building quality in. A very important Lean principle is to build quality into the product as you are building it. You don't want to start with poor quality and then have the mindset that the quality will improve over time. As Taiichi Ohno says, "Produce quality products 100 percent of the time." It's important to start with a strong technical foundation of what you're doing and to never compromise on quality to save time. Related to building quality in is the principle that the process should identify problems. You do not want problems to go unnoticed. Taiichi Ohno describes this as distinctions between normal and abnormal operations must be clear and countermeasures or solutions always taken to prevent recurrence. This is one of the reasons for having the Kanban board at Toyota. If there's a problem, it is displayed for all to see and take appropriate action. We have also seen an example of the process identifying a problem by adding work in progress limits to the columns on the board. When the team goes over the work in progress limit, the column turns red to signal the team that there is a problem and take appropriate action. Your team will have custom ways of identifying problems. It is important to fix problems when they are discovered. You don't want to build a list of problems to fix. This takes more time and discipline but the result is much better quality. Taiichi Ohno makes this point when he says, "Correct a mistake immediately, to rush and not to take time to correct a problem causes work loss later." In his book, Taiichi Ohno describes the origin of the idea to fix problems when they are discovered. Sakichi Toyoda was the founder of the Toyota Motor Company. Prior to that, he owned a company that weaved fabrics. He invented an auto activated weaving machine. The machine would stop if any of the threads broke, an operator could then replace the thread. Prior to this invention, if a thread broke, it was only discovered after the defective products were already made. In other words, the quality control was moved from after the product was built to during the building of the product. Taiichi Ohno writes in his book, "Because a device that could distinguish between normal and abnormal conditions was built into the machine, defective products were not produced." If you are familiar with the concept of test-driven software development, you will notice that this is the same principle. Any problems with the software are discovered and fixed as the software is being developed. When problem solving, it's important to identify and fix the root cause of the problem. Taiichi Ohno talks about Toyota's five-whys approach to problem solving. By asking why five times and answering it each time, we can get to the real cause of the problem, which is often hidden behind more obvious solutions. So, the idea is to continue asking questions until you find the root cause of the problem and then fix the problem there. The number five is just a typical number of times the why question needs to be asked. You want to keep asking why until you aren't talking about a symptom but rather the root cause of the problem. Stopping early and fixing a symptom will usually mean that the root cause will create problems somewhere else. Here is an example of asking why to find the root cause of a problem. Let's assume that our problem is that our product was delivered late. The first question that we could ask is, why was the product delivered late? The answer could be because we had too much to do at the end of the project. This is not a root cause of the problem because there could be many reasons why we had too much to do at the end of the project. The next question could be, why did we have too much to do at the end of the project? The answer could be because we started by researching and planning the entire project, and many of the plans changed after development started. This is getting closer to the root cause of the problem. It is identifying waste. If you make detailed plans that end up changing and research topics that don't end up being part of the product, this is a form of waste. Sometimes things take longer because each task is unique and we were optimistic in our prediction. Other times like this, sources of waste can be identified and the process can be improved. The next question could be, why didn't we plan and build incrementally? The answer could be that we probably should have. We have identified the root cause of the project delay. So, the solution in this case is to research, plan, build, and deliver incrementally. An incremental approach to developing the product would not only have reduced waste, but also would allow us to be flexible with the scope of the project and still deliver on time. That is an overview of some of the Lean principles. Taken together, they provide a way of working that is very effective in many contexts. If you look at the individual principles, you can see that they are timeless. The word Lean is currently used to describe them but that word is not important and may not be universally used. We will see that Agile principles are very similar to Lean principles. In this video, we have discussed Taiichi Ohno's Toyota production system book because it is directly from the source. Here are some of the popular books related to Lean. Lean Thinking is by the authors of a book called The Machine That Changed the World, which was many people's first introduction to the Toyota production system. Lean Thinking discusses applying the thinking behind the Toyota production system more broadly. Implementing Lean Software Development applies Lean ideas to software development. The Lean Startup applies Lean ideas to the building and management of startups, and Lean Enterprise applies Lean ideas throughout the enterprise. There are more good books related to Lean but these are a good sample to show that Lean ideas apply broadly.