La plupart des organisations n’achètent pas de logiciel de supply chain chaque année; lorsqu’elles le font, le processus est souvent ritualisé sous forme d’un RFI suivi d’un RFP. Dans mon livre Introduction to Supply Chain, j’affirme que ces rituels ne sont pas la meilleure méthode pour choisir un logiciel. Un court exercice de recherche de marché à visée conflictuelle—fondé sur vos propres données et axé sur des résultats mesurables—tend à être plus rapide, moins cher et plus fiable. Pourtant, de nombreuses équipes sont encore contraintes par des mandats d’approvisionnement qui imposent une démarche RFI/RFP. Cet article propose deux modèles prêts‑à‑l’emploi—d’abord un RFI, puis un RFP—qui préservent l’esprit de preuves et de résultats même dans un processus formel.

documents funnel into charts and money, abstractly

Si vous êtes nouveau aux acronymes : un RFI (request for information) est typiquement utilisé pour explorer le secteur de façon large; un RFP (request for proposal) est utilisé pour sélectionner parmi une liste restreinte pour un périmètre concret. Aucun document, pris isolément, ne garantit de bonnes décisions; ce qui importe, ce sont les questions que vous posez et les réponses que vous accepterez.

Comment utiliser ces modèles

  • Traitez le RFI comme un filtre: éliminez les solutions qui ne peuvent pas exprimer des résultats en argent, qui ne peuvent pas gérer l’incertitude de manière explicite, ou qui ne peuvent pas fonctionner sans surveillance humaine constante.
  • Traitez le RFP comme une preuve: exigez une formulation claire du problème, une logique décisionnelle explicite, des preuves issues d’un run parallèle, et un modèle commercial aligné sur les résultats—not screen time.

RFI — un filtre court et précis (12 éléments)

1) Objectif économique exprimé en argent

Question. Quel objectif financier votre produit optimise-t-il en production ? Veuillez l’exprimer en termes d’argent (par exemple, la marge après write‑offs et charges de fonds de roulement), et non en pourcentages.

Pourquoi c’est important. Les KPI en pourcentage (taux de service, forecast error) ne sont pas un résultat; le profit et la trésorerie le sont. Si un fournisseur ne peut pas parler en argent, il ne peut pas arbitrer les compromis.

Bonne réponse. “Par SKU‑localisation‑jour, nous calculons la marge brute attendue moins les coûts de portage, le risque d’obsolescence, les pénalités, et une charge de capital; nous choisissons des actions qui améliorent le profit net attendu sur l’horizon.”

2) Des décisions, pas des tableaux de bord

Question. Quelles décisions opérationnelles votre logiciel produit-il automatiquement en régime permanent (par exemple, lignes d’achat, transferts, ordres de production, modifications de prix), et à quelle granularité et cadence ? Fournissez des pourcentages typiques de décisions effectuées sans intervention issues de déploiements en production.

Pourquoi c’est important. Les rapports sont utiles; ce sont les décisions qui font bouger les stocks, la capacité et la trésorerie.

Bonne réponse. “Réapprovisionnement: ~99,95% des lignes émises sans intervention à la granularité SKU‑localisation; ~0,05% signalées pour révision selon des règles explicites. Les modifications de prix sont proposées quotidiennement au niveau de l’article avec une justification en dollars.”

3) Incertitude gérée de manière explicite

Question. Comment représentez-vous l’incertitude pour la demande, les lead times et la fiabilité de l’approvisionnement ? Portez-vous des intervalles/probabilités jusqu’à la décision, ou réduisez-vous tout à des valeurs ponctuelles avec des facteurs de sécurité ?

Pourquoi c’est important. L’économie de la supply chain se situe aux extrémités; les décisions basées sur des approximations ponctuelles sont fragiles.

Bonne réponse. “Nous maintenons des distributions empiriques pour la demande et les lead time, les actualisons quotidiennement, et optimisons en tenant compte de l’ensemble de la distribution (et non seulement des moyennes).”

4) Run parallèle avant le basculement

Question. Décrivez votre pratique standard de run parallèle (« dual‑run ») avant la mise en production. Quels artefacts quotidiens sont capturés ? Qu’est-ce qui qualifie une recommandation de « dénuée de sens », et comment est-elle éliminée avant le basculement ?

Pourquoi c’est important. Le run parallèle est la manière la plus rapide de faire apparaître en toute sécurité les problèmes liés au modèle et à la sémantique.

