Are you planning to implement Kanban into your business processes? Here's where to start. Kanban system: what it is, where to start, how to implement it, main principles

As briefly as possible about the Kanban method, its basic terms and areas of applicability.

We described the Kanban method, its basic terms and areas of applicability as briefly as possible.

1. What is the Kanban method?

The Kanban method is a method for improving your work. Whatever you do, the hypothesis is that practicing the Kanban method will allow you to do your job even better. From a Kanban perspective, this means that you will better meet customer expectations.

Kanban as a tool in IT management was introduced by David J. Anderson at Microsoft (2005) and Corbis. And the method became widespread and named in 2007.

2. Are Kanban Method and Toyota Kanban the same thing?

(Largest card). Not certainly in that way. Kanban at Toyota plants is lean manufacturing, the defining principle of which is the concept of “just in time”. Kanban, as a management term, really came from Toyota. Translated from Japanese, this word means “signal” or “card”. In automobile factories, such cards were used to convey information from one stage to the next about how many and what parts would be needed.

Let's look at a short example. We need to make three cars “just in time”. This means that we can accurately determine in advance how many parts we will need at certain stages, and we begin from the end to pull out the required number of parts to create this car, answering the questions: “How many liters of paint will we need?”, “How many wheels?”, “How many engines?” and so on. Thus, we do not create surplus spare parts in the form of leftovers and save on warehouses, logistics and other costs.

The Kanban method also adheres to the concept of “just in time,” but unlike Toyota factories, here we are talking about intellectual work. In other words, a programmer's code or a marketer's idea cannot be touched and seen by the average person until it turns into a final product or service. Thus, the Kanban method is used to visualize the flow of intellectual work and reduce the amount of this unfinished work. Due to this, a uniform and predictable speed of service provision to the end consumer is achieved.

3. Can the Kanban method be used outside of IT?

Yes. The Kanban method is suitable for visualizing the flow of any creative and intellectual work. But it is much more effective to use it through the prism of the service paradigm. Look at what you do as a service. What stages does the work go through in order for the service to be provided? By what criteria will you understand that the service is provided in accordance with the Customer’s expectations? This is the starting point for using the Kanban method. Kanban practitioners call this point “start with what you have now.”

4. Is Kanban like Scrum?

No. Scrum is a framework with strict rules and boundaries. You can use different tools and methodologies within Scrum, but if you abandon something required in Scrum, it can no longer be considered Scrum. Kanban is a method, a tool with a set of practices and principles. You can use all the practices, some of the practices, or not use them at all. In Kanban there is no strict concept of what is Kanban and what is not Kanban. However, judicious use of practices can significantly help you provide the highest quality service and meet customer expectations.

5. Does Kanban have values?

Yes. There are nine of them: transparency, balance, collaboration, customer focus, flow, leadership, understanding, agreement, respect.

6. You wrote about the principles of Kanban. What are they?

Kanban does have basic principles, which are also called change management principles:

  1. Start with what you have now.
  2. Agree on evolutionary development.
  3. Encourage leadership development at all levels.

Since the Kanban method lives in a service paradigm, it adheres to its principles:

  1. Find out the customer's needs and expectations.
  2. Manage the work, let people organize around it.
  3. Develop rules to improve performance.

7. What are the practices in Kanban?

There are also six of them:

  1. Visualize.
  2. Limit unfinished work.
  3. Manage the flow of work.
  4. Use explicit rules.
  5. Introduce feedback loops (cadences).
  6. Improve and evolve.

These are directly practical techniques that we use to improve our work and improve the quality of service.

8. Oh, cadences! What are cadences in Kanban?

Cadence is a term from music. In the context of the Kanban method, it denotes rhythm. Cadences are regular meetings that are also feedback loops. Regularity sets the rhythm with which the flow of work flows. Seven cadences:

  1. Kanban meeting (daily). Here we discuss the status of blocked tasks.
  2. Queue filling meeting (usually every two weeks). We take on the responsibility of what we will do as a service.
  3. Delivery planning meeting (usually every two weeks). We return fulfilled obligations back.
  4. Service review meeting (usually every two weeks). Using metrics, we discuss the quality of the service and how to improve it, if necessary.
  5. Operations meeting (usually once a month). We discuss the quality of interaction of related services with metrics.
  6. Risk review meeting (usually once a month). We discuss with the metrics the impact of blocked tasks on the operation of the service.
  7. Strategy review meeting (usually quarterly). We discuss changes in strategy with metrics.

9. I heard something about service classes. What is this?

