¿Qué es Kanban? Tarjetas, tableros, principios y prácticas fundamentales

¿Qué es Kanban?

Kanban es un marco muy popular para el desarrollo en la metodología de desarrollo de software ágil. Proporciona una forma transparente de visualizar las tareas y la capacidad de trabajo de un equipo. Utiliza principalmente tableros físicos y digitales para permitir a los miembros del equipo visualizar el estado actual del proyecto en el que están trabajando.

Kanban se originó en Toyota en la década de 1940. El significado de Kanban en japonés es "vallas publicitarias". El tablero Kanban tiene columnas y tarjetas de historias. Las columnas no son nada, pero los estados del flujo de trabajo y las tarjetas no son más que una demostración de la tarea real que está realizando un miembro del equipo.

En este tutorial de Kanban, aprenderá:

  • ¿Qué es Kanban?
  • ¿Cuándo usar Kanban?
  • Tarjetas Kanban
  • Tablero Kanban
  • Flujo de trabajo Kanban
  • Los cuatro principios de Kanban
  • Las seis prácticas básicas de Kanban
  • Sistema basado en extracción
  • Plazo de ejecución y tiempo de ciclo
  • Diagrama de flujo acumulativo (CFD)
  • Limitación de WIP (trabajo en curso)
  • Scrum vs. Kanban

¿Cuándo usar Kanban?

Estas son las razones para usar el método de desarrollo Kanban:

  • Kanban se puede utilizar en cualquier dominio y se puede utilizar de forma muy eficaz en el desarrollo de software. La gestión de proyectos Kanban ayuda a mejorar la eficiencia del equipo.
  • Es un sistema basado en extracción. Las tareas se eliminan tan pronto como una persona está libre.
  • Kanban debe usarse cuando desee publicar su trabajo en cualquier momento. Requiere ramificación de git, pero es factible.
  • Kanban debe usarse cuando desee cambiar las prioridades sobre la marcha. Para eso, todo lo que necesita hacer es poner esta historia en la parte superior de la cola de tareas pendientes.
  • Debe usarse cuando desee visualizar su trabajo y desee ver el progreso de sus tareas visualmente.

Tarjetas Kanban

El sistema Kanban recomienda la visualización del trabajo. Sugiere el uso de la pizarra física y digital.

Tarjetas Kanban

Las tarjetas Kanban son piezas esenciales en el tablero Kanban, ya que representan el trabajo en el que está trabajando el equipo. Estas cartas tendrán

  1. Prioridad
  2. Dueño
  3. Escribe
  4. Fecha de vencimiento

Una columna en el tablero Kanban representa la etapa de trabajo y puede colocar un límite de WIP (Trabajo en progreso) en la columna. El límite de WIP significa la cantidad máxima de tarjetas que pueden permanecer en esa columna .

Dado que la gestión de proyectos Kanban utiliza un sistema basado en extracción, cuando un desarrollador está libre, puede extraer una tarjeta de la columna de tareas pendientes a la columna de desarrollo.

Tablero Kanban

Kanban Board es una herramienta de gestión de proyectos ágil que ayuda a implementar Kanaban para gestionar proyectos con fines personales y comerciales. Es un tablero físico o digital (JIRA) diseñado para ayudar a los equipos a visualizar su trabajo en diferentes etapas y procesos. También ayuda a representar las etapas del trabajo con columnas usando tarjetas.

Tiene columnas que representan el estado de la obra como

  1. Hacer,
  2. Dev
  3. Pruebas
  4. Hecho.

Cada una de estas columnas puede tener tarjetas <= el límite WIP. Las cartas representan el trabajo real.

Puede utilizar números positivos para limitar el trabajo en curso, y este número límite se puede colocar en la parte superior de las columnas en los tableros Kanban físicos y digitales. Cualquier individuo del equipo puede administrar el estado de su tarjeta y todo el equipo puede visualizar el flujo de trabajo. A continuación, en este tutorial de Kanban, aprenderemos sobre el flujo de trabajo Kanban.

