© Jeff Dalton 2019
Jeff DaltonGreat Big Agilehttps://doi.org/10.1007/978-1-4842-4206-3_42

42. Pair Programming

Jeff Dalton1 
(1)
Waterford, MI, USA
 

Description

Pair programming is a software development technique in which two developers work together to complete a coding task. They generally work at one workstation with one programmer being the “driver” and the other being the “navigator.” The navigator reviews code as the driver is entering it, performing a sort of real-time code review. While this typically appears increases the cost of programing, the reward of increased code quality far exceeds the investment in time and effort.

Another approach to pair programming has one developer coding, while the other unit tests. In other cases, a developer codes while another sits next to the developer, helping to interpret the requirements and ensuring a higher level of code quality. Regardless of how the pairing is done, the direct and immediate feedback loop of working together improves the quality of the resulting system at a lower cost.

../images/470826_1_En_42_Chapter/470826_1_En_42_Figa_HTML.jpg

Typical Roles

  1. 1.

    Software Developers

     
  2. 2.

    Agile Team

     

Desired Behaviors

  1. 1.

    Create a physical infrastructure that supports a pair programming working arrangement.

     
  2. 2.

    Decide the role each developer is going to play, and codify it in the team agreement.

     
  3. 3.

    Begin pairing and maintain the roles agreed to at the beginning of the pairing session.

     
  4. 4.

    If at any time during the pairing session, the pair becomes ineffective, revisit the objectives for the session and adjust responsibilities to ensure that the objectives are met.

     
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.216.58.118