Kanban uses service classes to prioritize certain types of work, customers, or mitigate business impacts such as the cost of delay. The cost of delay is the lost profit or costs incurred due to late delivery of services. Let's look at the impact of delay costs and the corresponding class of service using examples:

  1. Accelerated class – emergency first aid-resuscitation. Driving in a dedicated lane. There is no time to put off solving the problem. Need it ASAP.
  2. Fixed Date Class – Delay costs increase dramatically after a certain period. Example: a project in the form of a federal law with a fixed start date. If we don't make it on time, there is a risk of losing our license.
  3. Standard class - the cost of delay increases in proportion to time. If we do it right away, we get profit immediately. If we do it for a long time, we get profit for a long time.
  4. Intangible class - we do it, but this work does not bring any obvious profit, the cost of delay grows slowly. For example, cleaning the house. You don’t have to clean regularly, but after half a year you will have to do a thorough cleaning.

10. What about metrics? How to measure the effectiveness of a service?

The Kanban method has metrics that allow you to answer the questions: what are the problems in the work flow, what is the throughput of the service, what is the execution time, what is the lock resolution time, what is the cycle time and what types of work is distributed? All this allows the service manager to make decisions on the development and improvement of service quality based on accumulated data.

11. What challenges does Kanban face during implementation?

The main challenge is to explain to people at all levels the value of Kanban practices: visualization and limiting work in progress. Due to the fact that people do not see the volume of intellectual work, it is difficult for them to understand the load they are exposed to. But the brain, for example, is the same muscle as the biceps. Imagine a gym: you come in and see the weight on the bar: “Okay, that’s too little. And now it’s too much. But this is just right!” You need to work with the brain in the same way: “This one is a big task, and this one is a small one, and in general, somehow I’ve taken on a lot. I’ll limit the load.” When we visualize the flow of work end-to-end at all levels and limit the amount of work in progress, we create a pull principle for knowledge work and make an even flow of its results to our clients.

12. What programs are there for the Kanban method?

There are a lot of them too. We list only professional ones, developed specifically for the method. Our heart is given to the Russian development Kaiten. In addition to it, there are also TargetProcess, SwiftKanban, LeanKit and others.

13. And which companies already use the Kanban method?

Among the Russian ones are Alfa-Bank, Home Credit Bank, Pochta-Bank, Dodo Pizza, HeadHunter, Clever and others. From foreign: Wargaming, Microsoft, Automotive IT, Blizzard Sports, Dr Dobb’s, Siemens, Tupalo. This list can be continued for a long time.

14. Is there anything else important?

Yes. Finally, I would like to note the importance of two roles in the Kanban method. These are the service delivery manager and the service request manager. The first is responsible for removing obstacles in the supply flow. The second is for managing the flow of requests to the service from many customers. It is very important that these two roles are partners and work together.

15. Okay, I understand. Where to start implementing Kanban in an organization?

To start implementing Kanban in organizations, we use the S.T.A.T.I.K tool. – a systematic approach to the use of Kanban. You can read more about it on the Internet. But we recommend attending a training where this tool is taught in the format of a business game. Using your service (organization) as an example, you can design a Kanban system for subsequent use in combat conditions.

Trainer and consultant on agile methodologies, Scrumtrack.

Good afternoon

One of my professional interests, as a testing team coordinator, is software development methodologies. Currently, so-called Agile methodologies, especially Scrum and Kanban, are becoming increasingly popular. Unscrupulous “trainers” play on “hyped” terms; seminars and certifications (“certified Scrum master”, “certified Product owner”, etc.) are growing by leaps and bounds.

In most unscrupulous articles and trainings, any methodology is presented as a magical silver bullet that will instantly solve communication problems and immediately save individual team members from the incompetence. In general, it will help you solve exactly your problems. This year I am entering the master's program at the Belarusian State University with a degree in human resource management technologies and I plan to consider in detail the pros and cons, as well as the limitations of the applicability of the most common software development methodologies.

In the process of work, I often encountered misunderstandings and incorrect interpretations of methodological tools, the use of fashionable methodology without taking into account the context. After reading the article, I realized that the problem is more global than local. Today I propose to take a little look at Kanban, its history, basic principles, and possible boundaries of application.

History of the term
Kanban is a Japanese term that began to be used in relation to production in the 60s of the 20th century at Toyota. This principle is based on the conveyor production method, as well as different speeds for performing individual technological operations in production. I'll try to explain it in my fingers. In any production there is a main production (“main conveyor”) and additional production (“additional conveyors”). The rate of production of final products is set by the main conveyor, while additional conveyors cannot speed up the rate of product release, but can slow it down if the required parts are not released on time.

