En todos los proyectos de desarrollo de software existen tareas que pueden y deben ser automatizadas ya que se presentan repetidamente durante el desarrollo del software.
Para garantizar el éxito de la automatización se recomienda:
- Establecer unas convenciones de desarrollo.
- Colectivizar el código fuente.
- Escribir los scripts de automatización.
- Implantar un sistema de integración frecuente.
Existe un gran número de estrategias de ramificación y fusión, estas deben escogerse en función de las características del proyecto. A continuación las estrategias mas conocidas:
- Rama por versión.
- Rama por fase del proyecto.
- Rama por tarea.
- Rama por componente.
- Rama por tecnología.
Los Sistemas de Integración Frecuente facilitan integrar el trabajo individual de los desarrolladores con frecuencia, permitiendo realizar pruebas y verificaciones del sistema al completo de manera automatizada.
Para obtener el máximo beneficio de la integración frecuente se recomienda:
- Actualizar de manera frecuente el repositorio.
- Mantener un proceso de construcción rápido.
- Notificar convenientemente los resultados.
Fuente: Scrum Manager - En busca de la excelencia del código - Raúl Herranz