BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Articles Open Kanban: The First Agile and Lean Open Source Method for Continuous Improvement

Open Kanban: The First Agile and Lean Open Source Method for Continuous Improvement

Bookmarks

We shape our tools and then our tools shape us. - Marshall McLuhan
Freedom is nothing but a chance to be better. - Albert Camus
Explore, Dream, Discover. - Mark Twain

The One True Agile

I remember the first time I heard about Agile, it was in the late 1990s long before the word was even coined, I was an avid amateur programmer at the time. It arrived to me under the name of Rapid Application Development or RAD. RAD gave us the latest ideas on how to improve upon Iterative Development, one precursor to Agile! Those were exciting times and many developers, software companies and even young programmers like myself were looking forward to discover new ways to create software in a faster and better way.

A couple books were inspirational for me then: the classic Code Complete book from Steve McConnell, and the second edition of the the Mythical Man Month by Fred Brooks who reminded everyone that “Adding manpower to a late software project makes it later” and that software was a truly new thing, a creative effort that could not be managed or undertaken as a classical enginnering project like building a bridge.

Interestingly many years before the Agile manifesto happened, or the first Scrum Master appeared on the scene people in IT and software development openly collaborated with each other, sharing ideas and methods about how to do things better. RAD, and other cool techniques that came from NASA’s space program were quite influential. In fact ideas that would sound quite Agile or Lean to us today were being used and mixed freely over 20 years ago. People were happy to experiment and collaborate.

One of the earliest minds of Lean in the world of Software Development was Bob Charette, he was invited to that famous 2001 meeting where the Agile Manifesto was born. Lean was already considered an Agile method then, but many today seem to have forgotten. Later Mary and Tom Poppendieck introduced Lean to the Agile community with several landmark books. We could argue there was no Kanban method yet, but there was already the seeds of Lean as part of Agile. Those are the roots of today’s Kanban, and it’s plain to see Kanban was always Lean and Agile.

The best thing in those early days is that there was no us versus them, it was all us, and we were happy to discover new ways to do things better. Agile and Lean are simply two sides of the same coin: ways to improve and do things better.

Fast forward to 2014 and the world has changed a lot. The spirit of collaboration among Agile and Lean methods is mostly gone, replaced instead by competition, and rivalry. Can we revert this situation and go back to true collaboration among Agile and Lean methods? I am sure we can! In fact already many Kanban, Scrum, XP and SAFe practitioners do this, mixing ideas, techniques and tools from many methods to get things done. This an eminently pragmatic approach, and one I wholeheartedly agree on.

The Motivation behind Open Kanban

There are no silver bullets, we only move forward by learning, experimenting and sharing our discoveries with each other. That is the spirit of Open Kanban to keep those communications lines open, to help people innovate, and collaborate across the aisles of Lean and Agile, a method where innovation and people who think different are welcome.

As wonderful as it is to have a few people who think different and collaborate from different sides of Agile and Lean today, this is not enough, especially when they get attacked simply becauase they are seen as the rebels, the non-conformants, the ones who dare to challenge the establishment in their respective camps of Agile or Lean.

Our motivation to create Open Kanban was three fold:

  • First, to provide a Kanban method that embraces using Kanban for any purpose that brings value to people and the organizations they work for such as : Agile Project Management, Kanban Software Development, Leadership, Personal Time Management or any other worthwhile pursuit you may have in the movie business, or marketing; the only limit is your imagination.
  • Second, to welcome people from wherever they came from, including ScrumMasters, PMPs, Kanban professionals, KCPs, DSDM Coaches, MBAs, developers and regular people from everyday life.
  • Third, to foster innovation at every level, including the updating, extending and improving of the Open Kanban method itself. The license of Open Kanban makes it one of the first fully open source Lean and Agile methods available today, and the method has already been translated to several languages, and yes you can even easily fork it, or collaborate on GitHub.

Open Kanban’s Spirit

The spirit of Open Kanban, rests upon two fundamental ideas:

  • Freedom. We believe knowledge should be shared freely. Because of this Open Kanban is available through a CC-BY license. This license allows any person or organisation to freely modify, change, extend, or use Open Kanban in any way that adds value to them.
  • Simplicity. Less is truly more. Like water Open Kanban can easily adapt to any knowledge space like Software Development, Finance or Marketing. It can do this because we kept the method simple, easy to adapt and ultra light.

Open Kanban Values

Open Kanban shares a set of values that align it with the Agile and Lean Movements for IT and Software Development. Some methods have chosen to ignore values at their core, this is a mistake. Values are the soul of a method, without them practices and techniques become empty and innefective. We need values to inspire our life and work.