Additionally, during production there may be a change in priorities. For example, it turned out that the station that produced left mirrors produced 20 pieces, and the station that produced right mirrors produced 10 pieces, while there are 15 cars on the assembly line and 15 pieces of mirrors of both types are needed. There is a conflict of metrics - production has not fallen quantitatively (additional conveyors produced 30 products on time), but production still risks stopping. Kanban is designed to help with this problem.

In its simplest form, Kanban includes two simple rules:

  • The production station has a parts production plan (“backlog”). The plan is sorted by priority, and can change at any time (for example, a station producing too many left mirrors should be able to switch to right mirrors as soon as possible);
  • the number of tasks performed at the station simultaneously is limited (i.e., produce no more than a given number of mirrors at the same time). This limitation is necessary to control the speed of production at the station, as well as the speed of response to plan changes.
Present tense
Lately, Kanban has been gaining a lot of popularity in software production. Some teams find this methodology extremely useful, some use it as a “Cargo cult”. Based on my empirical experience, pure Kanban works poorly for product teams (read "core pipeline"), but works great for support teams such as:
  • software support groups, where the “plan” is not important, but the speed of response to changes is important;
  • testing teams working separately from development teams;
  • support services;
  • other examples of “non-essential industries”.

Separately, it should be noted that Kanban works well in startups that do not have a clear plan, but are actively working on development. I propose to consider an example of using Kanban in software development. I apologize in advance for the ugly illustrations. Let's imagine a team of one developer working on a small project. The development plan (backlog) is sorted in order of priority of pieces of work, the team limit for tasks in the process is 1 piece.

To manage the process, the project manager can:

  1. change the limit on the number of tasks in work;
  2. add a task with a higher priority (for example p0) so that it is taken as soon as possible;

During the work process, it may happen that the work is blocked (the hosting has broken down, the required framework has not been downloaded, etc.). In general, the blocked work is returned to the backlog, and a new task with the highest priority is selected. Depending on the nature of the tasks and the type of team, the limit may be increased or decreased. For example, our developer can simultaneously draw a registration form and watch the process of deploying a new server. However, if the task completion time is less than required, the project manager can reduce the limit, or increase the team. Thus, with proper management, Kanban provides the highest possible speed of work for a given team, maximum speed of response to changes and at the same time reduces the “costs” of supporting the methodology. Well, that's all! Kanban is not easy, simple. It's very simple!

The limitations of Kanban when used in product teams include:

  • this methodology does not work well with large teams (more than 5 people);
  • In its pure form, Kanban does not work well with cross-functional teams. Those. Unlike Scrum, it is difficult to combine testing and development in one team. A better idea is to split the process into a development “station” and a testing “station” with separate managers and backlogs;
  • Due to its history and specifics, Kanban is not intended for long-term planning.
Conclusion
In conclusion, I would like to add that comparing any methodologies on the principle of “who is cooler” is not productive and counter-constructive (Captain Obvious). Each more or less common methodology has its pros, cons and limits of application. Additionally, Agile methodologies inherently place greater demands on the team members’ teamwork and experience.

If there is interest in the topic, I will continue to consider Kanban in more detail. Subsequently, I propose to sort Scrum and RUP into pieces and pictures.

In more detail and clearly you can look at.

Kanban - what is it? How much interesting information does a Kanban card contain, and what function does the method serve in production? In the article we will explain in detail the rules for the effective use of kanban, and also give a clear description of the scheme for using the corresponding cards using a specific example. In addition, after familiarizing yourself with the material, you will learn why a Kanban board is needed, in which areas, in addition to production, it is advisable to use this method, and what can serve as a good alternative to it.

The essence of the concept and the main features of the method

Today one can observe a clear trend towards increasing costs for storing inventories, which is the main reason for the formation of “instant” inventory management complexes, which includes the kanban system. Translated from Japanese, "kanban" means "tag", "badge". This term serves as a method of information through which permission or indication is given for the production or exclusion (transfer) of a product in a pull system.

The presented option for conveying information allows you to fully manage lean production lines through the use of information cards to transfer a specific production order from the next stage to the previous one.

The developer of such a productive system is Toyota Motors, which explains the presented idea as one of the first attempts to practically implement the just-in-time method. According to the kanban system, production is carried out in accordance with the following rule: divisions of the enterprise are supplied with resources in a specific quantity and by a clearly defined deadline necessary to complete the order.

Process details

The scheme of the presented method is extremely simple, however, it has a very effective impact on the organization of the production process. After supplying the divisions of the enterprise in terms of resources, a detailed calculation of the required volume of work in progress is carried out, which should come directly from the penultimate stage (the order for the finished product, accordingly, is the final stage of the process). Similarly, from the penultimate stage a request is made to the previous stage for a specific volume of semi-finished products.

