Scrum es una metodología ágil para el desarrollo de software que se basa en iteraciones cortas ("sprints") de uno a dos meses. Los equipos Scrum se auto-organizan para completar el trabajo más prioritario en cada sprint. Al final de cada sprint, el software funcionando se demuestra para obtener comentarios e iterar sobre él. Scrum define roles como el Dueño del Producto, Scrum Master y Equipo de Desarrollo, así como eventos como la Planificación del Sprint y la Retrospectiva del Sprint.