Flujo de trabajo Kanban

El flujo de trabajo Kanban es un conjunto de pasos que ayuda a los equipos a definir políticas y principios explícitos en Kanaban. Representa las reglas y procedimientos mientras se realiza el trabajo en las distintas etapas de los ciclos de desarrollo y entrega. El flujo de trabajo Kanban consta de procesos paso a paso entre el inicio y la entrega de una tarea en particular.

El principio básico que sigue Kanban es "dejar de empezar, empezar a terminar". Con la ayuda de los límites de WIP, se hace más trabajo. Hay estados y flujos de trabajo Kanban personalizables disponibles en cualquier herramienta moderna como JIRA.

A continuación se muestran los estados básicos que siguen muchos equipos de software para la gestión de su flujo de trabajo.

Estados Comprensión de tareas
Hacer Las tareas llegan aquí por primera vez en este estado.
Listo para el análisis Analice la tarea y agregue requisitos por completo.
Listo para el desarrollo El análisis se completó y el desarrollo puede comenzar.
En el desarrollo Se están desarrollando tareas.
Listo para probar Se completó el desarrollo y ahora pueden comenzar las pruebas.
En la prueba Se están probando tareas.
Listo para su lanzamiento Prueba completada; la liberación puede ocurrir.
Liberado / Hecho Publicado.

Los cuatro principios de Kanban

A continuación se muestran los cuatro principios básicos de Kanban:

  1. Comience con lo que tiene ahora : el sistema Kanban sugiere trabajar de forma incremental y comenzar con lo que tiene actualmente. Dado que una de sus prácticas es mejorar continuamente, debes mejorar el sistema gradualmente.
  1. Acepte perseguir un cambio evolutivo incremental: Kanban recomienda un cambio incremental en el proceso, y no debe hacer un gran cambio en el proceso de una sola vez.
  1. Respete el proceso, los roles y las responsabilidades actuales: Una vez más, comience con lo que tiene ahora y cambie el proceso, el rol y las responsabilidades de manera incremental.
  1. Fomentar actos de liderazgo en todos los niveles : cada individuo puede actuar como líder y aportar ideas para mejorar la eficiencia del sistema Kanban en general. No debe pensar que esta es una actividad de nivel gerencial, e incluso el miembro más joven del equipo puede actuar como líder.

Las seis prácticas básicas de Kanban

Las siguientes son las principales seis prácticas centrales de Kanban:

  1. Visualice el flujo de trabajo : este principio sugiere tener un tablero Kanban (físico o digital) para visualizar el flujo de trabajo. Cada individuo de un equipo debe ver su tarjeta y las tarjetas de otros miembros del equipo. Puede mover sus tarjetas en diferentes columnas según la imagen de arriba. Aporta mucha transparencia dentro del equipo y también facilita la resolución de bloqueadores.
  1. Limite el trabajo en progreso : Kanban es un sistema basado en extracción y mejora la eficiencia de un equipo para limitar el trabajo en progreso y tener tareas que el equipo puede completar en el período de tiempo dado. Este límite de trabajo en curso se aplica desde el principio hasta el final del flujo de trabajo. Puede aplicar el límite en la parte superior de la columna utilizando un número entero positivo.
  1. Centrarse en el flujo : este principio se centra en el flujo y en cualquier interrupción. Si hay interrupciones o bloqueos, deben arreglarse permanentemente.
  1. Políticas explícitas : las políticas se pueden establecer en equipo para reducir la repetición y centrarse en las áreas que requieren atención o donde es más eficaz.
  1. Bucle de retroalimentación : Los bucles de retroalimentación son muy esenciales en Kanban. No es solo dentro del equipo, sino entre varios equipos, entrenadores, etc. Esto ayuda a mejorar la salud general del sistema Kanban.
  1. Mejora continua : este es el principio central del sistema Kanban. Afirma que siempre se puede mejorar el proceso y eso dará como resultado una mejor eficiencia.

Sistema basado en extracción

