Si no está familiarizado con manufactura esbelta y las metodologías asociadas, 5S puede ser un poco un misterio para ti. Antes de sumergirme en explicarlo en detalle, y cómo se puede aplicar con grandes resultados al desarrollo de software, vale la pena ver de donde vino. Como probablemente sabes, Los procesos e ideas de Toyota se han vuelto famosos por una razón. Se las arreglaron para lograr resultados sorprendentes en una industria muy competitiva., con muchos menos recursos que su competencia. Como resultado, la gente quería saber cómo lo hacían. Una de las armas secretas de Toyota era el 5S, que adoptaron de Hirano en Japón e hicieron su propio. Hoy en día, es una parte clave de las metodologías lean y ayuda a las empresas de todo el mundo. Con una herramienta tan poderosa, podría pensar que habría mucha complejidad.. sin embargo, 5S es bastante simple.

¿Qué significan las 5S??

5S se compone de 5 palabras, cada uno comienza con S – Clasificar, Enderezar/Poner en orden, Brillar, Estandarizar y sostener. si, originalmente había palabras japonesas (Seiri, Seiton, Ponerse de pie, Seiketsu y mierda), pero trabajemos con las versiones en ingles. es mucho más fácil!

Cada una de estas palabras viene con una idea de cómo mejorar el trabajo que estamos haciendo para aumentar nuestra eficiencia y eficacia.. Suena prometedor, Correcto? Pero, ¿Cómo se pueden aplicar estas ideas al desarrollo de software?? Echemos un vistazo con más detalle..

Las 5S para software

Clasificar – El primer paso en 5S es eliminar cualquier elemento no deseado del área de trabajo. En un entorno de ingeniería, esto significaría herramientas y otros objetos del lugar de trabajo.. para software, es más probable que esto se aplique al espacio de trabajo de su computadora.

Por ejemplo, puede limpiar su escritorio y sistema de archivos, eliminando cualquier elemento no deseado para que pueda encontrar lo que está buscando más fácilmente. Eliminar el desorden de cualquier manera posible, siempre conduce a un resultado más eficiente en cualquier tipo de trabajo. Estoy seguro de que ha experimentado esto en el trabajo o en casa..

También puede aplicar esta idea a su IDE de codificación u otras herramientas que utiliza en el desarrollo de software., ya sea como desarrollador o gerente de proyecto.

  • Elimine proyectos o archivos no deseados que ya no son necesarios o relevantes
  • Elimine cualquier código muerto que no se haya utilizado en un proyecto (no estaba comprometido con el sistema de versiones, por ejemplo)
  • Eliminar el código comentado que ya no se usa (las versiones antiguas se almacenan de todos modos)

Como se puede ver, la idea es muy simple, pero los resultados pueden ser poderosos. Después de todo, manteniendo todo claro, limpio y bien ordenado siempre conduce a un mejor trabajo.

 

Enderezar – Esto se refiere a ordenar los artículos para que sean más fáciles de encontrar y más rápidos para trabajar con ellos.. La idea original estaba destinada a aplicarse a la alineación y disposición de herramientas en un lugar de trabajo., pero también podemos aplicarlos a nuestro mundo de computadoras virtuales.

Puede comenzar manteniendo sus herramientas más importantes y de uso común en el escritorio de su computadora o crear accesos directos para ahorrar tiempo al completar sus tareas..

Cavando un poco más profundo, los archivos y el código deben organizarse de tal manera que sean fáciles de "alcanzar". No agrupe toda su documentación en una carpeta etiquetada como "Documentación", dividirlo en proyectos y temas relevantes. El orden conduce a la eficiencia en todo lo que hacemos.

Lo mismo ocurre con el código, por supuesto, con cosas como espacios de nombres, y la ubicación lógica y el orden del código (métodos, objetos, jerarquía, etc.).

Estas pequeñas cosas pueden tomar tiempo para convertirse en un hábito al principio., pero cuando vuelves a buscar algo algunos días, Semanas o incluso años después, se alegrará de haberse tomado el tiempo para ordenar su espacio de trabajo..

 

