Scrum Curso Platzi
Scrum Curso Platzi
Scrum Curso Platzi
• ¿Qué es agilismo?
• ¿Qué son metodologías ágiles?
• ¿Qué es SCRUM? ¿Por qué utilizarlo?
Historia e introducción
agilidad.
(Del lat. agilĭtas, -ātis).
1. f. Cualidad de ágil.
2. f. Rel. Una de las cuatro dotes de los
cuerpos gloriosos, que consiste en la
facultad de trasladarse de un lugar a otro
instantáneamente, por grande que sea la
distancia.
Es entonces la cualidad asociada a aquello
“Ligero, pronto, expedito“.
En la reunión se acuñó el término “Métodos Ágiles” para
definir a los métodos que estaban surgiendo como
alternativa a las metodologías formales (CMMI, SPICE) a
las que consideraban excesivamente “pesadas” y rígidas
por su carácter normativo y fuerte dependencia de
planificaciones detalladas previas al desarrollo.
http://agilemanifesto.org/iso/es/manifesto.html
El 17 de febrero de 2001 diecisiete críticos de los
modelos de mejora del desarrollo de software basados
en procesos, convocados por Kent Beck, quien había
publicado un par de años antes Extreme Programming
Explained, se reunieron en Snowbird, Utah para tratar
sobre técnicas y procesos para desarrollar software.
• …un Ciclo de Vida Iterativo e Incremental
• Entregar prototipos, pequeños evolutivos que
los usuarios puedan tocar.
• Con funcionalidad añadida en cada iteración.
• Pero también Refinando y Refactorizando en
base al feedback de los usuarios.
• El ciclo de vida iterativo e incremental es una
de las bases de un proyecto ágil.
• Iteraciones cortas en tiempo, de pocas
semanas
• SCRUM. Es un marco de trabajo que nos
proporciona una serie de herramientas y
roles para, de una forma iterativa, poder ver
el progreso y los resultados de un proyecto
de forma temprana.
• KANBAN. Se basa en una idea muy simple.
Ésta es que el trabajo en curso (Work In
Progress, WIP) debería limitarse y sólo
deberíamos empezar con algo nuevo cuando
un bloque de trabajo anterior haya sido
entregado o ha pasado a otra función
posterior de la cadena.
• eXtreme Programming (XP). Es una
metodología ágil centrada en potenciar las
relaciones interpersonales como clave para el
éxito en desarrollo de software, promoviendo
el trabajo en equipo, preocupándose por el
aprendizaje de los desarrolladores y
propiciando un buen clima de trabajo.
• SCRUM es uno de los métodos ágiles más
populares.
• Es un framework para la gestión de
proyectos, adaptable, iterativo, rápido,
flexible y eficaz.
• Diseñado para ofrecer un valor
considerable en forma rápida a lo largo
del proyecto.
• Garantiza transparencia en la comunicación y
crea un ambiente de responsabilidad colectiva y
de progreso continuo.
• El framework de Scrum, tal como se define en la
Guía SBOK™, está estructurado de tal manera
que es compatible con el desarrollo de productos
y servicios en todo tipo de industrias y en
cualquier tipo de proyecto, independientemente
de su complejidad.
• El framework fue introducido a finales de
la década de 1980.
• Fue desarrollado por Hirotaka Takeuchi
e Ikujiro Nonaka.
• Fue descrito como un método innovador
para el desarrollo de productos, al que
llamaron: método holístico o Rugby.
• Fue definido como una estrategia flexible e
integral para el desarrollo de productos.
• El método se basa en estudios de caso de
manufactura de distintas industrias.
• El desarrollo de productos no debe ser como
una carrera de relevos secuencial, sino que
debe ser similar al juego de Rugby.
Adaptabilidad
El control de proceso empírico y la
entrega iterativa hacen que los proyectos
sean adaptables y abiertos a la
incorporación del cambio.
Transparencia
Todos los emisores de información,
tales como el Scrumboard y el Sprint
Burndown Chart son compartidos, lo
cual lleva a un ambiente laboral abierto.
Retroalimentación constante
Los procesos de realizar el Daily Standup
y demostrar y validar el sprint permiten
una constante retroalimentación.
Mejora continua
Los entregables mejoran progresivamente
sprint tras sprint mediante el proceso de
refinar el backlog priorizado del producto.
Entrega continua de valor
El proceso iterativo permite la entrega
constante de valor mediante el proceso de
enviar entregables, tan frecuentemente
como el cliente lo requiera.
Ritmo sostenido
La cantidad de trabajo para obtener los
resultados debe ser siempre el mismo, por
el contrario, el esfuerzo para obtener el
objetivo debe ser dia a dia menor.
Entrega anticipada
de alto valor
El proceso de crear el backlog priorizado
del producto garantiza que los
requerimientos de alto valor del cliente
se cumplan primero.
Desarrollo del
proceso eficiente
La asignación de un tiempo específico
(Time-boxing) y la reducción del trabajo
no esencial llevan a niveles más altos de
eficiencia.
Motivación
Los procesos de Realizar Daily Standup
y retrospectiva del sprint conducen a
mayores niveles de motivación entre
los empleados.
Resolución de problemas
en una forma más rápida
La colaboración y la co-ubicación de
equipos interfuncionales conducen a
la resolución de problemas con mayor
rapidez.
Entregables efectivos
El proceso de crear el backlog priorizado
del producto y las revisiones periódicas
después de la creación de entregables
aseguran entregas eficientes al cliente.
Centrado en el cliente
El énfasis en el valor del negocio y
contar con un enfoque colaborativo
con los stakeholders asegura un
framework orientado al cliente.
Ambiente de confianza
Los procesos de realizar Daily Standup y
retrospectiva del sprint promueven la
transparencia y la colaboración, llevando
a un ambiente laboral de alta confianza.
Entorno colectivo
El proceso de comprometer historias
de usuarios permite a los miembros
del equipo asumir la propiedad del
proyecto.
Alta velocidad
Un framework colaborativo permite que
los equipos interfuncionales altamente
cualificados logren todo su potencial y
una alta velocidad.
Ambiente Innovador
Los procesos de retrospectiva del sprint
y retrospectiva del proyecto crean un
ambiente de introspección, aprendizaje
y adaptabilidad, lo cual resulta en un
ambiente laboral innovador y creativo.
MÓDULO 2
• Principios
• Aspectos
• Procesos
La Guía SBOK™ está
ampliamente dividida
en tres áreas
Los principios de SCRUM son las
principales pautas para la aplicación
del framework de SCRUM y deben
implementarse obligatoriamente en
todos los proyectos SCRUM.
Los aspectos de SCRUM deben ser
abordados y administrados a lo
largo de un proyecto SCRUM.
Los procesos de SCRUM abordan las
actividades específicas y el flujo de un
proyecto de SCRUM.
En total hay diecinueve procesos Procesos
fundamentales de SCRUM que aplican a
todos los proyectos. Estos procesos se
agrupan en cinco fases.
Fases
Para escalar SCRUM en grandes proyectos y
en las empresas que requieren de la
coordinación entre múltiples equipos, existen
ocho procesos adicionales de SCRUM.
MÓDULO 3
• Introducción
• Control de proceso empírico
• Auto-organización
• Colaboración
• Time-boxing
• Desarrollo iterativo
Los principios de SCRUM son la
base en la que se sostiene el
framework de SCRUM.
Colaboración
Sucede cuando un equipo trabaja en
conjunto para aprovechar el aporte de
cada uno y producir algo más grande.
Dimensiones centrales del trabajo colaborativo
• Conocimiento
• Articulación
• Apropiación
Beneficios
• El framework de SCRUM se guía por la
finalidad de ofrecer el máximo valor de
negocio en un mínimo período de tiempo.
• Una de las herramientas más eficaces
para entregar el mayor valor en el menor
tiempo posible es la priorización.
• La priorización es la determinación del
orden y la separación de lo que debe
hacerse ahora, de lo que debe hacerse
después.
• SCRUM utiliza la priorización basada en
valor (Value-based Prioritization) como
uno de los principios básicos que impulsa
la estructura y funcionalidad de todo el
framework de SCRUM.
• Ayuda a que los proyectos se beneficien
mediante la capacidad de adaptación y el
desarrollo iterativo.
• SCRUM tiene como finalidad entregar un
producto o servicio valioso para el cliente
en forma oportuna y continua.
• La lleva a cabo el Product Owner cuando
prioriza el backlog del Producto.
• El Product Owner trabaja con el cliente y
el patrocinador para entender los
requerimientos del negocio que
proporcionan el máximo valor.
• Los requerimientos de alto valor son
identificados y se colocan al principio del
Backlog Priorizado del Producto.
• Product Owner debe trabajar con el
Equipo SCRUM para entender los riesgos
y la incertidumbre del proyecto.
• Estos riesgos se deben tener en cuenta al
priorizar las historias de usuario.
• El Equipo SCRUM también alerta al
Product Owner sobre las dependencias
que surgen de la implementación.
Al priorizar las historias de usuario en el
Backlog Priorizado del Producto se
consideran los siguientes tres factores:
• SCRUM trata al tiempo como uno de los
limitantes más importantes en la gestión
de un proyecto.
• Time-boxing (o asignación de un bloque de
tiempo), propone la fijación de una cierta
cantidad de tiempo para cada proceso y
actividad en un proyecto SCRUM.
• Esto garantiza que los miembros del
Equipo SCRUM no desperdicien su
tiempo y energía en un trabajo para el cual
tienen poca claridad.
Ventajas
• Proceso de desarrollo eficiente
• Menos gastos generales
• Alta velocidad para los equipos
• Puede utilizarse para evitar la mejora
excesiva de un elemento
• El SCRUM framework está guiado por
el objetivo de ofrecer el máximo valor
empresarial en un mínimo período de
tiempo.
• Para lograr esto en forma práctica,
SCRUM cree en el desarrollo iterativo
de entregables.
Versión
Funcionalidad
Versión
Versión
Tiempo
• Iteraciones por definición
parcial del alcance.
• Modelo flexible para soportar
los cambios.
¿Cómo funciona? - Descomposición
• Las historias de usuario tal vez tengan
que ser escritas constantemente
durante el proyecto.
• Estas historias de usuario se conocen
como épica(s). Las épicas son muy
grandes y se dividen en pequeñas
historias de usuario.
• Cada aspecto complejo del proyecto se
divide durante el proceso Refinar el
Backlog Priorizado del Producto.
¿Cómo funciona? - Descomposición
• En cada sprint, el proceso de Crear
entregables se utiliza para desarrollar
las salidas del sprint. El SCRUM Master
garantiza que se sigan los procesos y
facilita al equipo el trabajo.
• El Equipo SCRUM se auto-organiza,
teniendo como objetivo el crear
entregables del sprint a partir de las
historias de usuario que están en el
Sprint Backlog.
¿Cómo funciona? - Descomposición
• En grandes proyectos, varios equipos
interfuncionales trabajan en paralelo a
través de los sprints, proporcionando
soluciones potencialmente
entregables al final de cada sprint.
• Después de completar cada sprint, el
Product Owner acepta o rechaza los
entregables con base a los criterios de
aceptación del proceso de Demostrar
y validar el sprint.
Beneficios
• Permite la corrección a medida que
todas las personas involucradas
obtengan una mejor comprensión de lo
que se debe entregar como parte del
proyecto, e incorporar lo aprendido de
manera iterativa.
• El tiempo y el esfuerzo requerido para
alcanzar el punto final definitivo se
reduce y se producen entregables que
se adaptan mejor.
MÓDULO 4
• Organización
• Justificación del negocio
• Calidad
• Cambio
• Riesgo
Es importante entender los roles y
responsabilidades en un proyecto
SCRUM para asegurar el éxito en
su desarrollo.
Impacto Negativo
1. Identificación de riesgos: Utilizar
diversas técnicas para identificar
todos los riesgos potenciales.
2. Evaluación de riesgos: Evaluar y
estimar los riesgos identificados.
3. Priorización de riesgos: Dar prioridad
al riesgo que habrá de incluirse en el
Backlog Priorizado del Producto.
4. Mitigación de riesgos: Desarrollar de
una estrategia adecuada para hacer
frente a un riesgo.
5. Comunicación de riesgos: Comunicar
a los stakeholders apropiados los
resultados de los primeros cuatros
pasos de la gestión de riesgos y
determinar su percepción respecto a
eventos inciertos.
Los riesgos deben ser identificados,
evaluados y atendidos con base a dos
factores:
• La probabilidad de ocurrencia
• El posible impacto
Los riesgos con una alta probabilidad
y valor de impacto (que se calcula
multiplicando ambos factores) deben
ser atendidos primero que aquellos
con un valor relativamente bajo.
MÓDULO 5
• Inicio
• Planificación y estimación
• Implementación
• Revisión y retrospectiva
• Lanzamiento
Si!!! Es cierto, Scrum tiene procesos
Fases
•Enviar
Lanzamiento entregables
•Retrospectiva
del proyecto
•Demostrar y validar
Revisión y el sprint
retrospectiva •Retrospectiva del
sprint
•Crear entregables
Implementación •Realizar Daily Standup
•Refinar el Backlog Priorizado
del Producto
Cronograma de
Scrum Master Equipo Scrum Épica(s) Backlog Priorizado del
Product Owner identificado planificación del
identificado identificado Producto
lanzamiento
Visión de proyecto
Una ciudad, con las estructuras o equipamiento
suficientes para albergar una pequeña comunidad
y satisfacer sus necesidades básicas.
Debe tener como mínimo: escuela primaria,
cuerpo de bomberos, plaza, centro médico,
caminos, policía, mercado
Objetivos de la fase de inicio
• Determinar que puede satisfacer las
necesidades de nuestro cliente
• Determinar el responsable funcional y de
gestión de la solución
• Determinar el equipo responsable de
realizar la solución
• Realizar el desglose de primer nivel del
trabajo necesario
• Priorizar el trabajo a realizar
• Realizar el plan de entrega de producto
MÓDULO 7
Criterio de
aceptación de Sprint Burndown
historias del Chart
usuario
Actividades
• Creación de entregables
• Realizar reunión diaria de pies
• Mantenimiento de la lista priorizada
del pendiente del producto
Implementación
Demostrar y Retrospectiva
validar el sprint del Sprint
Planes de
Entregables
mejora
aceptados
acordados
Actividades
• Envío de entregables
• Retrospectiva del proyecto
Lanzamiento
Enviar Retrospectiva
entregables del proyecto
Acuerdo de Planes de
entregables Mejora
funcionales Acordados
Plan de Acción,
fechas y
compromisos
Actividades
• Entregar el producto
• Revisar el resultado del proyecto en
cuanto producto y proceso
SCRUM