Thus, the scale of production at a certain site is formed in accordance with the needs of the next production stage. It is logical that between each two stages of the production process located in the vicinity, a double type of connection is established:

  1. From the nth stage to n-1, the required amount of work in progress is requested (“pulled”).
  2. From the n-1st stage to the n-th stage, material resources are sent in the required amount.

Information transfer tools

To better understand kanban - what it is, you should understand that the tool for transmitting information in this system are special cards, which are classified into two groups:

  1. Tools directly related to the production order. In this kind of cards, the number of parts that must be produced at the previous stage of the production process is first indicated. They are sent from the nth stage of production to the n-1 stage and serve as the main reason for developing the production program for these sites.
  2. Selection tools contain information regarding the volume of necessary material resources (this may include semi-finished products, materials, parts, etc.) that must be taken at the previous assembly stage. Cards of this kind display the resource volume actually received by the nth stage of the production process from the n-1st.

It is important to note that cards can circulate not only in relation to the internal infrastructure of the enterprise, but also between its branches or corporations that support cooperation.

Effective methods of using Kanban - what is it?

Taiichi Ohno, president of Toyota Motor Corporation, has developed a number of principles for using kanban cards with maximum efficiency:

  • The subsequent operation of the production activity removes the volume of parts indicated by the card from the previous operation.
  • The production operation located in front is carried out in accordance with the creation of parts in the quantity and sequence indicated on a specific card.
  • There are no parts that can be created without a card. This provision allows for a reduction in overproduction, as well as excessive movement of products. Thus, the volume of cards in circulation is equal to the maximum amount of inventory.
  • A card is an order for the manufacture of a product (the product is in any case attached to the corresponding card).
  • Parts that have any defect cannot be passed on to the downstream process. This provision makes it possible to make the production of products as defect-free as possible.
  • Reducing the number of cards increases their sensitivity level. Thus, existing problems come to light and effective control over inventories is carried out.

Features of using cards

As it turned out, kanban management is carried out according to a certain scheme, which involves the use of special cards. Thus, during their use, the requirements for ensuring absolute visibility and utmost safety of the system in question must be fully implemented: the loss of cards, as well as their mixing, is completely eliminated.

Experts have developed an effective tool that allows you to provide maximum productivity to the Kanban system. The board of this method serves as a collection point for active cards, since employees often use several different tools in the workplace. Thus, the cards that go to the manufacturer are placed on the control board. And when the newly received card tools reach the “start” field, the entire set of cards of the corresponding part number is transferred to carry out the further production process.

Benefits of using the Kanban method - what is it?

Enterprises that use it receive daily supplies of material resources (and often several times throughout the day). This makes it possible to fully update production inventories approximately 100-300 times during the year. If we compare Kanban with systems such as MRP or MAP, then in this case, updates occur approximately 10 times more often.

It is advisable to evaluate the kanban method with examples that reveal its absolute advantage over other, less productive ones. Thus, the Toyota Motors Corporation supplied resources to one of the many production sites three times a day in 1976, and in 1983 - every ten minutes.

Kanbans are often used in working with supermarkets (stock specially formed for this purpose). Thus, the consumer sends a selection kanban to the supermarket, which indicates, as noted above, the volume of the product, and the supermarket transfers to him the specified number of products. At the same time, the supermarket sends a replenishment kanban to the supplier, after which the supplier transfers the products to the supermarket.

Fundamental elements of the method

The most important components of a kanban system are the following:

  1. An information complex that contains in its structure not only cards, but also production, transport or supply schedules, as well as technological maps.
  2. A complex that is directly related to control over needs and professionally.
  3. A complex that allows for total (TQM) and selective (Jidoka) product quality control.
  4. A complex that ensures absolute leveling of production.

The presented elements, used together, make it possible to achieve the shortest production cycle, a high level of asset turnover (including inventories), as well as eliminate or minimize storage costs for both production and, of course, achieve the highest quality of the product at each stage of the production process.

Disadvantages of the system and the results of its use

Like any development, the just-in-time system has some disadvantages. Firstly, it is the difficulty of organizing a high level of consistency between the stages of production of a particular product.

Secondly, there is a significant risk of disruption to the production process and, accordingly, to the sale of products. Nevertheless, a detailed analysis of world practice in relation to the application of the method in question showed that the presented system makes it possible to reduce production inventories by half, and inventory by 8%, with a significant acceleration of the turnover of working capital and, naturally, an increase in the quality of the finished product.

It is important to note that the use of kanbans does not end with production processes. Thus, the system is actively used in office and project activities, in programming (there is a whole complex of kanban development), as well as in achieving personal results (personal type of kanban).