Brillar – Mantener sus herramientas en buen estado de funcionamiento y eliminar el óxido o la suciedad fue algo inteligente en un taller de ingeniería.. Pero, ¿cómo se puede aplicar eso en el desarrollo de software??

El área más grande a la que esto se aplica es la limpieza y refactorización del código.. Por supuesto, la refactorización también se puede aplicar a la documentación y los procesos, si tú lo piensas.

La refactorización de código es algo que nunca queremos hacer en el software, pero sabemos que es bueno para nosotros. Algo así como comer nuestras verduras cuando era niño.

A medida que aumenta la cantidad de archivos y objetos en un proyecto o pieza de software, también lo hace la complejidad y la ineficiencia de ese código heredado.

Entonces, en lugar de ignorarlo, siempre debes dejarte un poco de tiempo en cada proyecto para mejorar tu código a través de la refactorización. Agregue una interfaz a ese código de uso común, o cree un nuevo objeto para almacenar acciones de uso frecuente. Sabes hacer tu trabajo, pero ¿tiene estas ideas en mente durante el ritmo frenético del desarrollo ágil de software??

 

Estandarizar – Este es el paso cuatro del proceso 5S, y en muchos sentidos toma todo lo anterior 3 en cuenta. La idea aquí es estandarizar todo lo que haces a través de procedimientos comunes.

Entonces, en lugar de solo hacer lo primero 3 una vez, debe tener un proceso que describa cómo se deben realizar y mantener estas tareas de forma regular. De lo contrario, como todos sabemos, la decadencia se establecerá de nuevo y habrás perdido el tiempo.

Esto significa que alguien debe documentar los procesos que está utilizando

  • para organizar la estructura de su código
  • para refactorizar el código
  • escribir comentarios en el código

También podría significar escribir un documento introductorio sobre qué herramientas utilizan los equipos de desarrollo o proyecto., cómo configurarlos y dónde almacenarlos en su escritorio (para máxima eficiencia).

La documentación y los procesos son la clave para lograr siempre resultados eficientes y repetibles en cualquier negocio.

 

Sostener – La última S es quizás la más importante. Es la idea de que toda la metodología 5S no se olvide en el día a día..

Esto significa que es necesario realizar auditorías para comprobar que los procesos, los procedimientos y la calidad se mantienen en todo momento. Comprobar también que las 4S anteriores se están llevando a cabo con la diligencia esperada.

Siempre ocurre que este tipo de tareas (documentación, procesos, reseñas, auditorías) parecen demasiado lentos e irrelevantes, por lo que se ignoran u olvidan fácilmente. Por eso esta última pieza es tan crítica.. Sin ello, puede olvidarse incluso de comenzar con el enfoque 5S para empezar.

 

Como puede ver ahora, muchos de los enfoques utilizados en el mundo de la ingeniería son fácilmente aplicables en cualquier escenario comercial, incluido el mundo del software.. las ideas son simples, pero los resultados pueden ser increíbles. Entonces, ¿Por qué no tomar estas ideas y ver cómo puede aplicarlas a su desarrollo de software hoy?. Es posible que se sorprenda de lo rápido que usted y su equipo los adoptan., especialmente una vez que ves los resultados!

Sobre el Autor

Reese Bourgeois es el Director General de Consultoría de Flujo, un consorcio de consultores experimentados con experiencia comprobada en ayudar a las organizaciones a lograr mejoras drásticas en sus procesos comerciales y de liderazgo.

Una publicación de blog representa la opinión personal de los autores.
y puede no coincidir necesariamente con las políticas oficiales de Nesma.
Comparte este artículo en:

1 Comentarios

Deja un comentario
  1. hola reese, gracias por tu blog. Usted dice que los enfoques 5S dan como resultado una mayor productividad y los resultados pueden ser increíbles. ¿Es posible respaldar eso con datos y/o análisis?? Por ejemplo, cuál sería el efecto promedio en un equipo de desarrollo en términos de una mejora en horas por punto de función después de adoptar los enfoques 5S?

Deja una respuesta