using flow to improve your scrum - portal.netobjectives.comscrum cross functional team (lean)...
TRANSCRIPT
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
1
Using Flow to Improve Your Scrum
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 2
Al ShallowayCEO, Founder
@AlShalloway
Co-founder of Lean-Systems SocietyCo-founder Lean-Kanban University Contributor to SAFe
1
2
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
2
3 © Copyright Net Objectives. All Rights Reserved. 12 September 2019
Lean ManagementProject Management
Kanban / Scrum ATDD / TDD / Design Patterns
technical
ASSESSMENTS
CONSULTING
TRAINING
COACHING
Lean for ExecutivesProduct Portfolio ManagementBusiness Product OwnerProduct Owner
FLEXFLEX & SAFe
PM/PO
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 4
Basic Agile Flow
s
*Sprint = Iteration
3
4
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
3
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 5
Flow thinkingTake a systems thinking approachReduce cost of delay Remove delays by• working on small batches• avoid handoffs• manage queuesAchieve short feedback cycles
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 6
Lean thinkingAttend to the systemCreate an ecosystem within which people can work effectively (leadership needed)Attend to time (“just in time”)Act as if avoiding errors is always worth it (“stop the line”)
5
6
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
4
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 7
Flow, Lean and AgileFlow is what we’re trying to achieveLean is the way we’re managing the system to achieve itAgile relates to the teams in the process
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 8
Often reducing batch size is all it takes to bring a system back into control
Eli Goldratt
smaller vs bigger chunks
7
8
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
5
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 9
The Minimum Viable ProductGeared towards startups.
First time a product/service is released.
Usually built by a small team that can pivot.
What do you do when:• You are an established company?• It is an enhancement to an existing product/service?• The teams required to build it are not aligned?
Mark Denne and Jane Cleland-Huang Software by Numbers
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 10
DEFINITION
The minimum amount of business value that can be built, deployed and consumed that makes sense from a business perspective
It contains all the pieces required for realization of value
Minimum Business Increment (MBI)
9
10
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
6
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 11
An MBI is not a reason to deliver less.
It is a reason to deliver sooner.
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 12
MVPs and MBIs – not the same
MBIMVPStart with initiative and break down into small chunks
Start small
Define features in context of MBI –building on what’s needed for it
Build features up MVP MBI
Light marketing and support Existing clients to market and supportMVP MBI
MVPMBI
Creating features
Size at start
Need for marketing
Investing for information about the product
Expecting a return in from product built
MVP MBIPurpose of investment
MBIMVP EnhancementNew productMaturity of product
11
12
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
7
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 13
1) minimize cost of delay (deliver the most value quickly)
2) flow when you can, pull when you must (avoid handoffs and focus on what's most important)
The first deals with working on the right things, the second working on them the right way. Both are implemented by:
1. using Minimum Business Increments
2. organize your team to lower handoffs and queues
3. have a workflow that provides feedback up front (test-first)
How to be a Flow whisper
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 14
R O L E S A N D R E S P O N S I B I L I T I E S
Product Owner Owns scope, timeline, priority, and sequence to produce the assigned business value increment; Drives the Scrum Teams -continually prioritizes, defines and accepts what the Team(s) are producing.
Scrum Team Produce and implement quality business value increment(s)
Continuous incremental improvement
Whole team includes all skills necessary to produce a business value increment
Core: Business analyst, technical lead, application developers, QA testers, production support
Scrum Master Visibility, transparency, coaching for Scrum Practices
Continuous incremental process improvement
SCRUM ROLESTHE
The center of responsibility focused on an application area. Releases, enhancements, production support, & maintenance requests
13
14
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
8
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 15
4 Meetings
Iteration Planning
Daily Stand-up
Demo
of Scrum
Retrospective
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 16
GROUP EXERCISE
How does Scrum help avoid delays?Cross-functional teams
Time-boxing with sprints
Stand ups
Demo
Quality code every sprint
Retrospections
Clear roles
No division between developer and tester
15
16
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
9
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 17
Costs of Interrupting a Team
What we think will happen What does happen
Current state
Rework
Overhead
Planned Work
Rework
Overhead
Planned Work
New Features
Rework
Overhead
Planned Work
New Features
Extra work
The cost of interrupting a team is not just the delay of other work, it is the additional work it creates that would otherwise not have to be done.
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 18
Framework/Method MyopiaFrameworks and methods don’t preclude others theoretically
But focusing on one thing precludes others in practice
Scrum tends to preclude flow, explicit policies, management (doesn’t have to, but often does)
LKU Kanban tends to preclude teams (doesn’t have to, but often does)
17
18
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
10
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 19
Use a Lean-MindsetBoth Scrum and Kanban should use:• Test-First Methods• Continuous Integration
Scrum should add:• WIP management • Explicit policies
Kanban should add:• Attending to teams• Cadence, Estimation and Velocity
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 20
Lessons From ScrumCross Functional Teams Are Good
• Improve collaboration
• Eliminate waste
Cadence coordinates different roles
Iterations Create Discipline
Short term planning can be accurate
Principles are needed to learn.Theory without experience is useless. Experience without theory is expensive. Paraphrase of Deming
19
20
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
11
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 21
Lessons From KanbanUse kanban to manage flowVisibility and explicit workflow greatly enhances learningIt is important to include managementHow to manage projects without cross-functional teamsHow to affect change when one can’t do any change up front (Kanban Method)
If we focus only on work flow, we will miss other opportunities for improvement.Attempting to do only Kaizen can often lead to stagnation (Kanban Method)
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 22
Inspect & Adapt Vs PDSAASee what happened and adjust practices to improve
Plan Do Study Aadjust understanding Adjust process• Plan based on your process and understanding• Do your work based on your plan• Study the results and discover new relationships• Adjust your understanding of the situation based on
flow and lean• Adjust your process using flow and lean thinking
If we focus only on work flow, we will miss other opportunities for improvement.Attempting to do only Kaizen can often lead to stagnation (Kanban Method)
21
22
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
12
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 23
Framework/Method Tunnel VisionFrameworks and methods don’t preclude others de jure
But focusing on one thing precludes others de facto
Scrum tends to preclude flow, explicit policies, management (doesn’t have to, but often does)
LKU Kanban tends to preclude teams (doesn’t have to, but often does)
In theory, theory and practice are the same. But in practice they are different.
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 24
The Lean-Agility Space
Small batches (Flow/Lean)Self-organization (Lean)
Daily standup (Lean)
SCRUMCross functional team (Lean)
Sprints provide discipline
Use estimation & velocity
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
KANBANImproves flow within
existing structure
Focus on Finishing (Flow/Lean)
Everything Visible (Lean)
Explicit Workflow (Lean)
Manage WIP (Lean)
23
24
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
13
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 25
If you have 10 stories of equal size at the start of the sprint, which is better at the end of the sprint?
8 done completely?
10 done 90%?
Why?
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 26
The Lean-Agility Space
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
25
26
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
14
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 27
The Lean-Agility Space
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
Everything Visible (Lean)
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 28
The Lean-Agility Space
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
Everything Visible (Lean)Explicit Workflow (Lean)
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
27
28
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
15
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 29
The Lean-Agility Space
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
Everything Visible (Lean)Explicit Workflow (Lean)
Manage WIP (Lean)
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 30
The Lean-Agility Space
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
Everything Visible (Lean)Explicit Workflow (Lean)
Manage WIP (Lean)Use estimation & velocity
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
29
30
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
16
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 31
The Lean-Agility Space
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Continuous Integration
Focus on Finishing (Flow/Lean)Everything Visible (Lean)Explicit Workflow (Lean)
Manage WIP (Lean)Use estimation & velocity
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
LEAN-XP
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 32
Adopt Test-First at Acceptance Level
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
Everything Visible (Lean)Explicit Workflow (Lean)
Manage WIP (Lean)Use estimation & velocity
ATDD
LEAN-XPTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
31
32
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
17
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 33
Workflow Management
• Use explicit workflow
• Have daily standups
• Make everything visible
• Use a common cadence even if you do not have sprints
• Build incrementally and iterate on the increments
• Focus on finishing
• Do continuous integration
• Estimate work items and compute velocity (exception at times for maintenance groups)
Practices Every Team Should Do
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 34
Workload
• Work in small batches
• Use small stories
• Manage Work in Process (WIP)
Team Structure
• Create cross-functional teams to the extent possible
Workflow order
• Use Test-First Methods
Practices Every Team Should Do
33
34
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
18
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 35
Others to Adopt When Can
Small batches (Flow/Lean)Self-organization (Lean)
Daily standups (Lean)Focus on Finishing (Flow/Lean)
Everything Visible (Lean)Explicit Workflow (Lean)
Manage WIP (Lean)Use estimation & velocity
ATDD
LEAN-XPTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 36
Cross-Functional Teams Manifest Lean and Eliminate Waste
Partially done work
Paperwork
Hand-offs
Extra features
Task switching
Delays
Defects
35
36
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
19
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 37
Cross-functionality can lower
Delays in workflow
Delays in feedback
Poor collaboration
Re-learning
Redundant efforts
Technical debt
Need other methods to eliminate these wastes
Building things that aren’t of topmost value
Poor collaboration across teams
Re-learning across teams
Redundant efforts across teams
Lack of common vision / intentions
Waste from technical debt
Cross-Functional Teams Manifest Lean and Eliminate Waste
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 38
Many Ways to Achieve Teams
Cross-functional teams a la Scrum
Core with temporarily embedded team members
Core with shared extended team members
Dynamic Feature Teams
37
38
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
20
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 39
1. Are you having challenges with the practice because it is being done poorly? If Yes, then inspect and adapt and see if you can do it better. If No, continue.
2. Is there something else in the organization that is causing us this problem? If Yes, then see how to fix that or at least influence the fixing of it. If No, then continue.
3. Is the ecosystem that the team finds itself in causing the problem? That is, are people not collocated when they need to be or are required skills missing? Can you improve on this? If yes, do so. If No, continue to see if another practice that works within this ecosystem will work better (see next step).
4. What else can we do that meets the same objective of the practice? If there is something else you can do, then try that. If not stick with the practice until you learn more.
There is no definitive set of alternative practices to Scrum. That is the entire point. But it is worth investigating a few of them to illustrate how Scrum as Example can be used.
Making a change can be accomplished with thisfour step process:
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 40
Practice Value Provided Alternative Method of Getting Value
Time Boxing Cadence for:• Input• Output• Demo• RetrospectionDisciplineSmall batchesVisibility In & OutVelocityPlanning MethodFocus
Can have independent cadencesMust bring discipline to each story since they make take longer than should without itUse small batches / storiesUse visual controls throughout workflowMeasure velocity via cadencePlan ahead if valuableTake a value centric approach
Cross-FunctionalTeam
Limits WIPReduces HandoffsImproves FeedbackShort term delays in workflowImproves Collaboration Improves learning
Attending to flow while using as close to a true team structure can achieve these values
Product owner Reduces unneeded features An equivalent “one-voice” is needed regardless of method
How to Adopt New Practices
39
40
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
21
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 41
Practice Value Provided Alternative Method of Getting Value
Time Boxing Cadence for:• Input• Output• Demo• RetrospectionDisciplineSmall batchesVisibility In & OutVelocityPlanning MethodFocus
Can have independent cadencesMust bring discipline to each story since they make take longer than should without itUse small batches / storiesUse visual controls throughout workflowMeasure velocity via cadencePlan ahead if valuableTake a value centric approach
Cross-FunctionalTeam
Limits WIPReduces HandoffsImproves FeedbackShort term delays in workflowImproves Collaboration Improves learning
Attending to flow while using as close to a true team structure can achieve these values
Product owner Reduces unneeded features An equivalent “one-voice” is needed regardless of method
How to Adopt New Practices
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 42
Questions?
Challenges?
41
42
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
22
review
© Copyright Net Objectives, Inc. All Rights Reserved 43
Scrum Flow
✓ Flow focuses on going from start to end quickly by removing handoffs and delays
✓ Lean (Kanban) is about improving your environment and enabling teams to self-organize
✓ Agile is about teams working within a good structure while figuring out how to best work
✓ Understanding how Scrum’s roles, practices, events and artifacts can assist in flow enables you to tailor Scrum to work best for you
✓ Don’t worry if you’re Scrum-ish now ;)
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 44
Cycle Time Before and After
43
44
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
23
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 45
2+2=
???1
Case Study
Coordinating Teams
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 46
Overall Team Organization
Product Line B applications
Component Team for Product Line B
applications
System-Wide Component Team
Component Team for Product Line A
applications
Product Line A applications
45
46
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
24
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 47
Teams on a Project
System-Wide Component Team
Product Line B applications
Component Team for Product Line B
applications
Product Line A applications
Component Team for Product Line A
applications
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 48
MBI
Split MBI according to Teams
Teams split according to components
Teams work on their parts Teams work on
their part until done
MBI
Eventually integrating them together
Feedback times for: Team
Across teams
Customer
Progress bar2 weeks
6 weeks
8 weeks
47
48
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
25
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 49
Principles to Guide UsDon’t optimize locally
Focus on business value delivery
Flow is about value, not within a group
Avoid delays within teams and across teams
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 50
PO
RT
FO
LI
OIn
pu
t
Priority Planning Staging Ready to Pull
CONTEXT OF THE SOLUTION
DecisionHigh enough business value?
DecisionTechnically feasible, sufficient ROI?
Iter
atio
n
0 IterativeDevelopment
IncrementalDeployment
Support & Feedback
DecisionReady to release?
DecisionIs there capacity?
Define acceptance criteria and feature sequence
Build iteratively, deploy incrementally
Review business value , approve, and prioritize
Define value increments and sequence
Define product backlog
BUSINESS DISCOVERY / BUSINESS DELIVERYIterative
Development
Iterative Development
Iterative DevelopmentSh
are
d B
ackl
og
Inte
grat
ion
Tra
in
49
50
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
26
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 51
MBI
Split MBI into sub-features
Teams still organized around components
Teams work on their part but now in a coordinated fashion
After each iteration, teams integrate their components
MBI
Progress bar
Integration still required but takes much less time
Feedback times for: Team
Across teams
Customer
2 weeks
2 weeks
2 weeks
© Copyright Net Objectives, Inc. All Rights Reserved© Copyright Net Objectives, Inc. All Rights Reserved 52
MBI
Split MBI into sub-features
Development teams split according to components
Teams work on their part
After one iteration, teams integrate their components
MBI
Progress bar
Integration still required but takes much less time
Feedback times for: Team
Across teams
Customer
2 weeks
2 weeks
2 weeks
51
52
copyright (c) Net Objectives, Inc. All Rights Reserved.
12 September 2019
27
53© Copyright Net Objectives, Inc. All Rights Reserved 53
✓ Separate teams must be guided from business value
✓ Teams will not necessarily coordinate themselves
✓ Local optimization at the expense of global optimization is not a good thing
53