Increasing the knowledge sharing and communication between team members
Published May 09, 2019
What Is Pair programming?
An agile practice where two team members work together on one workstation (one keyboard and mouse) to implement a feature.
Why Do Pair programming?
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:
How to do Pair programming?
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.
Tips for remote pairing
Both pair and mob can be applicable to programming and also other kind of documents
Easy to apply if the team can use the same tools for documents and whiteboard
We activate our cameras all the time
A very simple way of a continuous open video conference with Video/Audio to be in the same room.
Video Conferencing based pairing and mobbing is possible with BlueJeans using breakout sessions feature as described in the instructions.
For documentation at the beginning it can be very useful to allow the team to go through a diverging phase, adding all ideas on an empty document, then you can move to a converging phase where the structure of the document is agreed and the work divided among the team
If the team needs to distribute the workload to create the documentation, for the converging phase you can also track who is in charge of which part, and this is also easier to keep track of the status
For a documentation mob, everyone can initially type in a document simultaneously, which is different to a programming mob that has only 1 person at the keyboard
Should rotate role for leading the sessions to increase the team engagement with less passive behaviours and reduce tiredness on a single person acting as lead
One facilitator shares the primary screen, showing the tool to allow everyone to understand where is the focus
If the tool you are using allows you to see where are the people in the room, it is very helpful to be focused on the same topic
Short rotation periods keep everyone concentrated and every opinion in the mix
It’s ok to have periods of silence where people are thinking and working. Someone doesn’t need to be talking throughout the session.
Links we love
Check out these great links which can help you dive a little deeper into running the Pair programming practice with your team, customers or stakeholders.