15 Lecciones: Similitudes entre el desarrollo de software y por qué Lean fracasa [3/3]

By Ana Cruz • December 22, 2017

Artículo escrito por: Jon Miller

Traducción: Ana Cruz

Muchos aseguran que el 95% de las transformaciones Lean fracasan. ¿Cómo puede ser esto posible? El artículo titulado The Coming Software Apocalypse en el Atlantic Monthly habla sobre lo que nos ofrece el mundo del desarrollo de software. Este artículo es último de una serie de tres. 

Lee el artículo #2 dando clic Aquí.

Lee el artículo #1 dando clic Aquí.

Lección #11 Complejidad invisible

A diferencia de las cosas físicas, el software es invisible, también lo es la complejidad y esto hace que los problemas sean invisibles también. Un neumático que es plano se ve plano, mientras que un software descompuesto se verá como cualquier otro software. Lean fracasa cuando los problemas no se exponen vigorosamente, se ven pero los descartamos u ocultamos.

Lección #12 Sistema de escalamiento descompuesto

¿Cómo funcionaria nuestra luz del sistema Andon o señal de anormalidad si la conectaremos a la misma fuente de energía que se supone nos alertaría si el sistema Andon se descompone? Nunca recibiríamos la señal ¿verdad? En el caso de los softwares tanto las ventas como los problemas del software en si también son softwares o programas por lo cual también tienen errores y no son seguros. Sería como poner a nuestros gerentes menos confiables, menos preparados, más tradicionales, los que no les importa ser despedidos  a cargo de cada punto de la cadena de escalamiento. Obviamente Lean no duraría mucho.

Lección #13 Muy alejados de la Resolución de Problemas

Necesitamos poder preguntarle a la gente ¿Qué problema estamos tratando de resolver? Y obtener la misma respuesta si queremos construir un sistema de administración eficiente juntos. En el caso del software los programadores están demasiado ocupados escribiendo instrucciones para una máquina y haciendo que su código funcione. "el problema es que los ingenieros de software no entienden el problema que están tratando de resolver y no les importa" según Leveson, un experto en seguridad de software del MIT. Son uno o mas pasos eliminados del problema que el software pretende resolver. Mientras más grande es la distancia, menos probable es que entendamos el problema y lo podamos solucionar y definitivamente esto nos llevará a que Lean fracase.

Lección #14 Crear herramientas que hacen que la codificación sea necesaria

Eric Bantégnie, fundador de Esterel Technologies, un desarrollador de herramientas para la construcción  de software de seguridad crítica dijo: "no estoy seguro de que la programación tenga que existir en absoluto. O al menos desarrolladores de software". Pare él, el rol de un desarrollador de software era crear herramientas que eliminaran la necesidad de desarrolladores de software. Lo comparo con la construcción de autos a mano, como se hacia hace 100 años, porque nuestros ingenieros aún tenían que construir accesorios, dispositivos de asistencia técnica y herramientas eléctricas. El software en 10,000 líneas de códigos podría diseñarse manualmente pero en 30 millones de líneas ya no. El paralelo a la gestión Lean es muy claro. El papel del liderazgo en las transformaciones Lean exitosas es construir, adoptar y adaptas las herramientas y modelos de TPS que reducen la complejidad, brindan a las personas los recursos que necesitan para tener éxito y construyen una base de conocimiento reutilizaban específico para la organización.

Lección #15 Por qué no planeamos para el fracaso

Sobre la pregunta de por qué las personas eligen desarrollar un software complejo y no confiable aunque sepamos como hacerlos mejor, el artículo explica que "la intuición humana es pobre para estimar la verdadera probabilidad de combinaciones 'extremadamente raras' de eventos en los sistemas" operando a grandes escalas. Sobre estimamos nuestra posibilidad de éxito. El código implementa fielmente el diseño previsto, pero el diseño no fue creado para manejar escenarios 'raros o inesperados' en particular. La gestión Lean que crece complaciente, deja de desafiarse a si misma y no deja que la capacidad para responder a los cambios imprevistos lo cual tendrá como resultado el fracaso.

Muy bien, así llegamos al final de esta serie de artículos sobre  15 Lecciones de Similitudes entre el desarrollo de software y por qué Lean fracasa, esperamos que algunas de estas ideas provoquen conversaciones y análisis entre ustedes y los ayude a evitar fracasos Lean en sus empresas.