Slideshow transcript
Slide 1: Introduction to Pair Programming 5th Oct 2007 Agile Chennai 2007 - Bhavin Javia & Naresh Jain ThoughtWorks, India 1
Slide 2: What is Pair Programming ? 2
Slide 3: Movie which shows 2 sniffers working together !! 3
Slide 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
Slide 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
Slide 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
Slide 7: 7
Slide 8: 8
Slide 9: 9
Slide 10: 10
Slide 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
Slide 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
Slide 13: Cost and savings Pairing experiment at University of Utah 13
Slide 14: Cost and savings 14
Slide 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
Slide 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
Slide 17: Techniques of Pairing Ping-Pong Pairing Keyboard n Mice Pairing Selective Pairing Cross functional Pairing Distributed Pairing 17
Slide 18: Tips n Tricks Pairing Stations Pair Rotation with Pair Hinging Promiscuous Pair Programming Pairing Round Pair Stairs Spikes 18
Slide 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
Slide 20: When its not necessary Tasks which involve mundane work Trivial bug fixes like typos One of the person is sick 20
Slide 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




Add a comment on Slide 1
If you have a SlideShare account, login to comment; else you can comment as a guest- Favorites & Groups
Showing 1-50 of 0 (more)