Usando Kanban para el desarrollo de WordPress


¿Es usted una persona de "limpiar la pizarra"? ¿Cuántas veces ha dicho que comenzará de nuevo el lunes, el primero del mes o el año nuevo? Aquí hay un secreto: nunca funciona.

Realmente nunca puedes limpiar la pizarra, ni deberías querer hacerlo. Has llegado hasta aquí gracias al trabajo que has realizado en el pasado. Sí, probablemente haya una forma más eficiente de hacerlo, pero no la descubrirá deshaciendo todo el progreso que ha realizado.

Por eso me encanta el sistema kanban. Empecé a usarlo a principios de 2019 para revisar mi flujo de trabajo y estoy enganchado. Es perfecto para el tipo de equipo que necesita mantenerse organizado y al tanto del trabajo, pero que también sabe que las cosas cambiarán, mucho.

En este artículo, me centraré en kanban para los equipos de desarrollo de WordPress, pero algunas de las muestras que utilizo son de mis propios tableros kanban, que se crean en torno a mis flujos de trabajo de escritura.

¿Qué es Kanban?

Para comprender el desarrollo de kanban, primero debe comprender el pensamiento esbelto.

Pensamiento magro no es una metodología. En cambio, es una forma de pensar que se basa en valores que enmarcan el contexto de un proyecto. Los siete valores lean son:

  1. Elimine el desperdicio al deshacerse de todo lo que no agregue valor al proyecto.
  2. Amplíe el aprendizaje recopilando comentarios periódicamente para mejorar los procesos
  3. Decidir lo más tarde posible, es decir, después de recopilar toda la información para fundamentar las decisiones.
  4. Entregue lo más rápido posible sin sacrificar la moral del equipo o la calidad del producto; se trata de eficiencia y sostenibilidad, no solo de velocidad.
  5. Capacite a los equipos, garantice la salud y la energía de los desarrolladores y promueva en función de la experiencia y el liderazgo.
  6. Cree experiencias intuitivas y valiosas.
  7. Vea el panorama completo evaluando el proyecto completo, no solo sus características individuales.

Los equipos que emplean el pensamiento Lean suelen utilizar el método Kanban para la gestión del flujo de trabajo. Puede configurar un tablero kanban con fichas impresas o puede crear un tablero kanban digital con una herramienta como Asana o Trello. Cree un flujo de trabajo configurando diferentes columnas, luego mueva la tarjeta a través del flujo de trabajo de izquierda a derecha a medida que se completan las tareas.

kanban wordpress

Fuente: Asana

El tablero kanban más básico tiene tres columnas:

  • Que hacer
  • Haciendo
  • Hecho

Con los tableros kanban avanzados, puede tener columnas adicionales y cada tarjeta puede tener su propio conjunto de subtareas para completar. A continuación, se muestra un ejemplo de algunas de las subtareas en una tarjeta en mi Asana:

desarrollo kanban

Dado que Kanban tiende a rastrear elementos de trabajo más grandes en lugar de tareas pequeñas, es común necesitar varias subtareas e instrucciones en una tarjeta, junto con fechas de inicio y finalización, asignatarios y documentos de soporte.

Principios Kanban

El desarrollo Kanban es una forma de configurar procesos en evolución; no exige cambios inmediatos al realizar tareas específicas en el momento. Tampoco comienza con una pizarra en blanco. En cambio, se basa en los procesos actuales y la estructura de su equipo y los adapta.

Hay cuatro principios básicos de kanban:

  1. Comience con sus procesos actuales. Incluya los pasos, políticas y reglas que sigue actualmente. Esto puede cambiar en el futuro, pero ese es el objetivo del desarrollo kanban: evolucionar.
  2. El equipo debe comprometerse con cambios incrementales y evolutivos.
  3. Respete y mantenga los cargos, roles y responsabilidades, al menos por ahora. La estructura del equipo puede cambiar a medida que modifica sus procesos.
  4. Anime a los miembros del equipo en todos los niveles a liderar cuando sea apropiado.

Prácticas Kanban

Hay seis prácticas kanban básicas:

  1. Visualice sus proyectos creando columnas que coincidan con cada paso de su proceso actual.
  2. Establezca un límite para limitar la cantidad de elementos de trabajo activos que hay en cada columna. Esto ayuda a crear un ritmo realista y permite a los miembros del equipo concentrarse en los elementos de trabajo más importantes sin sentirse distraídos o abrumados.
  3. Mida la rapidez con que se mueven las tarjetas en todos los ámbitos y evalúe si existen cuellos de botella o desperdicio.
  4. Defina los pasos, políticas y reglas del proceso para que todos los miembros del equipo estén informados.
  5. Implemente ciclos de retroalimentación y realice los ajustes necesarios en el proceso.
  6. Mejore colaborativamente y evolucione rápidamente. Esta práctica combina los cuatro principios para que el equipo pueda tomar decisiones como un todo.

Kanban para el desarrollo de WordPress

Creando un tablero

Para usar Kanban para el desarrollo de WordPress, deberá dividir su proceso en pasos de desarrollo específicos. La forma más sencilla de hacer esto es mirando una función que ya ha entregado y enumerando cada paso amplio del desarrollo. A continuación, se muestra un ejemplo del ingeniero de software Harrison Ferrone:

