Pues lo mas practico o al menos yo he trabajado asi es dividir el sistema o la aplicacion en modulos y que cada desarrollador haga un modulo, y para los modulos que vayan a ser globales o que todos dependan de ellos se discuten entre todos hasta llegar a la solucion mas optima.
SALUDOS