Scrum es una metodología ágil para el desarrollo de proyectos que surgió en la década de 1980. En Scrum, los proyectos se dividen en iteraciones cortas llamadas "sprints" donde equipos multidisciplinarios trabajan para crear incrementos del producto. Los roles clave en Scrum incluyen al Product Owner, Scrum Master y el equipo Scrum.
1. Scrum – Proceso Ágil de
desarrollo de Software
Ingenieria de Software.
2. Scrum. - El Origen. (1/2)
Scrum es una metodología ágil de desarrollo de
proyectos que toma su nombre y principios de los estudios
realizados sobre nuevas prácticas de producción por
Hirotaka Takeuchi e Ikujijo Nonaka a mediados de los 80.
3. Scrum. - El Origen. (2/2)
Surgió como modelo para el desarrollo de productos
tecnológicos, también se emplea en entornos que
trabajan con requisitos inestables y que requieren
rapidez y flexibilidad; situaciones frecuentes en el
desarrollo de determinados sistemas de software.
4. Scrum
Scrum es una
metodología de desarrollo
muy simple, que requiere
trabajo duro porque no se
basa en el seguimiento de
un plan, sino en la
adaptación continua a las
circunstancias de la
evolución del proyecto.
5. Scrum Caracteristicas.(1/2)
➔ Es un modo de desarrollo de carácter adaptable más
que predictivo.
➔ Orientado a las personas más que a los procesos.
➔ Scrum permite la creación de equipos
autoorganizados impulsando la co-localización de
todos los miembros del equipo.
6. Scrum Caracteristicas.(2/2)
➔ Scrum adopta una aproximación pragmática, aceptando
que el problema no puede ser completamente
entendido o definido.
➔ Durante un proyecto los clientes pueden cambiar de
idea sobre lo que quieren y necesitan (a menudo
llamado requirements churn).
7. Scrum -Los Roles.(1/)
En Scrum se definen varios roles, estos están divididos en
dos grupos: cerdos y gallinas.
8. Scrum
Un cerdo y una gallina se encuentran en la calle. La gallina mira al
cerdo y dice: “Hey, ¿por qué no abrimos un restaurante?” El cerdo mira a
la gallina y le dice: “Buena idea, ¿cómo se llamaría el restaurante?” La
gallina piensa un poco y contesta: “¿Por qué no lo llamamos “Huevos
con jamón?” “Lo siento pero no”, dice el cerdo, “Tú sólo estarías
involucrada mientras que yo estaría comprometido”.
9. Scrum
De esta forma, los ‘cerdos’ están comprometidos a
través de sus aportes ‘directos’ en la construcción de
software, mientras que las ‘gallinas’ están involucradas a
través de sus aportes ‘indirectos’.
10. Scrum Product Owner
El Product Owner representa la voz del cliente. Se
asegura de que el equipo Scrum trabaja de forma
adecuada desde la perspectiva del negocio. El Product
Owner escribe historias de usuario, las prioriza, y las
coloca en el Product Backlog.
11. Scrum Product Owner > El Product Backlog
Es la lista de historias de usuario que se van a incluir en el
producto. No es necesario que todas las historias estén
escritas antes de comenzar un desarrollo, basta con
escribir al principio las más importantes, a tener algo con lo
que empezar. El product backlog es una lista viva según
avanza el proyecto se van incluyendo nuevas historia.
12. Scrum ScrumMaster (o Facilitador)
El Scrum es facilitado por un ScrumMaster, cuyo trabajo
primario es eliminar los obstáculos que impiden que el
equipo alcance el objetivo del sprint. El ScrumMaster no es
el líder del equipo (porque ellos se auto-organizan). El
ScrumMaster se asegura de que el proceso Scrum se
utiliza como es debido. El ScrumMaster es el que hace que
las reglas se cumplan.
13. Scrum- scrum team (Equipo)
El equipo tiene la responsabilidad de entregar el producto. Un
pequeño equipo de 5 a 9 personas con las habilidades
transversales necesarias para realizar el trabajo (diseñador,
desarrollador, etc).
Cada integrante trabaja en conjunto para completar las tareas
que fueron comprometidas en conjunto para ser desarrolladas
durante el Sprint.
.
14. Scrum - Roles gallina (1/2)
Un aspecto importante de una aproximación ágil es la práctica
de involucrar en el proceso a los usuarios, expertos del negocio
y otros interesados (stakeholders).
Usuarios: es el destinatario final del producto. Stakeholders
(Clientes, Proveedores, Inversores) Se refiere a la gente que
hace posible el proyecto y para quienes el proyecto producirá el
beneficio acordado que lo justifica.
15. Scrum - Roles gallina 2/2
Managers
Es la gente que establece el ambiente para el desarrollo
del producto.
16. Scrum - Desarrollo incremental
Durante el proyecto, las personas implicadas no
trabajan con diseños o abstracciones.
El desarrollo incremental implica que al final de cada
iteración se dispone de una parte del producto
operativa que se puede inspeccionar y evaluar.
17. Scrum -Desarrollo evolutivo
En Scrum se toma a la inestabilidad como una premisa, y se
adoptan técnicas de trabajo para permitir esa evolución sin
degradar la calidad de la arquitectura que se irá generando
durante el desarrollo.
El desarrollo Scrum va generando el diseño y la arquitectura
final de forma evolutiva durante todo el proyecto. No los
considera como productos que deban realizarse en la primera
“fase” del proyecto
18. Scrum-Auto-organización
Durante el desarrollo de un proyecto son muchos los
factores impredecibles que surgen en todas las áreas y
niveles.
En Scrum los equipos son auto-organizados (no auto-
dirigidos), con margen de decisión suficiente para tomar
las decisiones que consideren
oportunas.
19. Scrum-Visión general del proceso
Scrum denomina “sprint” a cada iteración de desarrollo
y recomienda realizarlas con duraciones de 30 días.
El sprint es por tanto el núcleo central que
proporciona la base de desarrollo iterativo e
incremental.
20. Scrum-Las reuniones
● Planificación de sprint: Jornada de trabajo previa al
inicio de cada sprint en la que se determina cuál va a
ser el trabajo y los objetivos que se deben cumplir en
esa iteración.
● Reunión diaria: Breve revisión del equipo del trabajo
realizado hasta la fecha y la previsión para el día siguiente.
● Revisión de sprint: Análisis y revisión del incremento
generado.
21. Scrum-Los elementos
● Pila del producto: lista de requisitos de usuario
que se origina con la visión inicial del producto y va
creciendo y evolucionando durante el desarrollo.
● Pila del sprint: Lista de los trabajos que debe realizar
el equipo durante el sprint para generar el
incremento previsto.
● Incremento: Resultado de cada sprint
22. Scrum-valores
La carrocería sin motor, sin los valores que dan sentido al
desarrollo ágil, no funciona.
● Delegación de atribuciones (empowerment) al equipo para
que pueda auto-organizarse y tomar las decisiones sobre
el desarrollo.
● Respeto entre las personas. Los miembros del equipo
deben confiar entre ellos y respetar sus conocimientos y
capacidades.
● Trabajo centrado en el desarrollo de lo comprometido
Información, transparencia y visibilidad del desarrollo del
proyecto