Pair Programming: Benefits of the pair switch mid story
On my current project we’ve been having some discussions around the frequency with which we rotate pairs, the feeling being that we probably keep the same pairs for a bit too long.
We discussed using techniques such as promiscuous pairing, which takes the idea of pair rotation to an extreme, but have settled on making our rotations more or less daily.
One interesting thing I noticed from some recent pair switching was the immediate benefit we can realise from the pair rotation.
When we switch pairs mid story the story champion (person who owns the story from start to end) has to get their new pair up to speed as quickly as possible.
My colleague Liz Douglass has a very precise yet effective way of doing this. From observation:
Describe the story or task from a high level detailing what it is we are trying to do and how it fits into the system as a whole
Describe what has been done so far, why that approach was taken and what is left to do.
Describe any problems encountered, previous solutions tried and new ideas to try to solve the problem.
I have found that this works really well and allows me to contribute to the task at hand more quickly than if I had to ask questions to work out what is going on.
The story champion has the benefit of having been involved in the story kick off so it is certainly very useful for them to be able to take this information and then provide it with context to their future pair.
In addition I have noticed that explaining what you are doing on a task to a new pair often leads to you noticing flaws in your logic, therefore leading you to solve the problem.
Even if this doesn’t happen, having a new pair of eyes and a new perspective on a problem can often lead to it being solved more quickly.