Introducción a las Metodologías Ágiles

42
Introducción a las Metodologías Ágiles SCRUM -Miriam Gallardo – [email protected] - @MgmAlbeniz-

Transcript of Introducción a las Metodologías Ágiles

Page 1: Introducción a las Metodologías Ágiles

Introducción a las Metodologías Ágiles

SCRUM

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 2: Introducción a las Metodologías Ágiles

Preguntas a responder/objetivos formación

Qué son las metodologías ágiles/framework

Por qué nacen, cómo y dónde (entorno/sector)

Cuáles son sus principios

Intro Kanban

Intro Scrum y su aplicación

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 3: Introducción a las Metodologías Ágiles

Qué son las metodologías ágiles

Técnicas/herramientas para la gestión de proyectos que han surgido como contraposición a los métodos tradicionales o metodologías predictivas.

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 4: Introducción a las Metodologías Ágiles

Predictivas vs ÁgilPredictivas/tradicionales/pesadas:

- Solución a la complejidad ==> planificación detallada.

- Contrato+requisitos iniciales definidos ==> entrega independientemente del valor.

- Férreo control cambios.

- Comunicación superficial con el cliente (inicio-documentación).

- Visibilidad 0 proyecto hasta el final ==> contexto puede cambiar (competidores, sector, organización, …).

- Sobreesfuerzo, reducción calidad ==> insatisfacción.

Ágiles:

- Adaptación regular y normalizada.

- Al cliente/usuario le resulta más fácil entender el producto a medida que avanza el desarrollo ==> se facilita la toma de decisiones.

Page 5: Introducción a las Metodologías Ágiles

Predictivas vs Ágil

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 6: Introducción a las Metodologías Ágiles

Predictivas vs Ágil

Page 7: Introducción a las Metodologías Ágiles

Qué son las metodologías ágiles

- PROBLEMA QUE RESUELVE: Pérdida de foco: obsesión por cumplir con la planificación en lugar de con el objetivo del proyecto.

- NECESIDAD QUE CUBRE: Posibilidad introducir cambios que aporten con rapidez en cualquier fase del proyecto. Ágil en el sentido de adaptación.

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 8: Introducción a las Metodologías Ágiles

Pero... ¿Por qué ágil?

En contraposición a la gestión de proyectos predictivas (“waterfall”) mucho más pesadas en su gestión,

ITERATIVO+ INCREMENTAL= ADAPTACIÓN

Fuente: http://agileproductdesign.com/blog/dont_know_what_i_want.htm

Page 9: Introducción a las Metodologías Ágiles

Manifiesto Ágil

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 10: Introducción a las Metodologías Ágiles

Manifiesto Ágil

Individuos e interacciones sobre procesos y herramientas

Software funcionando sobre documentación extensiva

Colaboración con el cliente sobre negociación contractual

Respuesta ante el cambio sobre seguir un plan

Esto es, aunque valoramos los elementos de la derecha,

valoramos más los de la izquierda (2001)

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 11: Introducción a las Metodologías Ágiles

Principios Manifiesto Ágil

1.Nuestra mayor prioridad es satisfacer al cliente mediante la entrega

temprana y continua de software con valor.

2. Aceptamos que los requisitos cambien, incluso en etapas tardías del

desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar

ventaja competitiva al Cliente.

3. Entregamos software funcional frecuentemente, entre dos semanas y dos

meses, con preferencia al periodo de tiempo más corto posible.

4. Los responsables de negocio y los desarrolladores trabajamos juntos de

forma cotidiana durante todo el proyecto.

5. Los proyectos se desarrollan en torno a individuos motivados. Hay que

darles el entorno y el apoyo que necesitan, y confiarles la ejecución del

trabajo.

6. El método más eficiente y efectivo de comunicar información al equipo de

desarrollo y entre sus miembros es la conversación cara a cara.

7. A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo

para a continuación ajustar y perfeccionar su comportamiento en

consecuencia.

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 12: Introducción a las Metodologías Ágiles

Principios Manifiesto Ágil

8. El software funcionando es la medida principal de progreso.

9. Los procesos Ágiles promueven el desarrollo sostenible. Los promotores,

desarrolladores y usuarios debemos ser capaces de mantener un ritmo

constante de forma indefinida.

10. La atención continua a la excelencia técnica y al buen diseño mejora la

