In this process, unit tests are written first, by the software engineers (often with pair programming in the extreme programming methodology)