View
216
Download
0
Category
Preview:
Citation preview
8/17/2019 Charla Introductoria Scrum
1/29
SCRUMSCRUM – – Gestión ágil de proyectos de softwareGestión ágil de proyectos de softwareJAI v.2.0JAI v.2.0
Rosario 5 Dic 2006Rosario 5 Dic 2006Fabián LonghitanoFabián Longhitano
8/17/2019 Charla Introductoria Scrum
2/29
Fabián Longhitano – JAI v. 2.0
Objetivo
Presentar un proceso de gestión de proyectos
(SCRUM) aplicable a desarrollo de productos conrequerimientos que tienen alto nivel de
incertidumbre.
8/17/2019 Charla Introductoria Scrum
3/29
Fabián Longhitano – JAI v. 2.0
Algunos problemas en la gestión de proyectos de software
Requerimientos fuera de control
No cumplimiento de los tiempos
planificados (Desvíos)
Estimaciones deficientes
Re-trabajo excesivo
Baja calidad
Costos excedidos
Insatisfacción del Cliente
Insatisfacción de los profesionalesparticipantes
Etc. etc. etc.
8/17/2019 Charla Introductoria Scrum
4/29
Fabián Longhitano – JAI v. 2.0
Estrategias actuales para desarrollar software
Sin procesos
Waterfall
Sin documentación
Planificación informal
Equipos nodisciplinados
Equipos no
entrenados
Etc., etc…
Procesos compliance CMMI
RUP, prototipación
Con documentación
Planificación formal
Equipos disciplinados Equipos entrenados
Etc., etc…
Ninguna metodología garantiza el éxito absoluto!!Ninguna metodología garantiza el éxito absoluto!!
La clave está en saber discernir cual es la que mejorLa clave está en saber discernir cual es la que mejorse ajusta a nuestras necesidadesse ajusta a nuestras necesidades
8/17/2019 Charla Introductoria Scrum
5/29
Fabián Longhitano – JAI v. 2.0
Nivel de ruido en los proyectos
Simple
C o m p l i c
a d o
Anarquia
Complejo
Cerca de
la certidumbre
Lejos de la
certidumbre
Tecnología
Cerca del
acuerdo
Lejos del
acuerdo
R e q u e r i m i e n t o
s
S c r u m
Source: Strategic Management and
Organizational Dynamics by Ralph Stacey
in Agile Software Development with Scrum
by Ken Schwaber and Mike Beedle.Proceso definido o empirico?
8/17/2019 Charla Introductoria Scrum
6/29Fabián Longhitano – JAI v. 2.0
El mercado demanda !!!!Alta calidad + diferenciación + bajo costo
se requiere
Velocidad + FlexibilidadVelocidad + Flexibilidad
Qué estrategia utilizamos para gestionar elQué estrategia utilizamos para gestionar el
desarrollo?desarrollo?
8/17/2019 Charla Introductoria Scrum
7/29Fabián Longhitano – JAI v. 2.0
Qué tienen en común cuando desarrollan sus productos?
Inestabilidad incorporada
Equipos auto - organizados
Multi - aprendizaje
Control Sútil
Transferencia de aprendizaje a nivelorganizacional
Fases de desarrollo solapadas
“Estas características son como piezas de un rompecabezas. Cadaelemento por si mismo no aporta flexibilidad y velocidad. Cuando secomplementan pueden producir una poderosa dinámica que hace ladiferencia.”
Hirotaka Takeuchi y Ikujiro Nonaka – The new new productdevelopment game – Harvard Business Review 1986
8/17/2019 Charla Introductoria Scrum
8/29Fabián Longhitano – JAI v. 2.0
Estilos de administración de proyectos
The new new product development Takeuchi y Nonaka (1986)
8/17/2019 Charla Introductoria Scrum
9/29Fabián Longhitano – JAI v. 2.0
Gestión ágil de proyectos - SCRUM
Proceso ágil de gestión de proyectos desarrollado por Ken Schwaber y Mike
Beedle.
Enfocado al desarrollo de productos de manera empírica.
Proceso simplesimple que requiere mucha disciplinadisciplina para que resulte exitoso. Administración de requerimientos
Administración de riesgos
Planificación y seguimiento
Se basa en los principios ágiles:
ColaboraciónColaboración estrecha con el clientecliente
PredisposiciónPredisposición y respuesta al cambiocambio
Desarrollo incremental con entregas funcionales frecuentes
Motivación y responsabilidad de los equipos por la autoauto--gestióngestión,, autoauto--
organizaciónorganización y compromisocompromiso
Muy riguroso!!!
8/17/2019 Charla Introductoria Scrum
10/29Fabián Longhitano – JAI v. 2.0
User Story - E
User Story - D
Scrum – El proceso
Source: Adapted from Agile Software
Development with Scrum by Ken
Schwaber and Mike Beedle.
Product Backlog
Daily Scrum
Meeting
User Story - C
User Story - B
User Story - A
Sprint
15-30
días
TareasTareas identificadasidentificadasyy estimadasestimadas
IncrementoIncremento dede productoproducto
potencialmentepotencialmente
entregableentregable
8/17/2019 Charla Introductoria Scrum
11/29Fabián Longhitano – JAI v. 2.0
Sprint – Iteraciones
Estrategia tradicional - Waterfall
Estrategia ágil – Iteraciones fijas (Sprint)
Ventajas Sprint
Los riesgos se reducen a laduración de un Sprint.
Los cambios en losrequerimientos no afectan laconstrucción.
El equipo se concentra en elvalor del producto, no en lastareas.
Entrega rápida y períodica defuncionalidad.
Feedback rápido del cliente.
Iteraciones fijas (usualmente 30 días)
8/17/2019 Charla Introductoria Scrum
12/29Fabián Longhitano – JAI v. 2.0
Roles Scrum
TeamTeam
MembersMembers
ProductProduct
OwnersOwners
ScrumScrumMaster Master
66--8 personas full8 personas full--timetime AutoAuto--organizadoorganizado
MultiMulti--funcionalfuncional
Transforman los requerimientos en funcionalidadTransforman los requerimientos en funcionalidad
en cada incrementoen cada incremento
Define funcionalidad requeridaDefine funcionalidad requerida Toma las decisiones deToma las decisiones de priorizaciónpriorización
Representa a todos los interesados en el producto finalRepresenta a todos los interesados en el producto final
Remueve impedimentosRemueve impedimentos
Facilitador Facilitador
Asegura que se cumplaAsegura que se cumpla ScrumScrum
8/17/2019 Charla Introductoria Scrum
13/29Fabián Longhitano – JAI v. 2.0
Pig Chicken?
COMPROMETIDOS EN EL PROYECTOCOMPROMETIDOS EN EL PROYECTO
Product Owner
Equipo Scrum Master
IMPLICADOS EN EL PROYECTOIMPLICADOS EN EL PROYECTO
Marketing
Comercial Etc.
Herramientas - Product Backlog
8/17/2019 Charla Introductoria Scrum
14/29Fabián Longhitano – JAI v. 2.0
Herramientas - Product Backlog
Lista priorizada de
requerimientos.
Priorizado y administrado
por el Product Owner
Priorización basada en lafuncionalidad que agrega
mayor valor al negocio.
Evoluciona según las
condiciones de negocio y/o
tecnología.
Cualquiera puede aportar
nuevos requerimientos. Es visible a todos.
Reglas esenciales!! : El único que cambia las prioridadades es el PO
8/17/2019 Charla Introductoria Scrum
15/29Fabián Longhitano – JAI v. 2.0
Sprint
Source: Adapted from Agile Software
Development with Scrum by Ken
Schwaber and Mike Beedle.
Product Backlog As prioritized by Product Owner
Sprint Backlog
Backlog tasks
expanded
by team
Potentially Shippable
Product Increment
Daily Scrum
Meeting
Sprint
15-30
días
Cambios
NO!
8/17/2019 Charla Introductoria Scrum
16/29
Fabián Longhitano – JAI v. 2.0
Sprints
Período fijoPeríodo fijo de tiempo durante el cual el equipo desarrolla un
incremento de funcionalidad (no más de 30 días).
No se aceptan cambiosNo se aceptan cambios a los requerimientos acordados
El producto es diseñado, codificado y testeado durante
el Sprint
Solo el Scrum Master puede cancelar el Sprint cuando;
La tecnología no funciona
Las circunstancias del negocio cambiaron
El equipo tuvo interferencias
Iteraciones cortas permiten reducir riesgos !!!Iteraciones cortas permiten reducir riesgos !!!
8/17/2019 Charla Introductoria Scrum
17/29
Fabián Longhitano – JAI v. 2.0
User Story - E
User Story - D
Sprint Planning Meeting
Source: Adapted from Agile Software
Development with Scrum by Ken
Schwaber and Mike Beedle.
Sprint BacklogSprint Backlog
PriorizadoPriorizado yy estimadoestimado
Product Backlog
Daily Scrum
Meeting
User Story - C
User Story - B
User Story - A
Sprint
15-30
días
TareasTareas identificadasidentificadas
yy estimadasestimadas
8/17/2019 Charla Introductoria Scrum
18/29
Fabián Longhitano – JAI v. 2.0
Sprint Planning Meeting
Dos reuniones:
Primera reunión:− Se establece la meta del Sprint
− Se identifica la funcionalidad que se va aconstruir en el Sprint
Segunda reunión:− Se identifican y estiman las tareas para
satisfacer
− Se crea un Sprint Backlog
− Las tareas son distribuidas por decisión de
los miembros del equipo− Los miembros del equipo se comprometen a
cumplir con la meta del Sprint
Entradas:
−Product Backlog actualizado.
− Feedback último Sprint.
− Perfomance del equipo en los Sprint anteriores
8/17/2019 Charla Introductoria Scrum
19/29
Fabián Longhitano – JAI v. 2.0
User Story - B
Daily Scrum Meeting
Source: Adapted from Agile Software
Development with Scrum by Ken
Schwaber and Mike Beedle.
Todos
los días
15 minutos
Sprint Backlog
User Story - A
Sprint
15- 30
días
User Story - D
User Story - C
Tres preguntas: todos
responden – de a uno por favor ;)
Qué trabajo realizó ayer?
Qué trabajo realizará hoy?
Hay algo que necesita o que impideque realice el trabajo previsto?
Eliminar impedimentos!!Eliminar impedimentos!!
Daily Scrum Meeting
8/17/2019 Charla Introductoria Scrum
20/29
Fabián Longhitano – JAI v. 2.0
Daily Scrum Meeting
Duración aproximada de 15 minutos.Duración aproximada de 15 minutos. Todos los días a la misma hora y en elmismo lugar
Participa el equipo y el Scrum Master (Product Owner opcional)
No hay conversaciones entre los miembros del equipo
LasLas gallinasgallinas pueden asistir pero nono hablan!!hablan!!
No se divagaNo se divaga
El principal objetivo eseliminar impedimentoseliminar impedimentos
BeneficiosBeneficios:
Mejor entendimiento de las interdependencias entre los miembros de equipo. (sincronización)
Mejora en la comunicación.
Todos conocen el estado del proyecto.
Elimina la necesidad de otras reuniones.
Identifica y remueve impedimentos.
Promueve decisiones rápidas.
Sprint Backlog Burndown
8/17/2019 Charla Introductoria Scrum
21/29
Fabián Longhitano – JAI v. 2.0
p g
0
20
40
60
80
100
120
0 1 2 3 4 5 6 7 8 9 10
Días
H o r a s
Esfuerzo disponible
Horas Restantes
Velocidad
idealestimada
Velocidad
real delequipo
8/17/2019 Charla Introductoria Scrum
22/29
Fabián Longhitano – JAI v. 2.0
User Story - B
Sprint Review Meeting
Sprint Backlog
Incremento de producto
potencialmenteentregable
User Story - A
Sprint
15-30
días
User Story - D
User Story - C
Todos
los días
15 minutos
Sprint Review Meeting (Qué construímos)
8/17/2019 Charla Introductoria Scrum
23/29
Fabián Longhitano – JAI v. 2.0
Sprint Review Meeting (Qué construímos)
ObjetivoObjetivo:: Presentar al Product Owner y demás involucrados del proyecto el trabajo
realizado (incremento del producto) durante el Sprint
ParticipanParticipan:: Equipo, Scrum Master, Product Owner, todas las personas involucradas en
el proyecto
ReglasReglas aa seguir seguir ::
El Team no invierte más de una hora para preparar el Sprint review
Las funcionalidades no finalizadas completamente no se presentan
Los miembros del equipo presentan las funcionalidades
Las demostraciones se realizan en las workstations de los miembros del equipo
Al finalizar la reunión se pide opiniones a los participantes, los cuales pueden sugerir
cambios y mejoras
AlAl finalizar finalizar :: Se actualiza y vuelve a priorizar el Product Backlog
El Scrum Master anuncia el lugar y la fecha de la próxima revisión de Sprint
El Product Owner decide si la funcionalidad
presentada cumple con los objetivos del Sprint
Sprint Retrospective (Cómo contruímos)
8/17/2019 Charla Introductoria Scrum
24/29
Fabián Longhitano – JAI v. 2.0
Sprint Retrospective (Cómo contruímos)
Objetivo: identificar que cosas se puedencambiar para hacer el trabajo más agradable yproductivo en las próximas iteraciones.
Se realiza al finalizar el Sprint
Participantes: Team, Scrum Master, ProductOwner (opcional).
Dos preguntas (todos responden):
Qué cosas hicimos bien? Qué cosas podemos mejorar?
Todo aquello que afecte como el equipo
construye software se debe debatir
Permite al equipo evolucionar continuamentemejorando durante el proyecto.
Herramientas – Panel de Control
8/17/2019 Charla Introductoria Scrum
25/29
Fabián Longhitano – JAI v. 2.0
Historias de usuarios
(Sprint Backlog)Tareas a
realizar Tareas finalizadasBurndown Chart
Tareas en progreso
8/17/2019 Charla Introductoria Scrum
26/29
Fabián Longhitano – JAI v. 2.0
Resumiendo
Scrum es un proceso iterativo e incremental que puede ser utilizado para
desarrollar cualquier producto o administrar cualquier trabajo. Sus principalesatributos son:
Un enfoque orientado a que los equipos desarrollen sistemas y productos de manera
iterativa e incremental cuando los requerimientos cambian de manera rápida
Un proceso que controla el caos de conflictos de intereses y necesidades
Una manera de mejorar las comunicaciones y maximizar la cooperación
Una manera de maximizar la productividad
Escalable a múltiples proyectos y toda la organización Una forma que todos se sientan bien con su trabajo, entendiendo que cada uno con sus
contribuciones hizo lo mejor que podía hacer
Extremadamente simple pero que requiereExtremadamente simple pero que requiere
mucha disciplina para que funcione !!mucha disciplina para que funcione !!
8/17/2019 Charla Introductoria Scrum
27/29
Fabián Longhitano – JAI v. 2.0
Referencias
www.controlchaos.com
www.agilealliance.org
www.jeffsutherland.com
8/17/2019 Charla Introductoria Scrum
28/29
Fabián Longhitano – JAI v. 2.0
8/17/2019 Charla Introductoria Scrum
29/29
Fabián Longhitano – JAI v. 2.0
Muchas gracias!!Fabián Longhitano
flonghitano@gmail.com
Recommended