Open Kanban embraces five values:

  1. Respect for people
    This is the heart of Lean, and the spirit behind the work of noted visionaries like Taiichi Ohno, Edwards Deming and Eliyahu Goldratt who saw people as fundamental to the improvement of any system, business, organization or even a whole country.
    Respect for people implies that we empower others to do their job, and that we perform that job to the best of our ability. It allows delegation and the demand-pull mechanism that is crucial to any effective Kanban system.
  2. Courage
    Courage compliments respect for people. It reminds everyone that great things are only possible when we believe we can achieve them.
    This value connects Open Kanban with Extreme Programming and Agile. Kent Beck reminded us how important this value is for Agile and beyond when he wrote: “The courage to speak truths, pleasant or unpleasant, fosters communication and trust. The courage to discard failing solutions and seek new ones encourages simplicity. The courage to seek real, concrete answers creates feedback.”
  3. Focus on Value (as the opposite of waste)
    The pursuit of value is at the center of the Agile Manifesto, it could be said that every line of the manifesto refers to ways to deliver value in the form of good quality working software.
    For Open Kanban the creation of value is also of fundamental importance not only for software development, but for any kind of business or organization. Value is also at the center of Lean and TPS, but frequently it is mentioned as the reverse side of the coin, as a way to eliminate waste or “Muda.” Muda 無駄 represents anything that does not add value to your process or flow. By eliminating waste, we optimize the creation of value.
  4. Communication and Collaboration
    Communication, and collaboration are at the basis of successful teamwork.
    Communication alone is not enough, teamwork is fundamental, and that means collaboration is encouraged and embraced throughtout the workplace.
    Without teamwork Open Kanban, and to be honest almost any other method or business will face failure, or at least suffer considerably to achieve results.
  5. A Holistic or Systemic Approach to Change.
    Lean visionaries like Deming and Goldratt reminded us that no single part of a system can ever be responsible for significant improvement. We need to take a wide view of the system, and understand our place on it, and how we can create significant value.
    Open Kanban agrees with this vision and aims to bring improvement by looking at the forest, that is the overall system, not only at the trees (by this we mean the immediate focus of our work.)
    The holistic part of this value reminds us that people, and their overall health and well being are fundamental to achieve progress in any area of work, or life.

Open Kanban Practices

As important as values are as the supporting spirit behind Open Kanban, we must turn those values intro action. That is where our practices come into plain. We have four.

Visualize the Workflow

Have you realized that the bulk of knowledge work is invisible? Consider these examples: writing a novel, evaluating a business purchase, coding a new software feature or even planning a vacation. All of them have a bulk of effort that happens in our mind, in scribbled notes, or even conversations. The only truly visible item is the output we produce, not so much the effort.

That is precisely where Open Kanban helps. It will allow you to see the invisible! How? By breaking that effort into smaller pieces, and mapping those pieces into some visual representation!

Frequently that representation is a Kanban board, like the one shown below.

(Click on the image to enlarge it)

However, instead of a Kanban board you could use almost anything that has two key characteristics:

  • I can visually show the movement of work from one stage to another
  • It is really easy to use

We have seen and used visual Open Kanban tools of all types, such as: a Moleskine notebook, a sheet of paper, a white board and even lego bricks!

Lego Kanban Board by DrewLondon.co.uk

The main advantage of the using the typical Kanban board is that they are easy to set-up and there is a lot of software choices for it; and yes you can do it in a whiteboard with sticky cards too.

The key advantage of this practice is that it opens your eyes to work, and how it moves and flows, not just your work, but the whole team. Once you start seeing the invisible, you will never want to go back.

Lead Using a Team Approach

Although a talented, hard working person can accomplish some things on his own, there is no doubt that a team can accomplish much more.

Unlike Scrum, Open Kanban does not ask you to change titles or roles in your business, it does ask you to have a team in place, and to make sure that team has appropriate leadership.

Leadership can come in many forms, from one of our peers in the team, from formal management, from an Open Kanban or Kanban Ace Coach, it can even come from a former Scrum Master who is discovering Open Kanban!

Reduce BASE (a way to focus, and ultimately to limit work in progress)

Reduce BASE stands for reducing the batch size of your efforts. What do we mean here? Any effort, even if it appears to be a single task in your to do list is not of the same size. Some are huge like climbing Mount Everest, writing a book, or reading War and Peace; others are small like buying milk, sending a text message or downloading code to your repository. So the difference is the batch size! Every large effort is huge because the seemingly easy task is actually a collection of a lot of individual efforts tied together.

Imagine the effort behind writing a non fiction book, let’s say you want to teach people how to be better at their finances. First you have to research your material, research your competition and find an original take on the subject. Second you need to plan the book chapters, at least an outline. Third you need to write every chapter one by one… and yes you need to find the time and organize yourself to do all of this. No wonder books usually take from 3 months to 3 years to be written. The funny thing is that in a list this would look small, but the batch size is huge, it’s epic!

So Open Kanban tells you reduce that batch size, make it way smaller so you can be sure that you can accomplish it. For our example before, you can see we already broke that down into 5 steps before you write even a single chapter. That is reducing BASE. When you reduce BASE almost immediately you discover your own limits, or your team limits, and you naturally reduce Work in Progress.

