El desarrollo de software Lean tiene 7 principios, y el primero es "eliminar los despercicios". En realidad suena obvio, ¿no? Y sin embargo, ¿cuántas personas van a trabajar y terminan desperdiciando su tiempo? Algunos, pero no la mayoría. Entonces, ¿qué es el desperdicio, y como lo identificamos?

Algunos desperdicios son obvios. Pero hay otras formas de desperdicio que resultan más dificiles de identificar o resolver. En la mayoría de las organizaciones suele ser muy dificil identificar qué es desperdicio y qué no lo es. Algunos procesos y convenciones pueden parecer desperdicios, pero en realidad brindan valor verdadero en algún otro lado de la organización, o previenen que aparezcan otras formas de desperdicio más tarde. Otras actividades pueden parecer valiosas, pero en realidad no brindan ningún valor real.

El desarrollo Lean se originó en la producción Lean del Sistema de Producción Toyota (TPS) en Japón. En estos métodos se identifican 3 tipos de desperdicios, que en japonés se llaman Muda (improductivo), Mura (inconsistencia) y Muri (sobrecargas, sin sentido).

Al hacer esto, se identificaron 3 tipos particulares de desperdicio en la producción:

  1. Sobreproducción
  2. Transporte innecesario
  3. Inventario
  4. Movimiento
  5. Defectos
  6. Exceso de procesamiento
  7. Esperas

En el desarrollo de software Lean, Tom y Mary Poppendieck llevaron estos desperdicios a sus equivalentes para el desarrollo de software:

  • código o funcionalidad innecesarias
  • empezar más de lo que puede terminarse
  • demoras en el proceso de desarrollo de software
  • requerimientos poco claros o con cambios constantes
  • burocracia
  • comunicación lenta o inefectiva
  • trabajo parcialmente terminado
  • defectos o problemas de calidad
  • cambio de tareas

Una práctica común del desarrollo ágil son las retrospectivas, que son el mecanismo que utiliza el equipo al terminar una iteración corta para discutir qué salió bien, qué podría mejorarse y que podría hacerse diferente la próxima iteración.

El proceso iterativo de aprendizaje y mejora continua es una parte importante para identificar y eliminar desperdicios. Y esta es una de las ventajas clave del desarrollo ágil de software.

El desarrollo de software tradicional y varios métodos de gestión de proyectos fomentan un proceso de "lecciones aprendidas", pero en general ocurren al final del proyecto. En ese momento, se olvidan cosas, las personas cambian, el contexto cambió, y el equipo se desarmó para atender otros proyectos. Como resultado, el equipo podría no tener una oportunidad para poner en práctica lo aprendido.

Con el desarrollo ágil, las retrosprectivas le permiten al equipo hacer pequeñas mejoras de forma regular, y superar los cambios de a pasos pequeños que pueden ser accionados de forma inmediata.

La identificación y eliminación de desperdicios no debería ser un evento raro que ocurre cuando llegan consultores de re-ingeniería cada un par de años. Debe ser un proceso regular, embebido en iteraciones regulares, manejado por el equipo lo más posible, y encarado con pasos pequeños y constantes.

Hacer estas mejoras pequeñas-y-frecuentes crea una cultura de mejora continua - un entorno de aprendizaje - que a algunas organizaciones les podría brindar una ventaja real sobre sus competidores.

Entonces, si todavía no lo hacen, los insto a que empiezan a tener retrospectivas regulares. Esta es una de las prácticas ágiles más recomendables. Intenten fomentar un debate sano, con feedback constructivo, para lograr mejoras sensatas y accionables que realmente puedan ayudar a identificar desperdicios con más frecuencia y, más importante, logren eliminar este despercicio.

Traducido de Lean Principles #1: eliminate waste, por Kelly Waters.

Inspiración.

"Si tú tienes una manzana y yo tengo una manzana e intercambiamos las manzanas, entonces tanto tú como yo seguiremos teniendo una manzana cada uno. Pero si tú tienes una idea y yo tengo una idea, e intercambiamos las ideas, entonces ambos tendremos dos ideas"

Bernard Shaw