Lean Software Development

Lean Software Development

Apoyado por el reciente surgimiento de la comunidad ágil Lean Software Development, ofrece un marco teórico basado en principios y experiencias para el desarrollo de prácticas ágiles de gestión de software. 

1. Eliminar el desperdicio

  • Eliminar las actividades que no aportan valor al desarrollo, algunos ejemplos:
  • Exceso de documentación
  • Tareas no solicitadas por el cliente
  • Mayor cantidad de líneas de código no significa que es mejor, al contario implica mayor esfuerzo en las tareas de testeo y mantenimiento

2. Construir con calidad

  • Técnicas como TDD (Test Driven Development) ayuda a que los stakeholders (clientes), programadores, tester establezcan con mejor precisión los requisitos funcionales y elaboren pruebas de aceptación antes de escribir el código.
  • El programador es responsable de su propio desarrollo. NO es correcto esperar a que las pruebas o los procedimientos de aseguramiento de calidad descubran los errores.
  • Fomentar el desarrollo de pruebas automatizadas.
  • Refactorización del código, eliminar duplicidades.

3. Compartir conocimiento

Conocer lo que necesita el cliente requiere conocimiento, dedicación y esfuerzo. Desarrollar un producto que no es útil y no cumpla con las necesidades del cliente es el mayor desperdicio.

Desarrollar software implica un proceso de aprendizaje: entender qué es lo desea el cliente qy cómo entregar la mejor solución posible. Un desarrollo incremental aporta cuantiosa y frecuente retroalimentación.

4.  Diferir el compromiso

En los proyectos ágiles que inician con una visión que evoluciona con el desarrollo, el compromiso con el cliente se ratifica y evoluciona en la misma medida que se van concretando y comprometiendo los incrementos del producto.

5. Entregar rápido

Entregas rápidas a los clientes con un código operativo desde etapas tempranas. El código debe ser desarrollado con calidad, no tiene sentido mantener una velocidad importante de entrega, si este no cuenta con calidad.

6. Respetar a las personas

Lean se basa en el respecto por las personas, elemento principal y diferenciador de cada organización.

Estar suficientemente capacitadas y ser responsables de los procesos en los que intervienen, de modo que cuando resultan necesarios cambios y mejoras, cada persona colabora en su desarrollo.

7.  Optimizar el todo

Lean invita a contemplar todo el flujo de valor, en lugar de hacerlo en cada etapa. Lean demostró que un flujo de “una pieza” (por ejemplo, enfocarse en construir un ítem de manera completa) es un proceso más eficiente que concentrarse en construir las partes separadas de forma rápida.

Lubaris Info 4 Media S.L. (2014). Gestión de Proyectos Scrum Manager. Obtenido de http://wwwscrummanager.net