Agile?! Are you crazy???
Presentation Copyright © 2008, Agile For All, LLC. All rights reserved.
Presented by
Bob Hartman
Agile For All
303-766-0970
bob.hartman@agileforall.com
Before We Start
• Cell phones, pagers, PDA’s, etc. to silent
• If you have a question, please ask it. Don’t
wait! It is better to answer the question while
we are still in the same area than to go back.
2
Agile?! Are you crazy?
INTRODUCTIONS
Agile?! Are you
3
Bob Hartman
• 30+ years of software
industry experience
• Certified Scrum Practitioner
• Bachelor and Masters
degrees in Computer Science
• Roles included Tester,
Developer, Dev Manager, QA
Manager, Product Manager,
Project Manager, VP…
• Started with agile in 1999
4
bob.hartman@agileforall.com
303-766-0970
Agile?! Are you crazy?
Who are you?
• Please introduce yourself including:
– Name
– Company and title
– Agile experience
5
Agile?! Are you crazy?
Two typical project managers have a chat
JACK AND BILL
Agile?! Are you
6
Meet Jack
7
Agile?! Are you crazy?
Meet Bill
8
Agile?! Are you crazy?
Jack and Bill meet at the water cooler
Hey Bill, haven’t seen you in
quite a while. How is your
project going these days?
9
Jack, you know how it is.
Late, overbudget, stress,
not enough time for QA.
Blah, blah, blah…
Agile?! Are you crazy?
Jack tries to help
Dude, that stinks. What are
you going to do?
10
I’m getting desperate. I
think I’m going to try agile
on my next project and see
if it will work.
Agile?! Are you crazy?
Jack is in shock
11
Agile?! Are you crazy?
Bill responds
I know it’s crazy, but I’m
out of ideas. Hey, you’re
the new hard-driving guy,
how is your project going?
12
Agile?! Are you crazy?
Jack’s reality
Umm… ahhh… uhhh… I mean…
Hey, don’t change the subject
here! Are you crazy???
13
(to himself) Hmmm,
Maybe not as crazy as
I thought if his project
is in the toilet too!
Agile?! Are you crazy?
Group discussion
• Do you relate more to hard-driving Jack, or
desperate Bill?
• As project managers do you ever feel like you
are personally failing when projects are failing?
• If you have used agile in the past, why was the
switch made from traditional software
development processes? How did agile work
for you?
14
Agile?! Are you crazy?
INDUSTRY STATISTICS
(SOFTWARE PROJECTS)
Agile?! Are you
15
Software project success rates
Software Project Success Rate
Report
Date
Success Rate
First CHAOS report
1994
16%
“Extreme CHAOS”
2001
28%
Most Recent CHAOS
2003
31%
Source: The Standish Group
16
Agile?! Are you crazy?
Feature use in software
Question: What percentage of software features are NEVER used?
Often
13%
Always
7%
Never Used
45%
Sometimes
16%
Rarely
19%
17
Source: The Standish Group
Agile?! Are you crazy?
Industry realities
• Most “successful” projects were deliberately overestimated at the start (Standish – 2001)
• 64% of features in products are rarely or never used
(Standish – 2002)
• The average project exceeds its schedule by 63%
(Standish – 2001)
• 50% of project failures are due to missing or
misunderstood requirements (Ravenflow – 2006)
• Executive support and customer involvement are
the two biggest critical success factors in project
success by far (many studies in the past 10 years)
18
Agile?! Are you crazy?
More industry realities
• 56% of defects are attributable to missing or
misunderstood requirements
• 82% of defect fixing time and dollars go to
fixing requirements related defects
• NIST has estimated that 0.6% of the GDP is
lost due to software defects
• NIST also estimates that 1/3 of that money
could be saved by using a process allowing
earlier detection and correction of defects
19
Agile?! Are you crazy?
Things I sometimes ponder…
• Why do we make all important decisions on projects when
we have the least information?
• Why do managers always think things will take less time
than everyone else? Why do we let them estimate at all?
• Why has the software industry never improved the ability
to estimate accurately?
• If we know that an average of 30% of requirements will
change during a project, why do we use a process that is
intolerant to change?
• Why do companies say that quality is important while
internally they give QA less time than originally allocated to
do their job?
• Why do developers always do the easiest things first?
• If the customer is always right, why do we only ask them
their opinion AFTER we have completed the entire project?
20
Agile?! Are you crazy?
Excuses for not using agile
BUT AGILE IS CRAZY!
ISN’T IT???
Agile?! Are you
21
We’re agile so…
• we don’t need to do documentation any more
• (more generically) we don’t need to do X because
we’re agile
• developers get to decide what goes into each iteration
• we’re going to have a lot more meetings
• we don’t have to plan more than the current iteration
• we can be undisciplined because QA will catch all the
errors in near real time
• Which of these have you heard? Which of these do we
believe? Which of these is the worst?
22
Agile?! Are you crazy?
No documentation
• A simple question – is this even possible?
• The correct phrase is “Just enough
documentation, just in time.”
23
Agile?! Are you crazy?
We don’t need to do X
• Again, just enough, just in time.
• It doesn’t matter what X is
–
–
–
–
–
Design
Architecture
Project charter
Vision
…
• We MUST keep business requirements in mind. If
it is required by the business for reasons outside
our control, then we have to do it!
24
Agile?! Are you crazy?
Developers pick what to work on
• Well, they do say that most myths are at least
partially based in reality
Developers don’t get to pick and
choose what they want to work on
25
They DO commit to what
they will complete – but it is
in priority order and they
don’t make the priorities!
Agile?! Are you crazy?
More meetings
•
•
•
•
•
•
•
•
•
•
•
•
Release planning – once
Iteration planning – once per iteration
Iteration demo/retro – once per iteration
Daily standup – every day
Hmm, that IS more meetings, but
Release planning – 4 hours
Iteration planning – 2 hours x iterations
Iteration demo/retro – 2 hours x iterations
Daily standup - .25 hours x iterations x days
Total might look like: 4 + 2x5 + 2x5 + .25x5x10
Total meeting time is 36.5 hours of meetings
How long would we have met to analyze, design, code and
test an average 3 month release with our current process?
• More importantly – would the product have been as good?
26
Agile?! Are you crazy?
No planning
• Don’t confuse NO planning with ADAPTIVE
planning!
• Would any company actually allow no big
picture planning???
Figuring it all out up front
27
Adapting as we go. Notice
we still have all the items!
Agile?! Are you crazy?
No discipline
• Reality check… In traditional projects of a year in length how
hard are people working during the first 2 months? Does that
sound disciplined?
• Planning, demos and retrospectives every two weeks and
daily standups. Does that sound disciplined?
• Making a commitment to work that will be accomplished in
two weeks – disciplined?
• Working in priority order – disciplined?
• Coding AND testing need to be done in order to be
considered complete – disciplined?
• The heart of the matter – Code needs to pass unit tests AND
acceptance tests in order to be complete. High performing
teams use the phrase “Add value quickly now AND be able to
add value quickly in the future!” In other words, no
undisciplined hacking!!!
28
Agile?! Are you crazy?
Myth recap
• When you hear something about agile that
sounds stupid there are two possibilities:
– It’s false because someone is misunderstanding
– It’s true and agile has a fundamental flaw
• Keep in mind that it may sound “odd” which is
very different from “stupid”
– No documentation required = stupid
– Teams use points (sizes) rather than hours and
minutes for estimating = odd
• Remember that some VERY successful companies
are using agile, and it’s highly unlikely that ALL of
them are stupid
29
Agile?! Are you crazy?
AGILE BASICS
Agile?! Are you
30
Agile (Scrum) roles
Product Champion (Product
Owner)
•Owner of the prioritized
product backlog
•Represents users and
stakeholders when talking to
team
•Represents team when
talking to users and
stakeholders
•Is a combo of Product
Manager and BA
Users/Stakeholders
•Those that are going to
use the product or have a
vested interest in how it
turns out
31
Agile Project Manager
(Scrum Master)
•Facilitates meetings
•Removes impediments
•Runs interference for the
team
•Helps team focus on
what’s important
•Can act as a process
coach and help team
improve the process
Team
•The team that will create
the product
•Includes EVERYONE that is
part of product creation
Agile?! Are you crazy?
Complete agile process
32
Agile?! Are you crazy?
Iteration – the basic unit of agile
Iterations create a “product increment” of “potentially shippable software.”
This means everything is working. It DOES NOT mean we can get it wrong in an
iteration and then fix it all up in the next iteration!!!
33
Agile?! Are you crazy?
Reasons for being agile
MAYBE AGILE ISN’T SO CRAZY
Agile?! Are you
34
Building a business case for agility
• Business case essentials:
– Bottom line dollars and cents
– Improvements
• For this business case we should discuss:
– Business value
– Customer expectations and quality
– Team dynamics
– Planning
– Other improvements
35
Agile?! Are you crazy?
Adding Business Value Quickly – A Simple Example
• Stuffing envelopes can tell us a lot about agile 
• What are the advantages of getting something
released more quickly?
36
Agile?! Are you crazy?
Delivering business value quickly
Question: If we get rid of the 64% of software that is rarely or never used,
what happens to our overall software development efforts?
37
Agile?! Are you crazy?
Discussion: Customer expectations
• When does the customer know what they really
want in a product?
• How can we help them know earlier?
• Does that sound agile to anyone???
• Did we mention the highest value items get the
most testing so quality perception is better as well?
38
Agile?! Are you crazy?
Changes to team dynamics
• Morale improves
– Team succeeds more often
– Teams work together
– Teams empowered to succeed
• Failures are very limited
–
–
–
–
39
A single iteration
Correction happens immediately
Team fails together so no blame
Happens quickly rather than
bleeding to death from a papercut
or finding out about problems too late!
Agile?! Are you crazy?
Planning improvements
• Retrospectives for correction
and improvement
• Accurate management visibility
• Better predictability leading to
success
40
Agile?! Are you crazy?
Other improvements
• Change tolerance (30% of requirements will
change!)
– Due to short iterations, change is free or nearly
free most of the time
• Increased collaboration
– Everyone works together to create a great product
rather than all groups working in isolation
• Risks are handled earlier
– Everyone identifies risks and impediments as soon
as they are noticed so there is more time to
mitigate the risks and remove the impediments
41
Agile?! Are you crazy?
Recap: Agile…
•
•
•
•
•
•
42
… adds business value quickly
while meeting customer expectations
with high value and high quality products
produced by teams with high morale
through projects that are easier to plan
even while being tolerant to change
Agile?! Are you crazy?
INDUSTRY STATISTICS PART II
(AGILE PROJECTS)
Agile?! Are you
43
What others are seeing
44
Agile?! Are you crazy?
VersionOne Survey Results (2008)
Survey asked people: Please try to estimate SPECIFIC IMPROVEMENTS you have
actually realized from implementing Agile practices.
Improvement Noted
>10% improvement >=25% improvement
Increased productivity
89%
56%
Reduced software defects
84%
56%
Accelerated time-to-market
83%
54%
Reduced cost
65%
30%
Source: VersionOne 2008 State of Agile Development Survey
NOTE: All 2008 data is within 2% of 2007 data
Average of 74% of agile projects completed successfully
Biggest causes of agile project failure:
Company philosophy or culture could not be overcome – 23%
Lack of experience with agile – 21%
45
Agile?! Are you crazy?
Standish Group further results
• #5 success factor for projects is using agile
methodology
• Jim Johnson from the Standish Group says:
– Agile is an important success factor because its
incremental nature allows for leaving entire
features or portions of features out without
affecting the overall value of the project
– He also notes agile is difficult for some because of
corporate culture (as also found in the VersionOne
survey)
46
Agile?! Are you crazy?
Agile is a Proven Approach
Some Agile Companies (there are MANY more)
47
Agile?! Are you crazy?
WHO IS REALLY CRAZY?
Agile?! Are you
48
One big question to answer…
49
Agile?! Are you crazy?
nd
2
50
big question
Agile?! Are you crazy?
Jack and Bill 6 months later…
Don’t rub it in. Both of my
projects stunk, so I deserved
it. One was on time but had
all wrong features, and the
other was WAAAAAAAY late.
51
Hey Jack, I just heard. Sorry
dude. You should have tried
agile. All of my projects are
actually being successful for
a change!!
Agile?! Are you crazy?
Take away thoughts…
• Projects in the software world are NOT
completing successfully today
– Teams are trying hard
– Project Managers are trying hard
– Effort is NOT the issue (don’t be Jack!)
• There is a business case to be made for an agile
process
• The world of project management is changing
and you have to decide if you are going to be an
agent for change, a person that reacts after
change has been made, or a person that will not
be a part of project management in the future.
52
Agile?! Are you crazy?
QUESTIONS?
Agile?! Are you
53
Please email comments to bob.hartman@agileforall.com
THANK YOU!
Agile?! Are you
54