• Like


Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Introduction To Pair Programming

Uploaded on

Introduction To Pair Programming presentation by Naresh Jain and Bhavin Javia for Agile Chennai 2007 conference http://agileindia.org/agilechennai07/index.htm

Introduction To Pair Programming presentation by Naresh Jain and Bhavin Javia for Agile Chennai 2007 conference http://agileindia.org/agilechennai07/index.htm

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Introduction to Pair Programming 5th Oct 2007 Agile Chennai 2007 - Bhavin Javia & Naresh Jain ThoughtWorks, India 1
  • 2. What is Pair Programming ? 2
  • 3. Movie which shows 2 sniffers working together !! 3
  • 4. What did we see ? Two guys working on the same task Both have the same target Both have different expertise One executes the task The other watches, evaluates the situation, corrects him and validates success after execution Two guys working as a team 4
  • 5. What is Pair Programming ? Next line of code, syntax, API, Is he doing it right?, class under dev requirements, alternatives, next test case, Driver impact Pairing Station Navigator 5
  • 6. Isn't it a waste ? Two devs will do the work of one Junior guys will slow down seniors Less work will get done My cost will double Why would I put two people on a job that just one can do? 6
  • 7. 7
  • 8. 8
  • 9. 9
  • 10. 10
  • 11. How does it help ? Continuous Review Less Defects / Defects caught early Design Quality Problem Solving Economical “pair-pressure” ensures timely delivery Learning, Induction of new team members, saves effort on intra team documentation Less distractions / Higher productivity Satisfaction Team Building and Communication Project Management 11
  • 12. Cost of fixing defects Cost of defect Time “IBM reported spending about $250 million repairing and reinstalling fixes to 30,000 customer-reported problems. That is over $8,000 for each defect!” - “A Discipline for Software Engineering”, 1995, Humphrey, W.S. 12
  • 13. Cost and savings Pairing experiment at University of Utah 13
  • 14. Cost and savings 14
  • 15. Incorporating pair-programming into a software development process will help yield software products of better quality in less time with happier, more confident programmers 15
  • 16. Points of resistance Difficult to convince clients Everyone settles into their own “Comfort Zone” over time Strong code ownership People who don't care Inconsistent workstation setup Small work area 16
  • 17. Techniques of Pairing Ping-Pong Pairing Keyboard n Mice Pairing Selective Pairing Cross functional Pairing Distributed Pairing 17
  • 18. Tips n Tricks Pairing Stations Pair Rotation with Pair Hinging Promiscuous Pair Programming Pairing Round Pair Stairs Spikes 18
  • 19. Pairing Smells No pair rotation Only one person driving / Distracted Pair Selective pairing closer to a release Manager decides the pair Developers not involved in estimation and planning 19
  • 20. When its not necessary Tasks which involve mundane work Trivial bug fixes like typos One of the person is sick 20
  • 21. References The Costs and Benefits of Pair Programming - Laurie Williams & Alistair Cockburn Strengthening the Case for Pair-Programming - Laurie Williams, Robert R. Kessler, Ward Cunningham & Ron Jeffries On the Economic Feasibility of Pair Programming - Hakan Erdogmus & Laurie Williams 21