I just finished the reading of classic book by Jeffrey Liker “The Toyota Way: 14 Management Principles from the World’s Greatest Manufacturer” This is an interesting book with the history and origin of lean principles. It covers interesting topics about improving business processes with the goal of efficiency and quality improvement. As I learn more about Theory of Constraint and Kanban, it makes me more excited to see how these lessons from traditional manufacturing are interesting to apply in efficiently delivering reliable modern online services.
Lean principles start with one basic question “What does the customer (internal or external) want from the process?” Answer of this question is the real value our customers are looking for. Any process step that is adding value in customer-value is value-added step, all other steps are non-value-added steps or could be considered waste. Goal of process improvement is to reduce the non-value-added steps and drive the continuous improvement. This book describes the seven categories Toyota identified as waste. If we carefully observe these waste categories identified in TPS (Toyota Production System) then we see that it is the same list we care about in delivering online services. We drive the same goal – deliver services useful for our customers (internal or external), any step in our process from design, development, testing to final release that is not adding value to our customers is a waste. Here is how I see TPS list of waste categories in delivering online services.
Overproduction: Producing items for which there are no orders. Producing service features those were never integrated to the production service used by customers are waste. In other words if your team is building features that doesn’t address any customer requirement is over production.
Waiting (time on hand): Teams blocked on dependency from other partner team or external teams is a waste. Simple example is your development team is waiting for operations team to provide hardware to deploy new feature is a waste of your valuable resources.
Unnecessary transport and conveyance: Carrying over work in process (WIP). In Online services. Any work that is started on a bug, task, or scenario is a WIP work item. Shelving completed or half- completed WIP, or spending time on multiple iterations of lengthy triage, prioritization, and approval on WIP items is a waste.
Over processing or incorrect processing: Taking unneeded steps to process the parts. Team that is working with inefficient tools has to do over processing to deliver the higher quality products. For example if your team has to perform lengthy manual testing on every release is over processing. Team has to do it because of absence of good automated regression suite, and absence of automated code coverage measurement.
Excess Inventory: This is the result of first category of waste, overproduction. If you have long list of shelved features not integrated in your online services or your production site contain number of features never exercised by your customers then it is clear indication that your team is building excess inventory waste that waste is sitting there only to get obsolete and causing unnecessary maintenance nightmare.
Unnecessary movement: Any wasted motion employees have to perform during the course of their work. In case of online services this is related to the wasteful time employees have to spend to get the job done. If your team have to spend hours to search the information about dependencies or finding the right contact to get the details, then it is a waste. Another example of this waste is time spend on deployment of new release, if every deployment is taking hours of hard work, it is a signal of waste that need to be eliminated by building right set of automation and monitoring tools.
Defects: Production of defective parts or correction. This is a clear mapping of waste due to buggy software. Every time you have to deploy a hot fix or need to rework on half finished job is a wasteful activity in time and effort. Also due to lack of automation testing, if your team is spending hours on manual testing and running regular bug bashes to identify the defects, then it is also s waste and error prone activity.
Unused employee creativity: Losing time, ideas, skills, improvements, and learning opportunities by not engaging or not listening to your employees. The author Jeffrey Liker in the book adds this eighth waste that is important to watch in delivering online services fast pace competitive world. Make sure employees have learning opportunities and are engaged in every step from design to release process, Employees’ engagement and ideas are the most valuable asset to work efficiently and stay ahead than competition.