Presentation is loading. Please wait.

Presentation is loading. Please wait.

 2009 Pearson Education, Inc. All rights reserved. 1 Pair Programming Most slides courtesy of Ms. Stephany Coffman-Wolph Some slides with minor modification.

Similar presentations


Presentation on theme: " 2009 Pearson Education, Inc. All rights reserved. 1 Pair Programming Most slides courtesy of Ms. Stephany Coffman-Wolph Some slides with minor modification."— Presentation transcript:

1  2009 Pearson Education, Inc. All rights reserved. 1 Pair Programming Most slides courtesy of Ms. Stephany Coffman-Wolph Some slides with minor modification by Dr. L. Lilien (even without explicit message). Slides added by L.Lilien are © 2006-2014 Leszek T. Lilien. Permision to use for non-commercial purposes slides added by L.Lilien’s will be gladly granted upon a written (e.g., emailed) request.

2  2009 Pearson Education, Inc. All rights reserved. Pair Programming Pair Programming = Two People, One Computer – A mechanism for real-time problem solving and real-time quality assurance – Helps developers to focus on the problem at hand Two people work together at one computer to create code – Not simply dividing up the project… … and working on them independently – The “pair” should be in the same room - Or in this day and age, communicating in real-time - E.g., via Video Chat, Shared Desktop, etc. 2

3  2009 Pearson Education, Inc. All rights reserved. Tasks for Driver and Navigator One person is a driver – Controls the keyboard and mouse - types the actual code – Leads the conversation and discussions through the process One person is a navigator – P ays attention to the driver – Monitors code and design – Makes relevant suggestions, – Corrects errors - Stop holes in logic, provide debugging assistance, etc. Communication between driver and navigator is the most important part of Pair Programming! – Without good communication, Pair Programming teams are ineffective Switch the roles throughout the entire project – Nobody should always be the driver or navigator 3

4  2009 Pearson Education, Inc. All rights reserved. Things to Avoid  Things you should avoid:  Interrupting every time your partner starts doing something in a way other than how you'd do it  Once you wrestle the keyboard away, deleting your partner's last edit immediately  Then doing what you were thinking of instead  If your partner objects, ignoring it and talking over it  Speaking non-stop, so your partner never has a moment of silence in which to speak, read code, or have a thought  For further (humorous) reading: http://www.c2.com/cgi/wiki?HowToPissOffYourPair 4

5  2009 Pearson Education, Inc. All rights reserved. But I Like Working By Myself… Things to think about: – Writing software is a team activity - Large software is extremely rarely written by one person alone – You can learn from your partner’s feedback - To benefit from both your successful and less successful activities, techniques and habits – Pair programming studies have shown: - Pair programmers have greater productivity than solo programmers (most studies show double productivity) - Pair programming significantly improves design correctness - Pair programmers’ code has overall higher correctness - Pair programming decreases overall time required 5

6  2009 Pearson Education, Inc. All rights reserved. ++READ LATER++ More Benefits of Pair Programming Studies have shown the following benefits: – Better brainstorms – Better and higher quality code – Increased morale – Increased teamwork – Enhanced learning – Increased courage – Better and more effective debugging – Increased knowledge – Better time management 6

7  2009 Pearson Education, Inc. All rights reserved. ++READ LATER++ Selecting your partner… Suggestions: – Find a partner that is in your lecture and/or your lab - Makes things a little easier… – Find a partner who’s schedule can work with your schedule - Start by comparing schedules, if both of you only have 1 hour that you can meet up - this really will not work – Make sure you and your partner can easily meet in the same location - Schedule your first meeting to be very soon after the assignment comes out – Exchange contact information (names, email, phone numbers, etc) when you agree to be partners – Start your assignment early! - Things go smoother if you are not starting at 2 am the day before it is due…(trust me on this one) 7

8  2009 Pearson Education, Inc. All rights reserved. ++READ LATER++ How to they “pick” partners in “real” world? Alternatives: – People paired by managers - Mixing novice programmers with experts - Mixing “new” programmers with “older” programmers – People select their partners themselves – People pick tasks they want to work on, and the pairs result from task selections - Pair forming is especially easy if a large project is broken into very small tasks - People pair with lots of partners throughout the project 8

9  2009 Pearson Education, Inc. All rights reserved. ++READ LATER++ Can I… … work on the project without my partner? – Track down an error in between meetings, read the specs, ask the instructor clarification questions, think through the logic/design - yes – You should wait to do major design/coding only when you and your partner can meet … not have a partner? – It is a requirement for CS1120. (Sorry) – If you feel you have a special case - see me … change partners between assignment 6 and 7? – Absolutely … come to you if I am having problems with my partner? – Absolutely 9

10  2009 Pearson Education, Inc. All rights reserved. Good Reading Material on Pair Programming “All I Really Need to Know about Pair Programming I Learned In Kindergarten” – http://collaboration.csc.ncsu.edu/laurie/Papers/Kindergarten.PDF “Software Reviews and Pair Programming” – http://agile.csc.ncsu.edu/SEMaterials/ReviewsandPairProgramm ing.pdf http://agile.csc.ncsu.edu/SEMaterials/ReviewsandPairProgramm ing.pdf Many more – you can google it up 10

11  2009 Pearson Education, Inc. All rights reserved. In-class Pair Programming Exercise Get problem from our class web page 11

12  2009 Pearson Education, Inc. All rights reserved. 12 The End


Download ppt " 2009 Pearson Education, Inc. All rights reserved. 1 Pair Programming Most slides courtesy of Ms. Stephany Coffman-Wolph Some slides with minor modification."

Similar presentations


Ads by Google