Bonne réponse. “Nous exécutons quotidiennement l’ensemble du périmètre, enregistrons les émissions et les explications pour chaque décision, classifions les anomalies, corrigeons les causes, et exigeons zéro nonsensical lines for 10 consecutive business days avant de basculer.”

5) Logique décisionnelle programmable

Question. Comment la logique décisionnelle est-elle rédigée et maintenue (language/DSL) ? Qui peut la modifier, et à quelle vitesse ?

Pourquoi c’est important. Les véritables supply chain sont idiosyncratiques; des cases à cocher ne pourront pas les couvrir.

Bonne réponse. “Un script compact et lisible (quelques centaines de lignes) maintenu par un ingénieur supply chain; un petit changement typique: <1 day from request to deployment with version control.”

6) Flux de données propre & reproductibilité

Question. Opérez-vous à partir de snapshots quotidiens immuables (avec timestamps et checksums), ou à partir de bases de données live/marts ‘cleansed’ et mutables ? Pouvez-vous rejouer une exécution passée bit‑for‑bit ?

Pourquoi c’est important. La reproductibilité fait la différence entre le débogage et le guessing.

Bonne réponse. “Snapshot quotidien à une ‘closing bell’ fixe; CSV/Parquet respectant le schéma; chaque run épinglé aux versions des données + du code pour une reproduction exacte.”

7) Explication par décision

Question. Quelle explication accompagne chaque décision émise ? Listez les leviers financiers que vous mettez en avant et donnez un exemple de format.

Pourquoi c’est important. Vous ne ferez pas confiance à ce que vous ne pouvez pas expliquer aux opérations et aux finances.

Bonne réponse. “Chaque ligne affiche les principaux leviers avec leur signe et leur ampleur: marge attendue, cost de stock‑out, coût de portage, et la contrainte qui a encadré le choix.”

8) Conditions d’arrêt de sécurité

Question. À quelles conditions votre moteur cesse-t-il d’émettre des décisions et revient-il aux opérations manuelles ?

Pourquoi c’est important. La sécurité n’est pas une bannière sur un dashboard; c’est un arrêt automatique.

Bonne réponse. “S’arrête en cas de tables clés manquantes ou obsolètes, de décalages anormaux dans les distributions, ou de contradictions (par exemple, capacité disponible négative). Alerte le propriétaire avec des indices sur la cause racine.”

9) Frontière avec les systèmes de records

Question. Êtes-vous le même fournisseur que notre ERP/WMS ? Si oui, comment assurez-vous une frontière nette entre le transaction processing et la heavy decision‑making ?

Pourquoi c’est important. Les systèmes blended héritent souvent des contraintes de la couche transactionnelle. Il est également essentiel de pouvoir “unplug” soit le system of records, soit le system of intelligence; les deux solutions ne doivent pas être bundlées.

Bonne réponse. “Independent runtime; read snapshots, write back orders/prices via a narrow interface. Strict independent databases to segregate transactional from analytical workloads.”

10) Mesure de l’impact en argent

Question. Comment mesurez-vous l’impact par rapport à la baseline une fois en production ? Veuillez décrire les metrics financiers et le dispositif de comparaison.

Pourquoi c’est important. Si vous ne pouvez pas mesurer l’uplift, vous ne pouvez pas le gérer.

Bonne réponse. “Pack mensuel avec net profit uplift décomposé en gains de marge, reduced write‑offs et capital freed; baseline from dual‑run months and control sites.”

11) Alignement commercial sur les résultats

Question. Quelles options de pricing lient les fees au volume/qualité des décisions automatisées et/ou à l’uplift mesuré ?

Pourquoi c’est important. Payer pour des seats incite au travail manuel; payer pour des outcomes incite à la qualité de l’automatisation.

Bonne réponse. Le fournisseur facture peu pour l’installation. La plupart des frais sont reportés jusqu’à ce que la solution démontre sa capacité à générer des décisions profitables sans intervention.

12) Rôles et responsabilités

Question. Quels rôles client sont nécessaires pour s’approprier la logique, le flux de données et les paramètres financiers ?

Pourquoi c’est important. Une petite équipe responsable vaut mieux que des comités diffus.

Bonne réponse. “Un responsable désigné pour la logique décisionnelle, un data steward pour le snapshot quotidien, et un finance partner pour maintenir les paramètres monétaires.”

RFP — une preuve concrète et testable (20 éléments)

1) Déclaration du problème avec vos propres mots

