Table of Content
The successful delivery of software depends on the smooth flow of tasks across your delivery process. And the best way to carefully direct and manage traffic across your system is by ensuring that tasks are handled in a timely and orderly fashion via a system that operates at maximum capacity. The problem, however, is that no matter which methodology you choose or how carefully you monitor workflows, it is hard to predict the duration of individual tasks. Tasks that take longer to complete can often lead to bottlenecks, causing delays to downstream tasks and impacting your delivery schedule.
Kanban is a lean manufacturing practice for managing assembly lines. In the mid-2000s, many Agile practitioners realized that Kanban met their needs as a lightweight project management methodology and adapted the Kanban System for software development. In this article, we introduce you to Kanbanflow and show you how you can use Panaya’s Release Dynamix [RDx] for effective, Kanban-based portfolio and project management.
What is Kanban?
Kanban is the Japanese word for a billboard. The Kanban system is a project management methodology developed in the late 1940s by Toyota. In the period following WWII, Toyota was trying to establish itself as a major player in the automotive industry. The company realized that while it lacked the economies of scale enjoyed by its US rivals, it could compete by producing high-quality vehicles more efficiently. As part of this effort, Taiichi Ohno, an automotive engineer, created a system based on the following principles:
Visualize Work
Kanban creates a visual representation of your process to show how tasks flow across it. Visualization exposes potential and real problems that will impact the output of the project, thus helping you locate potential and actual bottlenecks. You can easily visualize work by breaking down your existing system into stages and tasks. As you decompose your system, you define policies for managing tasks as well as the criteria required for completing a specific stage and moving on to the next one.
Kanbanflow Planning Using Panaya Release Dynamix [Rdx]
Limit Work in Process
Uncompleted tasks limit the amount of work your system can handle and increase the time it takes to complete additional tasks. To ensure that your system is efficient and operates at maximum capacity, team members must complete their current task before starting a new one. Kanban describes this practice as “limiting work in progress.” Limiting work in progress benefits individual team members by reducing the mental effort involved in juggling multiple unfinished tasks and managing priorities.
———-
You might also like our blog
Agile Versus Waterfall – How to Select the Right Tool for the Job
———-
Optimize Flow
Ensuring that tasks flow smoothly requires constant monitoring and measurement. Actively collecting and analyzing flow-related data will enable the creation of indicators and metrics that help you understand existing and future problems. You can also use this information to solve specific problems immediately as they occur.
Continuous Improvement
The ultimate aim of any Kanban system is to create a culture of continuous improvement, not just in individual teams but across an entire organization. An important element of continuous improvement is feedback cycles that encourage reporting and fixing problems quickly. One of the additional benefits of this approach is that it encourages teams to experiment with new approaches and solutions to existing problems. Kanban is a data-driven system, making it possible to analyze the results of this type of experimentation.
Using the Kanban System
Kanban started as a way to track the progress of individual cars on a production line, but it can be used for managing many different workflows and types of tasks. Kanbanflow has been adopted by many teams that use Scrum or the Scaled Agile Framework (SAFe).
The first step in starting a Kanbanflow project is to create a board. The board is divided into three or more columns. Each column represents a stage of the process, with the columns at the left and right sides of the board representing the start and end of the process. At the top of each column is a label with the name of the stage. The columns in between the left and right columns indicate individual steps of the process. If you want to create a very simple Kanban board, you could label the columns To-Do, Doing, and Done. You can customize the board to match your development process and create columns such as Stories, Current Iteration, In Progress, Tested, Released, etc.
At the start of each development iteration, the project manager and/or development team:
- Decomposes the iteration into individual development tasks
- Writes each task on an index card.
- Places the cards on the board.
- Assigns a card to individual team members.
After team members are assigned a task, they move their task card to the next column on the right as they complete each process stage. As the cards move across the board, you can identify issues at each stage of the process. When all task cards are in the rightmost column, the iteration is marked as complete.
———-
You might also like our blog
Scaled Agile Framework (SAFe): Is It That Perfect?
———-
To ensure that your Kanban board operates efficiently, you create policy guidelines. These policies indicate the steps that need to be performed during a particular stage and the criteria for moving a card to the next column. You can represent these policies by creating simple checklists that define the entry and exit criteria for each stage.
Once you have all the pieces in place, you can start taking advantage of the Kanban System using your Kanban board. As you use the board, you will start to identify specific problems. For example, if multiple cards start piling up in one column, it shows you that there is a bottleneck in this area. After you identify the problem, you can communicate with team members and collaborate on a solution. Solving these types of local problems as they arise improves the efficiency and productivity of the team, thus achieving the desired Kanbanflow.
Kanbanflow Planning Using Panaya Release Dynamix [Rdx]
You can build a physical Kanban board using a whiteboard and index cards, or you can create an online virtual board. Panaya’s Release Dynamix [RDx] Kanban dashboard provides effective portfolio and project management for managing task backlogs, releases, and requirements. Using a central, graphical dashboard, it displays your organization’s entire development process via a virtual Kanban board. It visualizes your portfolio backlog and lets you drag and drop task cards across different process stages. The dashboard enables you to identify, rank, position, and select new applications and change delivery projects. It also identifies critical defects, takes immediate action, and notifies the relevant stakeholders.
———-
You might also like our blog
How to Structure Your Release Management Process
———-
Troubleshooting: Tips and Tricks for Your Kanban System
In order to help you successfully deploy Kanban, let’s look at some common problems and how to fix them.
Organizational Dysfunction and Broken Processes
Creating an effective Kanban board requires active management of the board as well as the active participation of team members. Kanbanflow is built upon feedback loops and continuous improvement. Any organizational culture that does support open discussion of internal issues or provide clear communication channels cannot create the necessary feedback loops. Moreover, transitioning from your existing process to the Kanban System will be stressful for those involved. Often the process you are trying to replace is completely broken, and trying to rebuild it via a new and very different process won’t make things better. In fact, if you don’t identify the problems within your existing system first, you risk migrating them to the new system. The migration process will expose many problems that are hidden or dormant inside the existing process.
Nobody Understands the Kanban System
No matter if you create a physical or virtual Kanban board, the Kanban System is really very simple. After all, it’s just moving cards across a board; what could possibly go wrong? Well, Kanban is simple, but making it works entails understanding the ideas and principles behind it. A successful implementation of Kanbanflow requires that all team members not only understand it but also be totally on board with wanting it to be a success. In other words, in order to make the Kanban System work for you, you need to educate individual team members and provide them with training and workshops as well as ongoing mentoring and coaching sessions.
Kanban and Agile Don’t Mix
Kanban was conceived as a way to manage production lines. Production lines work continuously 24/7, whereas agile development teams work in iterations/sprints. A continuous workflow has no start and end points, and this makes it difficult for development teams to establish a baseline that they can use as a starting point for work estimates. In order to effectively plan an iteration, enterprise teams must be able to balance the time taken to complete assignments against their team’s available capacity to handle the work. In addition, teams can have a hard time establishing a baseline.
To achieve Kanbanflow in your organization, you can also integrate the Scaled Agile Framework’s (SAFe) Team Kanban methodology. This enables your teams to continue using your existing agile and SAFe processes with the added advantage of Kanban-based planning and workflow management. Team Kanban overcomes this issue during the iteration planning stage by asking team members to provide estimates for each task to be placed on the Kanban board. This makes it possible for the team to estimate how much time the iteration will take, whether they have the necessary capacity, and what additional resources they might need.
———-
You might also like our blog
Value Stream Management (VSM) – what it means to the Enterprise IT
———-
Conclusion: Panaya, Kanban, & the Enterprise
As we have seen, Kanban may have its roots in automobile manufacturing, but it can help you manage your software development projects as well. Using SAFe and Team Kanban is an important part of enterprise value stream management (VSM). VSM links economic value to technical outcomes by providing visibility into a business capability’s current state and projected outcomes.
Panaya’s Release Dynamix [RDx] provides value stream mapping at the highest and lowest resolutions and granularity across enterprise processes and development projects all the way down to the level of user stories and specific user stories. This lets you and your business track the progress of projects and work items from planning to delivery. RDx’s Kanban dashboard supports VSM by displaying the flow and current status of your development projects in real time. Also, with a requirements traceability matrix for each dev task, you can continually visualize your software development process and the execution of business requirements with full transparency.