« Votre système fait ça exprès ? »

C'était en 2019, et je déployais un WES dans un centre de traitement e-commerce à Fontana — 120,000 pieds carrés, 8,000 commandes par jour, plus de quarante personnes dans la zone de préparation. À 10h30 du matin, la première vague du jour est tombée, et Chen, le superviseur de préparation, est arrivé à mon bureau en agitant la liste de tâches fraîchement imprimée, pointant le papier du doigt.

« UPS enlève à deux heures », a-t-il dit. « Et vous avez mis ces commandes à la tâche numéro 180. Pendant ce temps, vous voulez que mes gars préparent d'abord le FedEx — et ce camion ne part pas avant cinq heures ? Si on rate l'enlèvement UPS, c'est le problème de qui ? »

Li, l'administrateur système, a essayé d'expliquer depuis le bureau d'à côté : « Le système trie par heure limite de commande. Ces commandes FedEx sont arrivées hier soir... »

« Les commandes d'hier soir ne sont pas urgentes », l'a coupé Chen en claquant la liste sur le bureau. « Alors c'est quoi — l'heure limite, ou l'heure d'enlèvement ? »

J'ai vu une version ou une autre de cette dispute se rejouer dans une demi-douzaine d'entrepôts depuis. Une vague ne fait que tracer un cercle autour du travail de la journée. Ce qui se passe à l'intérieur de ce cercle — laquelle de ces centaines de tâches passe en premier — c'est là qu'un WES gagne vraiment son salaire. Si cet ordre est faux, le bâtiment saigne de l'argent en silence chaque jour : des camions qui tournent au ralenti au quai, des heures supplémentaires au poste de contrôle, des clients qui appellent pour des expéditions en retard.

Quatre mains sur le volant

Première main : l'heure d'enlèvement du transporteur. C'est la contrainte la plus dure du bâtiment. Si une commande n'est pas préparée, contrôlée et scellée avant l'arrivée du camion, elle attend jusqu'au lendemain. Le client voit une mise à jour de suivi avec un jour de retard, et votre ligne d'assistance s'embrase. Dans bien des entrepôts que j'ai visités, ce champ du WES n'est soit pas renseigné, soit renseigné mais jamais vraiment utilisé par les règles de priorité. Dans les deux cas, c'est du poids mort.

Deuxième main : l'heure limite de commande. C'est la main la plus maltraitée des quatre. Une heure limite précoce signifie que le client a commandé tôt. Ça ne signifie pas que la commande est urgente. Un lot arrivé à 23 heures hier soir contre un lot de 9 heures ce matin qui doit attraper l'enlèvement UPS de 14 heures — lequel est urgent ? Évidemment le second. Pourtant, bien des systèmes sont livrés avec le tri par heure limite comme règle par défaut. C'est exactement ce à quoi Chen s'est heurté ce matin-là.

Troisième main : le parcours de préparation. Regrouper les tâches situées le long du même itinéraire signifie que les préparateurs marchent moins et préparent plus par heure. Cette main n'a rien de mal — mais c'est la main qui fait économiser de l'argent, pas celle qui sauve la journée. Mélangez la hiérarchie et les choses dérapent. J'y reviens dans un instant.

Quatrième main : le risque de rupture et le niveau du client. Certaines commandes posent problème dès le départ : des emplacements où le système dit qu'il y a du stock mais où le rayonnage est vide, des commandes avec des exigences strictes de lot et de péremption, des clients VIP dont les plaintes atterrissent sur le bureau du patron. Préparez-les en premier pour que les problèmes surgissent tôt, ou sortez-les complètement du flux normal. Ne les laissez jamais à la queue de la vague.

Quatre mains veulent toutes tenir le volant. Le WES a besoin d'un moyen de trancher.

Un préparateur scanne un emplacement de rayonnage avec un terminal portable pour confirmer la tâche

Quand les règles se battent entre elles

Voici une vraie question. Commande A : passée hier soir, heure limite la plus précoce, située dans un emplacement au fond du bâtiment, enlèvement du transporteur à 17 heures. Commande B : passée ce matin, heure limite plus tardive, située juste à côté de l'entrée de la zone de préparation, enlèvement du transporteur à 14 heures. Laquelle passe en premier ?

