# Théorie des contraintes

La théorie des contraintes (Theory Of Constraints ou TOC en Anglais) est un référentiel de connaissances, de méthodes et d’outils de management interdisciplinaires des organisations.
L’auteur principal est Eliyahu M. Goldratt, avec d’autres contributeurs. C'est une nouvelle approche du management fondée sur l'approche systémique, l'acceptation des aléas et le bon sens. La théorie des contraintes part du postulat que le déséquilibre est inévitable, même si l'approche japonaise permet de le limiter. Il vaudrait mieux admettre son existence et gérer l'activité en fonction de celui-ci.
La théorie des contraintes est focalisée sur l'identification de la contrainte d'un système, dans l'objectif d'en maximiser les performances.

## Histoire

Eliyahu M. Goldratt est d'abord un scientifique, au cours de sa carrière il a décidé d'appliquer les principes de la cristallisation minérale à la production industrielle. Cette transposition est à l'origine de la création du logiciel OPT (pour Optimized Production Technology), son utilisation par plusieurs entreprises américaines attira l'attention des experts dans les années 1980.
La diffusion de la théorie des contraintes fut réalisée par Eliyahu M. Goldratt à travers son livre intitulé Le But en 1984 (en anglais : The Goal (en)). Il s'agit d'un thriller industriel dont le héros, Alex Rogo, a trois mois pour sauver son entreprise et, pour y arriver, utilise les principes de la théorie des contraintes, qui sont expliqués tout au long du roman.
L'objectif d'Eliyahu M. Goldratt était d'aider les organisations à atteindre leur but. Goldratt a adapté ce concept au management de projet avec son livre Chaîne Critique, publié en 1997.

## Mise en œuvre

La théorie des contraintes a pour principe fondamental que tout flux généré par une organisation est limité par un processus. La production de valeur ne peut donc être augmentée qu’en augmentant la capacité de production au niveau de la contrainte.
Les cinq étapes clés de mise en œuvre de la théorie des contraintes sont :
* Identifier la contrainte.
* Exploiter la contrainte (augmenter son utilisation et son efficience).
* Subordonner tous les processus au processus contraint.
* Élever la performance de la contrainte (si nécessaire).
* Recommencer à l’étape 1.

## Notion de contrainte

Selon la théorie des contraintes, tout système (ou processus, ou flux...) est limité en capacité par au moins un élément et aucun système n'est parfaitement équilibré. Autrement dit, parmi tous les éléments limitants d'un système, il y en a nécessairement un qui est plus limitant que tous les autres. C'est cet élément qui est appelé la contrainte du système.
La contrainte peut être interne ou externe au système. Lorsque tout élément du système présente une capacité supérieure à ses entrées ou sorties, alors sa contrainte est constituée par ses entrées ou ses sorties.
Si l’on prend l'exemple d'une entreprise qui produit des pièces à partir de matière première (entrées du système), suivant un processus en plusieurs étapes, pour ensuite livrer ces pièces à des clients (sorties du système). Plusieurs cas de figure peuvent se présenter :
* La capacité des fournisseurs à fournir de la matière première est inférieure à la capacité de l'entreprise à les transformer ET au potentiel de marché de pièces finies : la fourniture de matière première est la contrainte du système. La contrainte est externe
* La capacité de l'entreprise à transformer la matière première en pièces finies est inférieure à ce que peuvent fournir les fournisseurs ET ce que le marché peut absorber : la contrainte est interne à l'entreprise.
* La capacité du marché à absorber les pièces finies est inférieure à celle des fournisseurs de matière première à fournir l'entreprise ET à celle de l'entreprise à transformer cette matière première en pièces finies : le marché est la contrainte du système. La contrainte est externe.
La notion de contrainte est décorrélée de la stabilité du système. Si le système est stable, la contrainte peut avoir une capacité suffisante à maintenir la stabilité du système. La contrainte ne doit être levée qu'en cas de volonté d'accroître la capacité du système. Prenons l'exemple d'une population d'une taille donnée qu'il faut nourrir. La demande en nourriture peut être stable (chacun mange quotidiennement une quantité à peu près constante de nourriture). La capacité à satisfaire cette demande peut être supérieure à la demande, ou inférieure sans être insatisfaisante (tout le monde a de quoi manger à sa faim mais pourrait manger plus). Dans le cas où la capacité à fournir est supérieure à la demande, la demande représente la contrainte du système, mais la limite représentée par la contrainte n'apparaîtra que s'il y a une volonté d'augmenter et d'écouler une production plus importante de nourriture. Inversement, dans le cas où la capacité d'absorption de nourriture par la population est supérieure à la capacité à fournir de la nourriture, la contrainte est située au niveau de cette fourniture mais n'apparaîtra que si la demande devient supérieure à la capacité à fournir.

### Corollaires