Question. Rédigez deux pages qui reformulent notre défi sans présenter votre produit. Mettez l’accent sur les enjeux (argent et risque), les incertitudes, les décisions à automatiser, et les contraintes.

Pourquoi c’est important. On ne peut pas résoudre ce qui n’a pas été clairement formulé.

Bonne réponse. “Un récit concis avec des chiffres, des contraintes et des incertitudes, et non du marketing.”

2) Modèle économique

Question. Décrivez le modèle financier que vous utiliserez: unité d’analyse, horizons, comment vous traitez les coûts de portage, write‑offs, pénalités, et coûts partagés.

Pourquoi c’est important. Les décisions reflètent la manière dont vous tarifez les compromis.

Bonne réponse. “SKU‑localisation‑jour avec capital charge mensuelle; courbe explicite de write‑offs en fonction de l’âge; pénalités de late‑delivery tarifiées par lane; coûts partagés alloués selon les activity drivers.”

3) Objectif et contraintes (formels)

Question. Fournissez l’objectif en math/pseudocode et énumérez les contraintes hard vs soft. Expliquez comment l’incertitude intervient dans l’objectif.

Pourquoi c’est important. La précision ici évite des mois d’ajustements mal alignés par la suite.

Bonne réponse. “Maximiser le profit net attendu sur T jours sous réserve de limites de capacité/crédit; contraintes soft (MOQs, minimums de présentation) tarifiées avec des pénalités explicites.”

4) Modélisation de la demande et des délais

Question. Détaillez votre approche pour la demande intermittente, les promotions, la cannibalisation, et la variabilité des délais. À quelle fréquence les modèles sont-ils actualisés ?

Pourquoi c’est important. Les longues queues et les changements de régime sont la norme. Les modèles de séries temporelles sont garantis d’être insuffisants.

Bonne réponse. “Des modèles probabilistes généraux à haute dimension actualisés quotidiennement sans élimination des outliers.”

5) Actions et leviers admissibles

Question. Énumérez ce que le moteur peut faire (acheter/modifier les prix/déplacer/produire), à quelle granularité et cadence, et les leviers disponibles (tailles de lot, lanes, substitutions, paliers de prix).

Pourquoi c’est important. La qualité de l’optimisation est limitée par l’ensemble des options.

Bonne réponse. “Réapprovisionnement quotidien au niveau SKU‑localisation; transferts inter‑DC hebdomadaires; make‑to‑order batches ≥ X; échelle de prix avec Δ=Y.”

6) Savoir quand attendre

Question. Comment décidez-vous d’agir immédiatement ou de différer une décision ?

Pourquoi c’est important. Attendre peut être l’action la plus profitable.

Bonne réponse. “Agissez uniquement lorsque le gain financier attendu dépasse le coût de portage + la prime de risque + la valeur de l’information obtenue en attendant un jour.”

7) Approche algorithmique et scalabilité

Question. Décrivez votre optimiseur (heuristiques, mathematical programming, policy search) et comment vous évitez les explosions combinatoires tout en respectant les contraintes couplées.

Pourquoi c’est important. Les modèles simples élégants s’effondrent souvent à grande échelle. Les solveurs déterministes (ex: MILP) s’effondrent également en présence d’incertitude.

Bonne réponse. “Sélection gloutonne sur le profit marginal sous contraintes, avec un solveur stochastique ciblé pour les sous‑problèmes contraints; prouvé pour fonctionner sur N=50M item‑jours/nuit.”

8) Exemple de logique décisionnelle

Question. Fournissez un extrait expurgé ou un schéma (inputs → transformations → sélection → outputs) d’un client similaire.

Pourquoi c’est important. Une logique lisible est une logique maintenable.

Bonne réponse. “Schéma sur une page avec noms de champs, métriques intermédiaires et le schéma de write‑back.”

9) Explication par décision (exemple)

Question. Joignez un exemple d’« explain » pour une ligne de commande et une modification de prix. Montrez les principaux leviers avec leur signe et leur ampleur.

Pourquoi c’est important. Sinon, vous finirez par débattre d’opinions plutôt que des leviers.

Bonne réponse. “Un tableau compact: +$12 expected margin, −$5 carrying cost, −$7 stock‑out penalty avoided; binding constraint: inbound dock capacity.”

10) Plan de run parallèle et critères de sortie

Question. Proposez un plan de run parallèle quotidien avec artefacts, workflow de triage, et un critère de sortie quantitatif.

