Cuando un equipo de desarrollo tiene que comenzar con un nuevo proyecto que genere un producto nuevo, un servicio nuevo o mejore algún producto o servicio existente, necesita definir qué componentes, fases y filosofía van a seguir.
Todas las profesiones tienen una serie de procesos habituales, tengan nombre conocido o no, que permiten que todo el equipo sepa qué tiene que realizar, en qué situación están y cuánto queda para terminar el proyecto.
En nuestro caso, como desarrolladores, analizaremos qué procesos nos ofrece Microsoft Team Foundation Server (TFS) y Visual Studio Team Services, su versión Cloud.
Procesos disponibles
De manera predeterminada, TFS y VSTS ofrecen tres plantillas de procesos: Agile, CMMI y Scrum. Si ninguno de los tres encaja con nuestra forma de trabajar siempre podremos heredar de uno y personalizarlo hasta que se adapte al equipo.
“Proceso” Agile
Dado que uno de los principios del Manifiesto Ágil es “Individuos e interacciones sobre Procesos y Herramientas” esta plantilla es la más flexible de todas ya que lo único que define son los componentes que utilizaremos para colaborar, trabajar sobre el producto, colaborar con el cliente y responder a cambios. No es una plantilla de proceso como tal ya que no define fases.
Proceso CMMI
Esta plantilla de proceso está dirigida a proyectos de equipos de desarrollo que persigan subir de nivel de madurez según CMMI™ (Capability Maturity Model Integration). Es un sistema más rígido y tradicional.
Proceso Scrum
Esta plantilla de proceso está dirigida a equipos que trabajen con el framework Scrum.
Seguimiento
El seguimiento del trabajo difiere según el tipo de plantilla de proceso que hayamos elegido. En la siguiente tabla os dejo un pequeño resumen de las principales diferencias:
Pruebas
De cara a la gestión de pruebas de calidad del software contamos con bastantes similitudes sin tener en cuenta qué proceso estemos siguiendo. Esto es así para poder independizar la labor de Testing del equipo de pruebas.
Los componentes comunes añadidos al proyecto son los siguientes:
Para gestionar la experiencia de Testing con Microsoft Test Manager y el portal web de TFS y VSTS contamos con la siguiente foto completa teniendo en cuenta el tipo de proceso elegido.
Resumen
Es importante tener clara y definida la metodología de trabajo de nuestro equipo para comenzar un proyecto en TFS o VSTS. Si las plantillas de proceso disponibles no se adaptan tendremos que personalizarlas para que se adapten a nuestras necesidades.
Si queremos empezar a trabajar con las prácticas Agile o el framework Scrum deberemos realizar un planteamiento previo de qué supone para que el proceso no suponga un impedimento para entregar valor al cliente con nuestros productos y servicios.
Como dijo William Edwards Deming (1900-1993), estadístico, consultor y profesor universitario de EE.UU. y famoso por el ciclo PDCA (Plan, Do, Check, Act) o ciclo de Deming “Debemos trabajar en nuestro proceso, no en el resultado del mismo”.