Pair programming

Increasing the knowledge sharing and communication between team members

foundation-culture-and-collaboration loop position

What is it?

  • An agile practice where two team members work together on one workstation (one keyboard and mouse) to implement a feature.

Why use it?

  • Enable knowledge sharing between team members.
  • Increased quality of work as it is reviewed and improved simultaneously.
  • Building of trust between team members.

It is not for:

  • Teaching domain
  • Mentorship
  • Showing code
  • Getting confirmation
  • Finding bugs

How to do it?

  • The team member behind the keyboard and mouse is the driver. The driver is focused on performing the actual work.
  • The other team member is the navigator or observer. The navigator is focused on the strategic outcome of the work being performed.
  • The navigator reviews the work being performed by the driver as it is done.
  • While reviewing, the navigator keeps in mind the end goal and ensures the current task is working towards it.
  • Switch the roles often, for example every 15 minutes, for the team members to experience the different aspects of the work.

Further Information

Improve this practice
View all practices