On peut en déduire plusieurs choses :
* Comme tout système comporte une contrainte, tout sous-ensemble d'un système comporte également une contrainte. L'identification de la contrainte "racine" peut donc se faire par criblage : identifier la contrainte "macroscopique" (fournisseur, entreprise ou marché ?) puis "mésoscopique" (quelle étape du processus ?), puis "microscopique" (quelle fonction de la machine, quel sous-process ?).
* Supprimer une contrainte revient à faire que l'élément qui était la contrainte ne soit plus l'élément ayant la capacité la plus limitante. Ce qui signifie qu'un autre élément a une capacité plus limitante. C'est cet autre élément qui devient la contrainte du système. Il est donc impossible de supprimer toutes les contraintes d'un système, seulement de les déplacer. Le déplacement de la contrainte signifiant qu'on a successivement augmenté la capacité des éléments dont la capacité était la plus limitante du système, il résulte donc en une augmentation de la capacité globale du système.
* Dans le cas d'un système stable, la contrainte peut rester parfaitement invisible. C'est la volonté d'augmenter la capacité du système qui mettra en évidence l'existence d'une contrainte.

### Goulot et contrainte

Il est important de distinguer la notion de goulot de celle de contrainte. Un goulot est un élément dont la capacité ne satisfait pas les exigences de capacité du système. Exemple : si une usine a été construite pour produire 100 pièces par semaine mais qu'une étape du processus ne peut en produire que 90 (sans autre processus de remplacement), alors cette étape est un goulot. Cependant, un goulot n'est pas forcément la contrainte. Si une autre étape du processus ne peut produire que 80 pièces par semaine, alors celle qui peut en produire 90 n'est pas la contrainte. Si la contrainte d'un système est unique, il peut en revanche exister plusieurs goulots.
Inversement, une contrainte n'est pas forcément un goulot. Dans un système stable, toutes les exigences de capacité peuvent être respectées. Il n'y a donc pas de goulot. Néanmoins, le système comporte quand même une contrainte, qu'il faudra déplacer si et seulement si les exigences de capacité s'accroissent au-delà de la capacité de la contrainte.
Cette distinction est importante pour ne pas fournir d'efforts inutilement. Lorsqu'on constate l'existence d'un goulot, c'est-à-dire un élément dont la capacité ne satisfait pas les exigences qu'on peut en avoir, mais que ce goulot n'est pas la contrainte du système, tout effort réalisé pour augmenter la capacité de ce goulot pour qu'il satisfasse les exigences se heurtera à la limite de capacité de la contrainte. Autrement dit, ces efforts sont vains pour augmenter la capacité globale du système.
On comprend alors l'utilité de la théorie des contraintes : identifier la contrainte permet de concentrer ses efforts sur l'unique élément dont l’accroissement de capacité bénéficiera à l'ensemble du système (jusqu'à ce qu'il ne soit plus la contrainte du système).

## Exemples d’application
### Production

L'application de la théorie des contraintes à la production est souvent appelée le « management par les contraintes ». Le roman à succès de E. Goldratt Le But est consacré à ce sujet. Ce livre s'est vendu à plusieurs millions d'exemplaires à travers le monde. C'est une méthode de gestion industrielle fondée sur la distinction entre deux types de ressources dites « contraintes » ou « non-contraintes ».
L'idée de base est très simple. Si l'on représente un processus de production par une série de cuves à travers lesquelles coulent les produits, la notion de de « contrainte » devient évidente. Ce sont les goulots qui limitent le flux de sortie. Augmenter leurs diamètres revient à augmenter le débit de l'ensemble, ce qui n'est pas le cas pour les « non-contraintes ». On dit d'une telle chaîne de production qu'elle est déséquilibrée : les ressources (les machines ou le personnel) effectuant les différentes opérations n'ont pas toutes la même capacité.
Ce qui distingue le management par les contraintes d'autres approches industrielles, c'est qu'il soutient que le déséquilibre est devenu, non seulement inévitable — d'où la nécessité de reconnaître les contraintes et de gérer l'activité en fonction du déséquilibre existant — mais également souhaitable. Il faut par conséquent identifier le bon déséquilibre et investir de manière à s'en approcher le plus possible. Il s'ensuit que là où auparavant toutes les ressources avaient une égale importance, il faut adopter une vue duale : faire le tri entre ce qui devrait être le point focal de l'organisation (les contraintes) et le reste. Si l'on admet que les non-contraintes ont un excédent de capacité, il n'est plus nécessaire de rechercher le plein emploi de chaque machine. On peut se défaire des optimums locaux qui empêchent de synchroniser l'activité. L'entreprise pourra décupler ses performances en adaptant ses règles à la réalité, un univers où le déséquilibre est inévitable. En ce sens, il se rapproche du côté « collaboratif » du juste-à-temps toyotiste : lorsqu'un opérateur est en manque de pièces, il va aider son collègue en amont et à l'inverse, si les pièces s'accumulent après son poste, il va aider son collègue en aval ; mais il s'agit là d'une gestion de la contrainte « au jour le jour » et non d'une détection d'une contrainte systémique.
La technique de pilotage des flux de la TOC s'appelle le tambour - tampon - corde (ou DBR pour Drum-Buffer-Rope).

### Gestion de projet