Kanban es un método basado en extracción en el que las tareas se extraen en lugar de empujarlas. Tan pronto como haya completado su tarjeta actual, puede extraer una nueva tarjeta de la columna anterior del tablero Kanban.

Con el límite de WIP, Kanban ayuda a mejorar el tiempo de entrega y el tiempo de ciclo. Debe haber la menor brecha posible entre estos dos tiempos. Por ejemplo, tenemos 5 desarrolladores y solo 1 probador; ¿Qué pasará en este caso? Siempre habrá muchas tarjetas que requieren prueba, y estarán inactivas y esperando.

Para superar los problemas mencionados anteriormente y mejorar la eficiencia, Kanban sigue el enfoque basado en extracción con límites WIP, donde habría un número limitado de tarjetas para extraer.

Por lo tanto, un evaluador sacará una tarea de la etapa "lista para la prueba" cuando haya terminado su tarea actual. Con el límite de WIP en columnas Kanban (etapas de desarrollo), no tendrá muchas tarjetas desatendidas en el flujo de trabajo Kanban.

El sistema basado en tracción también ayuda a encontrar la velocidad correcta para el equipo. Con la velocidad correcta en su lugar, el equipo se desempeñará mejor.

Plazo de ejecución y tiempo de ciclo

En el método Kanban, el tiempo de entrega y el tiempo de ciclo se utilizan ampliamente, hay una diferencia entre los dos y es importante comprenderlo para evitar la confusión.

Tiempo de espera Tiempo del ciclo
El tiempo de espera se mide como el tiempo entre la llegada de la tarea a su flujo de trabajo y su salida del flujo de trabajo, lo que significa que se ha liberado. El tiempo de ciclo se mide como el tiempo entre la llegada de la tarea en el estado "en progreso" y la llegada de la tarea en "lista para su liberación".

Aquí también es importante comprender que no se debe incluir el tiempo que transcurre entre la preparación para el lanzamiento y el lanzamiento real.

Tiempo de ciclo = trabajo en curso / rendimiento

En el escenario ideal, la brecha entre el tiempo de entrega y el tiempo de ciclo debería ser mínima, y ​​Kanban usa un diagrama de flujo acumulativo (CFD) para medir los datos históricos de tiempo de ciclo y de anticipación.

Diagrama de flujo acumulativo (CFD)

CFD es un gráfico que está disponible en todas las herramientas de gestión de flujo de trabajo líderes como JIRA. Este gráfico mide la cantidad total de tarjetas / tareas de trabajo que ingresaron al flujo de trabajo y acumularon tarjetas / tareas completadas a lo largo del tiempo.

Le ayuda a tener una estimación del tiempo de entrega promedio y el tiempo de ciclo para un tiempo preespecificado.

El diagrama de CFD le dará indicadores o áreas problemáticas para corregir. Le proporcionará una imagen clara y basada en este diagrama. Puede corregir el tiempo de espera y el tiempo de ciclo de su equipo.

Diagrama de flujo acumulativo Kanban

  1. Tiempo de entrega : es la duración entre la llegada de una nueva tarjeta a su flujo de trabajo y su salida final del flujo de trabajo.
  2. Tiempo de ciclo : es el tiempo que transcurre entre la llegada de la tarjeta al estado operativo y el momento en que la tarjeta está lista para su lanzamiento.
  3. WIP : Work in progress (WIP) limita la cantidad máxima de elementos de trabajo en las diferentes etapas del flujo de trabajo.
  4. Rendimiento : es el rendimiento real e indica el número real de tarjetas entregadas en un período de tiempo determinado.
  5. Rendimiento = WIP / tiempo de ciclo

Limitación de WIP (trabajo en curso)

En la metodología de desarrollo Kanban, WIP limita la cantidad de tareas / tarjetas en las que puede trabajar un miembro del equipo o todo al mismo tiempo.

Los límites de WIP aseguran que el equipo estabilice su trabajo y aumente la naturaleza predictiva, que es esencial en el sistema basado en extracción. Por lo general, la decisión sobre el límite de WIP la toma el propio equipo.

