Está en la página 1de 38

Kanban II

Juego: Pasar las monedas

2
Cada encargado:

3 rondas •Pone en marcha el cronómetro cuando su trabajador


recibe la moneda #1
•Para el cronómetro cuando el trabajador envía su moneda #20
Each manager:
•  Start the timer when your worker receives coin #1
3 rounds • Each
Stop manager:
the timer when your worker sends coin #20
•  Start the timer when your worker receives coin20
Ronda 1: tamaño del batch #1
¿Cuánto tarda
cada trabajador? 31rounds
Ronda Ronda 2 Ronda
•  Round
3 the timer when
Stop A:worker
your Batchsends
size coin
20 #20
Round Round Round
How long did each
worker take?
A B C Round A: Batch size 20
Lisa Round Round Round
How long did each
Lisa
worker take?
A B C

David Lisa Each manager:Round B: Batch size 5


David Ronda
•  Start the timer 2: tamaño
when your del batch
worker receives coin5#1
3 rounds Round
•  Stop the timer when B:worker
your Batchsends
size coin
5 #20
David
Jack
Martín
Round A: Batch size 20
Maria
Jack Round Round Round
How long did each
A B C Round C: Batch size 1
María When didtake?
worker the
Maria
customer receive
the first coin?
¿Cuándo recibe When
Lisa
When did the
did the Round C: Batch size 1
customer receive
customer receive Ronda 3: tamaño del batch 1
el cliente la the first coin?
the last coin? Round B: Batch size 5
primera David
When did the
moneda? customer receive
the last coin?
Jack Kniberg
Henrik 216
¿Cuándo recibe
el cliente la
Maria
última moneda? Henrik Kniberg 216
When did the
customer receive
Round C: Batch size 1
the first coin? 3
Resultado típico

4
Algunas preguntas

• ¿Qué ha pasado con el tiempo total? ¿Por qué?


• ¿Qué ha pasado con el tiempo de cada trabajador individual? ¿Por
qué?
• ¿Cómo se sentían en cada ronda? ¿Ha sido estresante? ¿Cuándo ha
sido más calmado?
• ¿Se puede trasladar esto al desarrollo de software?
• ¿Qué representan las monedas?
• ¿Qué no es aplicable en el desarrollo de software?

5
Resumen prácticas Kanban

1. Visualizar el flujo de trabajo


2. Limitar el Work In Progress
3. Medir y optimizar el flujo (el tiempo de ciclo o lead time)

4. Hacer explícitas las políticas


• Definition of Done (Definición de Hecho)
• Classes of Service (Clases de servicios)
• Service Level Agreement (Acuerdos de nivel de servicios)

5. Retroalimentación y mejora continua


• Ritmo y cadencia
• Daily Standups (Reuniones diarias)
• Retrospectivas

6
1. Visualizar el flujo de trabajo
Flujo de trabajo

• Cada empresa de desarrollo de software tiene su propio flujo de


trabajo
• Para aplicar Kanban debemos empezar identificando el flujo de trabajo
• ¿Qué son los ítems de trabajo (work items)?
• ¿Por qué fases pasan?
• ¿Existen distintos tipos de ítems?
• ¿Su tamaño tiene mucha variabilidad?

8
Como <rol>
Historias de usuario quiero <característica>
para <beneficio>

Independent
Como estudiante Negotiable
quiero generar un PDF con mi expediente
Valuable
para guardar un resumen de mi expediente
y poder entregarlo a quien me lo pida Estimable
Small
Testable
Acrónimo creado por Bill Wake
Una historia no se resuelve con www.xp123.com
un método de un API.
Debemos implementar todos sus
aspectos: interfaz de usuario,
código de cliente, servidor, base
de datos, etc.

9
Historias de usuario e ítems de trabajo

• Si las historias de usuario tienen un tamaño demasiado grande, las


debemos dividir en tareas más pequeñas
• Todas las historias deben ir acompañadas de criterios de aceptación
(lo primero que debemos hacer si desarrollamos con TDD)
• Escribiremos las tareas en forma de ítems de trabajo en etiquetas que
pegaremos en el tablero Kanban
• Los ítems de trabajo sí que pueden ser partes “horizontales” del
proyecto

10
Post-it con el ítem de trabajo
• Descripción del ítem de trabajo.
Concisa, precisa y entendible por 10-10-13 24-10-13
todos los miembros del equipo.
• Fecha de comienzo #TSK: 1304
• Plazo de finalización
CREAR PDF CON LA
• Tamaño del ítem (S,M,L)
FICHA INFORMATIVA
• Quién está trabajando en el ítem.
Lo ideal sería un avatar pegado DEL ESTUDIANTE
encima de la etiqueta.
• Código de identificación con el
que podemos encontrar más
información sobre el ítem en otro
lugar (sistema on-line, etc.) M
• Indicador de progreso (cuánto se
ha avanzado en el ítem) @ Avatars: nitsnets

11
Tipos de trabajo