La réponse est évidente : la B. L'heure d'enlèvement est une contrainte dure. Le parcours de préparation est une optimisation douce. Les contraintes dures passent toujours avant les optimisations douces.

Mon approche, ce sont des paliers, pas des moyennes pondérées. La pondération a l'air scientifique, mais en pratique c'est de la bouillie — « heure limite 40 %, heure d'enlèvement 30 %, parcours 30 % » — et l'ordre qui en sort n'a de sens pour personne. Pour le superviseur d'atelier, moins que pour quiconque. Les paliers sont plus simples : regroupez d'abord les tâches par fenêtre d'enlèvement, ordonnez par parcours à l'intérieur de la fenêtre, et remontez les commandes à risque de rupture et les VIP d'un cran dans leur palier.

Les paliers ont un autre avantage : l'atelier peut les lire. Le superviseur ouvre la liste de tâches et voit d'un coup d'œil que « tout ce qui part dans les deux prochaines heures est devant », alors il suit vraiment le système. Sinon, il retourne au réordonnancement sur une liste papier, et le WES pourrait aussi bien ne pas exister. J'ai vu plus d'un bâtiment où l'ordre du système et l'ordre réel de préparation étaient deux choses complètement différentes.

Deux façons dont j'ai vu ça mal tourner

Première façon de mourir : trier uniquement par heure limite. En 2021, j'ai visité un 3PL à Mira Loma qui traitait 15,000 commandes par jour en haute saison. Leur règle de priorité WES tenait en une ligne exactement : trier par heure limite. Les jours de promo, des milliers de commandes affluaient pendant la nuit — toutes sur des services lents et bon marché — et le système préparait consciencieusement ces commandes « précoces » en premier. Chaque après-midi, les commandes qui devaient vraiment attraper les enlèvements du jour s'empilaient à l'arrière, et le poste de contrôle faisait des heures supplémentaires jusqu'à passé neuf heures. Le patron m'a dit qu'une haute saison avait brûlé près de cent mille dollars en heures supplémentaires. Après le passage à des paliers par heure d'enlèvement, les heures supplémentaires ont quasiment disparu. Ce n'était pas un problème de système. C'était un problème de règle.

Deuxième façon de mourir : laisser le risque de rupture hors de la priorité. Certaines commandes sont signalées dès le départ comme des ruptures probables — quantité en main qui ne correspond pas au rayonnage, contraintes de péremption serrées. Enterrez-les au fond de la vague, et le préparateur ne découvre le problème qu'en arrivant sur place : toute la commande cale, traitement des exceptions, chasse au stock, fractionnement de la commande. Un processus après l'autre, et la queue de la vague s'étire. Pire, le poste de contrôle attend cette commande pour boucler une expédition, alors le fret déjà préparé reste là à attendre aussi. La solution, c'est d'avancer les commandes à haut risque et de laisser les problèmes surgir tôt. Découvrez une rupture à 10 heures du matin et vous avez encore le temps de chasser du stock ou de le transférer. Découvrez-la à 4 heures de l'après-midi et tout ce que vous pouvez faire, c'est vous excuser auprès du client.

Ces deux façons de mourir partagent la même cause racine : la règle de priorité a été conçue autour de l'équité — premier entré, premier sorti — au lieu des conséquences. Ce qui se passe si celle-ci part en retard.


Voici une chose que vous pouvez faire demain. Ouvrez votre WES, sortez trois vagues libérées aujourd'hui, exportez les listes de tâches, triez-les par heure d'enlèvement du transporteur et comparez avec l'ordre que le système a réellement attribué. S'ils ne correspondent pas, ne touchez pas encore aux pondérations et ne réécrivez pas les formules. Allez vérifier si les données de référence des heures d'enlèvement sont seulement renseignées. D'après mon expérience, la plupart des échecs de priorité remontent à une cause racine ennuyeuse : personne ne met à jour les heures d'enlèvement. Le transporteur a changé le planning, personne ne l'a saisi. Un jour férié a ajouté une remorque supplémentaire, personne ne l'a enregistré. Mettez d'abord les données en ordre, et les règles commencent à avoir du sens. Mettez les données de travers, et aucune configuration de règle ne vous sauvera.

Traduit de l'anglais. En cas de divergence, la version anglaise fait foi.