Configuración de proyectos y equipos en Azure DevOps
En el panorama actual de desarrollo de software altamente dinámico, la organización eficiente de los proyectos y la colaboración en equipo son componentes esenciales de la estrategia DevOps. Los proyectos y equipos de Azure DevOps constituyen la base de una comunicación eficaz, una clara rendición de cuentas y una administración optimizada del flujo de trabajo. También contribuyen a mejorar la agilidad, acelerar la entrega y alinearse adecuadamente con los objetivos empresariales.
Planificación
Para elaborar el planteamiento óptimo de implementación de proyectos y equipos, primero debe analizar la estructura organizativa, su modelo operativo y las funciones que contribuyen al ciclo de vida del desarrollo. Este análisis debe tener en cuenta factores como las divisiones departamentales, las iniciativas empresariales actuales y cualquier proyecto existente que pueda introducir posibles dependencias entre proyectos.
A continuación, determine el alcance, los objetivos y las partes interesadas de cada nuevo proyecto. Basándose en el modelo organizativo y los requisitos del proyecto, identifique la forma óptima de estructurar los equipos del proyecto. Decida si los equipos serán de funciones cruzadas o se organizarán en función de criterios como características y componentes. Identificar las funciones y responsabilidades dentro de los equipos del proyecto. Las funciones más habituales son las de desarrollador, probador, propietario del producto, Scrum Master y gestor de proyectos. Defina claramente las expectativas y responsabilidades asociadas a cada función. Asegúrese de que existen suficientes técnicas y métodos de colaboración y comunicación dentro de los equipos y entre ellos.
Establecer directivas y directrices de gobernanza para la administración de proyectos, incluidas las directivas de control de versiones, las estrategias de ramificación, los procesos de revisión de código y la verificación de los requisitos de cumplimiento. Definir los procesos y metodologías ágiles que se utilizarán para la administración del proyecto. Tenga en cuenta que puede personalizar las herramientas Agile en Azure DevOps para apoyar su decisión.
Para agilizar el proceso de creación de nuevos proyectos, considere la posibilidad de definir plantillas o anteproyectos que definan la estructura, los procesos y los artefactos del proyecto. Estas plantillas pueden incluir configuraciones predefinidas de repositorios de código fuente, seguimiento de elementos de trabajo, canalizaciones y planes de pruebas.
Implementación
Una vez completados todos los preparativos, proceda a ejecutar el proyecto previsto. Al principio, hay que especificar la visibilidad del proyecto (público o privado), decidir entre Git y el Control de versiones de Team Foundation como mecanismo de control de versiones y elegir el proceso de los elementos de trabajo. Esa elección incluye las siguientes opciones:
- Agile: Se centra en el desarrollo iterativo y la entrega de valor al cliente a través de historias de usuario, backlogs, sprints y tableros visuales para el seguimiento del progreso.
- Básica: Ofrece un enfoque sencillo y flexible con elementos de trabajo genéricos y funcionalidades básicas de backlog y tablero, más adecuado para equipos o proyectos pequeños.
- CMMI (Integración del Modelo de madurez y de capacidad): Proporciona procesos y normas formalizados para administrar los elementos de trabajo, los requisitos y la garantía de calidad, lo que resulta más adecuado para las organizaciones que buscan la mejora y el cumplimiento de los procesos.
- Scrum: Emplea un marco iterativo y autoorganizado con backlogs de productos y sprints, reuniones diarias y artefactos para administrar el trabajo y ofrecer cambios incrementales.
- Scrum personalizado: Facilita la adaptación del proceso Scrum para satisfacer necesidades específicas a través de la flexibilidad en los tipos de elementos de trabajo, campos y estados de flujo de trabajo.
Una vez establecido el proyecto, puede proceder a crear su estructura de equipo. Por defecto, cada proyecto incluye un equipo cuyo nombre se deriva del nombre del proyecto, por lo que, en función del resultado de su planificación, es posible que tenga que modificarlo. También puede crear equipos adicionales. Cada equipo debe tener al menos un administrador. Cada administrador de equipo puede agregar miembros al equipo.
Al crear un equipo, también es posible generar automáticamente una ruta de área con el nombre correspondiente. Las rutas de área ayudan a organizar los elementos de trabajo dentro de un proyecto, facilitando una mejor visibilidad, elaboración de informes y control de acceso. Asociar equipos individuales a una ruta de área dedicada ayuda a delimitar claramente sus áreas de responsabilidad.
Una vez creados los equipos, puede configurar para cada uno de ellos una amplia gama de ajustes adicionales, incluidos los permisos personalizados. Por defecto, los miembros del equipo se agregan al grupo Colaboradores a nivel de proyecto. En este punto, también puede empezar a administrar los recursos del proyecto, como repositorios, tableros, canalizaciones y planes de prueba, y asignarlos a equipos específicos según sea necesario.
En aras de la mejora continua, debe revisar y perfeccionar periódicamente la configuración del proyecto y del equipo basándose en los comentarios de los miembros del equipo y del proyecto. Esto garantizará que su organización pueda administrar eficazmente el proceso de desarrollo de productos de software, independientemente de su complejidad.