The Benefits of Agile Software Development are often completely crushed by the weight of Traditional Outsourcing Contracts and Negotiations. Now that we are well into the Second Decade of Agile Methods, it's time to start repeating more of the benefits.
3. MY BIO
• Practitioner, Consultant,Trainer
• Occasional CTO
• 25+ years in software
• 15+ years in “Agile”
4. MY HISTORY
• Independent ISV
• Multi-million dollar waterfall projects
• Military Simulations
• Internal AgileTeams
• Outsourced Agile Development
• Training / Coaching / Consulting
14. ASSUMPTIONS & OBJECTIVES
• Objectives are disjoint from Definition
• Expertise in Definition is Separated from Expertise in Execution
• Goal of preparation is Completeness & Correctness of the Definition
- creating a fungible commodity
• Goal of theVendor Selection process is to find the cheapest supplier
• The Biggest Risk is not getting everything we asked for
15. ECONOMIC DRIVERS
• Time & money is spent on upfront analysis & contract negotiation
• which increases the cost of delay
• Plus transaction costs throughout the project
• Customers have to get a good deal
• Otherwise the Software probably wouldn’t be worth it…
30. TO SUM UP
• We can’t describe the solutions to Complex Problems in complete
detail ahead of trying to solve them
• Our solutions can only co-evolve with the agents
• Which means it does matter who builds it
• Expertise not cost is the most important in vendor selection
(Stop demanding dumb people who don’t care)
31. The Analytical Reductionist techniques that create explicitly
documented Defined Predictive “Waterfall Plans” work fine for simple
and complicated problems alike
Their “domain inauthenticity” however means that they will begin to
fail completely as they encounter problems of increasing complexity
32. It’s not that we’re failing at
Predictive ReductionistTechniques
They’re failing us
40. When you say: “9 out of 10 Bushfires are caused by humans”
All I hear is: “There’s a Koala out there who knows how to use
matches”
41. When we said:
“We are uncovering
better ways of
developing software.”
All they heard was: “I’m glad you admit that it’s all your fault”
http://lasting-benefits.com/2014/05/31/a-conversation-with-the-agile-manifesto/
43. THE RESULT
• Software Development is treated as construction
• Definable & Predictable
• Much time will elapse before deliverables have value
• Payment cycles should be long
• Interim deliverables are close to irrelevant
• Early termination represents a crisis to be avoided
• Customer involvement is front loaded
45. LEGAL REASONING
• Is about following a Causal Chain
• A Contract may not be indeterminate
• Is based on precedent rather than pure logic
• Changes very slowly (Stare Decisis)
• Is always “behind the curve”
47. LAWYERS
• Are duty bound to “Obtain for their client the benefit of any and
every remedy and defence authorised by law from threats seen &
unseen”
• Focus on protection when trust deteriorates
• “Think the unthinkable”
• Are conservative and combative
52. SUPPLIER MOTIVATIONS
• A genuine desire for customer success
• Mindlessly jumping on the latest bandwagon
• Seems like a good way to get “off the hook”
53. A MARKET FOR LEMONS?
• Created after years of disappointing results
• Drives the customers to gain profits from “side effects”
• Based around fear and asymmetric information
74. BUILDINGTRUST BUILDS
PROFITS
• TheTraditional approach uses Contracts as a replacement for trust
• This however came at the price of increased “Transaction Costs”
• Increasing trust reduces transaction costs – creating a larger “surplus”
Transaction costs make up around 30% of
the costs of any given project
94. TELLYOUR LAWYERS
• Early termination is no longer a cause for concern because we keep
our code clean and our increments valuable (but contract for that)
• We no longer believe we can completely describe the micro level
activities that will result in our desired macro level outcomes
• Not building stuff can be a good thing
• We no longer wish to seek unfair advantage
98. THIS CREATES AN IPD
Define Objectives
Set Constraints
do {
Plan
Define
Execute} until happy
Enjoy
Unless you know how
many Sprints it’s going to
take
Where the dominant
strategy is collaboration
102. CHANGETHE LANGUAGE
• The language we use day to day influences the way we think and act
• Compare:
• “The Current Hypothesised Implementation is” to “The System
Shall”
• Talking about “opinions” instead of “bugs”
103. KEEPTHE FOCUS ONTHE GOAL
And off the Sprints
(and don’t even mentionVelocity)
105. ENCOURAGE OWNERSHIP
• Regular Reviews are not enough
• Clients need to regularly accept as
their own the software that the
supplier has built
• We value something far more highly
when we perceive ownership
(Endowment Effect)
107. DON’T PUSH IT
• Not everybody is ready or able
• Not every software problem is complex
108. ITERATETOWARDS AGILITY
• Get clients used to being more involved
• And you being more involved with them
• Avoid Sprint “Failure” penalties
• Start with the introduction of re-ordering
• Then move to substitution