desarrollo kanban

Luego, cada paso se usa para crear una columna en su tablero kanban. A continuación, se muestra un ejemplo de tablero kanban de Asana que se usa para el seguimiento de errores:

desarrollo kanban

Aquí hay más ideas de columnas para su tablero kanban de desarrollo de WordPress:

  • Backlog: Ideas que pueden implementarse o no
  • Requerido: Ideas para desarrollar
  • Listo para el diseño: Ideas que se aclaran y que tienen luz verde para el siguiente paso
  • En curso: puede tener columnas separadas "En curso" para las etapas de diseño, codificación y producción.
  • Listo para revisión: puede tener columnas separadas "Listo para revisión" para cada etapa
  • En revisión: puede tener columnas separadas "En revisión" para cada etapa.
  • Cambios necesarios: artículos devueltos que necesitan más trabajo
  • Hecho

También puede clasificar las cartas según su prioridad. Herramientas como Asana y Trello tienen códigos de colores para este propósito. Puede priorizar categorías como Errores, Funciones del cliente y Problemas del cliente, sin embargo, funciona mejor para su equipo.

Establecimiento de límites de trabajo en curso

Configurar el tablero kanban es solo el comienzo de la organización del flujo de trabajo. Todo el equipo de desarrollo debe comprender cómo utilizar el tablero kanban y qué se espera de ellos en cada etapa. Esto es especialmente importante si observa cuellos de botella o columnas que se acumulan con trabajo a un ritmo más rápido que otras columnas. Es probable que deba establecer un límite de trabajo en progreso (WIP) para evitar que esto suceda, asumiendo que confía en que los miembros de su equipo están trabajando con la suficiente eficiencia.

Por ejemplo, el paso "Probar y validar" puede ser un cuello de botella si esta parte del proceso lleva más tiempo que las otras partes. La solución es establecer un límite de trabajo en curso para esa columna, la columna anterior o todo el tablero kanban. Puede limitar la columna "Crear función" y "Probar y validar" a cinco cada una. De esa manera, nunca se crean más de cinco funciones a la vez y no más de cinco funciones que requieren pruebas y validación a la vez. Una vez que finalizan las pruebas y la validación de una función, se puede mover otro elemento de trabajo de la columna "Generar". Esto mantiene el flujo de trabajo en movimiento sin quedar atrapado en ningún lugar.

De acuerdo a Kanbanizar, una buena regla para establecer límites WIP es multiplicar sus desarrolladores por dos. Si tiene diez desarrolladores, establecerá un máximo de 20 proyectos para un tiempo determinado. Los límites más bajos son mejores para la eficiencia, pero no los establezca tan bajos que su equipo termine sin tener nada que hacer mientras esperan que otros desarrolladores completen los elementos de trabajo.

Mejores prácticas de desarrollo Kanban

Incluya los detalles y la justificación detrás de los límites WIP. Puede escribir esto directamente en la pizarra para que los miembros del equipo puedan consultarlo cuando sea necesario. Por ejemplo, uno de mis clientes tiene instrucciones en una tarjeta en la parte superior de una columna para explicar cuántos artículos se pueden reclamar por día y los días y horas en que los artículos se agregan al tablero durante la semana.

Aclare cuándo una carta debe moverse de un tablero al siguiente. Tengo esto integrado en las subtareas de algunas de mis tarjetas, y sé que solo debo mover la tarjeta una vez que se completen las subtareas anteriores:

desarrollo kanban

También puede establecer parámetros más específicos. Por ejemplo, solo puedo mover una tarjeta a la columna "Completado" si agregué el enlace publicado del artículo a mi cartera. y si el artículo está pagado.

Expanda el flujo de trabajo para tener en cuenta los elementos de trabajo que van y vienen entre columnas. Supongamos que tiene un elemento en la columna "Revisión de código". Si falla la revisión del código, tendrá que volver a la columna anterior, que probablemente sea algo así como "Función de compilación". Si esto sucede con frecuencia, tiene un nuevo tipo de cuello de botella, pero si establece un límite de WIP bajo, no podrá realizar el trabajo suficiente.

La solución es crear nuevas columnas, como "Revisión de código fallido" y "Revisión de segundo código". Luego, le diría a su equipo que si una función pasa la revisión inicial del código, puede ir directamente al siguiente paso natural y omitir las dos columnas adicionales que acaba de agregar. O bien, puede colocar una nueva columna al comienzo del flujo de trabajo para recopilar las revisiones fallidas y llevarlas nuevamente a través del proceso, o puede agregar una columna de "Solución" dentro del proceso para abordar esos problemas. La mejor solución es la que trabaja con su proceso personalizado.

Terminando

No existe un tipo de tablero kanban, ni siquiera para dos equipos de desarrollo que hacen exactamente lo mismo. Eso es lo bueno de esto: puede adaptarlo completamente a sus necesidades y luego adaptarlo a medida que sus necesidades crezcan y cambien. En general, el desarrollo de kanban es excelente para los equipos que necesitan crear lo que los usuarios quieren; entregar esas funciones a tiempo; y cree un ritmo de flujo de trabajo que sea sostenible.

Ahora que su flujo de trabajo de desarrollo es fluido, aprenda cómo configurar su espacio de trabajo digital para una mayor productividad.