The kanban system began its journey in the 1950s on the production lines of the Toyota Corporation, after which it migrated to offices and became an important tool for project managers.

The endless flexibility of practice and its opportunities for staff self-organization made it possible to achieve efficiency where other approaches did not work. This is the case when the card itself became the calling card of the system - it established itself as an internal currency in organizations that implemented Kanban.

Origin

Like the lean manufacturing concept, the kanban system was developed by Toyota managers. The author of the system, Japanese engineer Taiichi Ono, was inspired by the operating principle of American supermarkets, where the buyer himself chose the goods he needed. The role of a “supermarket” in the Toyota corporation was fulfilled by a warehouse.

There, signal cards - and this is how “kanban” is literally translated from Japanese - workers exchanged signal cards, regulating the production process with their own hands.

The cards were attached to containers with parts. These tags contained information about the number and quantity of parts, which department was sending them, and where they should arrive.

The worker who was directly involved in the installation and assembly of the machines - the downstream - took parts from the container, on which a “kanban” was attached with a request for the warehouse. The card was removed and, together with the empty box, was transferred by the transporter to the warehouse. There, another employee had already prepared a new container of spare parts, on which was attached a production “kanban” - a tag with information about the spare parts produced.

The production kanban was replaced with a request kanban for the warehouse and sent to the parts production line - upstream. Therefore, exactly the number of parts that was indicated on the card was produced. Containers with new spare parts were taken to the transporters on the assembly line.

Kanban principles

Toyota managers formulated 6 system-forming rules:

  1. Downstream workers remove exactly as many parts from the warehouse as indicated in the kanban
  2. Representatives of the upstream also supply spare parts strictly in accordance with the cards
  3. Nothing is produced or moved without a Kanban.
  4. Kanban should always be attached to parts
  5. Defective parts are not used in the system
  6. Reducing the number of kanban cards makes management more responsive to change. But unless absolutely necessary, you shouldn’t change the established number of cards.
Kanban is a “pull” system. It creates a balance between constant flow, which eliminates waiting costs, and minimum work in process (WIP), which reduces the risk of overproduction. The RVP is regulated using cards: their number is fixed, and the instructions in them guide the downstream performers.

The rule of a mandatory tag works like the law of conservation of energy.

The RVP limit is drawn up in proportion to the number of kanban cards, which is calculated depending on the level of sales and statistical variation in current processes. The maximum number of tags—the same “energy” in the system—fixes the upper level of the RVP at any given time. RVP is also limited by the pull principle: the production speed of the upper flow depends on the speed of the lower flow.


The graph shows that one of the basic elements of the system is the Kaizen culture. Autonomous process and standard variation frees management from constant management so they can focus on improving employee performance.

Application of Kanban in IT

While Kanban continues to provide value on production lines, it has made its way into the software world.

Only cards that contain information about deadlines, a description or process number and the name of the performer are now attached not to the container with spare parts, but to a board with lined columns:

  • Backlog - tasks that need to be completed
  • Tasks that are currently being developed
  • Tasks that are completed but not yet transferred to testers
  • Tasks ready to be transferred to the testing department
  • Tasks that are reviewed by the project manager (PM)
  • Completed tasks

A number is usually written above the columns - limit, indicating the maximum number of processes in it. The backlog limit is calculated depending on the leading time. If the system has 5 jobs in progress, and each of them takes an average of 1 day to complete, then the backlog can be limited to a limit of 5.


The structure above is not strict - Depending on the specifics of the project, improvised speakers can be added. Often there is a kanban system in which it is necessary to determine the criteria for the readiness of a task before its execution. Then two columns appear, which in English are called specify(specify parameters) and execute(start working).

  • More a column with a priority queue can be added.When the performer is free, he must empty this particular column of tasks, and then take on others.
  • Tasks that were not completed are either returned to the backlog or crossed out from the scheme.
  • Kanban does not encourage multitasking, so a process limit is set for one executor.
  • Completed work is preferable to several started.
  • You can take on a second job if the first one was blocked.
  • The time to complete a task must be balanced.Too short a period will affect the quality. An overextended limit wastes team resources and increases the cost of the process.


Why is a Kanban board used everywhere, and not, for example, tablets or a huge monitor? As fans of the system answer this question, a regular board has two advantages: it is simple and provides visual control. It is easy to make changes and provides tactile and social interaction between team members.

Advantages and Disadvantages of Kanban

