Entregar valor y mejorar la calidad de vida de los equipos de trabajo, ese es el objetivo de la dupla Visual Studio + Team Foundation Server, una dupla ampliada y mejorada con Team Foundation Service On the Cloud, que además de mejorar el control del ciclo de vida del desarrollo de las aplicaciones, reducir costes y eliminar problemas a partir de buenas prácticas y de herramientas integradas, permite disponer de todas las ventajas de la última versión de Team Foundation Server 2012 con dos ventajas añadidas: pago por uso y entornos dinámicos.
Visual Studio es conocido por ser uno de los mejores entornos de desarrollo de aplicaciones en el mercado. Actualmente, utilizando Visual Studio, es posible crear aplicaciones para entornos Web, aplicaciones para dispositivos móviles y en diferentes tecnologías. Sin embargo, Visual Studio no es solo una herramienta de desarrollo, es una suite de productos que permiten que equipos de trabajo puedan crear aplicaciones de una forma coherente y eficiente.
Team Foundation Server es parte de Visual Studio y su objetivo principal es servir como herramienta de colaboración en proyectos de desarrollo. Team Foundation Server provee capacidades como gestión de código fuente, gestión de proyectos, automatización de compilaciones y gestión de defectos. Detrás de todas estas capacidades hay un objetivo claro: mejorar el control del ciclo de vida del desarrollo de aplicaciones, reducir los costes y eliminar los problemas a partir de buenas prácticas conocidas y de herramientas integradas.
El principal objetivo de la dupla Visual Studio + Team Foundation Server está en la entrega de valor y en la mejora de la calidad de los equipos de trabajo.
Ahora pasemos a otra de las grandes apuestas de Microsoft en los últimos años: the cloud. No voy a entrar en detalle sobre el estado y las ventajas de trabajar on the cloud, pero sí remarcaré dos que creo que son importantes:
- El concepto de pago por uso, nos asegura que SOLO pagaremos los recursos que utilizaremos.
- La capacidad de tener entornos dinámicos nos asegura que nuestros entornos pueden requerir en determinados momentos una gran capacidad de procesamiento.
Y llegamos a Team Foundation Service On The Cloud, que es la versión Team Foundation Server que está montada sobre los servicios de AZURE. Esta versión está desplegada sobre Team Foundation Server 2012, con lo que además podremos incorporar todas las ventajas de la última versión de TFS.
Si pensamos en escenarios de la nube, el primero que pienso en comentar es cómo pasamos de trabajar en un entorno distribuido de dos personas en Madrid a 20 personas distribuidas entre Madrid, Málaga, Londres, Chicago y Seattle en tan solo una hora. Inicialmente éramos dos personas, ya que durante la primera iteración realizamos un par de pruebas de concepto, y validaciones de arquitectura. Luego cuando se incorporó el resto del equipo solo tuve que invertir una hora más, que no me requirió tareas de dimensionamiento o de despliegue, etc. Solo tuve que agregar las 18 Microsoft Accounts restantes (antes conocidas como Live Ids) al Team Project y listo. Después organizamos una reunión de 30 minutos vía LYNC 2013 para definir las pautas generales de trabajo y ya teníamos un equipo trabajando con un esfuerzo mínimo.
Lo bueno de este punto, es que al trabajar con la versión de Team Foundation Service (TFS) 2012, automáticamente teníamos acceso a los nuevos tableros de trabajo de SCRUM. Después de terminar de definir nuestro Product Backlog, la puesta en marcha de la iteración de BUILD ha sido casi automática.
Todo esto sin perder calidad, ya que inicialmente teníamos definidas una serie de compilaciones automáticas que nos ayudaban a identificar problemas de forma automática, y a no perder calidad durante el proceso de desarrollo. Durante este mes, se liberó también como una nueva característica la capacidad de realizar despliegues automáticos desde TFS On The Cloud a instancias de WebSites de Azure. Luego de un par de días de pruebas, sumamos como valor añadido más el modelo de trabajo de despliegue continuo. En este modelo, si nuestro código compila correctamente y además pasa las pruebas unitarias que hemos definido, el proceso de compilación de TFS On The Cloud se encarga de distribuir el paquete de la aplicación a AZURE. De esta forma tenemos las versiones de TEST y PRODUCCIÓN siempre actualizadas en los WebSites de AZURE, sin tener que realizar despliegues manuales a AZURE.
Actualmente estamos evaluando la posibilidad de poder trabajar con GIT-TF integrados en este entorno. Un par de personas del equipo, conocemos GIT y creemos que en determinados escenarios es una herramienta muy potente para crear escenarios aislados de trabajo, y para compartir código entre diferentes personas. En el modelo que estamos definiendo, cuando uno de estos escenarios, tiene la madurez suficiente para ser parte de una Release, pues lo subimos a TFS On The Cloud y todo el proceso vuelve a ser transparente. A partir de este momento, además de las ventajas que nos da GIT como gestor de fichero, también tenemos gestión de elementos de trabajo, compilaciones automáticas, despliegues automáticos a AZURE, etc.; gracias a TFS On The Cloud.
Y todo esto: GRATIS, sí, GRATIS. Actualmente el servicio está en fase BETA y la inscripción y prueba de los mismos es gratis. Solo es necesario entrar a http://www.tfspreview.com, contar con una Microsoft Account y comenzar a crear un entorno de trabajo. En menos de cinco minutos tendremos disponible un completo entorno de ALM completamente gratis para probar las ventajas y posibilidades de Visual Studio y Team Foundation Server.
Hoy ya tenemos gracias a las TFS 2012 Power Tools una integración total con sistemas de mensajería como LYNC o MSN Messenger, con lo que el trabajo distribuido se realiza de forma muy natural. En un futuro tendremos además integración con Office 365 para la gestión documental y muchas novedades más.
Es por eso que mi recomendación final es probar TFS On The Cloud. No importa si en tu equipo hay dos personas o 50 personas, TFS On The Cloud es la evolución natural de un producto On-Premise que se ha llevado al Cloud de una forma excelente. Tampoco es determinante que el equipo sea distribuido geográficamente, un equipo trabajando codo a codo también debe aprovechar todas estas ventajas. Después de casi un año de uso, y de bastantes meses de uso intensivo, TFS On The Cloud es, sin duda, un must have que aporta valor de negocio a las organizaciones.
