Recently an IT manager asked me why some teams’ tasks should be considered as “valueless” even though team members worked hard to perform those tasks. This question is key for managers and teams to better succeed in their mission, as well as for their client and for themselves. Therefore, clarifying the notion of success is of the utmost importance.
Success means to fulfill a mission for the “clients” :
- the “client buyer” who ordered the product and pays for getting it at the time she needs it, with the right level of quality, at an affordable price.
- “internal clients” who manipulate the deliverables that the team has built and delivered. For example, in a video game development, the Developers are the internal clients of the Animators as those later deliver animations to be coded by Developers. And Animators are the internal clients of the Artists who create and design characters, landscapes, etc.
- “end clients or users” who will use the product at the end of the whole process. For example, the people who will play with the mobile game are the “end customers”.
Every activity may be considered as a process in which every step should add value to the piece: draw a sketch to create a character, create a 2D-art image, create an animation, code the movement of a character in the game, etc.
This is the “standard” process, in an ideal world, in theory, and from the Client’s perspective: she wants each process step to add some value to the piece to be delivered: draw the face of a character, add the right colors, create the animation of the face, code the animation of the face, deliver the code to users.
As you may know we don’t live in theory ;-).There are many obstacles in real-world work and, as a consequence, teams usually run out of time and deliveries are delayed.
In order to improve and better succeed in our mission, the Lean approach provides a specific and powerful way of reducing lead times: it helps to understand the gaps between the real process and the standard process to be able to remove/reduce those gaps day after day, step by step.
Lean forces one to see an activity / real process / people’s work with the Client’s eyes. There are 2 fundamental ways to look at an activity with the Client’s eyes :
Looking at the “parts”: a Client is expecting the “parts” she’s waiting for (i.e. features of the game that users will use) to go smoothly through the process, where each step adds some value to the it.
As the Client sees the pieces moving through the process (drawings, art 2D items, animations, code for a feature, …), she could ask herself if they are waiting or if someone is really working on it? Because, as a Client, I’m waiting for it, and time is flying…
This type of perspective is used in “Value Stream Mapping” approaches but it’s not what we want to focus on today..
Watching a person who works on a part of the product that the Client is waiting for: does this person spend her precious time to add value to the piece she’s working on right now? Or is this person doing something that does not add value to the product? Is the “whole system” – acquired skills, tools, inputs, methods & procedures – helping the person to add value right now, or is it forcing her to spend time on work that does not add value?
According to the Lean approach, when a person is currently working, this work is related to one of the 3 following types:
- Value Added Work: work that adds value to the piece. For example drawing the face of a character, adding the right colors, creating the animation of the face, coding the animation of the face.
- Auxiliary Work: work that does not add value to the piece, but is currently required as imposed by the organization or methods to run the activity. Examples: running the daily standup, tracking progress in deliveries, KPIs tracking, filling in timesheets, etc.
- Waste: work that does not add value, does not help to run the organization, and that we want to get rid of, but that “the whole system” imposes on us. Waste is increasing the costs for the company and clients, and makes people’s work life difficult and uninteresting.
The typical distribution of them over a day or a week looks like below:
As you can see, a significant amount of work time is generally related to waste, and a small one to value added tasks. One of the consequences is that teams are not able to deliver the expected amount of parts/deliverables as they are working on something else than bringing value for the client:
One important thing here to consider is that waste can be concretely seen. In order to facilitate the identification of waste, 7 families of waste have been introduced:
|Family of Waste||Meaning||Examples in IT|
|Overproduction||A person is producing something in excess/not used by the end client, or produced too early (which may cause other wastes like “Fixing defects / reworking”)||Coding a feature that is not used by users.Developing a product that is not used by clients.Specifying a feature that is coded X months after, and has to be modified as many things have changed meanwhile|
|Fixing defects / reworking||A person is fixing a defect, or re-working on a piece to correct it||Fix a bug: understanding the bug, designing the fix, coding the fix, testing the fix, delivering the fix.Rework on a document to correct a mistake.|
|Waiting||A person is waiting||Downtime of a tool or environment.Person waiting for a shell script to finish.|
|Over Processing||Working on a process step that does not add value, by design: redundant process step, Doing the same work a second time||A second step of quality control in addition to an existing one|
|Unnecessary movement||Non value added gestures at workstation||Searching for informationCopying and pasting existing data from one application to another.5 clicks to perform a basic operation in an app.|
|Excess of inventory / stock||Excess material / information, work in progress, or finished products: causing longer lead times, obsolescence, damaged pieces, transportation + storage + handling costs, and delay.||Handling costs: going through a backlog of 100 items during 1 hour.Obsolescence: stock of written User Stories that become unvalid and require to be rewritten; stock of code modules waiting to be integrated and to be rewritten as an API changed|
|Transport||Moving pieces from one location to another||An IT request going across people / departments / services|
Some wastes are easy to stop and require « just-do-it » countermeasure actions (e.g. stop controlling quality twice), but others are complex (stop getting bugs to remove rework/fixing waste) and require to fully identify and understand their root causes. Otherwise they will appear again!
Some wastes are indeed symptoms of deep problems and misconceptions. By tackling them daily, people better understand their activity and are able to detect what biases and incorrect thinking they should work on.
Daily actions to improve activity by everybody are called “Kaizen“, and this is integrated into the work day of people while they do their job.
So the job equation is the following:
JOB = WORK (production) + KAIZEN (improve)
Typically Kaizen time counts for ~10% of the job time.
Performed daily, Kaizen frees time as it allows to get rid of wastes:
As a rule of thumb, reducing waste time by 15% usually doubles value added time.
By acting on problems with proper problem solving technique, people reduce the amount of waste and free work time to produce more pieces with better quality:
So the question we must ask ourselves every day is “what was the major waste people were forced to create yesterday? What should we do about it? and today?”
To get a better understanding of how lean can help you, feel free to get in touch with us: contact at operaepartners dot com – Phone: +33 1 40 05 96 88