lsoftware development                                       e a n                       Agile Under Contract              ...
A True Story    The Cast of Characters                         Act II        Harold (Senior Plant Product Engineer)       ...
Lessons LearnedLesson 1: Detailed “requirements” are actually  solution design.     Observation 1: Responsibility for suc...
Why Not Fixed Price?   Early Scope Definition (protects the vendor)   Excess Scope (protects the customer)              ...
Lessons LearnedLesson 2: Development is a learning process.     Observation 2: An experienced vendor can guarantee a     ...
Case Study:          Stamping DiesJapan                                         USMistakes very expensive                 ...
Lessons LearnedLesson 3: Start with a clear understanding of the  critical business results that must be delivered.     O...
The Purpose    of ContractsConventional Wisdom     Companies inevitably look out for their own interests     Contracts a...
Lessons LearnedLesson 4: Mitigate development risk with frequent  delivery/assessment.     Observation 4: It is technical...
Case Study: T5 AgreementHeathrow Terminal 5                              In Practice      2002 – 2008                    ...
Contracting Approach1. Treat    software development as a professional service.      Most organizations contract for serv...
Target Cost      Based on high level business goals.      Target cost includes all changes      Target is the joint res...
Partnership ContractsStructure      Umbrella or framework contract          Establishes critical business expectations  ...
The Agile ApproachWin-Win Contracts   Based on mutual commitment       To critical goals and constraints   Provide for ...
lsoftware development                                   e a n                       Thank You!             More Informatio...
Upcoming SlideShare
Loading in …5
×

Mary Poppendieck: Agile under contract

3,037 views

Published on

Published in: Business, Technology