Kanban has the following advantages:

  1. Planning flexibility. The team concentrates only on the current work, the priority of the task is set by the manager.
  2. High team involvement in the development process. Through regular meetings, transparent processes and opportunities for self-organization, employees unite and show genuine interest.
  3. Shorter cycle duration. If several people have similar skills, the duration is reduced, but if there is only one, a bottleneck appears. Therefore, employees must share knowledge and thereby optimize cycle times. Then the whole team can pick up work that has stalled and restore smooth flow.
  4. Fewer bottlenecks. RVP limits allow you to quickly find bottlenecks and problem areas that have arisen due to a lack of attention, people or skills.
  5. Visibility. When all workers have access to data, bottlenecks are easier to spot. Kanban teams, in addition to the cards themselves, usually use two general reports: control and cumulative flow graphs.

In practice, the system performs well in non-core production areas:

  • software support or help desk teams.
  • Kanban works well when managing startups without a clear plan, but where development is actively moving forward.

Kanban also has disadvantages:

  1. the system does not work well with teams of more than 5 people
  2. it is not intended for long-term planning.

Differences from Scrum

Scrum, like agile kanban, is a flexible methodology and is also often used in the IT field. The differences between them are not obvious at first glance. There are many similarities, for example, the presence of a backlog in both approaches.

Scrum

Kanban

Pace

Repeatable sprints of fixed duration

Continuous process

Release release

At the end of each sprint after approval by the project manager (product owner)

The flow continues without interruption or at the discretion of the team

Roles

Product Owner, Scrum Master, Development Team

A team led by a PM, in some cases agile kanban trainers are involved

Main indicators

Team speed

Leading time

Acceptability of changes

Changes during a sprint are undesirable as they can lead to incorrect estimates of tasks

Change can happen at any time

Application examples in IT

Straight from Microsoft: Kanban debuts in software development

The use of Kanban principles in the information technology industry began just over 10 years ago. David Anderson, one of the main popularizers of Kanban for software developers, consulted for Microsoft in 2005. They were dissatisfied with the work of their department - XIT Sustained Engineering, which eliminated errors in internal applications. At the beginning of the reporting year, this department was the worst in its department. The backlog exceeded the permissible size by 5 times, and the time to process one request was leading time- usually took 5 months.

The new PM, with the help of Anderson's consultations, increased the productivity of the problem department by 155% in 9 months. Leading time was now 5 weeks, the backlog returned to normal size, and on-time completion of tasks was established at 90%. All these results were achieved with minimal involvement of new employees; the staff continued to correct software errors using the same methods - Only the approaches to organizing work have changed.

Interesting fact: program manager Dragos Dumitriu, who undertook to turn the tide at XIT, was fascinated by Anderson’s book. To his surprise, he met the ideologist of software Kanban at Microsoft itself, where he had gotten a job the day before. Dumitriu asked Anderson to help with his task, and the latter agreed to put the principles of his book into practice.

Dumitriu found a department consisting of three developers and three testers who had 80 requests accumulated in their backlog. The PM himself was appointed temporarily, since the requirements for the position included ability to work with ASP technology, administration using SQL Server and knowledge of MS Project Server. The bosses saw this position as a “techie” who knows how to program, should compile reports and predict the backlog load. It was believed then that the department's problem would be identified if an impressive array of data was collected. Dumitriu was not such a “techie.”

However, as he and Anderson began analyzing XIT's performance, he quickly identified key factors that were negatively impacting the department's speed:

  • It took too much time to predict the consequences (ROM) of executing a request. Both the developer and the tester had to spend a full day to carry out the necessary calculations, code reviews and complete documentation. On average, one request was received daily. According to PM estimates, 40% of the department's productivity was spent on ROM;
  • Priority was given to requests with higher value. XIT received funding from the cost of the order. The priority of requests was discussed every month at a meeting of department managers with customers - managers of other departments. With a bursting backlog at the current speed, when only 6-7 requests were processed per month, the priorities of other requests were constantly changing due to the passage of time. Many of them were postponed for an impressive “later”, not even equal to the next month.
  • At the ROM stage, half of the requests were eliminated. Some of them were too large and were re-qualified as projects to be transferred to other departments, others were too expensive and were simply cancelled. Some requests were not taken into development because their implementation would have been too long. Thus, 40% of the department's productivity was spent on analyzing requests, 50% of which were rejected. About 15-20% of labor resources were wasted.
  • The preparatory work for the request could last for months before implementation began. Calculations at the ROM stage could get lost or forgotten during this time. Especially if the implementation was not carried out by the same developer who started the analysis.

