Tal y como comentaba en la última entrada en Team Build 2008 surgía el concepto de Build Agent. Un Build Agent es una máquina destinada a compilar código fuente y pasar prueba pero sin ser un servidor de compilación, simplemente aporta la infraestructura para realizar la compilación, el resto de características las sigue teniendo el servidor de compilación. De esta forma podemos tener varias ejecuciones en paralelo y así aliviar la carga de Team Build si el numero de compilaciones crece.
Unos de los requisitos para poder utilizar una máquina como Build Agent es que es debe tener instalado Visual Studio Team System for Software Developers si queremos compilar, pasar pruebas unitarias y ejecutar el análisis de código. En el caso de que queramos ejecutar pruebas más complejas como Web Tests, sería necesario tener instalada la versión de Software Testers en la máquina que actúa como Build Agent.
Desde Team Explorer se nos permite tanto crear como editar y eliminar Build Agents. Simplemente tenemos que pulsar con el botón derecho sobre la carpeta Builds que aparece bajo un Team Project y seleccionar la opción "Manage Build Agents".
Esta opción nos abre una ventana donde podemos, como decía antes, Crear, Editar y Eliminar Build Agents. Si damos a crear, nos aparece una pantalla donde podemos introducir los datos del nuevo Build Agent y vamos a ir viendo cada uno de ellos, aunque el proceso no es complejo.
En primer lugar debemos dar un nombre al Build Agent y proveer de una descripción. Una buena practica sería dar un nombre al Build Agent que identifique la máquina que se encargará de realizar la compilación. Por otro lado tenemos que introducir también el nombre de la máquina y el puerto por el que Team Build se comunicará con dicha máquina. Inicialmente este puerto es el 9191, puerto que utiliza por defecto WCF para la comunicación, aunque se puede cambiar. También debemos tener en cuenta que al no ser un puerto muy común debemos habilitarlo en el firewall para permitir la comunicación. Como última opción relacionada con la comunicación entre el Build Agent y el Team Build tenemos la posibilidad de establecer que la comunicación se haga por "https".
Otro de los parámetros que podemos definir es el Working Directory, que es el directorio que el agente utilizará para descargar la ultima versión y realizar todos el trabajo con ficheros necesario durante la compilación. Por defecto este campo posee el valor "$(Temp)\$(BuildDefinitionPath)" que creará un directorio con el nombre resultante de la concatenación de las dos variables de compilación Temp y BuildDefinitionPath. En ocasiones, se utiliza la variable BuildDefinitionId para dar nombres más cortos a los directorios de trabajo en lugar de BuildDefinitionPath.
Por ultimo tenemos la opción de elegir el estado del agente, si queremos que este habilitado o no. A continuación os dejo una imagen para ilustrar todos estos parámetros que acabo de describir.

No creo que sea necesario comentar las opciones de Editar y Eliminar, ya que su propio nombre nos dan toda la información, aunque solo diré que el uso más habitual de la opción Editar es el cambio de estado del Build Agent para informar de si se puede usar o no para realizar una compilación. En el caso de que el Build este deshabilitado la petición de la compilación se encolará y se ejecutará cuando el Build Agent este disponible.