Visual Studio Team Services
En nuestra organización quisimos integrar metodologías ágiles para gestionar nuestros proyectos, somos una corporación especializada en tecnologías Microsoft y, como no podía ser de otra manera, se decidió utilizar el Visual Studio Team Services.
Se pueden diferenciar varios pilares fundamentales en Visual Studio Team Services, que bien usados permiten un control e integración total del ciclo de vida de las aplicaciones.
Código
Se puede crear el repositorio del código fuente utilizando Team Foundation Version Control (TFVC) o GitHub (Git), en nuestro caso estamos utilizando TFVC.
Ventajas de utilizar esta herramienta
- Se puede integrar con los IDE de desarrollo más populares. Nosotros usamos el de Visual Studio.
- Nos permite acceder con nuestro IDE de desarrollo desde cualquier sitio donde tengamos una conexión a internet.
- Podemos ver y comparar fácilmente los cambios realizados en el código por los miembros del equipo desde internet.
- Se integra formidablemente con las tareas de trabajo que veremos a continuación, esto nos permite ver de forma organizada y agrupada los cambios que afecta a una tarea.
- El IDE de desarrollo de Visual Studio nos muestra sobre los métodos información muy útil como el número de referencias a este, la última persona que lo modificó, los elementos de trabajo relacionados, etc.
Trabajo
Se pueden realizar proyectos utilizando metodologías como Agil, CMMI o Scrum y nos permite realizar un seguimiento de las diferentes fases del proyecto y de sus tareas.
Los principales elementos que podemos encontrar son:
- Las Iteraciones o Sprints dividirán nuestro proyecto de tal forma que permitan la entrega de paquetes con funcionalidad completa.
- Los requerimientos o historias se relacionarán con los Sprints, cada uno estará asignado a un miembro del equipo, el cuál será el encargado de que se cumpla el requerimiento.
- Las tareas necesarias para cumplir el requerimiento, estas tienen una estimación inicial y sobre ella se imputará el tiempo real y restante para finalizar la tarea.
- Los Bugs se relacionarán con los requerimientos. Inicialmente estarán asignados a la persona responsable del requerimiento.
Hay una sección a parte para la fase de pruebas, pero en este artículo la englobamos en el pilar de trabajo porque está directamente relacionado con los requerimientos y los Bugs. En este apartado estará ubicado el plan de pruebas del proyecto, de tal forma que se agruparán los casos de prueba por cada requerimiento. Para ejecutar el plan de pruebas nos será muy útil la interface que ofrece Team Services.
Todos los elementos están relacionados para que podamos tener una trazabilidad sobre el trabajo realizado. Podremos cerrar requerimientos de una forma sencilla o asociar los Bugs a la persona idónea.
Integración continua
Con la integración continua de Visual Studio Team Services evitaremos el dilema de “En mi equipo funciona…”.
La integración continua permite compilar la solución cada vez que se protege el código, de esta forma detectamos errores en la integración desde el primer momento.
Permite vincular las compilaciones con los elementos de trabajo, de modo que si hubiese un error se genere un Bug asociado a la persona que subió el código erróneo.
Es posible crear procesos mediante una serie de plantillas para automatizar las pruebas de las aplicaciones en la nube o en local e incluso para implementar las soluciones en entornos locales, en la nube o en híbridos.
Podemos configurar el entorno de integración continua para que se ejecute el proyecto de pruebas sobre nuestra aplicación.
Todas estas opciones dan como resultado una serie de beneficios importantes:
- Reduce el tiempo dedicado a la integración y minimiza el impacto de Bugs.
- Validar que el código funciona es mucho más rápido.
- Reduce el riesgo del proyecto ya que conocer al avance real es mucho más ágil.
- Se invierte menos tiempo en crear y desplegar versiones.
- Mayor confianza entre el cliente y el equipo
Artículo escrito por Luis Miguel Rodríguez González programador en MVP Cluster