Metodologías SCRUM y XP
Procesos de desarrollo ágil de software
Roles
División de responsabilidades entre el cliente y los desarrolladores
Tres de roles: Scrum master, el dueño del producto y el equipo de desarrollo.
Incremental (por iteraciones)
Ciclos de desarrollo entre una y dos semanas.
Ciclos de desarrollo (sprints) entre 2 semanas y un mes
Trabajo colaborativo
Visión compartida sobre el sistema. Programación en pareja. El cliente forma parte del equipo de desarrollo.
Reuniones cortas diarias para discutir avances y obstáculos. Reunión al finalizar la iteración para discutir el proceso realizado.
Gestión de cambios
No se permiten cambios en los sprints
Susceptible a cambios dentro de una iteración
Prioridad de desarrollo de funcionalidades
Orden de prioridad establecido por el usuario
El cliente prioriza las funcionalidades pero el equipo de desarrollo determina la secuencia en la que serán desarrolladas
A nivel de diseño
Elaboración de tarjetas CRC
Por lo general no se genera documentación de diseño
Buenas prácticas de desarrollo
Desarrollo orientado a pruebas, programación en pares, diseño simple, refactorización, entregas pequeñas de código funcional, etc.
Se elige la mejor forma de desarrollar según la experiencia del equipo de desarrollo. Entregas frecuentes de código funcional.