Pourquoi c’est important. Vous souhaitez une mise en production scientifique, et non cérémoniale.

Bonne réponse. “30 business days of daily runs; triage by severity; exit when 0 nonsensical lines for 10 consecutive days.”

11) Arrêts de sécurité et alertes

Question. Énumérez les conditions qui arrêtent les émissions, comment les alertes sont acheminées, et comment les fallbacks sont sélectionnés.

Pourquoi c’est important. La fiabilité prime sur une uptime aveugle.

Bonne réponse. “Stop on missing mandatory table, failed sanity checks, or extreme parameter drift; route to named owner; resume only after green checks.”

12) Détection de dérive sémantique

Question. Comment détectez-vous lorsqu’une signification de champ change en amont (par exemple, unit switches, new codes) ?

Pourquoi c’est important. Les changements sémantiques silencieux génèrent les pires erreurs.

Bonne réponse. “Versionnement du schéma; distribution monitoring; canary recomputations; automatic quarantine of suspect entities.”

13) Contrat du flux de données (« snapshot »)

Question. Précisez les fichiers/tables quotidiens, l’heure limite, les formats, et la validation exigés. Incluez des checksums et la gestion des échecs.

Pourquoi c’est important. Des interfaces claires préviennent des intégrations fragiles.

Bonne réponse. “Daily 6am UTC drop; row‑level counts, hash manifest; reject‑with‑report on mismatch.”

14) Gouvernance des surcharges

Question. Comment les surcharges humaines sont-elles enregistrées, auditées et converties en améliorations de la logique ?

Pourquoi c’est important. Les surcharges devraient diminuer avec le temps.

Bonne réponse. “Every override is a ticket with reason codes; weekly review; accepted patterns become logic changes in the next release.”

15) Plan de mesure d’impact

Question. Définissez les KPI financiers et le dispositif de comparaison pour mesurer l’impact six et douze mois après la mise en production.

Pourquoi c’est important. On ne peut pas contester une métrique sur laquelle on s’est mis d’accord dès le départ.

Bonne réponse. “Net profit uplift with decomposition (margin, disposals, capital); control vs treated sites; seasonality‑aware.”

16) Sécurité et minimisation des données

Question. Décrivez l’accès au moindre privilège, la rétention des données, et l’isolation entre les environnements.

Pourquoi c’est important. Les échecs de sécurité effacent tous les gains.

Bonne réponse. “Read‑only to snapshots; no PII unless justified; 90‑day retention. No interns ever touching the production.”

17) Performance à grande échelle

Question. Fournissez les temps d’exécution prévus et les hypothèses matérielles pour notre ordre de grandeur (SKUs, sites, transactions).

Why this matters. Overnight doit signifier overnight.

Good answer. “Pour <100M item‑days: 50 minutes garanties; allocation élastique de ressources cloud.”

18) Extensibilité au-delà du premier périmètre

Question. Comment ajouterez-vous de nouvelles catégories, nouveaux canaux ou de nouveaux pays sans repartir de zéro ?

Why this matters. Le pilote d’aujourd’hui devient la plateforme de demain.

Good answer. “Logique centrale partagée + modules locaux pour les contraintes et paramètres; un nouveau périmètre ajoute généralement de petits fichiers isolés.”

19) Termes commerciaux alignés avec les résultats

Question. Proposez au moins une option où les frais s’alignent avec le volume de décisions automatisées et/ou la hausse financière auditée. Expliquez le processus d’audit.

Why this matters. Les incitations influencent le comportement.

Good answer. “Frais fixes + composante de succès calculée à partir d’une formule d’augmentation auditable convenue; feuilles de calcul transparentes et exécutions rejouables.”

20) Ce que vous ne ferez pas faire

Question. Enumérez quelques activités populaires que vous excluez intentionnellement (avec les raisons).

Why this matters. Dire “non” est le signe d’une discipline d’ingénierie.

Good answer. “Pas de jumeaux de vanité; pas de concours d’“accuracy” détachés des résultats financiers; pas de démo ponctuelle sur des données jouet.”

Note de clôture

Si vous pouvez éviter une RFI/RFP lourde, faites-le : un sprint ciblé et adversarial d’étude de marché—sur vos données—vous mènera plus rapidement à la preuve. Si ce n’est pas possible, les deux modèles ci-dessus orienteront tout de même le processus vers décisions and money, ce qui est le but même des logiciels de supply chain.