Agilidad.

11. La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado,

es esencial.

12. Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-

organizados.

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 13: Introducción a las Metodologías Ágiles

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 14: Introducción a las Metodologías Ágiles

Tipos metodologías ágiles

Fuente: http://www.javiergarzas.com

Page 15: Introducción a las Metodologías Ágiles

Kanban- Técnica de gestión visual o sistema de información

basado en señales.- Nace en Toyota- Lean Manufacturing.- Base para la creación de un sistema de gestión VISUAL

de proyectos y/o flujo de trabajo

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 16: Introducción a las Metodologías Ágiles

Kanban

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 17: Introducción a las Metodologías Ágiles

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 18: Introducción a las Metodologías Ágiles

Cómo se trabaja con Kanban

ROLES

Equipo

Dinamizador (op.)

ARTEFACTOS

Tablero o Kanban Board

Tarjetas

WIP

REUNIONES

Daily meeting (15', stand up): qué estoy haciendo/qué voy a hacer/qué problemas/impedimentos me he encontrado.

Retrospective (op.): qué estamos haciendo bien/qué estamos haciendo mal/qué podemos mejorar

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

ELEMENTO CLAVE: WIP

Page 19: Introducción a las Metodologías Ágiles

Concepto WORK IN PROGRESS (WIP)

Definir cuántas tareas como máximo pueden realizarse en cada fase del ciclo de trabajo.

Page 20: Introducción a las Metodologías Ágiles

Scrum-Marco de trabajo/framework que ayuda a la gestión de

proyectos complejos en entornos muy dinámicos (necesidad de flexibilidad y alta existencia de incertidumbre).

- ¿Por qué “Scrum”? 1986 (Hirotaka Takeuchi e Ikujiro Nonaka) describen la manera de incrementar tanto la velocidad como la flexibilidad de desarrollo para nuevos productos – no necesariamente de software – donde el ciclo de desarrollo, incluyendo requerimientos, diseño o integración se traslapan fuertemente, llevando el proceso como una "cadena de rugby", donde un jugador le pasa el balón al otro y así sucesivamente hasta llegar a la meta del contrario.

-Se basa en entregas parciales y regulares ==> INCREMENTO ITERATIVO.

- Aportando siempre VALOR

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 21: Introducción a las Metodologías Ágiles

Comprometido e involucrado

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 22: Introducción a las Metodologías Ágiles

Valores SCRUM

- Desarrollo iterativo incremental (entregas parciales y regulares de producto FUNCIONANDO) vs metodologías predictivas basadas en el desarrollo de proyectos en cascada (waterfall)

.

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 23: Introducción a las Metodologías Ágiles

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 24: Introducción a las Metodologías Ágiles

Valores SCRUM

- Flexibilidad

- Adaptación

- Auto-organización

-Multidisciplinaridad

- Feedback

- Entregar valor

- Transparencia: a nivel de información (qué estamos haciendo)

- Compromiso

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 25: Introducción a las Metodologías Ágiles

Cómo se trabaja con Scrum

ROLES

Product Owner

Scrum Master

Team

ARTEFACTOS

Scrum Board

Product Backlog

Sprint Backlog

Historias de usuarioREUNIONES

Sprint Planning

Daily meeting

Sprint review o Demo

Sprint Retrospective o Retro

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

ELEMENTO CLAVE: SPRINT

Page 26: Introducción a las Metodologías Ágiles

Ciclo vida Scrum

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 27: Introducción a las Metodologías Ágiles

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 28: Introducción a las Metodologías Ágiles

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 29: Introducción a las Metodologías Ágiles

Qué son las historias de usuario

- CCC: Card, Conversation, Confirmation

- Definen QUÉ se debe construir (DESEOS del cliente) pero NO EL CÓMO. Son representación del INICIO de las conversaciones con el cliente, no el FINAL = metodologías tradicionales.

Hacemos un desarrollo iterativo e incremental como espacio para la innovación ==>explorar aquellas soluciones que al dueño del producto no se le han ocurrido y que si toma demasiadas decisiones evita que aparezcan. Si no dejamos el cómo al equipo, ya en los inicios de la conversación estamos limitando la creatividad.

- Se dividen en tareas.

- US vs grandes montañas de documentación.

.

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 30: Introducción a las Metodologías Ágiles

Qué son las historias de usuario

- Permiten responder rápidamente a los requisitos cambiantes.

- Formato más sencillo:

Como (rol) quiero (algo/acción) para poder (beneficio/resultado).

Ejemplo: Como miembro AgileUPC quiero crear un evento para que cualquier otra persona pueda verlo y apuntarse.=EL PARA ES LO QUE APORTA VALOR.

- Deben entrar en un post-it.

- Deben ir acompañadas de criterios de aceptación (PO)

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 31: Introducción a las Metodologías Ágiles

Historias de Usuario (US)

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 32: Introducción a las Metodologías Ágiles

Historias de Usuario (US)

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 33: Introducción a las Metodologías Ágiles

Beneficios y Limitaciones Historias de Usuario

Beneficios

Al ser muy cortas, pueden implementarse rápidamente (días o semanas)

Necesitan poco mantenimiento

Mantienen una relación cercana con el cliente

Permite dividir los proyectos en pequeñas entregas

Permite estimar “fácilmente” el esfuerzo

Limitaciones

Sin pruebas de validación pueden quedar abiertas a distintas interpretaciones

Se requiere un contacto permanente con el cliente durante el proyecto lo cual puede ser difícil o costoso

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 34: Introducción a las Metodologías Ágiles

Ejemplos prácticos

Práctica US Quiero llamar a mi madre

Práctica US reserva vuelo

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 35: Introducción a las Metodologías Ágiles

Sprint planning o ¿cómo nos comemos el elefante?

¿Qué?

- Planificación del sprint de acuerdo a la priorización

¿Para qué? (objetivo/beneficio)

- Auto-organización del equipo

¿Cómo?

- Presentación de historias del backlog priorizado

- Resolución dudas

- Estimación esfuerzo

- División en tareas y traslado a Scrum Board

¿Quién? PO, EQUIPO, SM, cliente (OP)

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 36: Introducción a las Metodologías Ágiles

¿Qué?

- Reunión de 15' de pie

¿Para qué? (objetivo/beneficio)

- Auto-organización del equipo/información/detección de problemas/velocidad equipo

¿Cómo?

Se responde a tres preguntas:

- Qué hice ayer (de lo que me comprometí a realizar)

- Qué voy a hacer hoy

- Qué impedimentos/problemas me he encontrado

¿Quién? EQUIPO, SM

Daily Meeting

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 37: Introducción a las Metodologías Ágiles

Sprint Review o Demo

¿Qué?

- Demo/entrega del incremento del producto

¿Para qué? (objetivo/beneficio)

- Obtener feedback ==> APRENDIZAJE VALIDADO

- Detectar posibles cambios

¿Cómo?

- Mostrando al cliente/usuario el resultado del trabajo realizado (debe ser completo ==> compromiso adquirido).

¿Quién? EQUIPO, SM, PO, CLIENTE

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 38: Introducción a las Metodologías Ágiles

Sprint Retrospective o Retro

¿Qué?

- Puntos fuertes y débiles del equipo.

¿Para qué? (objetivo/beneficio)

- Mejora contínua, a nivel de proyecto y sobre todo a nivel de funcionamiento de equipo y de metodología.

¿Cómo?

- Respondiendo a varias preguntas y realizando acciones a iniciar si es posible en el siguiente sprint.

- ¿Qué ha ido bien? ¿Qué ha ido mal? ¿Qué cosas hay que empezar a hacer?¿Qué cosas hay que dejar de hacer?

¿Quién? EQUIPO, SM

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 39: Introducción a las Metodologías Ágiles

Sprint Retrospective o Retro

-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 40: Introducción a las Metodologías Ágiles

Sprint Retrospective o Retro

- No hay tiempo. Buscar por qué.

- Tareas se asumen a título personal. Responsabilidad como grupo (compromiso).

- Monopolización de la reunión. Herramienta puntos.

- Charla sin fin. No propuesta de soluciones. Preguntas y post-it.

Page 41: Introducción a las Metodologías Ágiles

Empecemos a aplicar Agilismo...

¡Gracias!-Miriam Gallardo – [email protected] - @MgmAlbeniz-

Page 42: Introducción a las Metodologías Ágiles

Dudas, preguntas, reclamaciones...FEEDBACK!!!

-Miriam Gallardo – [email protected] - @MgmAlbeniz-