Scrum Kanban Sittin in a Tree Pacific Northwest
Scrum + Kanban, Sittin’ in a Tree Pacific Northwest Software Quality Conference 2014 6801 185 th Ave NE, Suite 200 Redmond, WA 98052 solutionsiq. com 1. 800. 235. 4091 Copyright © 2014 Solutions. IQ Inc. All rights reserved.
Halim Dunsky Director at Solutions. IQ Former TRS-80 owner Agile Transformation Organizational Change Consultant, Coach, Trainer CSM, CSPO, CSP M. A. , Organizational Systems @halimdunsky 2
Who’s Here Today? What disciplines are in the room? Who has used… Scrum? Kanban? Both? 3
Today’s Backlog To Do Doing Done Agile Workflow Frameworks: Common Elements Workflow and Quality Agile Workflow Frameworks: Scrum & Kanban How to Choose? Mixed Designs 4
Agile Workflow Frameworks
Vive la Différence! Scrum Kanban Iterations Continuous Flow 6
Pull-Based Systems 7
Explicit Process Policies 8
Incremental 9
Iterative 10
(Sidebar: Minimum Viable Product) Incremental Iterative Image source: blog. fastmonkeys. com 11
Improve Collaboratively (Kaizen) 12
It All Comes Down to This Break the work into little pieces (small batches) Prioritize Visualize and manage the workflow Limit multitasking Deliver frequently Get immediate feedback and improve Work together as a self-organizing team Be good to each other 13
Agile Workflow and Quality
Two Kinds of Doing the right thing Doing the thing right 15
Example Dimensions of Software Quality • • Accessibility Compatibility Concurrency Efficiency Functionality Installability Localizability Maintainability ? • • Performance Portability Reliability Scalability Security Testability Usability Timeliness [-HD] Source: Software. Testing. Fundamentals. com 16
Small Batch Size Small, well-defined units of work Easier to understand, update, and test than a large specification Modular specs can be like modular software: Low coupling, high cohesion, well-defined interfaces Modular specs can support the emergence of modularity in software 17
Focus on Working Software Delivery Small units of working, tested software Production quality at short intervals Near-continuously functional codebase Quality Standards Definition of Done, Process Policies Culture of shared responsibility for excellence Early testing Shorter correction loops reduce cost Less delay in hardening, integration 18
Reducing Lag Incremental and iterative development Start with the simplest thing that can possibly work Shorter release cycles Fastest proof of concept Faster time to assess & correct product-market fit Continuous stakeholder participation Daily contact with Product Owners Frequent demonstrations to stakeholders Clarification and control of drift Mid-course correction as functionality is extended and enriched 19
YAGNI Prioritize and don’t try to do too much Reduce schedule pressure, cut fewer corners Don’t over-build: hold back the bloat! Stop when it makes sense 20
Kaizen Culture of continuous process improvement Image source: petapixel. com 21
Agile Workflow Frameworks Scrum
How Does Scrum Work? Feedback DAILY CYCLE Product Backlog Create or update the Product Backlog, an ordered list of the product features desired by the customer Sprint Planning Create the Sprint Backlog, a list of the features pulled by team for a Sprint Daily Scrum A 15 -minute meeting, where the team comes together to communicate Sprint Review Demonstrate the functional, incremental results of the Sprint Potentially shippable product increment Sprint Retrospective Team meets for process improvement Source: Adapted from Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. 23
Scrum Roles Customers Other SME’s, Teams (dependency management) Stakeholders The Scrum Team Delivery Team Commitment Focus Openness Respect Courage Product Owner Sponsors External Stakeholders Scrum Master 24
How Does Scrum Work? DAILY CYCLE Product Backlog PRODUCT BACKLOG Sprint Planning SPRINT BACKLOG Daily Scrum BURNDOWN CHART Sprint Review WORKING SOFTWARE! Source: Adapted from Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. Potentially shippable product increment SPRINT RETROSPECTIVE 25
Release Burnup Chart 26
How Does Scrum Work? DAILY CYCLE Product Backlog PRODUCT BACKLOG Sprint Planning SPRINT BACKLOG Daily Scrum BURNDOWN CHART Sprint Review WORKING SOFTWARE! Source: Adapted from Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. Potentially shippable product increment SPRINT RETROSPECTIVE 27
28
What is a Potentially Shippable Product Increment? Working software at production quality Specified in the “Definition of Done” Quality standards and common requirements the team holds itself to 29
Extending the Definition of Done STORY SPRINT Unit Tests Passed Functional Tests Passed Acceptance Tests Passed Story and Task Status Updated Build System Compiles Code is Reviewed Code Meets Standards Code Implements Logging Code Comments Updated Deploy to INTEGRATION Server Product Owner Demo Existing Acceptance Tests Passed Product Owner Acceptance No Compile Warnings in Code Bugs Found in Sprint Resolved RELEASE 30 Deploy to STAGE Server Deployment Docs Updated Release Notes Updated Deployment Testing Passed Infrastructure Change Notes Delivered Integrated Stress Testing Passed Deployment Docs Delivered Demo Prepared Code Repository is Tagged Release Notes Delivered Build Requirements Met 30
Above and Below the Waterline 31
Ken Schwaber on Scrum Values Scrum is based on üCommitment üFocus üOpenness üCourage üRespect It asks you to commit to a goal and then provides you with the authority to meet those commitments. Scrum insists that you focus all your efforts on the work you're committed to and ignore anything else. Openness is promoted by the fact that everything about a Scrum project is visible to everyone. Scrum tenets acknowledge that the diversity of team members' background and experience adds value to your project. Finally, Scrum asks you to have the courage to commit, to act, to be open and to expect respect. Source: http: //www. ddj. com/dept/architect/184414912? cid=Ambysoft 32
Agile Workflow Frameworks Kanban
Kanban Queues – Example OPEN READY IN PROGRESS DONE ACCEPTED OPEN: Item in backlog that has not necessarily been groomed or prioritized and is not ready to be worked by the team. READY: Item that is groomed and prioritized and eligible to be pulled by the team. IN PROGRESS: Item that has been pulled and started by the team. DONE: Item that the team asserts has been finished. ACCEPTED: Product Owner or other responsible stakeholder has accepted the item as complete. 34
Work-In-Process Limits OPEN 2 2 1 READY IN PROGRESS DONE ACCEPTED Work-In-Process (WIP) limits are a discipline to help the team maximize throughput. Don’t try to do too many things at once, it only slows you down! When a limit is reached: No more items can be put into that state (column). Team “swarms” to help relieve the blockage. 35
Setting WIP Limits OPEN 2 2 1 READY IN PROGRESS DONE ACCEPTED Suggested Initial WIP limits: Inspect and adapt at Retrospective Ready = 1 per Team member Idle people? Limit is too low In Progress = 1 per Team member Idle stories? Limit is too high Done = ½ per Team Member 36
37
Process Policies OPEN ncies Depende READY IN PROGRESS DONE ACCEPTED met ady e R f o n o “Definiti ” Approve Done ne” o D f o n o “Definiti d ia” iter r C e c n a “Accept 38
Classes of Service OPEN READY IN PROGRESS DONE ACCEPTED Expedite Fixed Date Standard 39
Cumulative Flow Diagram Work Item Status By Day 12 10 8 Done 6 Implement Design 4 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 40
Control Chart 41
Scrum + Kanban How to Choose?
Scrum is Good When… A sprint cadence provides helpful discipline Work item (story) size is not too big Work items are practical to estimate Work items are highly variable The organization is ready for a significant step 43
Kanban is Good When… There is a continuous flow of work item input Work items tend to be: v Smaller and/or repetitive v Bigger than a sprint and hard to partition v Emergent, date-driven, or expected quickly rather than at sprint boundaries v Subject to rapidly shifting priorities v Difficult to estimate (e. g. , from a defect report) Organization change needs to be taken in small increments 44
Conversation Time Guide Questions: » Does your team or organization use Scrum or Kanban today? » Do your current arrangements feel like a good fit for your needs? 45
Mixed Designs
Rotating Defect Teams Features Defects Scrum Team Kanban Team A A A B B B C C C D D C B A Telco A 47
Defect Sub-Team Software
Large and Small Items Service Tickets Projects & Enhancements Large Scrum Team Small Defects Energy Tiny Scrum Team Kanban Team 49
Project and Daily Release Software
Definition and Delivery Teams Features Defects Pod Definition Team Delivery Teams Kanban Team Scrum Team Flow to Ready Scrum Team Telco B Iterate to Done 51
Specialty Service Queues Scrum Team “Fantasy Football” Kanban Team 52
Questions ? 53
Thank You!
- Slides: 54