Pair Programming
A driver-observer pair based software development method. In this agile method, the driver is responsible for writing the code while the observer is responsible for reviewing it. More often than not, these roles are interchangeable.