Kanban solutions for a troubled Microsoft department

  1. Dumitriu and Anderson insisted in conversations with management and customer managers on abandoning the ROM stage. The calculations were made immediately before implementation and by the same performer, that is, they remained “fresh”.
  2. Prioritization of requests was carried out not during monthly meetings, but according to the situation, through telephone calls or emails. 80 tasks in the backlog were sorted depending on the customers. The latter were asked to highlight the main queries that need to be completed first.
  3. XIT funding has become fixed.
  4. The cost of requests is no longer taken into account.
  5. The PM entered buffers on the Kanban board. The developers took work from two zones: approved and completed tasks. There were 6 requests in the buffer, 5 were taken to work. Testers selected from the “waiting for testing” buffer. Some tasks that did not require changes to the code ended up there, bypassing the developers. By breaking down requests into single-task processes, the PM could have greater control over the situation, as well as provide transparency to customers. The introduction of buffers reduced the leading time. Customers, under a predictable system, are better able to determine whose request should be buffered next.
  6. If requests were too large or expensive, a decision was made immediately. If the developer confirmed that he was ready to complete the task within 15 days or the changes were worth it, then the request was taken on, regardless of size or cost.
  7. After observing the flow in the department, the PM came to the conclusion that the staff structure should be changed in favor of developers who were more loaded with work. The changes were carried out in a 2:1 ratio: 4 developers and 2 testers began working at XIT.



At the end of 2005, the department's productivity increased by 155%. To further improve the work of XIT, two employees were hired there: one developer and one tester. The number of requests in the backlog decreased to 10, and one developer began to consistently process 11 requests per quarter. On average, 56 requests were completed per quarter compared to 11 previously. The cost of requests dropped from $7,500 to $2,900.

Application at Corbis

Having achieved success at Microsoft, Anderson began solving a new challenge in 2006. Now he worked at Corbis, another company of Bill Gates, who had not yet left MS. One of Corbis' activities was photo licensing. At that time, it was the second largest photo stock in the world with a database of about 3.5 thousand images.

Anderson's job was to speed up the company's major releases. The interval between their exits was three months and could grow even longer. Just discussing the release plan took management two weeks. It was necessary to arrange for minor releases or updates to be released every two weeks. At the same time, key resources had to be directed to work on the main project.

A Kanban board appeared in the Corbis office, where Anderson communicated daily with the team. The purpose of PM was to improve visual control over processes, promote self-organization and greater personal responsibility of performers. The Kanban system was also aimed at reducing management oversight and increasing productivity.


In addition to multi-colored cards and graphs, a “trash bin” appeared on the board; tasks that were too large were sent into it.


Photo from the official
A Kanban System for Sustaining Engineering on Software Systems by David J Anderson

The kanban system made it clear where the flow stops being smooth and where delays occur, the so-called bottleneck. Quick discussions with the team helped identify current problems. For example, testing lasted 3 days, which negatively affected the release date. Three employees teamed up and found a way to reduce the time to one day.

A bottleneck is a section of a company’s operation scheme or algorithm where resource limitations or people’s productivity sharply reduce the flow of tasks. A shortage of workers, poor internet, or a director on vacation blocks or slows down the completion of tasks.

Kanban card limits were set empirically twice. In the "ready for development" column, the limits have been increased. There is also a new column - “ready for testing”. Many requests for the downstream were incorrectly formulated, causing unnecessary time wasted. Therefore, the PM examined the operation of the upper flow and found errors.

Processing requests could take 100 days, but releases still began to come out every two weeks, as planned. The decision on the content of the issue was made 5 days before publication. Counting practices, as in the case of Microsoft's XIT department, were abandoned in favor of productivity. Tasks were prioritized according to the “cost of delay” or resource availability.

The Kanban system not only helped Anderson achieve his goal, but also improved the mood in the team. Thanks to joint discussions and visibility of processes, employees developed trust in each other. The staff also joined Kaizen, that is, the practice of continuous improvement.

What is the kanban methodology and how does it help you complete tasks on time?

In conditions of constant multitasking and a large number of customers, sooner or later any system becomes overloaded. Deadlines begin to be missed, expectations are not met, and the system turns into chaos. Today I propose to get acquainted with a methodology such as kanban. This approach promises to effectively allocate resources and solve all our problems. Let's check.

A moment of kanban history

The basis of the kaban idea was invented by Toyoyta Motors. A car manufacturer was suffering heavy losses due to improper allocation of inventory and capacity on the production line. Some production stages could be idle, and some were overloaded.

In 1959, a production control system was proposed that made it possible to balance all sections of the line. The basic principle was that at each stage, workers posted cards with the required number of parts, which were passed down the line. Each worker following along the production line took exactly as many parts from the previous one as was allotted to him on the card.

