agility infusion 101: agile & beyond
TRANSCRIPT
Agility Infusion
Tom Churchwell
Tom (TC) ChurchwellLeadingAgileAgile Transformation Consultant
[email protected]: tomchurchwell
Twitter – tchurchwell
Agenda
• Traditional vs agile
• History
• Values
• Principles
Agenda
Why Agility
What Agility
How Agility
• Virtuous Feedback
• Test Driving
• Quality & Automation
• What’s wrong with agile
• What gets in the way
• Three Things
Standing On The Shoulders of GIANTS
Why Agile?
7
Why Agile???
8
Why Focus On Why???
David HussmanDevJam.Com
Opportunity
Value
Degradation
over Time
Time
Va
lue
10
Traditional Projects
Opportunity
Initiation
Investment
Implementation
Costs
(Risk)
Value
Degradation
over Time
The System is Deployed
Time
Va
lue
Planning
Breakeven
11
Traditional Projects
Opportunity
Initiation
Investment
Implementation
Costs
(Risk)
Value
Degradation
over Time
The System is Deployed
Time
Va
lue
Planning
Realized
Value
Breakeven
12
Traditional Projects
Challenges of a Traditional
Approach
◦Huge Risk “Investment” in a Solution
“Investment” grows over time with no guarantee of
recovery
“Big Bang” Deployment could be “Big Bust”
Integration delays can cause Pushed deployment
date
◦Slow ROI (Break-Even) Realization
◦All Requirements Needed “Up-Front”
◦Not Easily Adaptable to Change13
• Feature Usage in Software:o% Rarely or Never Used?o% Always or Often Used?
Do Software Projects Deliver Valuable Outcomes?
Clippy was voted as one of the
top 50 worst inventionsby Time magazine
Agility Produces Value
Opportunity
Time
Va
lue
Value
Degradation
over Time
15
Agility Produces Value
Opportunity
Much Earlier
BreakevenInitiation
Investment
Time
Va
lue
Planning
Implementation
Costs
(Risk) Deployment is
to Production “Early and Often” reducing risk and
simultaneously increasing Realized Value with each
iteration
Value
Degradation
over Time
16
Agility Produces Value
Opportunity
Much Earlier
BreakevenInitiation
Investment
Time
Va
lue
Planning
Implementation
Costs
(Risk) Deployment is
to Production “Early and Often” reducing risk and
simultaneously increasing Realized Value with each
iteration
Greater Realized
Value
Value
Degradation
over Time
17
Agility Produces Value
Opportunity
Time
Va
lue
Greater Realized
Value
Value
Degradation
over Time
The System is Deployed
Realized
ValueMUCH GREATER VALUE
REALIZATION (Profitability)
MUCH
LOWER RISK
18
Business Impact
• High Value functionality Doesn’t wait for the whole project to get deployed◦ ROI (break even) is achieved sooner
◦ Value Realization is produced earlier and for longer meaning higher overall ROI
• Risk is Managed and Shrinks throughout the project◦ Releases that are“To Production”produce
immediate value, return on investment and reduction of risk 19
Agile 101
Agile History
Agile Manifesto Values
Individuals & Interactions Processes & Toolsover
Working SoftwareComprehensive Documentation
over
Customer Collaboration Contract Negotiationover
Responding to Change Following a Planover
That is, while there is value in the items on the right, we value the items on the left more.
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
Source: www.agilemanifesto.org
Agile Manifesto Principles
Satisfy the Customer
Welcome Change
Deliver Frequently
Collaborate Daily
Support & Trust Motivated
Teams
Promote Face-to-Face
Conversations
Deliver Working Software
Promote Sustainable
Pace
Promote Technical
Excellence
Maximize Through
Simplicity
Have Self-Organized
Teams
Reflect & Adjust Regularly
Source: www.agilemanifesto.org
AGILE: WHY IT FAILS
Methodology Agile
Agile is NOT a Methodology
• Methodology implies steps to follow
• Learn the steps and everything will be OK
• Methodology implies infrequent change
• Learn the steps and as long as nothing changes, you’ll be OK
• Agility is a different way of collaborating
• It is a different way of getting to ”done”
• It is a skill
• Shu-Ha-Ri27
30
Matrixed Organizations
Limited Access to Subject Matter
Expertise
Non-instantly Available Resources
Too Much Work In Process
Low Cohesion & Tight Coupling
Shared Requirements
Between Teams
Technical Debt & Defects
Large Products with Diverse TechnologyTeam
One Reason We Resist Change Is Because We Are Focused On
What We Have To Give Up Rather Than
What We Have To Gain
AGILE: WHY IT WORKS(THE 3 THINGS)
Teams
33
Team: We have everyone and everything (skill sets, tools, etc.) needed to deliver working, tested, documented, deployable product.
Team
Teams & Backlogs
34
Backlog:
• Backlog items are appropriately sized
• Backlogs are ordered and prioritized
• Backlog items capture all the work needed
Team
Backlog item
Backlog item
Backlog item
Backlog item
Backlog item
Teams, Backlogs, & Working Tested Product
35
Working Tested Product: • Deliverables meet defined acceptance criteria• Deliverables have been reviewed and approved by product owner/
stakeholders• Deliverables have been tested, and are shippable (either with no bugs,
or known/ accepted bugs)
Team
Backlog item
Backlog item
Backlog item
Backlog item
Backlog item
Working
Tested
Product
Teams, Backlogs, & Working Tested Product
36
Team
Backlog item
Backlog item
Backlog item
Backlog item
Backlog item
Working
Tested
Product
Clarity AccountabilityMeasureable
Progress
Feedback Loops Are Fundamental
Landing a Man on the Moon or Getting a Cup of Coffee
Four Fundamental Things
Process Control: Defined vs. Empirical
40
Staying on Track Staying on Course
Defined & Linear Empirical & Iterative
Feedback Loops &
Engineering Practices
Traditional Development
42
Specify
Design
Code
Test
Deploy
Sustain
Test Driving
43
Test Driving
44
Specify
Design
Code
Test
Deploy
Sustain
Automated Testing Triangle (Patrick Welsh)
Straw –GUI Tests– {Brittle}
Sticks–Acceptance Tests– {Less Brittle}
Bricks –Unit Tests– {Least Brittle}
Testing Triangle Modified by TC
Building Working Tested Software
Source
Code
Management
Building Working Tested Software
Source
Code
Management
Continuous
Integration
Building Working Tested Software
Automated
Test Suites
Source
Code
Management
Continuous
Integration
UT – AT - UI
Building Working Software
Automated
Test Suites
Source
Code
Management
Continuous
Integration
UT – AT - UI
Teams, Backlogs, & Working Tested Product
51
Team
Backlog item
Backlog item
Backlog item
Backlog item
Backlog item
Working
Tested
Product
Clarity AccountabilityMeasureable
Progress
Scrum 101