• Tipos de trabajos
• Nuevas características (historias de usuario)
• Solucionar bugs y deuda técnica
• Tareas de soporte

• Etiqueta distinta para cada uno

Kanban in Action

12
El tablero Kanban

• El objetivo principal del tablero Kanban es mostrar visualmente en qué


está trabajando el equipo en un momento dado

• Principales utilidades:
• Elemento fundamental para la reflexión, la comunicación y la discusión
en las reuniones de pie diarias
• Medir distintas métricas relacionadas con el flujo: número de ítems
terminados por semana, WIP
• Definir políticas estrictas de flujo de trabajo y de terminación
(Definition of Done)

13
Un ejemplo de tablero -
Lean from the Trenches

Henrik Kniberg, Lean From the Trenches

14
Políticas en el tablero

Henrik Kinberg, Lean From the Trenches


15
Diferentes tipos de trabajo

Henrik Kniberg, Lean From the Trenches

Metodologías Ágiles de Desarrollo de Software


Domingo Gallardo, DCCIA, Univ. Alicante 16
Buffers

Henrik Kniberg, Lean From the Trenches

17
Estadísticas

Henrik Kniberg, Lean From the Trenches


18
Escalar el tablero: tres equipos
trabajando en el mismo proyecto

Henrik Kniberg, Lean From the Trenches


19
2. Limitar el WIP
Límite de trabajos en progreso

Henrik Kniberg, Lean From the Trenches


21
Un límite por estado del flujo

22
¿Por qué limitar el WIP?

• Evitar exceso de multitarea


• Evitar sobrecargas en las siguientes partes de la cadena de proceso
(downstream)
• El límite del WIP debe establecerse por consenso entre todos los
implicados en el proyecto
• La tensión creada por establecer un WIP obliga a discusiones y
análisis beneficiosos para el equipo y el proyecto

23
Limitando el WIP se aumenta el
throughput

© Henrik Kniberg
24
¿Cuál es el límite óptimo?

• Se obtiene midiendo, experimentando y mejorando


• Empezar usando alguna regla sencilla: 2n-1, siendo n el número de
personas trabajando en esa fase
• Estudiar el flujo y optimizar el límite (Kanban es un proceso empírico)

25
Optimizar el límite de WIP

© Henrik Kniberg
26
El límite de WIP obliga a terminar

• Frase importante en Kanban

Stop starting, start finishing

• El límite de WIP obliga al equipo a centrarse en terminar tareas antes de


poder acometer nuevas

27
Clases de servicio

• En Kanban se pueden definir condiciones adicionales que afectan al


límite de WIP según la clase de servicio (class of service) del ítem de
trabajo

• Ejemplo muy común: clase “Expedite”


• Ítems urgentes que tienen prioridad sobre el resto
• Se define un carril adicional en el tablero para ellos con un WIP de 1
(carril rápido o fast lane)

28
3. Medir y optimizar el flujo de trabajo
Cadena de valor

• La definición de la cadena de valor (value chain) por la que pasan los


ítems de trabajo es importante tanto para analizar el flujo como para
construir el tablero Kanban

Eficiencia
del ciclo de
proceso

Henrik Kniberg & Mattias Skarin, Kanban and Scrum, InfoQ

30
Cycle Time o Lead Time

• Tiempo medio que tarda un ítem de trabajo en ser procesado

Henrik Kniberg, Lean from the Trenches

31
Throughput

• En el mundo de los negocios y de los


procesos de fabricación, el Throughput
(rendimiento) es el ritmo al que un
negocio es capaz de producir un
producto o un servicio para una unidad
de tiempo determinada
• En teoría de la información o redes se
considera que el throughput es el ratio
medio de mensajes correctos enviados
a través de un canal
• En el mundo de la informática es el ratio
de respuestas (SQL, peticiones HTTP,
etc.) por unidad del tiempo que realiza
el sistema

32
Objetivo: reducir la variabilidad

• En Kanban se mide el throughput en ítems terminados


• Se estima en número de ítems
• Se supone que todos los ítems tienen tamaño similar

33
Work-In-Progress

34
Ley de Little

• Relaciona los tres conceptos importantes del flujo:


• Througput (TP)
• Work-in-Progress (WIP)
• Lead Time (LT)

35
¿Cómo reducir el tiempo de ciclo?

• Dos formas:
• Aumentar el Througuput
• Reducir el Work-In-Progress
Work-In-Progress

WIP
LT =
TP
Lead Time

Throughput

36
Receta para el cambio a Kanban
Receta para el cambio a Kanban

1. Centrarse en la calidad (Focus on Quality)


2. Reducir el Work-In-Progress (Reduce Work-in-Progress)
3. Entregar con más frecuencia (Deliver Often)
4. Equilibrar la demanda con el rendimiento (Balance Demand against
Throughput)
5. Priorizar (Prioritize)
6. Atacar las fuentes de la variabilidad para mejorar la predictibilidad
(Attack Sources of Variability to Improve Predictability)

David J. Anderson, Kanban, Cap. 3

38