En décembre dernier, j'ai hérité d'un ERP à moitié construit. Le côté commercial a été écrit en ASP.NET + C# + MS SQL ; le côté production était prévu mais pas dans le code. Je l'ai déplacé sur une pile Laravel moderne et j'ai tissé la chaîne de production à partir de zéro. Cela fait quatre mois et demi que j'y travaille et ce n'est toujours pas terminé. Ce que le terrain m'a appris, ici.
J'écris des outils internes pour les sociétés de production et d'exploitation. Le projet qui me prend le plus de temps est la plateforme ERP/MES de l'entreprise industrielle dans laquelle je travaille. Cet article ne concerne pas un système que j’ai construit à partir de zéro ; c'est une note sur un système qui est tombé entre mes mains à moitié construit, que j'ai migré, sur lequel j'ai tissé et que je tisse toujours. Quatre mois et demi s'étaient écoulés.
L'ancienne vie : Excel + WhatsApp + papier Avant l'arrivée du système, trois outils fonctionnaient en parallèle à l'usine. L'équipe commerciale conservait les commandes et les rapports dans des fichiers Excel. Des formulaires papier étaient utilisés pour les notifications de commande, les rapports de production et les bordereaux d'expédition. L’équipe de production remplissait les rapports de production, l’équipe d’expédition remplissait les bordereaux d’expédition. La communication entre les unités s'effectuait via WhatsApp, en groupes.
De l’extérieur, cette configuration semble « faite à la main », mais à l’intérieur, il y avait deux grandes fissures.
La première était la nécessité d’écrire la même information à deux endroits distincts. Lorsque les ventes ouvraient une commande, ses détails devaient être copiés textuellement du côté de l'expédition ; en production, les mêmes données dispersées dans différents enregistrements. Deux personnes ouvrant le même fichier en même temps et l’une écrasant l’autre était un cas typique.
La seconde était plus dure. Une planche sortait de la production, passait au dimensionnement, puis au masticage, au ponçage et e...
[Courte citation de 8% de l'article original]