Si vous n'êtes pas familier avec fabrication au plus juste et les méthodologies associées, 5S pourrait être un peu un mystère pour vous. Avant de plonger dans l'explication en détail, et comment il peut être appliqué avec d'excellents résultats au développement de logiciels, ça vaut le coup de voir d'où ça vient. Comme vous le savez probablement, Les processus et les idées de Toyota sont devenus célèbres pour une raison. Ils ont réussi à obtenir des résultats étonnants dans une industrie très compétitive, avec beaucoup moins de ressources que leurs concurrents. Par conséquent, les gens voulaient savoir comment ils avaient fait. L'une des armes secrètes de Toyota était le 5S, qu'ils ont adopté à Hirano au Japon et ont fait leur propre. De nos jours, c'est un élément clé des méthodologies lean et aide les entreprises du monde entier. Avec un outil aussi puissant, vous pourriez penser qu'il y aurait beaucoup de complexité. pourtant, 5S est en fait assez simple.

Que signifient les 5S?

5S comprend 5 mots, chacun commençant par S – Trier, Redresser/Régler dans l'ordre, Briller, Normaliser et pérenniser. Oui, il y avait à l'origine des mots japonais (Seiri, Séiton, Se lever, Seiketsu et Shitsuke), mais travaillons avec les versions anglaises. C'est beaucoup plus facile!

Chacun de ces mots vient avec une idée de la façon d'améliorer le travail que nous faisons afin d'augmenter notre efficacité et notre efficacité.. Cela semble prometteur, à droite? Mais, comment ces idées peuvent-elles être appliquées au développement de logiciels? Voyons plus en détail.

Le 5S pour les logiciels

Trier – La première étape du 5S consiste à supprimer tous les éléments indésirables de la zone de travail. Dans un environnement d'ingénierie, cela signifierait des outils et d'autres objets de travail. Pour les logiciels, ceci est plus susceptible de s'appliquer à votre espace de travail informatique.

Par exemple, vous pouvez nettoyer votre bureau et votre système de fichiers, supprimer tous les éléments indésirables afin que vous puissiez trouver plus facilement ce que vous cherchez. Supprimer l'encombrement de toutes les manières possibles, conduit toujours à un résultat plus efficace dans tout type de travail. Je suis sûr que vous avez vécu cela au travail ou à la maison.

Vous pouvez également appliquer cette idée à votre IDE de codage ou à d'autres outils que vous utilisez dans le développement de logiciels, soit en tant que développeur ou chef de projet.

  • Supprimez les projets ou fichiers indésirables qui ne sont plus nécessaires ou pertinents
  • Supprimer tout code mort qui n'a pas été utilisé dans un projet (n'était pas engagé dans le système de gestion des versions par exemple)
  • Supprimer le code commenté qui n'est plus utilisé (les anciennes versions sont quand même stockées)

Comme tu peux le voir, l'idée est toute simple, mais les résultats peuvent être puissants. Après tout, garder tout clair, propre et bien ordonné conduit toujours à un meilleur travail.

 

Redresser – Cela fait référence à la commande d'articles afin qu'ils soient plus faciles à trouver et plus rapides à utiliser. L'idée originale devait s'appliquer à l'alignement et à la disposition des outils sur un lieu de travail, mais nous pouvons aussi les appliquer à notre monde informatique virtuel.

Vous pouvez commencer par conserver vos outils les plus importants et les plus couramment utilisés sur le bureau de votre ordinateur ou créer des raccourcis pour vous faire gagner du temps lors de l'exécution de vos tâches..

Creuser un peu plus, les fichiers et le code doivent être organisés de manière à être facilement « accessibles ». Ne regroupez pas toute votre documentation dans un dossier intitulé « Documentation », divisez-le en projets et sujets pertinents. L'ordre conduit à l'efficacité dans tout ce que nous faisons.

Il en va de même pour le code bien sûr avec des choses comme les espaces de noms, et le placement et l'ordre logiques du code (méthodes, objets, hiérarchie etc.).

Ces petites choses peuvent mettre du temps à devenir une habitude au début, mais quand tu reviens pour trouver quelque chose certains jours, des semaines, voire des années plus tard, vous serez heureux d'avoir pris le temps d'aménager votre espace de travail.

 