Mary Poppendieck: Agile under contract

  1. 1. lsoftware development e a n Agile Under Contract Win–Win Contractsmary@poppendieck.com Mary Poppendieck www.poppendieck.com
  2. 2. A True Story The Cast of Characters Act II Harold (Senior Plant Product Engineer) Every month for 18 months Dave (Division Engineering Manager) I travel to XRI Harold often comes with me Me (Process Control Engineer) We review the work of the XRI (The Vendor) XRI development team Act I Act III Dave signs a time-and-materials System is delivered on time. contract against his boss’s Saves plant ½ its cost 1st month. advice to go fixed price. Harold is a hero. My job is to keep Dave out of Dave looks brilliant. l e a n trouble and make sure Harold I become plant IT manager. gets what he needs. XRI: profit + reputation.2 October 11 Copyright©2007 Poppendieck.LLC
  3. 3. Lessons LearnedLesson 1: Detailed “requirements” are actually solution design.  Observation 1: Responsibility for success lies with the solution designer.  Conclusion: Responsibility for success lies with the organization that specifies the detailed “requirements”.3 October 11 Copyright©2011 Poppendieck.LLC l e a n
  4. 4. Why Not Fixed Price? Early Scope Definition (protects the vendor) Excess Scope (protects the customer) Features and Functions Used in a Typical SystemOften or Always Sometimes Rarely Used: 20% 16% 19% NeverOften 45%13% l e a n Always 7% Rarely or Never Standish Group Study Reported at XP2002 by Jim Johnson, Chairman Used: 64%Cop October 11 4
  5. 5. Lessons LearnedLesson 2: Development is a learning process.  Observation 2: An experienced vendor can guarantee a solution that works; but it should not be expected to guarantee the exact details of that solution.  Conclusion: Solution design emerges during the course of a contract, not as its first stage.5 October 11 Copyright©2011 Poppendieck.LLC l e a n
  6. 6. Case Study: Stamping DiesJapan USMistakes very expensive Mistakes very expensiveNever-ending changes Never-ending changesFocus: Reduce Time Focus: Reduce WasteEarly Design – Early Cut Wait to Design – Wait to CutDesigner makes changes Slow change approval systemTarget cost (includes changes) Fixed cost (changes are profit!)10-20% cost for changes 30-50% cost for changes l e a nHalf the time, Half the cost Twice the time, twice the cost6 October 11 Copyright©2006 Poppendieck.LLC
  7. 7. Lessons LearnedLesson 3: Start with a clear understanding of the critical business results that must be delivered.  Observation 3: It is the job of the development team to determine how to deliver those results.  Conclusion: Both parties must be committed to work together to achieve the business goals.7 October 11 Copyright©2011 Poppendieck.LLC l e a n
  8. 8. The Purpose of ContractsConventional Wisdom  Companies inevitably look out for their own interests  Contracts are needed to limit opportunistic behaviorThe Agile Approach  Assume other party will act in good faith  Let the relationship limit opportunism  Use the contract to set up incentives  Align the best interests of each party l e a n with the best interests of the joint venture8 October 11 Copyright©2006 Poppendieck.LLC
  9. 9. Lessons LearnedLesson 4: Mitigate development risk with frequent delivery/assessment.  Observation 4: It is technically possible, less expensive, and very desirable to deliver software in small increments.  Conclusion 4: Regular delivery, deployment and evaluation of useful functionality is the best software development risk mitigation strategy.9 October 11 Copyright©2011 Poppendieck.LLC l e a n
  10. 10. Case Study: T5 AgreementHeathrow Terminal 5 In Practice  2002 – 2008  147 Sub-Projects  ₤4.2 billion  Integrated Team  Target CostBAA  Pool of incentive/risk money  Delay would threaten existence  2/3’s split among contractors  Studied other terminal projects  On Time  Assumed responsibility for risk  On BudgetT5 Agreement  Very Safe  Legally binding  Contractors agree to:  work in teams  mitigate risks l e a n  work to achieve the best possible results10 October 11 Copyright©2008 Poppendieck.LLC
  11. 11. Contracting Approach1. Treat software development as a professional service.  Most organizations contract for services  (legal, marketing, engineering, software maintenance).  Software development contracts should follow the patterns established for service contracts.2. Contract for measurable business (not technical) results  Specify levels of desirable/acceptable performance  Multiple levels: aspiration, acceptable, unacceptable  Plan for incremental delivery/deployment/assessment  Maximum of 10% of contract (or 1 month) per increment  Assess/adjust overall approach after each increment3. Make both parties mutually responsible for results  Risk should be born by the party most capable in the area l e a n  Use the contract to align incentives of both parties  Consider overall target cost with short fixed price sub-contracts11 October 11 Copyright©2011 Poppendieck.LLC
  12. 12. Target Cost  Based on high level business goals.  Target cost includes all changes  Target is the joint responsibility of both parties  Goals and target cost are clearly communicated to workers who are expected to work together and compromise to achieve the goals within the cost  Negotiations occur if target cost might be exceeded  Neither party benefitsWorkers at all levels have clear incentives to workcollaboratively, compromise, and meet the target.12 October 11 Copyright©2006 Poppendieck.LLC l e a n
  13. 13. Partnership ContractsStructure  Umbrella or framework contract  Establishes critical business expectations  Establishes target cost / schedule  Release work in stages  Keep stages small  Each stage is an iteration  Iteration scope depends on the most pressing business needs and the professional judgment of the development teamContract Form  Describes the services, not the deliverables  Establishes high level expectations and constraints  Establishes ownership and intellectual property rights l e a n  Provides the framework for negotiating iteration details  Provides for disagreements: escalation, mediation, and termination13 October 11 Copyright©2006 Poppendieck.LLC
  14. 14. The Agile ApproachWin-Win Contracts  Based on mutual commitment  To critical goals and constraints  Provide for risk sharing  Risk born by party most able to manage it  Establish correct incentives for all parties to work together for the good of the Joint Venture  Assume learning will occur over time  Expect a professional response to change and uncertaintyCop October 11 14 l e a n  Almost always yield faster, better, cheaper results
  15. 15. lsoftware development e a n Thank You! More Information: www.poppendieck.commary@poppendieck.com Mary Poppendieck www.poppendieck.com

×