Razón para establecer los límites de WIP:

A continuación, se incluyen razones para establecer los límites de WIP:

  • Cambia el enfoque en hacer las cosas a medida que un individuo se enfoca en una sola tarea a la vez.
  • Ayuda a los equipos a comprender su capacidad.
  • Mejora la productividad y el tiempo de ciclo.
  • Ayuda a evitar las tareas acumuladas (en modo de espera).
  • Ayuda en el movimiento del flujo de trabajo y las tareas se mantienen en movimiento.
  • También ayuda a resolver los bloqueadores ya que un individuo no cambia entre diferentes tareas.

Scrum vs. Kanban

Aquí están las diferencias importantes entre Scrum Vs. Kanban

Melé Kanban
Scrum enfatiza la planificación . Comienza con la planificación del sprint y termina con la retrospectiva del sprint. Se llevan a cabo muchas reuniones que ayudan a asegurar que el equipo esté alineado con los siguientes pasos, prioridades y aprendizajes de los sprints anteriores. Kanban está abierto a realizar cambios sobre la marcha. Significa que hay menos rigidez y las cosas pueden cambiar con frecuencia .
Recomienda la recopilación de medidas de tiempo realizadas durante los sprints. Kanban recomienda gráficos para obtener una descripción general del progreso del equipo a lo largo del tiempo.
Scrum ya no pide compromiso a los equipos. En cambio, se trata de los objetivos y pronósticos del sprint. Kanban se basa en el recuadro de tiempo y los pronósticos .
Se enfatiza en la planificación, por lo que la estimación tiene un papel muy importante en Scrum. Kanban no tiene requisitos obligatorios para la estimación.
Cada individuo tiene su rol y responsabilidades. No hay roles establecidos tan flexibilidad en términos de responsabilidades individuales.
Las iteraciones / Sprints tienen una duración fija. Esta duración varía de 2 semanas a 1 mes. Kanban no se basa en la duración . Esto se mide con respecto a los tiempos de ciclo.
Se requiere que los equipos comprometan una cantidad específica de trabajo. Compromiso no es necesario , es opcional para los equipos.
En este método, los equipos multifuncionales son importantes, ya que pueden lidiar con cualquier interrupción que pueda causar un cuello de botella en el desarrollo de software. Tener un equipo especializado es importante.
No es posible agregar elementos a iteraciones en curso. Se pueden agregar elementos nuevos fácilmente si la capacidad adicional está disponible.
Una acumulación de sprints es propiedad de un solo equipo . Varios equipos pueden compartir el tablero Kanban.
Los entregables se determinan mediante sprints , en los que un conjunto de trabajo debe completarse y estar listo para su revisión. Los productos y procesos se entregan continuamente según sea necesario. Por lo tanto, el proceso de prueba y revisión continúa simultáneamente.
El método de desarrollo de software Scrum se centra en el backlog . El método Kanban se centra por completo en el panel de procesos .
Cada miembro del equipo tiene un rol específico en Scrum Master para decidir los plazos, el propietario del producto establece metas y objetivos, y los miembros del equipo realizan el trabajo de desarrollo. No hay roles predefinidos para un equipo. Sin embargo, todavía puede haber un Gerente de Proyecto; se anima al equipo a colaborar y trabajar en conjunto.
Ideal para proyectos con prioridades cambiantes . Ideal para equipos con prioridades estables que es poco probable que cambien con el tiempo.
Mide la producción usando la velocidad a través de sprints. Mide la producción utilizando el tiempo de ciclo o el tiempo exacto que se tarda en completar una pieza completa de un proyecto.
Scrum requiere un cambio completo del modelo tradicional al modelo Agile Scrum que se implementaría en el proyecto. Kanban no permite cambios drásticos en el proyecto.
Es un método ideal para proyectos con prioridades muy diversas . Más adecuado para equipos con prioridades estables .
En Scrum, todo el equipo se centra en colaborar y completar la tarea para proporcionar un trabajo de desarrollo de calidad. Los equipos trabajan para lograr metas y reducir el tiempo para completar todo el proceso. Por lo tanto, la reducción en el ciclo de tiempo es el mayor indicador de éxito aquí.
El énfasis de Scrum en sus horarios ; No se pueden agregar nuevos elementos a las iteraciones en curso. Kanban es más iterativo por naturaleza, ya que no tiene plazos específicos . De modo que se pueden agregar continuamente nuevos elementos siempre que haya capacidad adicional disponible.
El trabajo total se realiza en lotes / Sprints . Todo el proyecto se realiza en el movimiento de flujos de elementos de trabajo de un solo subproceso .
Scrum Master actúa como solucionador de problemas. Kanban anima a que cada miembro del equipo sea un líder y comparta la responsabilidad entre todos.
Scrum prescribe iteraciones en cajas de tiempo . Kanban se centra en planificar una duración diferente para la iteración individual.
Scrum ayuda a las empresas a ahorrar tiempo y dinero . El método Kanban se centra en la mejora continua , la productividad y la eficiencia.
Logre una comunicación estable y consistente del desempeño en todos los niveles. Es más probable que los miembros del equipo logren sus objetivos mucho más fácilmente debido a la naturaleza visual de los tableros Kanban.
Los proyectos se codifican y prueban durante la revisión del sprint. Es más probable que los miembros del equipo logren sus objetivos mucho más fácilmente debido a la naturaleza visual de los tableros Kanban.
Es más fácil adaptarse a los cambios constantes debido a los sprints cortos y la retroalimentación regular. Está diseñado para una producción regular y constante , los cambios importantes en la demanda de los clientes pueden hacer que Kanban falle.
El costo total del proyecto es mínimo, lo que puede conducir a un resultado más rápido y económico . Si una tarea no se estima correctamente, el costo total del proyecto nunca será exacto . En tales casos, la tarea se puede distribuir en varios sprints.
Esta metodología requiere únicamente miembros del equipo con experiencia . Entonces, si el equipo está formado por personas que no son expertas, el proyecto no se puede completar a tiempo. No se asignan plazos específicos para cada fase, por lo que los miembros del equipo nunca tienen la idea de cuánto tiempo pueden tomar en cada fase.
En este método Agile Scrum, es más fácil entregar un producto de calidad en un momento programado. Está diseñado para una producción regular y constante, los cambios importantes en la demanda de los clientes pueden hacer que Kanban caiga.
El plan del proyecto nunca perturbará incluso si un miembro del equipo deja el equipo. Si alguno de los miembros del equipo se retira durante el desarrollo, puede dañar el desarrollo del proyecto .
Las reuniones diarias a veces frustran a los miembros del equipo. El tablero Kanban obsoleto puede generar problemas en el proceso de desarrollo.
Los proyectos grandes se pueden dividir fácilmente en sprints fácilmente manejables.

Resumen:

  • Definición de Kanban: Kanban se define como una metodología de desarrollo ágil para desarrollar software, automóviles, bienes, medicamentos, zapatos o cualquier otro trabajo de fabricación.
  • Kanban usa el tablero Kanban para visualizar el trabajo. Utiliza columnas como etapas (tareas pendientes, desarrollo, pruebas, etc.) y tarjetas como elemento de trabajo.
  • La metodología Kanban admite el tablero físico y digital para la visualización.
  • Kanban es un sistema basado en extracción y los miembros del equipo extraen las tarjetas de la etapa anterior a las etapas actuales.
  • El método Kanban utiliza el diagrama CFD para comprender el tiempo de entrega y el tiempo de ciclo del equipo. Este gráfico ayuda a los equipos a arreglar la brecha entre estos dos tiempos y mejorar la eficiencia.
  • Metodología de desarrollo Kanban, WIP limita la cantidad de tareas / tarjetas en las que puede trabajar un miembro del equipo o todo al mismo tiempo.
  • Los cambios en los límites de WIP se centran en hacer las cosas como un individuo se centra en una sola tarea a la vez.

Articulos interesantes...