La théorie des contraintes appliquée à la gestion de projet est appelée « l'approche chaîne critique ». Elle est décrite de manière romancée dans le roman homonyme de Goldratt.
La chaîne critique propose de traiter les dérives comportementales les plus fréquentes. À cet effet, elle fournit des réponses pratiques à la surévaluation des marges de sécurité temps attribuées à chaque tâche, au démarrage des travaux au dernier moment (ou syndrome de l'étudiant), ou encore à l'utilisation de toute la durée prévue d'une tâche même si le temps effectif de réalisation en est bien inférieur (loi de Parkinson).
Les concepts structurant la gestion de projet, à l'image de la création de réserve de sécurité pour la globalité d'un projet ou simplement pour protéger une tâche critique, de la planification à rebours en partant de la fin du projet, ou du pilotage par les durées et non par les tâches, peuvent être perçus comme novateurs.
Enfin, on trouve dans la chaîne critique trois autres éléments qui semblent représenter un plus par rapport aux outils et démarches habituellement utilisés :
* l'introduction en simultanée, dans la construction du projet, de la dimension tâche et surtout de la dimension ressource ;
* le passage de la notion de chemin critique à celle de chaîne critique ;
* l’exécution dynamique et le suivi à l'aide d'une fever chart (courbe de température) permettant de visualiser simplement l'état du projet par rapport à une date de fin.

### Logistique (supply chain)

La solution est d’adopter un modèle de réapprovisionnement plutôt qu’un modèle prévisionnel. Cette approche est appelée DDMRP pour Demand Driven MRP.

### La comptabilité de gestion par les flux

Il s’agit d’une méthode de comptabilité de gestion liée à la théorie des contraintes. L’objectif de cette méthode de comptabilité de gestion est d’examiner les décisions d’investissements et de changements en termes d’impacts sur l’organisation dans son ensemble. C’est une alternative à la comptabilité de gestion par les coûts. On parle généralement de Throughput Accounting
* Throughput = Net Sales – Totally Variable Cost (raw mat)
* Investment = l’argent injecté dans le système (stock, machines…)
* Operating Expense = Toutes les dépenses réalisées (sauf les matières premières généralement)
Pour s’améliorer, il faut :
* Augmenter le throughput ? Comment?
* Réduire les investment (stock) afin de libérer de l’argent ? Comment ?
* Réduire les OE ? Comment ?
On utilise alors quatre indicateurs comme Système de mesure afin de prendre les bonnes décisions :
* Net profit (NP) = throughput - operating expense = T-OE
* Return on investment (ROI) = net profit / investment = NP/I
* TA Productivity = throughput / operating expense = T/O
* Investment turns (IT) = throughput / investment = T/I

### Marketing et ventes

Bien que se concentrant d’abord sur la production et la logistique, la TOC a également traité de la gestion commerciale.

### Technologie (systèmes d'information)

Eliyahu Goldratt a également commenté la technologie, et surtout les systèmes d'information. Selon lui, les six questions nécessaires et suffisantes relatives à la technologie sont :
* Quelle est la puissance réelle de la technologie ?
* Quelle limitation permet-elle de diminuer ?
* Quelles sont les procédures qui permettaient de travailler avec la limitation ?
* Quelles sont les nouvelles procédures à mettre en œuvre ?
* À partir des modifications des procédures, quelles modifications sont requises sur la technologie ?
* Comment réaliser le changement ?

## Processus de pensée de la théorie des contraintes ou Logical Thinking Process

Le processus de pensée de la théorie des contraintes est composé d’un ensemble d’outils destinés à faciliter les étapes d’initialisation et de mise en œuvre d’un projet, ces outils sont appelés les Logical Thinking process, ils ont pour objectifs de :
* obtenir l’adhésion sur le problème à traiter ;
* obtenir l’adhésion sur les caractéristiques d’une solution ;
* obtenir l’adhésion sur la solution ;
* prendre en compte tous les effets de bord négatifs ;
* prendre en compte tous les obstacles à la mise en œuvre.
Les praticiens de la TOC parlent souvent de « surmonter toutes les couches de résistance au changement ».
Ce processus de pensée est composé de plusieurs outils de modélisation :
* le CRT, current reality tree (« arbre actuel de réalité »), avec lequel il va devenir possible d’identifier la cause fondamentale d’un certain nombre de problèmes ;
* le CRD, conflict resolution diagram (diagramme de résolution des conflits), utilisé pour résoudre les conflits qui perpétuent les causes de situations indésirables. Il est également parfois nommé evaporating cloud ;
* le FRT, future reality tree (« futur arbre de réalité »), pour résoudre les causes fondamentales des problèmes identifiés avec le CRT ; le FRT permet également de vérifier la résolution des problèmes sur la base des nouvelles décisions ;
* le PRT, prerequisite tree (« arbre des prérequis »), pour identifier tous les obstacles à surmonter, qui seront autant de jalons pour le projet ;
* le TT, transition tree (« arbre de transition »), afin d'établir une planification précise du projet.
Cette approche n’est pas très différente des modèles de conduite de changement tels que le PDCA (Plan Do Check Act).