Briller – Garder vos outils en état de marche et enlever toute trace de rouille ou de saleté était une chose intelligente à faire dans un atelier d'ingénierie. Mais comment pouvez-vous appliquer cela dans le développement de logiciels?

Le domaine le plus important auquel cela s'applique est le nettoyage et la refactorisation du code. Bien sûr, la refactorisation peut également être appliquée à la documentation et aux processus, si tu penses à ça.

La refactorisation de code est quelque chose que nous ne voulons jamais faire dans les logiciels, mais nous savons que c'est bon pour nous. Un peu comme manger nos légumes étant enfant.

À mesure que le nombre de fichiers et d'objets augmente dans un projet ou un logiciel, il en va de même pour la complexité et l'inefficacité de ce code hérité.

Donc, au lieu de l'ignorer, vous devez toujours vous laisser un peu de temps dans chaque projet pour améliorer votre code grâce au refactoring. Ajouter une interface à ce code couramment utilisé, ou créer un nouvel objet pour stocker les actions souvent utilisées. Vous savez comment faire votre travail, mais gardez-vous ces idées à l'esprit pendant le rythme effréné du développement logiciel agile?

 

Standardiser – Il s'agit de la quatrième étape du processus 5S, et à bien des égards prend tout le précédent 3 en compte. L'idée ici est de normaliser tout ce que vous faites à travers des procédures communes.

Donc, plutôt que de faire le premier 3 une fois, vous devriez avoir un processus qui décrit comment ces tâches doivent être effectuées et entretenues régulièrement. Sinon, comme nous le savons tous, la pourriture s'installera à nouveau et vous aurez perdu votre temps.

Cela signifie que quelqu'un doit documenter les processus que vous utilisez

  • pour organiser votre structure de code
  • refactoriser le code
  • écrire des commentaires dans le code

Cela peut également signifier la rédaction d'un document d'introduction sur les outils utilisés par les équipes de développement ou de projet, comment les configurer et où les stocker sur votre bureau (pour une efficacité maximale).

La documentation et les processus sont la clé pour toujours obtenir des résultats efficaces et reproductibles dans n'importe quelle entreprise.

 

Soutenir – Le dernier S est peut-être le plus important. C'est l'idée de s'assurer que toute la méthodologie 5S ne soit pas oubliée dans le train-train quotidien.

Cela signifie que des audits doivent être en place pour vérifier que les processus, les procédures et la qualité sont maintenues à tout moment. Vérifier également que les 4S précédents sont bien réalisés avec la diligence attendue.

Il arrive toujours que ce genre de tâches (Documentation, processus, Commentaires, audits) semblent trop chronophages et non pertinents, ils sont donc facilement ignorés ou oubliés. C'est pourquoi cette dernière pièce est si critique. Sans ça, vous pouvez même oublier de commencer par l'approche 5S pour commencer.

 

Comme vous pouvez maintenant le voir, de nombreuses approches utilisées dans le monde de l'ingénierie sont facilement applicables dans n'importe quel scénario d'entreprise, y compris le monde du logiciel.. Les idées sont simples, mais les résultats peuvent être incroyables. Donc, pourquoi ne pas prendre ces idées et voir comment vous pouvez les appliquer à votre développement logiciel aujourd'hui. Vous pourriez être surpris de la rapidité avec laquelle vous et votre équipe les adoptez, surtout une fois que vous voyez les résultats!

A propos de l'auteur

Reese Bourgeois est le directeur général de Conseil en flux, un consortium de consultants expérimentés avec une expertise éprouvée pour aider les organisations à apporter des améliorations spectaculaires à leur leadership et à leurs processus commerciaux.

Un article de blog représente l'opinion personnelle des auteurs
et ne coïncide pas nécessairement avec les politiques officielles de Nesma.
Partager cet article sur:

1 commentaires

Laissez un commentaire
  1. Salut Reese, merci pour votre blog. Vous dites que les approches 5S se traduisent par une productivité plus élevée et que les résultats peuvent être incroyables. Est-il possible de soutenir cela avec des données et/ou des analyses? Par exemple, quel serait l'effet moyen sur une équipe de développement en termes d'amélioration du nombre d'heures par point de fonction après l'adoption des approches 5S?

Laisser une réponse