6. Get to know…
Softwerks
■ A startup with 6 partners, developing mobile and web products
■ 1 marketing/finance/account mgr/PO
■ 3 devs
■ 1 designer
■ 1 QA/support engineer
■ They’re working on 3 projects to finance the development of their own product
7. They’re working hard
1. Lots of delays
2. Not sure who’s doing what
3. QA complains that many silly bugs should not land for acceptance testing
4. PO complains that their own product gets no attention
5. Many tasks have no clear prioritization, and customers and the commercial team
interfere a lot on sprint work
6. Lots of rework and unfinished stories
7. Some developers became very specialized on some bits of the product but never
touch other parts (some bits of code have an exclusive “owner”)
8. Nobody wants to deploy new versions of the apps because it’s a lot of work and
has to be done at night
9. Can’t see a way out of this, except work harder and harder
13. Anatomy of a Kanban
post-it
#435
RV, VC
15/11 27/11
Bug no gráfico
de acessos
Ref number
(JIRA, Pivotal,
Trello..)
Title
Start date End date
Responsible
Any other
relevant
signaling
22. 4. Defined a goal for new WIP Limit
Backlog In Progress QA DeployDesign Done!Acceptance
WIP Limit = 20 (current: 33)
23. Doing Waiting Doing Doing Doing Doing
5. To stop “pushing work”, created some queues per
service
WIP Limit = 20 (curr: 33)
Backlog In Progress QA DeployDesign Done!Acceptance
Waiting Waiting Waiting
Waiting
24. Doing Waiting Doing Waiting Doing Waiting Doing Waiting Doing
6. To reach WIP count of 20, they agreed on stop
starting new work until the current work in progress was
done
WIP Limit = 20 (curr: 33)
Backlog In Progress QA DeployDesign Done!Acceptance
26. Doing Fila Doing Fila Doing Fila Doing Fila Doing
7. They started running their dailies from right to left on
the board
WIP Limit = 20 (curr: 33)
Backlog In Progress QA DeployDesign Done!Acceptance
31. Doing Fila Doing Fila Doing Fila Doing Fila Doing
8. Finally reached 20! Now they decided to keep at 20
for a while and see how it went
WIP Limit = 20 (curr: 20)
Backlog In Progress QA DeployDesign Done!Acceptance
37. 6 20 4 ?12 7
The throughtput of a system is equal to the throughput of its
bottleneck
Any attempt to increase the throughput of a system beyond that
will cause issues and affect quality
ToC: an analogy
38. ToC: a process of
continuous
improvement
1. Identify the current bottleneck
2. Ensure the bottleneck is working at its best
3. Subordinate the process to the bottleneck
4. Elevate the bottleneck’s performance
5. Repeat the process to find the next bottleneck
39. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Scenario: Designer is available but the system is on WIP
limit
WIP Limit = 20 (curr: 20)
Backlog In Progress QA DeployDesign Done!Acceptance
40. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Suggestion: The designer helped with QA, and a dev was
allocated to deploy to reduce WIP
WIP Limit = 20 (curr: 20)
Backlog In Progress QA DeployDesign Done!Acceptance
42. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Suggestion: Establish a WIP limit for QA
WIP Limit = 20 (curr: 20)
Backlog In Progress QA (4) DeployDesign Done!Acceptance
43. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Backlog In Progress QA (4) DeployDesign Done!
WIP Limit = 20 (curr: 20)
Acceptance
Suggestion 2: Switch the order of Acceptance and QA
services so that a story wouldn’t go on QA twice
44. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Backlog In progress QA (4) DeployDesign Done!
WIP Limit = 20 (curr: 20)
Acceptance
Suggestion 3: Dev team agreed on adopting unit tests
for new stories, to reduce the amount of work to be
performed by QA
45. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Suggestion 4: The team will count stories that were
rejected on acceptance testing or QA, to track quality
improvement over time
Backlog In progress QA (4) DeployDesign Done!
WIP Limit = 20 (curr: 20)
Acceptance
46. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Limite WIP = 20 (curr: 20)
Scenario: PO is too busy to perform acceptance testing
Backlog In progress QA (4) DeployDesign Done!Acceptance
47. Doing Fila Doing Fila Doing Fila Doing Fila Doing
Limite WIP = 20 (curr: 20)
Suggestion 1: Empower team to have a “proxy PO” who
can perform acceptance testing of non-critical work
Backlog In progress QA (4) DeployDesign Done!Acceptance
48. Doing Fila Doing Fila Doing Fila Doing
Backlog In progress QA (4) DeployDesign In Prod
WIP Limit = 18
Suggestion 2: remove acceptance testing from the
process, since the team feels they’re mature enough for
it. Let PO test cards in prod, and track rejected work to
see the impact of this change
With one service less, reduced WIP limit to 18
49. Doing Fila Doing Fila Doing Fila Doing
Backlog In Progress QA (4) DeployDesign In Prod
Limite WIP = 18 (curr: 18 + 2 urgent bugs)
Scenario: urgent bugs and requests show up and must
be worked on ASAP
50. Doing Fila Doing Fila Doing Fila Doing
Backlog In Progress QA (4) DeployDesign In Prod
WIP Limit = 18 (curr: 18)
Suggestion: Create an “expedite lane” which is part of
the process and is prioritized on top of everything else
51. Doing Fila Doing Fila Doing Fila Doing
Backlog Em dev QA (4) DeployDesign Feito!
Limite WIP = 18
Scenario: the team never has the chance to work on
their own product
52. Doing Fila Doing Fila Doing Fila Doing
Backlog In Progress QA (4) DeployDesign In Prod
WIP Limit = 18
Suggestion: the team agreed to put a “product card”
after every four “customer cards” (dedicate 20% capacity
to their product)
53. Doing Fila Doing Fila Doing Fila Doing
Backlog In Progress QA (4) DeployDesign In prod
WIP Limit = 18
Scenario: there are cards which only 1 person knows
how to implement them (specialist)
54. Doing Fila Doing Fila Doing Fila Doing
Suggestion: the team agreed that anyone can pull the
topmost work from the backlog, and request pairing
when needed
Backlog In Progress QA (4) DeployDesign In prod
WIP Limit = 18
55. Doing Fila Doing Fila Doing Fila Doing
Scenario: the deploy queue is usually long and everyone
hates deploying at night
Backlog In Progress QA (4) DeployDesign In prod
WIP Limit = 18
56. Doing Fila Doing Fila Doing Fila Doing
Limite WIP = 18
Suggestion: the team agreed that one member would
spend a week studying CI/CD and share what she
learned, and put some of it in practice
Backlog In Progress QA (4) DeployDesign In prod
57. Let’s see that list…
1. Lots of delays
2. Not sure who’s doing what
3. QA complains that many silly bugs should not land for acceptance testing
4. PO complains that their own product gets no attention
5. Many tasks have no clear prioritization, and customers and the commercial team
interfere a lot on sprint work
6. Lots of rework and unfinished stories
7. Some developers became very specialized on some bits of the product but never
touch other parts (some bits of code have an exclusive “owner”)
8. Nobody wants to deploy new versions of the apps because it’s a lot of work and
has to be done at night
9. Can’t see a way out of this, except work harder and harder
58. Three Principles
1. Start with what you do now (use Kanban as a tool for your current
process)
2. Agree to pursue incremental, evolutionary change
3. Respect the current process, roles and responsibilities
How to adopt
Kanban