@robb1e
You say...
Lets fix quality,
time and cost then
have optional scope.
Slide 15
Slide 15 text
@robb1e
• Customers can change their minds
• Suppliers aren’t encouraged to sacrifice
quality as soon as something goes wrong
• Customers’ and suppliers’ interests are
contractually aligned
• The knowledge that both parties gain
during the project can influence the
finished product.
Optional Scope Contracts
Slide 16
Slide 16 text
@robb1e
Heraclitus, ~500BC
Change is the only constant
Slide 17
Slide 17 text
@robb1e
History
lesson
Slide 18
Slide 18 text
No content
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
@robb1e
Richard Feynman
We are never right, we can only be
sure we’re wrong.
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
No content
Slide 23
Slide 23 text
@robb1e
Getting Real by 37 Signals
Build half a product, not a half-ass
product.
Slide 24
Slide 24 text
@robb1e
• Request for tender announced
• Cheapest bid usually wins
• Pay company several $m for licenses
• Then another few $m for configuration
• By the time it’s up and running, it’s out of
date
Vendor driven development
Slide 25
Slide 25 text
@robb1e
The Guardian, January 2006
MPs urge inquiry into delay of
£6.2bn ($10bn) NHS software
Slide 26
Slide 26 text
@robb1e
Some marketing genius
No one ever got fired for
hiring IBM
@robb1e
• Software replaces paper-based system
• Aims to improve dispatch time
• Keep track of where ambulance (units) are
so closest can be sent to location
• Big bang release
1992 London Ambulance
Dispatch disaster
http://en.wikipedia.org/wiki/London_Ambulance_Service#System_failures
Slide 29
Slide 29 text
@robb1e
• Multiple units sent to the same address
• No units sent to other addresses
• Calls got lost
• System became congested
1992 London Ambulance
Dispatch disaster
http://en.wikipedia.org/wiki/London_Ambulance_Service#System_failures
Slide 30
Slide 30 text
@robb1e
Indepentent (newspaper), October 1992
Ambulance chief quits after
patients die in computer failure.
http://www.independent.co.uk/news/ambulance-chief-quits-after-patients-die-in-computer-failure-1560111.html
@robb1e
• Originally called “Just in time production”
• Goals are all about eliminating waste
• Principles are about continuous
improvement, people and process
Toyota Production System
http://en.wikipedia.org/wiki/Toyota_Production_System
@robb1e
Agile manifesto
http://agilemanifesto.org/
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
@robb1e
• Story writing
• Iteration planning
• Daily stand-ups
• Customer acceptance
• Retrospectives
Agile process
Agile processes enable
customer collaboration
and empower the
individual
Slide 45
Slide 45 text
@robb1e
Kellan Elliot McCrea, 2012
Change is what you should be
optimizing for. You never know
what's coming next.
Slide 46
Slide 46 text
http://www.flickr.com/photos/psd/8591351239
Slide 47
Slide 47 text
@robb1e
• Test driven development
• Pair programming
• Continuous integration
• Automating everything
• Continuous refactoring
Agile engineering
Agile engineering
practices promote
working software
early and enables
easier change
Slide 48
Slide 48 text
process practices
#win
Slide 49
Slide 49 text
@robb1e
Lean software
development
(2003)
Slide 50
Slide 50 text
@robb1e
• Eliminate waste
• Amplify learning
• Decide as late as possible
• Deliver as fast as possible
• Empower the team
• Build integrity in
• See the whole
Lean software development
http://en.wikipedia.org/wiki/Lean_software_development
Slide 51
Slide 51 text
@robb1e
Mary and Tom Poppendieck
Think big, act small, fail fast,
learn rapidly
@robb1e
• Dodgeball => Foursquare
• MySpace => Facebook
• Rocket Internet
Ideas/others can be prototypes too
http://en.wikipedia.org/wiki/Dodgeball_(service)
http://www.rocket-internet.de/
http://www.businessweek.com/articles/2012-02-29/the-germany-website-copy-machine
Slide 84
Slide 84 text
@robb1e
Beyond
prototyping
Slide 85
Slide 85 text
@robb1e
• Features that have hypotheses
• Hypotheses that can be easily validated
• Code that is always production ready
• Code that is easy to change
Goals
Slide 86
Slide 86 text
@robb1e
Most developers
Prototypes tend to find a
way into production
Slide 87
Slide 87 text
@robb1e
Kent Beck
Make it work,
make it right,
make it fast
Slide 88
Slide 88 text
@robb1e
Joel Spolsky, 2001
If it’s a core business function - do
it yourself, no matter what.
Slide 89
Slide 89 text
@robb1e
Ron Jefferies, ~2005
Always implement things when
you actually need them, never
when you just foresee that you
need them
Slide 90
Slide 90 text
@robb1e
Francis Hwang, 2012
The biggest expense for a startup
is your time. Not your laptop, not
your hosting bill, not your office,
but the hours in your day.
Slide 91
Slide 91 text
@robb1e
Paul Hammond, 2012
Hosted services are usually
cheaper and better than anything
you will build. Use them.
Slide 92
Slide 92 text
@robb1e
Mary and Tom Poppendieck
Think big, act small, fail fast,
learn rapidly