This way, every part had a card, and there simply couldn’t be any surplus. As a result, inventories did not grow in the areas, and each subsequent worker received exactly the number of parts that he needed.

Let's formulate what kanban is and apply it to the development of Internet products.

Kanban is a lean manufacturing management system (Japanese: "signal"/"card") that uses information cards to communicate orders through all stages of production. In simple words, we track the entire path of a product, from idea to release onto the store shelf.

Above is a kanban board. This is the main tool for displaying task status. The main principle: we see at what stage of the production process a particular task is located. Plus, time is tracked in all areas, that is, you can always find “ ” in the system and work with them.

You determine the number of columns yourself based on the characteristics of your project. It is important that these are the main stages that your product goes through. The example above is plus or minus the main stages that an online product goes through.

The application of the methodology is very wide. Kanban is used for project implementation, sales management, production lines, IT development, and even for organizing your own life.

Sorry to interrupt reading. Join my telegram channel. Fresh announcements of articles, development of digital products and growth hack, it’s all there. Waiting for you! Let's continue...

Kanban principles

  • Visual display of tasks. All tasks must be presented in the form of cards and reflected on the board. It is very important to update the status of tasks. For example, if the developers prepared the code and submitted it for testing, then the task card should go to the appropriate column. Thus, any team member at any time can see what stage the task is at.
  • Limitation on WIP (work in progress or work performed simultaneously) columns at each stage of production. To ensure that the system does not sooner or later “choke” from the flow of tasks, it is necessary to set restrictions. For example, on the kanban board above in the Analisis column (analytics), we have 2 people working and they can handle no more than 2 tasks, there is no point in loading them more, since subsequent stages of the system will be idle. Column restrictions are selected empirically.
  • Focus on unfulfilled tasks. When looking at the board with tasks, first of all pay attention to those tasks that “hang” in one or another column. If one of the stages takes the most time for you, then try to redistribute resources or add people, if possible.
  • Continuous improvement. Once you balance the load in the system, it will be easier for you to monitor the entire process. Measure the cycle time (how long the task hangs in a separate column, and how long from the moment it gets into To do until the release of Done). Change the loads in the system and reduce the time it takes to complete all stages.
  • Pay attention to detail. For example, if the code that developers write periodically does not pass testing and is returned for revision, then perhaps there are options to improve the quality of development so that a higher quality product gets tested?

The kanban approach may seem idealistic, but I assure you its principles produce results. First of all, you need to adapt the methodology to your situation, and then polish the system.

Kanban tools

Or where to maintain a kanban board.

  • Excel tables
  • Board with stickers
  • Another fantasy...

In fact, there are a lot of options, you can google it and get some inspiration. The main thing is that you have this board and all participants in the process can see what is happening with tasks at the moment.

Examples of kanban boards

Here is a board that hangs on the wall, where each task is reflected on sticky notes.

Or it could be a cloud service like Trello.

There are a number of opinions about what tools and options to use in your work, but this is mostly a matter of taste. Just try different solutions and settle on the one you like best. The point is to start using kanban, and not get stuck on using the most beautiful board possible.

My opinion is this: for brainstorming or working on cases offline, a regular board with stickers works well. But for everyday work, of course you need to use a cloud solution like Jira, Kanbantool, Trello, etc. In them, the entire team can add comments to tasks, move them by columns, and much more.

Nuances/thoughts

If we talk about Internet products, then kanban works, helps and improves, but there are a number of concerns or nuances that need to be taken into account.

  • Most likely, the introduction of WIP limits on a column may frighten the project management team a little. After all, how can you determine how many tasks a developer or, for example, a tester can solve in parallel? What if we introduce restrictions and they just chill out?

You see, if a person is not fully loaded, this is not bad. He can study and analyze the work done, find shortcomings and correct them, and even rest. Plus, you can help your comrades from other parts of the process (columns), more details below.

  • According to kanaban gurus, the system works ideally in cross-functional teams. Well, something like that, if you have nothing to do, go help a fellow worker. True, in order to put together a team where developers can be testers and vice versa, and the system architect will help the designer, you will need to shell out a lot of money, and is it worth it?

Of course, it’s great when team members learn from each other and can help in some way if something happens. But in order for this condition to be met, it is necessary to have small teams that preferably sit somewhere nearby and constantly communicate. On large projects it is difficult to reproduce such an exchange of experience.

Therefore, I am more inclined to hone my skill if I have a quiet moment. Look at what you did, think about how you can improve it, read useful articles. A person is a living organism, not a cog in a conveyor belt.

Total

We have looked at the kanban methodology and now, I hope, you understand how to apply it in your project. Try to divide your processes into main stages and optimize the system based on the knowledge gained.