Donald G. Reinertsen has researched and written about the benefits of reducing BASE extensively, the main benefits are that when you Reduce BASE you can finish faster any task, you keep yourself and the team focused, and you diminish the risk of failure. Risk is reduced since you can get feedback on every individual piece you finish instead of waiting for a final product that may not be welcome after all!

For software teams let me quote what we wrote originally for Open Kanban:

How do you reduce the batch size of your efforts? Reduce the complexity and the quantity of things you do at any stage of the value chain. In software development this would mean: reduce the number of large stories (epics) you create, and do your best to keep stories simple; also reduce the volume of stories you work on any stage of the Software Development Life Cycle; this way your team will focus, and deliver more value.

Learn and Improve Continuously

The previous practices focus on doing things better now, and that is great, but how about getting better, how about becoming great at whatever you do? To accomplish that you must embrace learning and continuous improvement!

Embracing both is quite practical, first realize that unless you regularly stop what you are doing to learn, you will keep doing things the same way, or you will experience only minor improvements. Big improvements come when you stop, think, reflect and truly learn from your experiences, and from reality around you. There are many ways to do this, but they all imply that you stop, think, and change for the better! Open Kanban recommends many Agile practices that facilitate learning such as Retrospectives, Strategy Meetings and the Kanban Ace Shield Meetings.

One nice thing about Open Kanban is that we also believe in double loop learning, we listen to the community and modify and improve the method itself.

The Challenge of Technical Excellence - The Kanban Ace Method

Have you ever received a defective product? A phone that broke in a month or two, a buggy app that crashed repeatedly, a shoe that fell apart after a few months, a home repair that lasted a week? Why do these things fail so much? It is not because of lack of organization, agility or Lean training! 80% of the time it is because the product or service lacked technical excellence! Technical excellence matters! Technical excellence goes beyond quality control, it means that the product or service performs reliably to do what we expected from it.

Scrum, LKU Kanban and other methods argue that Technical Excellence can be left out. There is some merit to this idea, it allows those methods to be lighter; however it gives their practitioners the mistaken idea that perhaps they do not need great technical techniques such as software Release Management, Test Driven Development, SOLID object oriented design, or the need for portfolio level dashboards to organize work.

Open Kanban recognizes that we need light methods, we are even lighther than Scrum or LKU Kanban, but at the same time we must find a way to achieve technical excellence. That is where the extended Open Kanban methods come into play.

The Kanban Ace Method is the first extension of Open Kanban, it adds to it a series of techniques and technical practices aimed to address the needs of IT, software development or innovators. Techniques for running retrospectives, for improving team organization, for achieving significant improvements, etc. The Kanban Ace method also expands and explains Open Kanban for those wishing to have formal training.

Another Open Kanban extension is the Shared Leadership. method from one of our Certified Kanban Ace Coaches in Germany. It focuses on leadership for the day to day management of teams in or outside IT. We hope to see many more extensions from our community to address the technical needs of movie making, advertising, finance or any other field.

We invite you to give Open Kanban a try, it takes minutes to learn the basics, but once you decide to master it, it can deliver a lifetime of value.

About the Author

Joseph Hurtado (Twitter: @josephhurtado) is the founder of AgileLion Institute, and author of the Open Kanban and Kanban Ace Methods, a duo of Agile and Lean methods designed to adapt to any organization. His career spans over 15 years in software development, project management, product management and innovation. He enjoys researching tough problems to find new ways to make people's life more productive, fun and stress free.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • I'm confused?

    by Ian Carroll,

  • Confused - Refocus

    by Joseph Hurtado,

    • I'm confused?

      by Ian Carroll,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      What you've described here is the Kanban Method by David Anderson and thrown in a bunch of other stuff from other leading figures. All of this is already in the public domain. The bit I don't get is your open sourcing of it all??! Can you clarify what you mean by this, what it means in reality for people already utilising Kanban practices, and how this is different?

    • Re: I'm confused?

      by Hans van Lavieren,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      I agree on the confusing aspect. Futhermore Scrum is in my opinion not arguing that Technical Excellence can be left out. Scrum leaves the technical Solutions and skills open, being a framework. However, continuous integration and delivering high business value is not possible without techncal excellence !

    • Confused - Refocus

      by Joseph Hurtado,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      Ian, David's contribution is now focused in LKU Kanban, or the Kanban Method. He does not see the connection with Agile as important, and denies KM is Agile at all. So we do need another flavor of Kanban for those who see both Agile and Lean as valuable. As far as I know David has no interest in technical excellence either, he is aiming for a management approach, and that is fine, it is just different. I wrote about this some time ago:
      agilelion.com/agile-kanban-cafe/what-is-kanban

      Hans, regarding Scrum it is well known that the framework decouples, or removes technical practices to have a broader appeal; in practice most people do use other Agile methods such as XP to complement it. I see no problem with Scrum, it is just another approach. I also wrote about the subject some time ago, and want to explore the topic further, I believe Open Kanban needs an Agile bridge with other valuable methods, especially Scrum, XP, FDD and Crystal. Here are my thoughts on Scrum:
      agilelion.com/agile-kanban-cafe/scrum-ace-lesso...

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT