first, true lean based agile method al shalloway ceo, net ...1. business driven 2. selects core...
TRANSCRIPT
First, true Lean Based Agile Method
Al ShallowayCEO, Net Objectives
Introducing Leanban
Day of Elaborating SAFeTM
© Copyright Net Objectives, Inc. All Rights Reserved 2
Al Shalloway
@AlShalloway
CEO, Founder
Co-founder of Lean-Systems SocietyCo-founder Lean-Kanban University (no longer affiliated)Contributor to SAFe
© Copyright Net Objectives, Inc. All Rights Reserved 3
Lean ManagementProject Management
Leanban / Kanban / Scrum ATDD / TDD / Design Patterns
technical
ASSESSMENTS
CONSULTING
TRAINING
COACHING
Lean for ExecutivesProduct Portfolio ManagementBusiness Product OwnerProduct Owner
Onsite SPC Leading SAFe
SAFe ArchitecturePM/PO
Onsite SPC Leading SAFe
SAFe ArchitecturePM/PO
© Copyright Net Objectives, Inc. All Rights Reserved 4
1. Costs of Delay2. Attributes of a Leanban team: Overview3. Attributes of a Leanban team: Details
Implementing Leanban for Your Team
© Copyright Net Objectives, Inc. All Rights Reserved 5
Thin
king Po
ints
Overwhelmed teams cause delay
Delays cause interruptions
Interruptions cause overwhelm
Thinking Points
© Copyright Net Objectives, Inc. All Rights Reserved 6
Overwhelmed teams (working on too many things)
causes delays
which lowers productivity and quality
© Copyright Net Objectives, Inc. All Rights Reserved 7
EXPONENTIALLY MORE WORK
working on multiple projects at same time induces
© Copyright Net Objectives, Inc. All Rights Reserved 8
Product Portfolio Management
Kanban principles
Lean-Flow across teams
© Copyright Net Objectives, Inc. All Rights Reserved 9
Time to add new high value functionality
Time Spent Fixing Bugs Within and Across Systems
Time lost to building things of less importance
Time Available for New Features
Years in future
Current ??? Years?
% o
f ca
pac
ity
Maximum capacity of the team
© Copyright Net Objectives, Inc. All Rights Reserved 10
1. Introduction to Lean-Agile2. Attributes of a Leanban team: Overview3. Attributes of a Leanban team: Details
Implementing Leanban for Your Team
© Copyright Net Objectives, Inc. All Rights Reserved 11
Business driven
Contains core practices all teams should do
Consistent across organization
Provides explicit starting point for teams based on where they are
Provide proper way to abandon particular practices when better ones available
Based on principles to allow resolution not dogma
Addresses the culture of the organization
Lean-Agile Team
© Copyright Net Objectives, Inc. All Rights Reserved 12
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven • All teams must focus on getting MBIs done in concert and not locally optimizing
• Provides the mindset for coordination across teams
© Copyright Net Objectives, Inc. All Rights Reserved 13
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
• Helps teams be effective without having to relearn the wheel
• Increases quality, predictability and velocity
© Copyright Net Objectives, Inc. All Rights Reserved 14
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
• Variations must be accounted for• Whether have cross-functional teams• Whether need iterations• Level of team’s discipline• Discipline of team’s interacting with
© Copyright Net Objectives, Inc. All Rights Reserved 15
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
4. Committed to enterprise context
• Helps ensure teams do the core practices
• Enables individuals to move around more easily
• Facilitates cross-team learning• Facilitates management understanding
© Copyright Net Objectives, Inc. All Rights Reserved 16
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
4. Committed to enterprise context
5. Replaces practices when increases value
• As teams learn they may transcend a practice
• Practices may become inappropriate• Can’t just stop doing something
because you are having a problem with it
© Copyright Net Objectives, Inc. All Rights Reserved 17
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven2. Selects core practices3. Practices tailored to the
team4. Committed to enterprise
context5. Replaces practices when
increases value6. Principle based
• Laws of software development• Systems thinking
• Lean Science
• Build quality in
• Improves professionalism• Avoids dogma• Provides guidance to extend practices
© Copyright Net Objectives, Inc. All Rights Reserved 18
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
4. Committed to enterprise context
5. Replaces practices when increases value
6. Principle based
7. Attends to culture
• Culture is unique to a company. • Requiring change may be a mistake but
avoiding it usually is• Must attend to culture and what
degree of change is appropriate
© Copyright Net Objectives, Inc. All Rights Reserved 19
1. Introduction to Lean-Agile2. Attributes of a Leanban team: Overview3. Attributes of a Leanban team: Details
Implementing Leanban for Your Team
© Copyright Net Objectives, Inc. All Rights Reserved 20
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
• Helps teams be effective without having to relearn the wheel
• Increases quality, predictability and velocity
© Copyright Net Objectives, Inc. All Rights Reserved 21
topics
Attribute 2: Core Practices
1. Current Practices
2. Stories & Estimation
3. ATDD
4. Kanban
5. Scrum
• What can we learn from all three?• What do they leave out?
© Copyright Net Objectives, Inc. All Rights Reserved 22
Lean-Agile is based on Lean Principles
Incorporates best practices of Scrum, Kanban, Kanban Method and eXtreme Programming
Provides solid team practices while creating context both for how teams deliver value and work together
Leanban
© Copyright Net Objectives, Inc. All Rights Reserved 23
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
© Copyright Net Objectives, Inc. All Rights Reserved 24
Partially done workPaperworkHand-offsExtra featuresTask switchingDelaysDefects
Cross-Functional Teams Manifest Lean and Eliminate Waste
© Copyright Net Objectives, Inc. All Rights Reserved 25
Team
1
Team Organization
UI Team
Mid-tier Team
Database Team
Team
2
Team
3
UI Team
Mid-tier Team
Database Team
Cross-team cross-tribe collaboration is difficult
Inter-tribal
Intra-tribal
Make teams cross-functional
© Copyright Net Objectives, Inc. All Rights Reserved 26
Lessons from KanbanUse kanban to manage flow
Visibility and explicit workflow greatly enhances learning
It is important to include management
How to manage projects without cross-functional teams
How 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.
Flow when you can, pull when you must.
© Copyright Net Objectives, Inc. All Rights Reserved 27
Lessons from XPTest-first and automated testing results in long-term high quality, maintainable code
Continuous integration is important
Small stories are important
Collaboration is critical
Shared understanding of Agility is critical
© Copyright Net Objectives, Inc. All Rights Reserved 28
Framework/Method Tunnel VisionFrameworks and methods do not 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. Albert Einstein
Men occasionally stumble over the truth, but most of them pick themselves up and hurry off as if nothing had happened. Winston Churchill
© Copyright Net Objectives, Inc. All Rights Reserved 29
The Lean-Agility Space
Small batchesSelf-organization
Daily standups
SCRUMCross functional team
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
Everything Visible
Explicit Workflow
Manage WIP
© Copyright Net Objectives, Inc. All Rights Reserved 30
The Lean-Agility Space
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
Small batchesSelf-organization
Daily standupsFocus on finishing
© Copyright Net Objectives, Inc. All Rights Reserved 31
The Lean-Agility Space
Small batchesSelf-organization
Daily standupsFocus on finishingEverything visible
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved 32
The Lean-Agility Space
Small batchesSelf-organization
Daily standupsFocus on finishingEverything visibleExplicit workflow
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved 33
The Lean-Agility Space
Small batchesSelf-organization
Daily standupsFocus on finishingEverything visibleExplicit workflow
Manage WIP
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved 34
The Lean-Agility Space
Small batchesSelf-organization
Daily standupsFocus on finishingEverything visibleExplicit workflow
Manage WIPUse estimation & velocity
eXtreme ProgrammingTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved 35
The Lean-Agility Space
Small batchesSelf-organization
Daily standupsContinuous Integration
Focus on finishingEverything visibleExplicit workflow
Manage WIPUse estimation & velocity
Test-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
LEAN-XP
© Copyright Net Objectives, Inc. All Rights Reserved 36
Adopt Test-First at Acceptance Level
Small batchesSelf-organization
Daily standupsFocus on finishingEverything visibleExplicit workflow
Manage WIPUse estimation & velocity
ATDD
LEAN-XPTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved 37
Others to Adopt When Can
Small batchesSelf-organization
Daily standupsFocus on finishingEverything visibleExplicit workflow
Manage WIPUse estimation & velocity
ATDD
LEAN-XPTest-First Unit TDD
Paired Programming
Continuous Integration
Automated testing
© Copyright Net Objectives, Inc. All Rights Reserved 38
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
• Variations must be accounted for• Whether have cross-functional teams• Whether need iterations• Level of team’s discipline• Discipline of team’s interacting with
© Copyright Net Objectives, Inc. All Rights Reserved 39
call for Different Methods Different Situations
Do we need iterations for planning?
Do we need iterations for discipline?
Can we adopt test-driven development?
Are our developers willing to pair?
© Copyright Net Objectives, Inc. All Rights Reserved 40
Determining Where to Start
Can cross-functional teams be created?
No
Yes
Are iterations
needed for planning or discipline?
Yes
No
Use Leanban with cross-functional teams
and iterations
Use Leanban with a pure flow model without cross-
functional teams
Use Leanban with a pure flow model with
cross-functional teams
© Copyright Net Objectives, Inc. All Rights Reserved 41
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
• Variations must be accounted for• Whether have cross-functional teams• Whether need iterations• Level of team’s discipline• Discipline of team’s interacting with
© Copyright Net Objectives, Inc. All Rights Reserved 42
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
4. Committed to enterprise context
5. Replaces practices when increases value
• As teams learn they may transcend a practice
• Practices may become inappropriate• Can’t just stop doing something
because you are having a problem with it
© Copyright Net Objectives, Inc. All Rights Reserved 43
Practice Value Provided Alternative Method of Getting Value
Iteration 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 Abandon Practices
© Copyright Net Objectives, Inc. All Rights Reserved 44
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 Abandon Practices
© Copyright Net Objectives, Inc. All Rights Reserved 45
Outcome to Achieve
Scrum Kanban What to Do
Coordination withother teams
Time-boxes all in synch Use cadence all in synch Use time-boxes or cadence
Intra-Team Collaboration
Cross-functional teams Insufficient, requires attempting to create teams
Create teams to the extent possible
Team in synch Daily standup Visual Control, daily standup Visual control, daily standup
Reality check Things not done at end of sprint are clear
Cycle time. Insufficient, requires tracking size of stories
Manage
Developer / testerrelationship
Skills, but not roles.End of sprint checkpoint
Insufficient, ignores issue Time-boxing OR discipline with small storiesATDD highly recommended
Predictability of work done
Estimation and velocityInsufficient if don’t manage WIP
Insufficient, requires estimation
Estimation and velocity, Manage interruptions, Reduce technical debt
Smooth transition Often insufficient if teams don’t exist prior to transition
Can control rate of transition Use MBIs, create teams to the extent possible, sequence work, use ATDD
Reduce Technical Debt
Use XP style technical practices
Ignores Use test-first methods (ATDD/TDD), Continuous integration, Emergent Design
Focus on outcomes, not practices
© Copyright Net Objectives, Inc. All Rights Reserved 46
Focus on outcomes, not practicesOutcome to Achieve
Scrum Kanban What to Do
Coordination withother teams
Time-boxes all in synch Use cadence all in synch Use time-boxes or cadence
Intra-Team Collaboration
Cross-functional teams Insufficient, requires attempting to create teams
Create teams to the extent possible
Team in synch Daily standup Visual Control, daily standup Visual control, daily standup
Reality check Things not done at end of sprint are clear
Cycle time. Insufficient, requires tracking size of stories
Manage
Developer / testerrelationship
Skills, but not roles.End of sprint checkpoint
Insufficient, ignores issue Time-boxing OR discipline with small storiesATDD highly recommended
Predictability of work done
Estimation and velocityInsufficient if don’t manage WIP
Insufficient, requires estimation
Estimation and velocity, Manage interruptions, Reduce technical debt
Smooth transition Often insufficient if teams don’t exist prior to transition
Can control rate of transition Use MBIs, create teams to the extent possible, sequence work, use ATDD
Reduce Technical Debt
Use XP style technical practices
Ignores Use test-first methods (ATDD/TDD), Continuous integration, Emergent Design
© Copyright Net Objectives, Inc. All Rights Reserved 47
Outcome to Achieve
Scrum Kanban What to Do
Finish stories quickly
Time boxes, small stories Managing WIP helps. Still insufficient as may not break stories down small enough
Time boxes OR discipline to complete stories quickly. Decompose to small stories using <given> <when> <then> story format.
Minimal delays in workflow
Cross-functional TeamsUse small stories
Manage WIP Cross-functional teams, Manage WIPUse small stories
Short feedback cycles
Use small storiesProduct owner and cross-functional teams
Manage WIPInsufficient – requires discipline
Use small stories, Manage WIPProduct owner and cross-functional teams
Balanced workload
Pull work based on velocity Manage WIP Pull work based on velocityManage WIP
Focus on outcomes, not practices
© Copyright Net Objectives, Inc. All Rights Reserved 48
Focus on outcomes, not practicesOutcome to Achieve
Scrum Kanban What to Do
Finish stories quickly
Time boxes, small stories Managing WIP helps. Still insufficient as may not break stories down small enough
Time boxes OR discipline to complete stories quickly. Decompose to small stories using <given> <when> <then> story format.
Minimal delays in workflow
Cross-functional TeamsUse small stories
Manage WIP Cross-functional teams, Manage WIPUse small stories
Short feedback cycles
Use small storiesProduct owner and cross-functional teams
Manage WIPInsufficient – requires discipline
Use small stories, Manage WIPProduct owner and cross-functional teams
Balanced workload
Pull work based on velocity Manage WIP Pull work based on velocityManage WIP
© Copyright Net Objectives, Inc. All Rights Reserved 49
Practice What It Achieves Doing?
Explicit workflow Enables everyone to know what’s happening. Facilitates learning
Daily standups Keeps people informed (often not needed if co-located)
Make everything visible Facilitates learning and management. Detect challenges.
Common cadence/sprints Enables early synchronization of different teams
Build incrementally and iterate on the increments
Short feedback cycles and learning
Focus on finishing Avoid too much WIP, look for opportunities to collaborate
Do continuous integration Detect out of synchronization errors
Estimate work items and compute velocity (unless a maintenance group)
Validates understanding of items being worked on by the teams. Facilitates planning.
Work in small batches Faster feedback. Easier to avoid workflow delays. Enables people moving around as needed.
Use small stories Faster feedback. Easier to avoid workflow delays. Enables people moving around as needed.
Manage work in process (WIP) Eliminate delay, speed up feedback
Create cross-functional teams to the extent possible
Eliminate delay, speed up feedback, learn faster
Use test-first methods Better understand what is needed, convey this better, improve collaboration between dev and test, facilitate automation of test
Paired Programming Collaboration, shared knowledge of code base, increased discipline
© Copyright Net Objectives, Inc. All Rights Reserved 50
Approach to transitionVisibility / communication
Workload
Feedback loops
Structure
Workflow order
Flow
Communication
© Copyright Net Objectives, Inc. All Rights Reserved 51
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven2. Selects core practices3. Practices tailored to the
team4. Committed to enterprise
context5. Replaces practices when
increases value6. Principle based
• Laws of software development• Systems thinking• Lean Science• Build quality in
• Improves professionalism• Avoids dogma• Provides guidance to extend practices
© Copyright Net Objectives, Inc. All Rights Reserved 52
topics
Attribute 6: Principle-based
1. Principles • Laws of software development• Systems thinking• Lean Science• Build quality in
• Improves professionalism• Avoids dogma• Provides guidance to extend practices
© Copyright Net Objectives, Inc. All Rights Reserved 53
topics
ATTRIBUTES OF LEANBAN TEAMS
1. Business driven
2. Selects core practices
3. Practices tailored to the team
4. Committed to enterprise context
5. Replaces practices when increases value
6. Principle based
7. Attends to culture
• Culture is unique to a company. • Requiring change may be a mistake but
avoiding it usually is• Must attend to culture and what
degree of change is appropriate
© Copyright Net Objectives, Inc. All Rights Reserved 54
Telling people “Just do it”
just doesn’t do it
© Copyright Net Objectives, Inc. All Rights Reserved 55
When an organization starts at the team level, the teams learn local optimizations which they later have to give up when they consider the entire value stream.
When an organization starts with the whole in mind, the teams improve as much as they can within this larger context.
Bottom up? Holistic? Consider …
© Copyright Net Objectives, Inc. All Rights Reserved 56
The ideal rate of change depends on the ability of the organization to change
Ability to change
Am
ou
nt
of
chan
ge a
ttem
pte
d
© Copyright Net Objectives, Inc. All Rights Reserved 57
Lean ManagementProject Management
Leanban / Kanban / Scrum ATDD / TDD / Design Patterns
technical
ASSESSMENTS
CONSULTING
TRAINING
COACHING
Lean for ExecutivesProduct Portfolio ManagementBusiness Product OwnerProduct Owner
Onsite SPC Leading SAFe
SAFe ArchitecturePM/PO
Onsite SPC Leading SAFe
SAFe ArchitecturePM/PO
© Copyright Net Objectives, Inc. All Rights Reserved 58
Conferences07 June Better Software/DevOps West 201503 August Agile 2015
Public Courses 01 June Leading SAFe™ with Net Objectives Extensions and Full SAI Certification
Questionsemail: [email protected]
twitter: @alshalloway