All models are wrong, some are useful - George Box
In theory, theory and practice are the same. In practice, they are different. Einstein
Paraphrasing Wittgenstein: He who understands things finally recognizes their propositions as senseless, when he has climbed out through them, on them, over them, he must so to speak, throw away the ladder, after he has climbed up on it-then he sees the world rightly.
There’s been a lot of discussion in the Agile community about choosing between Scrum, Kanban or the Kanban Method. I believe that this conversation is fallacious. The two most popular methods – Scrum and the Kanban Method – attend to only subsets of critical issues. While a complete approach may not be advisable, ignoring key components repeatedly, and predictably, lead to challenges that are difficult to understand because of the tunnel vision that sets in.
I have worked with hundreds of teams over the 16 years using Scrum, eXtreme Programming, Kanban, Kanban Method, Lean, Scrum/XP and our own hybrid approaches. I have found that there are key aspects of improving ones software development approaches that must be attended to. These are:
|eXtreme Programming||Scrum||Kanban Method|
|Structure||must use cross-functional teams with people pairing||must use cross-functional teams||ignores. focuses on improving flow|
|Flow||implicitly implements flow at the story level||implements flow at the iteration level||explicitly implements flow|
|Technology||explicitly provides technical practices||only mentions software should be tested||ignores|
|Culture||discusses culture explicitly but assumes where being implemented will adjust to XP||discusses culture explicitly but assumes where being implemented will adjust to Scrum||discusses culture explicitly but assumes kaizen only approach is always best|
|Learning||Learn through tight collaboration||Ignores value of explicit workflow||Learn through explicit workflow and understanding flow, TOC|
|Assumes one approach always works||implicitly implements what would be better implemented explicitly||ignores critical aspects||ignores completely.|
Given the incompleteness of the above approaches/frameworks/methods, building a hybrid system will have similar incompletions. In other words, use the following as a guide:
|Structure||Attend to the structure the work flows through to eliminate delays in workflow and feedback|
|Flow||Attend to flow by attending to managing workload put on the team, structure, managing workflow order and managing WIP,|
|Technology||use test-first methods (ATDD, TDD) and build quality in|
|Culture||attend to culture. recognize some groups can change faster than others|
|Learning||Learn through tight collaboration and a scientific approach mirrored in Plan-Do-Study-Act|
There is obviously more needed here. But at a minimum, use these thoughts to start breaking out of the framework framework tunnel vision that many fall into when they follow just one approach. Although describing this approach in this manner is relatively new for us, we've been teaching this approach for almost a decade. Send me a note if interested in learning how we can assist you here.
CEO, Net Objectives
If you are having troubles running Scrum or the Kanban Method, maybe it's because the approach you are trying is the right one for you. Take a look at our New Team Process page.