METODOLOGIA SCRUM
Esta metodología se basa en una filosofía del desarrollo ágil, creada por Hirotaka Takeuchi e Ikujiro Nonaka ahí por el año 1986 , para desarrollo de software.
SCRUM es una metodología ágil de desarrollo de software, una manera de afrontar los proyectos de creación de aplicaciones de forma iterativa, rápida y eficaz.
SCRUM se concentra en como los miembros del equipo deberían funcionar a fin de producir un sistema flexible en un entorno que cambia constantemente. Permite a los equipos de desarrollo adaptarse dentro de un ambiente complejo utilizando procesos imprecisos. El origen de la palabra SCRUM procede del rugby: acto de preparar el avance del equipo en unidad pasando la pelota a uno y otro jugador. Igual que el juego, SCRUM es adaptativo, ágil, auto-organizante y con pocos tiempos muertos.
CARACTERISTICAS:
- Empírico
- Iterativo
- Flexible
- Equipos auto-organizativos
Los requerimientos se capturan como ítems en un listado, SCRUM considera que el proceso del desarrollo de software involucra muchas variables de entorno y técnicas tales como: requerimientos, tiempo, recursos, costo, competencia, calidad y tecnología. Es probable que todas ellas cambien durante el proceso.
El entregable se determina durante el proyecto basándose en el entorno.
SCRUM utiliza técnicas de orientación a objetos para la construcción de los entregables.
Los proyectos SCRUM pueden estimarse empleando el método de function points. Sin embargo, la estimación sirve solo para el comienzo, debido a que el tiempo y el costo son determinados dinámicamente en respuesta a factores del entorno.
Luego el entregable irá evolucionando durante el proyecto en base al entorno . SCRUM confirma que la definición de los procesos de desarrollo no están completamente definidos y utiliza mecanismos de control para mejorar la flexibilidad.
PROCESO SCRUM
El proceso de SCRUM se divide en 3 grandes etapas:
SCRUM trata la fase de desarrollo como una caja negra que requiere controles externos . Los controles se ponen en cada iteración de la fase de desarrollo para evitar el caos y a su vez maximizar la flexibilidad.
El proyecto está abierto al entorno hasta la fase de cierre . El entregable puede ser cambiado en cualquier momento durante las fases de inicio y desarrollo del proyecto.
SCRUM aunque puede ser usado para otro tipo de proyectos y tiene demostrada efectividad en otras áreas, aunque generalmente es funcional solo para desarrollos de software porque para eso fue diseñado. La idea es desarrollar aplicaciones mucho más rápido y eficazmente.
Esta metodología está basada entre muchas bajo estas premisas:
a) Los individuos por encima de los procesos y herramientas
b) En entregar soluciones por encima de reportes de seguimiento.
c) A dar respuesta a los cambios en lugar de ceñirse a seguir un plan
VENTAJAS
· Al realizar reuniones periódicas y focalizarse en la remoción de los impedimentos recientes, evita los estancamientos en el proyecto.
· Las pruebas y la documentación se realizan en paralelo con el desarrollo y se obtiene software “tangible” que puede incrementar su funcionalidad en cada sprint.
DESVENTAJAS
· SCRUM requiere que la gerencia delegue autoridad para la toma de decisiones al equipo SCRUM, incluso permitiéndoles fallar, si es necesario.
· SCRUM es una metodología diferente: las personas suelen ser resistentes al cambio y algunas no se sienten cómodas con la responsabilidad que genera formar parte del equipo SCRUM.
Las Empresas que usan esta tecnología.
Las Empresas que usan esta tecnología.