Thursday 13 October 2016

The "Bus Factor"

I had not heard this before but a bus factor is the risk that if one of the developers in the team were to be hypothetically hit by a bus, then this reflects on how it would affect a project.

One of the obvious factors would be an immediate deficit in knowledge and experience. But it also highlights the problem of a single point of failure, where only one person is responsible for particular areas of the project.

I thought about this and it seems to me that there should be more paired programming, so that junior members are exposed to the processes of the more experienced developers. Over time and with experienced supervision, in a kind of mentor relationship, both parties will exchange important practical knowledge and experience until juniors could perform similar work as more experienced developers.

The idea is to have as many people as possible with practical knowledge about the project, so that anyone can jump in and take up the slack when the 'person hit by the bus' is not available.