Pfe - Habchi Soumaya Et Barkal Hajar
Pfe - Habchi Soumaya Et Barkal Hajar
2022-2023
Gestion intelligente de la chaîne logistique chez SIMRA
MAROC : utilisation de Power BI, déploiement d'un modèle
Machine Learning pour une solution end-to-end
Mots clés
Apprentissage automatique, Visualisation percutante des données, Qualité des produits,
Décisions, Tableaux de bord, Fournisseurs, Liste de produits qualifiés, FAI (First Article
Inspection), Manufacturing, Product Owner, Scrum Master, Équipe de développement,
Product Backlog, Personas utilisateurs, Cas d'utilisation, Épics, Fonctionnalité, Régression,
Ingénierie des caractéristiques, Clustering, Erreur quadratique moyenne, Erreur absolue
moyenne, Imputation, Encodage one-hot, Standard Scaler, DataFrame, MinMaxScaler, Coude
(pour le clustering), Clustering hiérarchique, Prédiction, Surajustement (overfitting), Sélection
de caractéristiques (SelectKBest), Déploiement.
Keywords
Dashboard, Machine Learning, Streamlit Share, Supply Chain, Repository, Scrum, Design
Thinking, End-to-end, Make-to-Order (MTO), Engineer-to-Order (ETO), KPIs, Qualified
Products List, FAI (First Article Inspection), Product Owner, Manufacturing, Scrum Master,
Development Team, Product Backlog, User Personas, Use Case, Epics, Feature, K-means,
Gradient Boosting, DecisionTreeRegressor, Random Forest, Feature Engineering, Clustering,
Root Mean Square Error, Mean Absolute Error, Business Intelligence, Seaborn Heatmap,
Imputation, One-Hot Encoder, Standard Scaler, DataFrame, MinMaxScaler, Elbow (for
clustering), Hierarchical Clustering, Prediction, Regression, Overfitting, SelectKBest,
Deployment.
1
Résumé
Le projet s’est concentré sur la gestion intelligente de la chaîne logistique chez SIMRA
MAROC. L'objectif était de concevoir et mettre en œuvre une solution complète intégrant des
outils avancés d'analyse, de prédiction et de visualisation des données. Grâce à l'utilisation de
technologies telles que Power BI, le Machine Learning et l'application PrediX, nous avons
réussi à améliorer la gestion des approvisionnements, à réduire les coûts et à améliorer la
qualité des produits pour SIMRA MAROC. Cette solution a permis à l'entreprise de prendre
des décisions plus éclairées, d'anticiper les besoins en matières premières et d'optimiser sa
chaîne logistique. L'intégration du modèle ML "XGBOOST" dans une application web a
également facilité l'accès et l'utilisation des fonctionnalités d'analyse avancée pour les
utilisateurs. Ce projet de PFE a été une réussite, démontrant l'efficacité de l'approche de
gestion intelligente de la chaîne logistique et ouvrant la voie à de nouvelles opportunités
d'amélioration pour SIMRA MAROC.
2
Abstract
The project focused on the intelligent management of the supply chain at SIMRA MAROC.
The aim was to design and implement a comprehensive solution integrating advanced data
analysis, prediction, and visualization tools. By utilizing technologies such as Power BI,
Machine Learning, and the PrediX application, we successfully improved procurement
management, reduced costs, and enhanced product quality for SIMRA MAROC. This solution
empowered the company to make informed decisions, anticipate raw material needs, and
optimize its supply chain. The integration of the "XGBOOST" ML model into a web
application also facilitated user access and utilization of advanced analytics capabilities. This
PFE project was a success, showcasing the effectiveness of intelligent supply chain
management and opening up new opportunities for improvement at SIMRA MAROC.
3
Remerciements
Nous souhaitons tout d'abord remercier chaleureusement notre encadrante pédagogique,
Madame Majda MAZRI, pour sa guidance précieuse et ses précieux conseils tout au long du
projet. Sa disponibilité, sa patience et sa passion pour l'enseignement ont été une source
d'inspiration pour nous.
Nous exprimons notre sincère reconnaissance envers Monsieur Jamal LMARIOUH, le chef
de filière, pour sa confiance en nos compétences et son soutien indéfectible. Ses
encouragements et sa disponibilité ont renforcé notre détermination à atteindre nos objectifs.
Nous souhaitons exprimer notre profonde gratitude envers Monsieur Mohamed LAGHDAF,
le directeur de l'organisation, pour avoir permis la réalisation de notre projet au sein de son
entreprise. Sa confiance en notre équipe et son soutien logistique ont été d'une importance
cruciale pour mener à bien notre projet.
Enfin, nous exprimons notre reconnaissance envers tous nos enseignants qui ont partagé leur
savoir, leur expérience et leur passion pour l'apprentissage tout au long de notre parcours
universitaire. Leurs enseignements et leurs encouragements ont été essentiels pour notre
développement académique et professionnel.
Nous sommes conscients que notre réussite est le fruit du soutien et de l'implication de toutes
ces personnes, nous leur témoignons notre profonde gratitude et notre reconnaissance sincère.
4
Dédicace
Nous dédions ce rapport à nos familles et à nos proches, qui nous ont soutenues tout au long
de notre parcours universitaire. Leur amour, leur encouragement et leur soutien indéfectibles
ont été notre moteur et notre source de motivation. Ce travail est le résultat de leur confiance
et de leur soutien inconditionnel. Nous leur sommes infiniment reconnaissantes.
Nous dédions également ce rapport à tous les étudiants qui poursuivent leurs études et qui
s'efforcent de réaliser leurs projets académiques. Que notre travail puisse inspirer et
encourager d'autres étudiants dans leurs propres réalisations.
5
Liste des abréviations
SA : societe anonyme
IEEE : institute of electrical and electronics engineers (institut des ingenieurs electriciens et
electroniciens)
6
RNN : recurrent neural network (reseau neuronal recurrent)
BD : base de données
CC : certificat de conformité
QTE : quantité
NC : non-conformité
PC : prix constant
REM : remise
EMETT : émetteur
REF : référence
AQ : assurance qualité
7
N° ARC : numéro accuse de réception commande
MP : matière première
CLT : client
EMP : employer
OF : ordre fabrication
8D : un processus structure en huit étapes (d1 a d8) visant à identifier, analyser et résoudre les
problèmes de manière systématique.
Mat : matricule
PS : préparation de surface
OP : operateur
SI : système d’information
8
Table des matières
MOTS CLES ......................................................................................................................................................... 1
KEYWORDS ......................................................................................................................................................... 1
RESUME ............................................................................................................................................................... 2
ABSTRACT ........................................................................................................................................................... 3
REMERCIEMENTS ............................................................................................................................................ 4
DEDICACE ........................................................................................................................................................... 5
9
1.3 SERVICE QUALITE DE LA PRODUCTION ............................................................................................. 31
3.2.1 Présentation de l’équipe projet (La Scrum Team) et les rôles associés ......................................................... 41
10
6.3 DISTRIBUTION DES VARIABLES IDENTIFICATION DES DIFFÉRENTS UTILISATEURS ........................ 110
8.1 LES TABLES DES FAITS ET DE DIMENSIONS POUR L’ACHAT ............................................................ 114
11
2.1.2 Objectif 2 : Prédiction de la quantité à commander pour les achats locaux et les achats import chez SIMRA
MAROC 171
2.2.1 Comparaison des performances des modèles en utilisant les KPIs sélectionnés en amont ......................... 195
A. Les performances des modèles utilisés dans les achats locaux .................................................................... 195
B. Les performances des modèles utilisés dans les achats imports ................................................................... 199
2.3 GANTT REEL POUR LE PROJET LIE AU PROCESSUS ACHAT ............................................................. 202
12
3.4 FEEDBACK ......................................................................................................................................... 214
9.3.2 Visualisation des données réelles par rapport à la prédiction pour le modèle XGBOOST ......................... 235
13
10.1. TESTS................................................................................................................................................. 240
1.2. DASHBOARD 2 : SUIVI DES MATIÈRES PREMIÈRES CONSOMMÉES PAR SIMRA MAROC EN 2022 254
1.3. DASHBOARD 3 : KPI’S LIÉ À LA PERFORMANCE DU SERVICE ACHAT SIMRA MAROC EN 2022 . 255
CONCLUSION.................................................................................................................................................. 287
14
ANNEXES ......................................................................................................................................................... 298
15
Chapitre 1 : Contexte du projet
Dans ce premier chapitre, nous introduisons le contexte général et spécifique de la
problématique abordée. Nous présentons l'entreprise et son secteur d'activité, ainsi que le
groupe SEGULA Technologies et son domaine d'expertise. De plus, nous décrivons
l'entreprise d'accueil, SIMRA MAROC, en mettant en évidence son rôle et sa position dans
l'industrie. On va détailler le service Achat, la Production et l'Administration des Ventes. Cette
présentation nous permet de mieux comprendre le cadre dans lequel le projet se déroule et
d'appréhender les enjeux spécifiques auxquels nous devrons répondre.
Le projet de PFE se déroule dans la société SIMRA MAROC qui fait partie du groupe
SEGULA TECHNOLOGIES, un leader mondial en ingénierie. Avec 13 000 salariés répartis
dans 30 pays, SEGULA gère des projets allant de la phase d'étude à la production, en
travaillant sur des innovations telles que l'avion électrique et la voiture autonome.
Dans le secteur de l'aéronautique, SIMRA est un partenaire clé pour les plus grands industriels
marocains et internationaux. Selon une étude menée par l'Association du Transport Aérien
International, le marché de l'aéronautique devrait atteindre 5,6 milliards de dollars d'ici 2025,
ce qui souligne l'importance de l'industrie pour l'économie mondiale
SEGULA Technologies est une entreprise française qui se concentre sur la conception et
l'ingénierie de produits et de systèmes. Fondée en 1985, elle est aujourd'hui présente dans plus
de 30 pays et emploie plus de 13 000 personnes dans le monde entier.
La société assure des services de conception et d'ingénierie pour une grande variété de
secteurs, notamment l'aérospatiale, l'automobile, l'énergie, les produits de consommation, les
transports ferroviaires et maritimes, et les technologies de l'information et de la
communication.
16
notamment dans les domaines de la cybersécurité, de l'analyse de données et de l'Internet des
objets.
Date de 1985
création
Secteur o L’aérospatiale.
o L’automobile.
o L'énergie.
o Les produits de consommation.
o Les transports ferroviaires et maritimes.
o Les technologies de l'information et de la communication.
17
1.1.3 Présentation de l’entreprise d’accueil SIMRA MAROC
SIMRA travaille avec de grands noms de l'industrie aéronautique, tels qu'Airbus, Safran,
Boeing, Daher et STELIA, l’entreprise est également engagée dans des projets de recherche et
développement pour améliorer la qualité et l'efficacité de ses services.
Enfin, SIMRA est certifiée ISO 9001 pour la qualité de ses processus et produits, et possède
également d'autres certifications telles que l'EN 9100 pour l'industrie aéronautique et
NADCAP une certification dédiée à l’industrie aérospatiale.
18
Infrastructure SITE INDUSTRIEL
(locaux, superficie,
niveaux, …)
19
l'aérospatiale. Elle est basée sur la norme ISO 9001 mais inclut
des exigences supplémentaires spécifiques à l'industrie
aéronautique. Cette certification est exigée par de nombreuses
entreprises aéronautiques et spatiales, notamment Airbus et
Boeing.
20
✓ Organigramme de l’entreprise SIMRA MAROC
Magasin de réception et contrôle
Responsable magasin
Magasin Quincaillerie
Assistant en administration
Vente
des ventes
Service méthode
SI
Chef de projet
contrôle
Directeur Général
Qualité HSE
Technicien laboratoire
Responsable RH Assitante RH
Maintenance
Réferent métiers
Planification et
Détourage
ordonnancement
chaudronnerie
traitement thermique
Unité de peinture
Marquage - Montage
21
1.2 Contexte spécifique du projet
Lors de ce chapitre, nous allons présenter de manière brève l’entité au sein de laquelle s’est
déroulé mon projet de fin d’étude : DÉPARTEMENT SUPPLY CHAIN
Le service achat de SIMRA Maroc où on a passé nos premières semaines est chargé de
l'approvisionnement en matières premières, pièces et équipements nécessaires pour la
production d'avions. Il est divisé en deux parties : l'achat étranger import et l'achat local
1.2.1.3 Approvisionnement
Tableau 3: APPROVISIONNEMENT
22
1.2.1.4 Organigramme de l’ACHAT
Achat
Responsable
Achat locale Achat import
magasin
Magasin de
Magasin
réception et
Quincaillerie
contrôle
SIMRA MAROC peut effectuer deux types de productions : une production globale, qui
implique la prise en charge de la matière première depuis le détourage jusqu'à la peinture et au
contrôle final, ainsi qu'une production partielle ou une sous-traitance. Dans le cas de la sous-
traitance, le client demande seulement le traitement de certaines parties du processus de
fabrication, comme le traitement de surface, la peinture, le traitement thermique ou le
ressuage.
23
Positionnement dans la Sous-traitant
chaine de valeur
Maintenance
Réferent métiers
Planification et
Détourage
ordonnancement
Repsonsable
Chef d'équipe Pliage
d'unité
Production
chaudronnerie
traitement Surface
traitement
thermique
Repsonsable
Chef d'équipe Ressuage
d'unité
Unité de peinture
Marquage -
Montage
Repsonsable
Chef d'équipe Usinage
d'unité
24
1.2.3 Présentation du service d’Administration Des Ventes
Ce service en aéronautique est responsable de plusieurs missions clés telles que la gestion de
la relation avec les clients, la prise en compte des commandes fermes et prévisionnelles, le
suivi des livraisons ainsi que la coordination avec les autres maillons de la SUPPLY CHAIN.
BOMBARDIER, BOEING,
Principaux concurrents
CASABLANCA AERONAUTIQUE
vente
assistant en
administration
des ventes
25
Chapitre 2 : Cadrage du projet
Dans ce chapitre, nous effectuerons une étude et une analyse de l'existant en examinant les
services de l'Achat, de l'Administration des Ventes et de la Qualité de la Production. Nous
examinons en détail les processus et les contrôles de chaque service pour identifier les lacunes
et les problèmes potentiels. Ensuite, nous présentons la problématique spécifique que notre
projet vise à résoudre, en mettant en évidence les objectifs attendus. Nous établissons
également la charte du projet, y compris le diagramme de Gantt prévisionnel, la méthodologie
de conduite de projet, les risques identifiés et les objectifs fixés. Enfin, nous effectuons une
revue documentaire et une revue de la littérature pour consolider nos connaissances et notre
compréhension du domaine.
Les produits et services de SIMRA MAROC sont destinés à une clientèle nationale et
internationale du secteur aéronautique, incluant des entreprises telles que STELIA, MATIS,
DAHER, SAFRAN, AIRBUS et CCA. L'entreprise est organisée en plusieurs départements,
chacun étant dirigé par un responsable et placé sous l'autorité d'une direction générale.
Cependant, l'entreprise doit faire face à plusieurs défis, notamment la concurrence accrue sur
le marché de l'aéronautique, la complexité des processus de production, l'optimisation des
coûts et l'adoption de nouvelles technologies. La gestion des ressources humaines est
également un défi majeur pour SIMRA MAROC, en termes de formation et de
développement des compétences.
26
Pour répondre à ces défis, SIMRA MAROC a mis en place plusieurs mesures, telles qu'une
stratégie de différenciation, des processus de production innovants et efficaces, des
programmes de formation pour les employés, une collaboration étroite avec les clients pour
répondre à leurs besoins spécifiques et une attention particulière à la gestion des coûts.
Avant de passer commande auprès de ses clients tels qu’AIRBUS, SIMRA Maroc effectue
une vérification des certificats de conformité (QPL’ QUALIFIED PRODUCTS LIST ’pour
s'assurer que le fabricant est bien habilité à fournir les composants nécessaires. L’incoterm
appliqué généralement est EXW.
De plus, ce service gère également les matières premières pour les projets FAI ‘FIRST
ARTICLE INSPECTION’ qui sont des inspections de qualité pour vérifier les pièces avant
leur lancement en production, l’article inspecté n’est pas nécessairement le « premier »
produit, mais un article ou un échantillon aléatoire de pièces du premier lot.
27
1.1.4 La cartographie BPMN relative au processus achat
28
1.1.5 Descriptif de la cartographie processus achat :
Le processus commence par la négociation des prix avec les fournisseurs. Cette étape
implique des discussions et des échanges pour déterminer des conditions commerciales
favorables. Ensuite, le service des achats évalue et sélectionne les fournisseurs potentiels en
fonction de critères tels que la qualité des produits, la fiabilité de livraison et la conformité
aux normes.
Une fois les fournisseurs choisis, le service des achats établit des demandes de prix détaillées
pour les articles nécessaires. Ces demandes comprennent des spécifications techniques et des
quantités requises. Sur la base des réponses reçues, le service des achats passe ensuite les
commandes aux fournisseurs sélectionnés.
Après avoir passé les commandes, le service des achats assure le suivi des livraisons. Il
s'assure que les produits sont expédiés dans les délais convenus et coordonne la réception des
marchandises. Une fois les produits reçus, ils font l'objet d'une évaluation pour s'assurer de
leur conformité aux spécifications techniques et de leur qualité.
En parallèle, le service des achats gère également les matières premières pour les projets FAI
(First Article Inspection), qui consistent en des inspections de qualité pour vérifier les pièces
avant leur lancement en production. Cela garantit que les pièces répondent aux exigences de
qualité et de performance attendues.
29
1.2.1 Les missions du service ADV
Le suivi des livraisons constitue une étape importante du processus d'ADV. Le service est
responsable de suivre les expéditions et de s'assurer que les produits sont livrés conformément
aux attentes des clients. Cela permet de garantir la satisfaction des clients tout au long du
processus de vente.
La coordination avec les autres maillons de la SUPPLY CHAIN est également essentielle. Le
service ADV collabore activement avec ces acteurs pour maintenir une chaîne
d'approvisionnement optimale, optimiser les coûts et préserver la qualité des produits. Cette
coordination permet de garantir une fluidité dans le processus d'approvisionnement et de
répondre efficacement aux demandes des clients.
Le détourage des tôles en aluminium est une étape essentielle dans la réalisation des pièces
aéronautiques. Cette technique permet de découper les pièces à partir d'un empilage de tôles
selon les commandes du programme de la machine. La machine de détourage est équipée d'un
tableau de suivi qui permet d'ajuster les valeurs et les outils utilisés en fonction des besoins de
production. Cette étape de production constitue la première étape du LEAN
MANUFACTURING chez SIMRA Maroc et sera au centre de notre stage
31
Figure 7: Machine de détourage
Cette étape consiste à donner forme à des pièces en utilisant des machines-outils spécialisées
telles que des tours, des fraiseuses, des perceuses et des rectifieuses. Les matériaux bruts, tels
que les métaux, les plastiques ou les composites, sont transformés en pièces finies en enlevant
de la matière jusqu'à obtenir les dimensions et la forme désirées. L'usinage est une opération
complexe qui nécessite des compétences techniques approfondies et un équipement de pointe
pour garantir la qualité et la précision des pièces produites. Chez SIMRA MAROC, cette
étape est effectuée par une équipe de professionnels qualifiés qui veillent à ce que chaque
pièce soit usinée avec précision pour répondre aux exigences de qualité les plus élevées.
Au niveau de cette étape, le plus utilisé est la machine de pliage de tôles CNC (Commande
Numérique par Ordinateur). Ces machines sont équipées de systèmes de contrôle avancés et
peuvent être programmées pour plier des tôles en fonction des spécifications exactes de
conception. Elles sont utilisées pour plier des pièces en métal pour des structures d'aéronefs,
des équipements intérieurs et extérieurs, des panneaux de fuselage, des ailes et d'autres
composants. Les machines de pliage de tôles CNC sont précises, rapides et fiables, ce qui les
rend essentielles dans le secteur aéronautique pour produire des pièces de haute qualité avec
une grande précision et une grande efficacité.
Les traitements de surface sont des procédés essentiels dans l'industrie aéronautique, qui
modifient les propriétés superficielles des matériaux utilisés. Ces traitements permettent
d'améliorer les propriétés mécaniques, électriques, chimiques, thermiques, esthétiques et
protectrices des pièces aéronautiques. Les alliages d'aluminium, largement utilisés dans la
32
construction aéronautique, bénéficient ainsi de traitements de surface tels que l'anodisation ou
la conversion chimique pour augmenter leur résistance à la corrosion. Les traitements de
surface peuvent également être utilisés à des fins décoratives, pour améliorer l'adhérence des
peintures ou pour faciliter l'écoulement d'air sur certaines pièces, améliorant ainsi leur
performance aérodynamique. En somme, les traitements de surface sont des procédés
critiques pour la qualité et la durabilité des pièces aéronautiques.
Le ressuage est une méthode utilisée pour détecter des discontinuités de surface sur des
matériaux. Cette technique repose sur l'application d'un liquide pénétrant qui se propage dans
les fissures et les discontinuités, puis est retiré de la surface. Ce liquide rend visible toute
discontinuité en créant une coloration différente sur la surface, permettant ainsi une détection
visuelle facile. Cette technique est couramment utilisée dans l'industrie aéronautique pour
s'assurer de la qualité et de la sécurité des composants. Le ressuage est une méthode simple,
rapide et peu coûteuse qui peut être utilisée pour détecter les défauts de surface avant qu'ils ne
deviennent des problèmes plus importants.
Ce traitement consiste en une opération de trempe de pièces métalliques qui est réalisée dans
un four. Ce four est équipé d'un dispositif de régulation de température permettant une très
bonne homogénéité de la température. La trempe doit être suivie d'un refroidissement très
rapide, pour cela l'eau est souvent utilisée comme milieu de trempe. Après la sortie du four, la
charge est acheminée vers un bac d'eau où elle tombe par gravité. Cette opération de trempe
permet d'améliorer les propriétés mécaniques des pièces métalliques en augmentant leur
dureté et leur résistance.
33
✓ Sous processus Montage
Ce processus de peinture est divisé en trois étapes pour garantir un résultat optimal :
➢ L'étape de masquage (dépend du client) : Elle consiste à protéger les zones de la pièce
qui ne doivent pas être peintes en utilisant divers matériaux tels que du scotch adhésif
ou du papier abrasif. Il est important de choisir le bon matériau de masquage pour
éviter toute altération de la qualité finale de la pièce après le séchage de la couche de
finition.
➢ L'étape de préparation : Avant de peindre une pièce, il est essentiel de la préparer pour
assurer une qualité de finition optimale. Cette étape de préparation implique plusieurs
opérations telles que le nettoyage de la surface, le ponçage pour enlever les
imperfections et la réactivation de la peinture existante. Il est important de réaliser ces
étapes avec soin pour garantir une adhérence parfaite de la peinture sur la surface de la
pièce.
34
✓ Sous processus Marquage
✓ Le contrôle dimensionnel :
✓ Le contrôle final :
Le contrôle final est une étape essentielle qui vise à vérifier l'aspect global de la pièce en se
basant sur une gamme de contrôle spécifique pour chaque pièce. Cette étape implique
également une série de tests et de vérifications de conformité effectués par le service de
contrôle qualité. Toutes les pièces ne répondant pas aux normes de qualité et présentant un
risque de défaillance sont rejetées selon les exigences de la norme EN 9100.
Le test d'adhérence par arrachement est une méthode utilisée dans l'industrie aéronautique
pour évaluer la solidité de l'adhérence de la peinture sur les surfaces des composants. Il
mesure la force nécessaire pour détacher la peinture de la surface, ce qui est important pour
assurer la durabilité, la résistance aux intempéries et la sécurité des composants
aéronautiques. Les résultats du test sont comparés aux normes de l'industrie pour garantir une
adhérence suffisante de la peinture.
Le contrôle mural de qualité est une procédure effectuée chez SIMRA MAROC pour garantir
la conformité des produits aux normes et aux exigences spécifiques des clients. Il s'agit d'une
35
étape supplémentaire de vérification de la qualité qui intervient après le montage et le
marquage des pièces élémentaires. Le contrôle mural consiste à inspecter visuellement les
pièces pour détecter d'éventuels défauts, imperfections ou non-conformités. Cette mesure vise
à assurer la satisfaction du client en fournissant des produits de haute qualité qui répondent à
leurs attentes. Le contrôle mural de qualité permet d'identifier les problèmes potentiels et de
prendre des mesures correctives avant la livraison des produits aux clients.
36
1.3.3 La cartographie BPMN relative au processus Qualité de la production
37
1.3.4 Descriptif de la cartographie processus Qualité de la production :
Le processus qualité au sein de SIMRA MAROC est essentiel pour assurer la satisfaction des
clients et maintenir des normes élevées de qualité. Ce processus repose sur des directives
claires et des procédures rigoureuses pour garantir une gestion efficace des non-conformités et
des actions correctives.
Lorsqu'un client demande l'utilisation de ses propres formulaires, le pilote qualité produit doit
exploiter ces formulaires et suivre la démarche spécifiée dans ces derniers lors de la
sécurisation et de l'établissement des plans d'action. Cela permet de s'aligner sur les exigences
spécifiques du client et d'assurer une approche cohérente dans le traitement des non-
conformités.
De plus, si le client spécifie des délais pour la sécurisation, l'établissement des plans d'actions
ou d'autres étapes du processus, il est crucial de prendre en compte et de respecter ces délais
lors du traitement des non-conformités client. Cela démontre l'engagement de SIMRA
MAROC envers la satisfaction du client et la gestion efficace des problèmes de qualité.
Le processus qualité met également l'accent sur l'évaluation continue des performances et la
mise en place d'actions correctives. Les non-conformités sont soigneusement analysées, des
plans d'action sont élaborés pour résoudre les problèmes identifiés, et des mesures sont prises
pour prévenir toute récurrence.
En résumé, le processus qualité de SIMRA MAROC vise à assurer la satisfaction des clients
et le maintien des normes de qualité. Il inclut la prise en compte des formulaires spécifiques
du client et le respect des délais spécifiés, ainsi que l'évaluation continue des performances et
la mise en œuvre d'actions correctives appropriées. Ce processus contribue à garantir la
qualité des produits et la satisfaction des clients tout au long de leur expérience avec SIMRA
MAROC.
Au cours de la première semaine, nous nous sommes concentrées sur le service des achats
locaux. Nous avons assisté aux demandes d'achat et avons pris note des difficultés auxquelles
38
l'acheteuse était confrontée quotidiennement pour répondre aux besoins en matières premières
des demandeurs. Ensuite, nous avons travaillé sur la partie des achats import. Notre objectif
était d'analyser le processus sur une semaine et de réaliser une cartographie du processus
achat orientée BPMN, nous avons constaté que la demande d'achat devait passer par le service
financier et le directeur général de l'entreprise, ce qui entraînait parfois des retards.
De plus, les délais d'approvisionnement étaient souvent très longs, pouvant aller jusqu'à 1 an.
Après avoir passé quelques jours avec les acheteuses, nous avons souhaité explorer les
opérations effectuées au magasin, notamment la réception, le contrôle qualité et le stockage,
afin de mieux comprendre la phase amont de la chaîne logistique de SIMRA MAROC.
Le magasin était composé de trois zones distinctes : la réception, le contrôle (zone rouge) et le
stockage. Ils utilisaient la méthode FIFO (premier entré, premier sorti) pour gérer les articles,
pendant notre visite du magasin, nous avons pu observer les processus de réception, de
contrôle qualité et technique, ainsi que les zones de stockage et de préparation pour la
production et l'expédition. Nous avons également constaté que l'inventaire n'était jamais
effectué et que la classification ABC n'était pas utilisée pour définir les articles à forte
rotation.
Dans le cadre de notre mission, nous avons également eu l'opportunité de discuter avec la
planificatrice et la responsable de la SUPPLY CHAIN, qui est notre encadrante. À ce stade,
notre problématique n'était pas encore définie, car nous souhaitions d'abord explorer et
approfondir nos analyses à tous les maillons de la chaîne, en collectant des données à travers
des entretiens directs, des extractions de données auprès du responsable SI (Clipper) et des
indicateurs métiers.
Après la réalisation du BPMN achat, nous avons demandé à l'une des acheteuses de nous
fournir la procédure interne afin de l’aligner avec notre cartographie BPMN. Ensuite, nous
avons eu une réunion avec le responsable de la première unité de production, la responsable
SUPPLY CHAIN et le directeur général de SIMRA MAROC. Au cours de cette réunion, qui a
duré environ une heure, nous avons expliqué notre vision et notre volonté de combiner
l'informatique et la logistique.
Suite aux différents échanges effectués avec les acheteuses, nous avons constaté que 40% des
fournisseurs rejetaient les demandes de SIMRA en raison de retards de paiement. De plus, le
Calcul des Besoins Nets (CBN) était généré de manière hebdomadaire, voire quotidienne, ce
39
qui influençait les décisions prises par le service de la SUPPLY CHAIN, entraînant des sous-
estimations ou des excès au niveau des besoins.
En ce qui concerne l'ADV (Administration des Ventes), nous avons cherché à comprendre le
comportement des clients SIMRA, les types de cycles utilisés dans les commandes et surtout
les paiements, car tout retard de paiement des clients pouvait entraîner des problèmes de fonds
de roulement et de liquidité pour l'entreprise.
Pendant notre deuxième mois de stage, nous avons commencé la semaine par un petit
debriefing avec le responsable de la première unité de production chez SIMRA MAROC.
Cette unité gérait trois îlots de production : le détourage, le pliage et la chaudronnerie. Nous
avons posé plusieurs questions pour comprendre le flux de production, car SIMRA MAROC
fabrique des pièces aéronautiques pour la construction d'avions. Ils utilisent deux stratégies
industrielles : la fabrication à la commande (MTO - MAKE TO ORDER) et l'ingénierie à la
commande (ETO - ENGINEER TO ORDER), cette dernière étant utilisée pour les premières
inspections d'articles (FAI - First Article Inspection), l'une des premières observations que
nous avons faites est l'absence d'identification des délais de fabrication, alors que Clipper
indique un délai moyen de 4 semaines pour des milliers de références. Nous nous sommes
donc tournés vers le service méthodes pour analyser les gammes de fabrication, mais nous
avons constaté que les délais de fabrication n'étaient pas spécifiés. De plus, nous avons
remarqué que les indicateurs de performance étaient principalement liés aux opérateurs et à
leurs productivités.
Au fil des semaines, nous avons constaté qu'il n'y avait pas vraiment d'indicateurs de mesure
clairs. Les ordres de fabrication étaient gérés par Clipper, avec une coordination entre les
planificateurs et le magasinier pour le lancement et la récupération des matières premières.
En ce qui concerne la qualité, nous avons constaté une bonne gestion avec un suivi adéquat
des non-conformités internes et des retours clients. Cependant, nous avons également
remarqué l'absence d'indicateurs de mesure pour la maintenance préventive ou corrective.
Nous avons mené des entretiens avec les employés de l'entreprise pour comprendre leur point
de vue sur les problèmes opérationnels. Il est apparu que ces derniers ne bénéficiaient pas de
formations ou d'améliorations en termes de compétences.
Face à ces obstacles, nous avons réalisé l'importance de proposer des solutions efficaces et
adaptées pour améliorer la performance de chaque maillon de la chaîne d'approvisionnement.
Nous avons également compris qu'il était essentiel de tenir compte des contraintes et des
40
spécificités de chaque maillon pour contribuer à l'amélioration de l'entreprise. Ainsi, notre
rapport de PFE se concentrera sur l'analyse des données et la proposition de nouveaux
indicateurs de performance afin d’apporter des solutions concrètes et efficaces pour améliorer
la situation actuelle de la chaîne d'approvisionnement de SIMRA MAROC.
3 Charte du projet
3.1 Diagramme de GANTT prévisionnel
L'équipe Scrum est formée de trois éléments : le Product OWNER, l'équipe de développement
et le Scrum Master. Le modèle Scrum a été conçu pour optimiser la flexibilité, la créativité et
la productivité de l'équipe.
Le Product OWNER (PO) HABCHI Soumaya, a pour rôle de présenter les caractéristiques et
les fonctionnalités du produit à développer, ainsi que d'approuver le produit livré.
Le Scrum Master (SM) BARKAL Hajar, supervise l'avancement global du projet et les
activités de l'équipe. Il s'occupe également de l'organisation des réunions et garantit la bonne
application de la méthode AGILE.
41
3.2.2 Planning du Product BACKLOG
Tout d'abord, il s'agit de prédire avec précision la quantité de produits qui sera commandée
par le service achat. En anticipant la demande, nous pourrons faciliter la planification de la
production et optimiser les niveaux de stock, contribuant ainsi à réduire les délais
d'approvisionnement des fournisseurs SIMRA.
Le deuxième objectif consiste à améliorer la qualité des pièces produites en fixant des
indicateurs et en analysant les retours des clients. Nous allons mettre en place des méthodes
pour analyser les non-conformités et calculer des indicateurs clés de performance (KPI) liés à
42
la qualité. Ces informations seront utilisées pour former les contrôleurs et les opérateurs, afin
d'identifier et de corriger les problèmes de qualité et d'optimiser les processus.
Enfin, nous souhaitons anticiper les commandes clients afin de pouvoir honorer les délais qui
leur ont été communiqués. Certains clients de SIMRA ont des cycles prévisionnels
spécifiques, et en travaillant au niveau de l'ADV (Administration des Ventes), nous serons en
mesure de mieux planifier la production et les livraisons, assurant ainsi la satisfaction des
Clients.
Réduire les délais Réduire le délai Mesurer le temps Établir des En tenant compte Atteindre le délai
d'approvisionnement moyen moyen entre la actions et des des ressources et de 6 mois dans un
des fournisseurs d'approvisionnement demande améliorations des mesures délai d’un an
SIMRA de 11 mois à 6 mois d'approvisionnement concrètes prévues, l'objectif
et la réception des pour réduire est réalisable
produits par SIMRA les délais à 6
mois
Améliorer la qualité Réduire le taux de Mesurer le nombre Mettre en En tenant compte Atteindre le taux de
des pièces produites non-conformité de de produits non œuvre des des solutions 8% dans un délai
15.65% à 8% conformes par actions pour prévues pour d’un an
rapport au nombre réduire le taux améliorer la qualité,
total de produits à 8% l'objectif est
réalisable
Améliorer la qualité Réduire le nombre Mesurer le nombre Mettre en En tenant compte Atteindre le nombre
des pièces produites moyen de retours total de retours place des des actions de de 8 retours par
client de 11.58 par client par mois mesures pour correction prévues, mois dans un délai
mois à 8 par mois réduire les l'objectif est d’un an
retours à 8 par réalisable
mois
Améliorer la qualité Réduire le taux de Taux de rebuts 19.46% 10% D'ici la fin du
des pièces produites rebuts trimestre
43
Prédire la quantité Réduire l'erreur de Erreur de prévision +/- 30.86% +/- 18% D'ici la fin de
commandée par le prévision moyenne moyenne l'année
service achat
Améliorer la qualité Augmenter le taux OQD Client 60% 80% D'ici la fin du
des produits de satisfaction client semestre
Réduire les délais Délai moyen 60jours 35 jours (Somme des délais 360000/60000 = Oui
d'approvisionnement d'approvisionnement d'approvisionnement 60jours
des fournisseurs de chaque
SIMRA references / Nombre
total de references)
Améliorer la qualité Taux de non- 15.65% 8% (Nombre de produits (18 / 115) x 100 = Oui
des pièces produites conformité non conformes / 15 %
Nombre total de
produits) x 100
Améliorer la qualité Nombre moyen de 11.58par 8 par Nombre total de 278 / 24 = 11.58 Oui
des pièces produites retours client mois mois retours client /
Nombre total de
mois
Améliorer la qualité Temps moyen de 30 jours 20 jours Temps total de 20 jours Oui
des pièces produites résolution des résolution des
problèmes de qualité problèmes de qualité
/ Nombre total de
problèmes de qualité
Améliorer la qualité Taux de rebuts 19.46% 10% (Nombre de produits (121504/624222) Oui
des pièces produites rebuts / Nombre x 100 = 19.46%
total de produits) x
100
44
Prédire la quantité Erreur de prédiction +/- +/- 18% (Quantité réellement ((676196 - Oui
commandée par le moyenne 30.86% commandée - 467525) / 676196)
service achat Quantité prévue) / x 100=30,86%
Quantité réellement
commandée x 100
Améliorer la qualité OQD Client 2000 1500 ((Nombre de (960 / 480 000) * Oui
des produits commandes non 1 000 000
conforme livré /
Nombre total de
commandes client
retourné) x 100
Il est important de reconnaître les risques associés à la réalisation de notre projet et de prendre
des mesures pour les éviter ou les atténuer. Parmi les risques les plus courants, on peut citer la
collecte de données inutiles ou erronées, qui peut entraîner une mauvaise analyse et une prise
de décision inefficace. De plus, des données incohérentes ou incomplètes peuvent fausser les
résultats et rendre l'analyse incomplète. La résistance au changement de la part des employés
peut empêcher l'application efficace des solutions proposées basées sur les résultats de
l'analyse de données. Enfin, il est possible que les résultats de l'analyse ne s'adaptent pas à la
stratégie SIMRA, ce qui peut entraîner une résistance de la part de la direction ou des
employés à la mise en œuvre des solutions proposées. Il est donc essentiel de rester vigilant et
de prendre des mesures pour diminuer ces risques afin d'assurer le succès de l'analyse de
données.
45
4 Revue documentaire
Introduction :
La revue documentaire est une étape clé de tout projet de recherche. Elle consiste à
rassembler et à analyser des informations à partir de différentes sources afin de mieux
comprendre le contexte et de préciser les objectifs de la recherche. Dans cette partie de notre
projet, nous allons effectuer une revue documentaire pour identifier les outils et les
méthodologies appropriés à notre étude.
BPMN
BPMN (Business Process Modeling Notation) 2.0 de l'OMG (Object Management Group) est
une notation graphique standardisée permettant de modéliser les processus métiers de manière
claire et compréhensible pour les utilisateurs métiers tels que les analystes, les développeurs
et les gestionnaires. Elle vise également à créer une passerelle normalisée entre la
modélisation des processus métiers et les langages d'exécution métiers. L'objectif principal de
cette méthode est de fournir un cadre commun pour la description des processus
indépendamment de l'outil utilisé. Les diagrammes d'orchestration, les diagrammes de
collaboration, le diagramme de chorégraphie et le diagramme de conversation sont les quatre
catégories de diagrammes utilisés pour représenter les différentes perspectives d'un processus.
Machine Learning
Le Machine Learning est une méthode de traitement de données qui permet à un ordinateur
d'apprendre et de s'améliorer à partir de données, sans être explicitement programmé. Cette
méthode peut être utilisée à différentes phases du projet, notamment pour analyser les
données, élaborer des modèles prédictifs et optimiser les résultats. Les avantages du Machine
Learning sont nombreux, notamment sa capacité à traiter de grandes quantités de données, à
fournir des résultats précis et à s'adapter à des situations complexes.
Deep Learning
Le Deep Learning est une méthode plus avancée de traitement de données qui utilise des
réseaux de neurones artificiels pour effectuer des tâches complexes. Cette méthode peut être
utilisée pour des tâches telles que la reconnaissance d'images et de voix, la traduction de
langues et la prédiction de résultats. Le Deep Learning est souvent utilisé en conjonction avec
le Machine Learning, car il peut aider à traiter des données plus complexes et à obtenir des
résultats plus précis.
46
Power BI
Power BI est un outil de visualisation de données qui permet de transformer les données
brutes en informations visuellement attrayantes et faciles à comprendre. Il offre une interface
utilisateur intuitive pour la création de rapports, de tableaux de bord et de graphiques
interactifs. Nous avons utilisé Power BI pour analyser les données collectées dans notre étude,
en les transformant en graphiques et en tableaux, ce qui nous a permis de mieux comprendre
les tendances et les relations entre les variables.
JUPYTER
Python
Python est un langage de programmation populaire qui est largement utilisé dans l'analyse de
données, le machine Learning, la visualisation de données et la science des données. Nous
avons utilisé Python pour effectuer l'analyse statistique de nos données, pour générer des
graphiques et des tableaux de bord interactifs, ainsi que pour implémenter des modèles de
MACHINE LEARNING pour prévoir les résultats de notre étude.
FIGMA/FIGJAM
FIGMA est un outil de design graphique collaboratif basé sur le Cloud qui permet la
collaboration en temps réel sur un projet et offre différentes fonctionnalités avancées pour une
meilleure visibilité et une grande maîtrise du flux de travail. Il fonctionne sur différents
systèmes d'exploitation et propose un plan gratuit pour créer et stocker 3 projets actifs
simultanément.
FIGJAM est un outil de tableau blanc en ligne qui facilite les brainstormings en équipe.
SCRUM
Comme nous pouvons le remarquer dans cette figure, pour mettre en place l’approche
SCRUM, il faut tout d'abord définir les différentes fonctionnalités de l’application qui forment
le BACKLOG du produit. Ensuite, l’équipe procède à la planification du sprint pour définir le
plan détaillé d'une itération.
Les sprints durent généralement deux à quatre semaines. Durant un sprint, il y a toujours des
réunions quotidiennes entre les différents collaborateurs du projet afin de présenter l'état
d'avancement des différentes tâches en cours, les difficultés rencontrées ainsi que les tâches
restantes à réaliser.
Une fois le produit partiel est prêt, nous vérifions la conformité de ce qui a été fait. Durant le
sprint et nous pouvons alors l'améliorer en procédant à l'étape de rétrospective.
✓ DAILY SCRUM
Tenue de réunions quotidiennes de Scrum pour discuter de l'avancement des tâches et des
éventuels obstacles rencontrés
✓ SPRINT PLANNING
Organisation d'une réunion de planification de sprint pour discuter des tâches à réaliser pour
le prochain sprint
48
✓ SPRINT RETRO
Organisation d'une réunion de rétrospective de sprint pour discuter des leçons apprises et des
améliorations possibles pour les sprints suivants
✓ SPRINT REVIEW
Organisation d'une réunion de revue de sprint pour présenter les nouvelles fonctionnalités
implémentées et discuter de leur pertinence par rapport aux objectifs du projet
CLICKUP
CLICKUP est un outil très utile dans la gestion agile de projet car il permet de planifier,
suivre et exécuter les projets en utilisant les méthodologies agiles telles que Scrum et Kanban.
En utilisant CLICKUP, les équipes peuvent organiser leurs tâches sous forme de listes et de
tableaux Kanban, créer des sprints et des user stories, affecter des tâches aux membres de
l'équipe, suivre les temps et les budgets, et suivre l'avancement du projet en temps réel. De
plus, CLICKUP offre des fonctionnalités de collaboration telles que les commentaires, les
mentions et les notifications qui permettent aux membres de l'équipe de travailler ensemble de
manière plus efficace. En somme, CLICKUP est un outil très puissant pour les équipes qui
cherchent à mettre en pratique les méthodologies agiles dans leur gestion de projet.
Clipper GPAO
Clipper GPAO est un outil de gestion de production assistée par ordinateur qui permet de
planifier, d'organiser et de contrôler les opérations de production. Nous avons utilisé Clipper
GPAO pour suivre les différentes étapes de notre étude, en nous assurant que nous respectons
les délais et les budgets prévus.
EXCEL
Excel est un logiciel de tableur développé par Microsoft qui permet de manipuler des
données, de créer des graphiques et des tableaux. Nous avons utilisé Excel pour organiser et
analyser les données collectées dans notre étude, en les transformant en graphiques et en
tableaux, ce qui nous a permis de mieux comprendre les tendances et les relations entre les
variables.
PYCHARM :
49
gestion de projets et l'intégration avec des outils de contrôle de version. PYCHARM améliore
la productivité des développeurs Python grâce à son interface conviviale et à ses
fonctionnalités puissantes.
FLASK :
Flask est un Framework web léger et flexible pour Python. Il est utilisé pour développer des
applications web de manière simple et rapide. Flask offre des fonctionnalités essentielles pour
la création de routes, la gestion des requêtes HTTP et la création de modèles HTML.
BIZAGI
STREAMLIT
STREAMLIT est une bibliothèque Python utilisée pour créer des applications web
interactives pour la visualisation de données et le déploiement de modèles de Machine
Learning. Il permet aux développeurs de convertir facilement leur code Python en
applications web sans avoir à se soucier de la gestion de la mise en page ou des interactions
utilisateur complexes.
ANVIL
ANVIL est une plateforme puissante pour créer des applications Web avec Python, offrant
simplicité et flexibilité. Utilisé dans divers domaines, ANVIL permet de concevoir rapidement
des applications puissantes sans connaissances avancées en développement Web.
TRELLO
Trello est un outil de gestion de projet agile en ligne basé sur le système de tableau Kanban. Il
permet aux équipes de suivre et d'organiser leurs tâches à l'aide de cartes, de listes et de
tableaux. Trello est apprécié pour sa convivialité et sa flexibilité, ce qui en fait un excellent
choix pour la gestion de projets collaboratifs et le suivi des tâches.
FastAPI
FastAPI est un Framework Web moderne et performant pour la création d'API en utilisant
Python. Il offre une approche basée sur les annotations de type pour définir les routes, les
50
paramètres et les réponses de l'API, ce qui facilite la création d'API rapides et bien
structurées. FastAPI est connu pour sa vitesse et sa scalabilité, ce qui en fait un choix
populaire pour le développement d'applications Web.
GitHub :
GitHub est une plateforme de développement logiciel basée sur Git, un système de contrôle de
version distribué. Il permet aux développeurs de collaborer, de gérer et de partager
efficacement du code source et des projets. Sur GitHub, vous pouvez héberger vos dépôts de
code, suivre les modifications, soumettre des demandes de fusion, signaler des problèmes,
collaborer avec d'autres développeurs et gérer les versions de votre code. Il offre des
fonctionnalités telles que la gestion des branches, le suivi des problèmes, la documentation
✓ Synthèse
La revue documentaire nous a permis de sélectionner les outils et les approches adaptés à
notre étude. On utilisera Scrum pour la gestion, Power BI, Excel, FIGMA, Ishikawa, VSM, et
des modèles de Machine et Deep Learning pour l'analyse des données. BIZAGI sera utilisé
pour la gestion des processus métier.
5 Revue littérature
Introduction
Depuis leur création dans les années 1950, les réseaux de neurones ont connu une croissance
exponentielle. Ces dernières années, les systèmes d'apprentissage automatique basés sur les
réseaux de neurones ont permis des avancées significatives dans de nombreux domaines, tels
que la reconnaissance d'images, la compréhension du langage naturel et la conduite autonome.
Dans cette revue, nous passons en revue l'état de l'art des réseaux de neurones et des systèmes
d'apprentissage, en nous concentrant sur les dernières avancées technologiques, les
applications clés, les défis et les perspectives.
Les réseaux de neurones artificiels ont été inspirés par le fonctionnement du cerveau humain.
McCulloch et Pitts ont été les premiers à proposer un modèle de neurone artificiel en 1943.
Rosenblatt a développé le perceptron en 1958, qui est un type de réseau de neurones artificiels
qui peut apprendre à classifier des données. Cependant, la plupart des chercheurs ont
abandonné les réseaux de neurones dans les années 1960 en raison de la difficulté à les
51
entraîner. Dans les années 1980, des algorithmes d'apprentissage plus efficaces ont été
développés, tels que la rétropropagation de l'erreur, qui a permis des avancées significatives
dans le domaine.
"Les réseaux de neurones artificiels sont des modèles de calcul inspirés par la façon dont le
cerveau traite l'information."
"La plupart des recherches sur les réseaux de neurones ont été abandonnées dans les années
1960 en raison de la difficulté à les entraîner."
"La rétropropagation de l'erreur est un algorithme d'apprentissage clé pour les réseaux de
neurones."
Les réseaux de neurones sont devenus un domaine clé de l'apprentissage automatique. Les
algorithmes d'apprentissage automatique ont été développés pour aider à résoudre des
problèmes difficiles, tels que la reconnaissance de voix et d'image, la classification de
données et la prédiction. L'un des principaux avantages des réseaux de neurones est leur
capacité à apprendre des données brutes sans la nécessité d'une ingénierie de caractéristiques
explicite. Selon l'article de l'IEEE Transactions on Neural Networks and Learning Systems,
les réseaux de neurones sont de plus en plus utilisés pour résoudre des problèmes dans les
domaines de la vision par ordinateur, du traitement du langage naturel et de la reconnaissance
de forme.
Les réseaux de neurones sont inspirés par le fonctionnement du cerveau. Les neurones sont
des cellules qui transmettent des signaux électriques et chimiques dans le cerveau. Les
réseaux de neurones artificiels sont composés de neurones artificiels, également appelés
"unités", qui sont interconnectés pour former des couches. Les réseaux de neurones sont
capables d'apprendre à partir de données en ajustant les poids et les biais des unités pour
minimiser l'erreur de prédiction.
Les réseaux de neurones peuvent être classés en fonction de leur architecture. Les réseaux de
neurones à propagation avant, également appelés réseaux de neurones multicouches, sont les
plus couramment utilisés. Les réseaux de neurones récurrents sont utilisés pour les tâches de
séquence, telles que la prédiction de séquences temporelles. Les réseaux de neurones
convolutifs sont utilisés pour la reconnaissance d'image et la vision par ordinateur.
52
L'apprentissage profond est une extension de l'apprentissage automatique qui utilise des
réseaux de neurones profonds pour apprendre des caractéristiques hiérarchiques à partir des
données. Les réseaux de neurones profonds sont des réseaux de neurones avec plusieurs
couches cachées. Selon l'article de l'IEEE Transactions on Neural Networks and Learning
Systems, l'apprentissage profond a révolutionné la reconnaissance d'image, la traduction
automatique, la reconnaissance de la parole et bien d'autres domaines.
✓ Les extraits
"L'apprentissage automatique est une méthode permettant aux ordinateurs d'apprendre à partir
de données sans être explicitement programmés. Les réseaux de neurones sont une technique
d'apprentissage automatique basée sur le fonctionnement des neurones biologiques" (source :
IEEE Transactions on Neural Networks and Learning Systems, vol. 26, no. 8, pp. 1614-1629,
2015).
"Les réseaux de neurones sont capables de traiter des données complexes et de découvrir des
relations non linéaires entre les entrées et les sorties. Ils sont utilisés pour résoudre des
problèmes de classification, de régression, de segmentation d'image, etc." (source : IEEE
Transactions on Neural Networks and Learning Systems, vol. 23, no. 2, pp. 201-221, 2012).
Une autre architecture de réseau de neurones profond couramment utilisée est le réseau de
neurones récurrents (RNN), qui est utilisé pour modéliser les séquences de données telles que
53
les séquences de mots dans le traitement du langage naturel. Les RNN sont capables de
conserver une mémoire à court et à long terme des informations précédemment traitées, ce qui
leur permet de prendre en compte le contexte et de produire des prédictions plus précises.
Selon l'article "Deep Learning for Sensor-based Activity Recognition : A Survey" publié dans
l'IEEE Transactions on Neural Networks and Learning Systems, les systèmes d'apprentissage
profond ont montré une grande efficacité dans de nombreux domaines, tels que la
reconnaissance d'activités, la reconnaissance vocale, la vision par ordinateur, la traduction
automatique et la génération de texte. Cependant, la formation de réseaux de neurones
profonds peut être très coûteuse en termes de temps de calcul et de ressources, nécessitant
souvent l'utilisation de GPU haut de gamme et d'infrastructures de calcul distribuées.
Dans la prochaine section, nous explorerons les applications des réseaux de neurones et des
systèmes d'apprentissage.
✓ Les extraits
"Les systèmes d'apprentissage profond sont des réseaux de neurones à plusieurs couches,
capables d'apprendre des représentations hiérarchiques de données. Ils ont été utilisés avec
succès dans des domaines tels que la reconnaissance d'images, la traduction automatique et la
synthèse de la parole" (source : IEEE Transactions on Neural Networks and Learning
Systems, vol. 28, no. 3, pp. 504-521, 2017).
Les réseaux de neurones et les systèmes d'apprentissage ont une large gamme d'applications
dans de nombreux domaines, notamment la reconnaissance vocale et faciale, la traduction de
langues, la reconnaissance d'objets, la prédiction de données, l'analyse de sentiments, la
conduite autonome, la médecine, la finance, etc. Selon Goodfellow et al. (2016), les
applications les plus courantes des réseaux de neurones sont la reconnaissance de caractères
manuscrits, la reconnaissance de la parole et la reconnaissance d'objets dans les images.
54
Une application intéressante des réseaux de neurones est la détection de fraudes dans les
transactions financières. Selon le rapport de l'IEEE Transactions on Neural Networks and
Learning Systems, les réseaux de neurones peuvent être utilisés pour détecter les fraudes dans
les transactions en ligne en identifiant les modèles anormaux et les comportements inhabituels
des utilisateurs.
Les réseaux de neurones ont également été utilisés dans le domaine médical pour la détection
de maladies et l'analyse de radiographies. Selon LeCun et al. (2015), les réseaux de neurones
convolutifs ont été utilisés pour la détection de cancers du sein à partir de mammographies et
pour la segmentation d'images de résonance magnétique (IRM) du cerveau. Les systèmes
d'apprentissage profond ont également été utilisés pour détecter les signes de rétinopathie
diabétique à partir de photos de l'œil.
"La reconnaissance de la parole est une application clé des réseaux de neurones et des
systèmes d'apprentissage profond, car les réseaux de neurones peuvent apprendre à extraire
des caractéristiques discriminantes à partir de signaux acoustiques."
"La vision par ordinateur est un domaine clé pour les réseaux de neurones profonds, qui
peuvent apprendre à reconnaître des objets, des visages, des scènes et des actions à partir
d'images."
"La traduction automatique est une autre application majeure des réseaux de neurones et des
systèmes d'apprentissage profond, qui peuvent apprendre à traduire des phrases d'une langue à
une autre en utilisant des données d'entraînement."
Bien que les réseaux de neurones et les systèmes d'apprentissage soient devenus des outils
essentiels dans de nombreux domaines, ils présentent encore des défis et des limites. L'un des
défis les plus importants est la nécessité de données volumineuses pour l'entraînement des
réseaux de neurones, ce qui peut poser des problèmes de confidentialité et de sécurité pour
certaines applications. En outre, les réseaux de neurones peuvent être coûteux en temps et en
ressources de calcul pour l'entraînement, ce qui peut limiter leur utilisation dans des
applications en temps réel. Enfin, la compréhension de la manière dont les réseaux de
neurones parviennent à des résultats est souvent difficile, ce qui peut limiter leur
interprétabilité et leur acceptation par les utilisateurs.
55
En termes de limites, les réseaux de neurones peuvent être soumis à des biais et à des erreurs,
ce qui peut réduire leur précision dans certaines situations. En outre, les réseaux de neurones
peuvent être confrontés à des problèmes de surapprentissage (overfitting) ou de sous-
apprentissage (underfitting) lorsqu'ils sont mal entraînés ou mal configurés.
Cependant, malgré ces défis et limites, les réseaux de neurones et les systèmes d'apprentissage
continuent de susciter un grand intérêt dans de nombreux domaines, et de nouvelles approches
et techniques sont en constante évolution pour surmonter ces défis.
"Le surapprentissage est un problème courant dans les réseaux de neurones et les systèmes
d'apprentissage profond, où les modèles apprennent à mémoriser les données d'entraînement
plutôt qu'à généraliser à de nouvelles données."
"Le biais algorithmique est un autre défi important, où les modèles peuvent apprendre des
préjugés et des stéréotypes à partir des données d'entraînement."
"La transparence et l'interprétabilité des résultats sont des préoccupations croissantes dans les
applications critiques, telles que les soins de santé, où il est important de comprendre
comment les décisions sont prises."
✓ Synthèse
En conclusion, les réseaux de neurones et les systèmes d'apprentissage sont des outils
puissants pour la résolution de nombreux problèmes dans différents domaines. Leur utilisation
a connu une croissance rapide au cours des dernières années, et il existe de nombreuses
applications réussies de ces techniques. Cependant, des défis et des limites persistent, et de
nouvelles recherches sont nécessaires pour surmonter ces obstacles. En fin de compte, les
réseaux de neurones et les systèmes d'apprentissage continueront de jouer un rôle important
dans les années à venir, en offrant des solutions innovantes aux défis actuels et futurs.
56
Chapitre 3 : Conception du projet
Dans ce chapitre crucial de notre projet PFE, nous abordons la conception détaillée de notre
solution. Nous commençons par présenter un tableau comparatif des outils sélectionnés et
justifions nos choix. Ensuite, nous nous concentrons sur la collecte des données et choisissons
les outils de développement, de déploiement et de test appropriés. Nous sélectionnons
également les indicateurs clés de performance (KPI’s) de la chaîne d'approvisionnement, et
nous nous penchons sur le choix des modèles d'apprentissage automatique et leurs critères
appropriés. En outre, nous analysons et exploitons la base de données, décrivons les types de
variables et identifions les différents utilisateurs. Nous comparons également les approches de
modélisation Kimball et Inmon, décrivons les axes d'analyse et présentons les tables de faits
et de dimensions pour les Achats et la Qualité. Enfin, nous exposons les KPI’s spécifiques à
chaque projet et proposons un modèle dimensionnel pour les deux services.
57
grande communauté de développeurs et d'une
bibliothèque riche et variée.
TRELLO VS CLICKUP Nous avons choisi Trello car il offre une interface
simple et intuitive, une gestion visuelle des tâches, une
flexibilité et une adaptabilité élevées, ainsi qu'une
collaboration en temps réel. Trello est largement adopté,
dispose d'une communauté active et offre des
intégrations avec d'autres outils populaires. Ces
caractéristiques en font un choix solide pour la gestion
de projet.
JUPYTER VS GOOGLE Nous avons choisi JUPYTER car c'est un outil plus
COLAB polyvalent et plus personnalisable que Google COLAB.
JUPYTER est un environnement de développement de
données interactif qui prend en charge plusieurs
langages de programmation, tels que Python, R, Julia,
etc. Il offre également une interface utilisateur
conviviale, des fonction
58
Pour le projet sur l'achat, nous avons rassemblé les sources de données nécessaires à l'analyse
de la chaîne d'approvisionnement SIMRA MAROC. Nous avons sollicité les acheteurs, le
responsable du système d'information (Clipper), la responsable de la chaîne
d'approvisionnement et le service financier pour obtenir les mesures pertinentes. Nous avons
également extrait des données à partir de bases de données et de fichiers sources. Des fiches
de suivi, des procédures internes sous forme de documentations et des extractions Clipper ont
également été récupérées pour enrichir notre ensemble de données.
Pour le projet sur la qualité, nous avons recueilli des données provenant de différentes
sources. Nous avons interrogé les responsables de production, l'équipe de qualité et de
contrôle SIMRA MAROC pour obtenir des informations sur les processus de qualité, les
défauts, les contrôles effectués, etc. Nous avons également récupéré des fiches de suivi et des
données supplémentaires en posant des questions ciblées.
Lors de ces échanges, nous avons pris soin de prendre des notes détaillées pour garantir la
qualité des données collectées et l'exactitude des analyses ultérieures. Cela nous permettra de
disposer d'un ensemble de données complet et fiable pour alimenter nos analyses sur Power
BI et nos modèles d'apprentissage automatique.
59
NumPy Une bibliothèque Python très populaire pour la manipulation et le calcul efficace de
tableaux multidimensionnels. Elle offre une API riche pour effectuer des opérations
mathématiques et statistiques sur ces tableaux.
Pandas Une bibliothèque qui fournit des fonctionnalités pour la manipulation et l'analyse de
données en tableaux, avec des capacités de filtrage, d'agrégation, de jointure, etc. Elle
offre également une API pour faciliter ces opérations.
scikit- Une bibliothèque d'apprentissage automatique utilisée pour des tâches telles que la
learn classification, la régression, le clustering et la sélection de modèle. Bien qu'elle ne
soit pas une API spécifique, elle fournit une API complète pour l'apprentissage
automatique.
Matplotlib Bibliothèque pour Python permettant de créer des graphiques 2D de haute qualité.
Utilisé en particulier pour visualiser les données et les résultats de l'apprentissage
automatique.
Seaborn Bibliothèque pour Python permettant de créer des graphiques statistiques avancés,
basés sur Matplotlib. Utilisé en particulier pour la visualisation des données.
60
3.3. Outils de Test
Outil Justification
PyTest Pytest est un framework de test unitaire pour Python utilisé pour automatiser les tests
d'unité et d'intégration de modèles de Machine Learning et Deep Learning. Il permet de
garantir la qualité des modèles en vérifiant leur précision, leur fiabilité et leur
performance de manière automatisée.
Locust Le test "Locust" est une plateforme open-source populaire pour la réalisation de tests de
charge et de performance. L'avantage de Locust réside dans sa simplicité d'utilisation et
sa flexibilité. Il permet aux développeurs et aux testeurs de simuler des situations réelles
à grande échelle, afin de mesurer les performances d'une application ou d'un système
sous des charges de travail variables. Les résultats des tests de charge réalisés avec
Locust peuvent aider à identifier les goulots d'étranglement, les problèmes de
performances et les limites de capacité, ce qui permet aux équipes techniques de prendre
des décisions éclairées pour optimiser les performances de leurs applications.
Ces indicateurs permettent de mesurer et d'évaluer la qualité des fournisseurs ainsi que le
respect des délais de livraison dans le département des achats. Ils sont utilisés pour prendre
des décisions et mettre en place des actions d'amélioration si nécessaire
Qualité liée aux Ne pas 0 ppm < OQD ≤ 2000 ppm : Bon résultat
fournisseurs (OQD) dépasser 2000
ppm
61
5000 ppm < OQD ≤ 10000 ppm : Insuffisant (Plan
d'action à fournir + Audit si pas d'amélioration
sous 3 mois)
Qualité liée aux pièces Ne pas 0 ppm < OQD ≤ 2000 ppm : Bon résultat
livrées aux Clients dépasser 2000
(OQD) ppm
62
2000 ppm < OQD ≤ 5000 ppm : Satisfaisant
(rappel des objectifs)
Qualité liée aux pièces Ne pas 0 ppm < OQD ≤ 2000 ppm : Bon résultat
fabriqués (OQD) dépasser 2000
ppm
63
Technique / Modèle Indicateur de mesure Mesure souhaitée
64
Coefficient de détermination (R²) > 0.7
6 Analyse et Exploitation de la BD
Dans le cadre de notre projet de fin d'études chez SIMRA MAROC, nous avons entrepris une
analyse approfondie des données du service achat et qualité. Nous avons collaboré avec les
acheteurs, le responsable qualité et son équipe, ainsi que le responsable du système
d'information pour recueillir un volume important de données pertinentes. Dans cette partie
du projet, nous présenterons et expliquerons en détail la base de données utilisée.
Nous avons effectué une analyse approfondie de la base de données pour comprendre sa
structure, ses tables et ses attributs. Cette étape nous a permis d'identifier les sources de
données clés, telles que les commandes, les fournisseurs et les non-conformités. Nous avons
également réalisé des opérations de nettoyage des données en utilisant des outils tels qu'Excel
avant de les importer dans Power BI, notre outil de prédilection pour la réalisation du projet.
En résumé, notre projet vise à exploiter les données du service achat et qualité chez SIMRA
Maroc en les transformant en informations exploitables grâce à des outils tels que Power BI et
des techniques de machine Learning. Nous contribuerons ainsi à l'amélioration continue des
65
processus d'achat, à l'optimisation des performances et à la prise de décisions plus éclairées au
sein de l'entreprise.
Dans cette section, nous décrirons en détail les données d'entrée utilisées dans notre projet.
Nous fournirons des informations sur les différentes tables et les composent de chaque table
présente dans la base de données.
Par exemple, nous expliquerons les données relatives aux pièces, aux fournisseurs, aux
commandes, aux non-conformités, et plus encore. Nous mettrons également en évidence les
mesures de qualité qui ont été collectées pour évaluer les performances de SIMRA Maroc.
66
Cette feuille contient les données principales liées aux arrivages des matières première. Les
colonnes de cette feuille comprennent les informations suivantes :
67
Feuille 2 - "Liste des fournisseurs"
Cette feuille contient des informations spécifiques sur les fournisseurs. Les colonnes de cette
feuille comprennent :
Le deuxième fichier Excel que nous avons récupéré s'intitule "Export articles" et il contient
une seule feuille de données.
68
Feuille 1 - "Articles"
Larg/Ep/Diam/Pds
Code appel article
Fourniture de CC
Mode de gestion
Unité de gestion
Epaisseur/Diam
N° de Magasin
Motif Blocage
Désignation 2
Désignation 3
Date de sortie
Unité de prix
Code famille
Dimension 4
Dimension 5
Tps Réappro
ARTICLEM
Code Nature
Prix unitaire
Dernier prix
Etat matière
Lotie (O/N)
Fournisseur
Sortie (o/n)
Longueur
Id. Auto
Nuance
(O/N)
69
✓ Etat matière : L'état de la matière de l'article.
✓ Code Nature : Le code associé à la nature de l'article.
✓ Prix unitaire : Le prix unitaire de l'article.
✓ Fournisseur : L'identifiant unique du fournisseur associé à l'article.
✓ Code famille : Le code de la famille à laquelle l'article appartient.
✓ Sortie (o/n) : Indique si l'article est en sortie ou non.
✓ Unité de gestion : L'unité de gestion utilisée pour l'article.
✓ Tps d’appro : Le temps d’approvisionnement de l'article.
✓ Dernier prix : Le dernier prix enregistré pour l'article.
✓ N° de Magasin : Le numéro de magasin associé à l'article.
✓ Motif Blocage : Le motif de blocage éventuel de l'article.
✓ Date de sortie : La date de sortie de l'article.
✓ Mode de gestion : Le mode de gestion utilisé pour l'article.
✓ Unité de prix : L'unité de prix utilisée pour l'article.
Statistiques pour la feuille "Export articles" :
70
Ces statistiques nous donnent une idée de la taille de la feuille et du classeur "Export
articles", ainsi que du nombre de cellules contenant des données et d'autres éléments
statistiques pertinents.
Le troisième fichier Excel que nous avons récupéré s'intitule "Export code fournisseur" et
il contient une seule feuille de données.
Après avoir réalisé le nettoyage et la transformation des fichiers "Arrivage 2022", "Export
articles" et "Export code fournisseurs", nous avons consolidé les données pertinentes dans
un seul fichier, dans le but de prédire la quantité à commander et aussi pour réduire le délai
d’approvisionnement chez SIMRA.
72
Pour la prédiction de la quantité à commander on va utiliser deux feuilles ‘import’ et ‘Local’
N° BC N° BL Qté Unité Qté_Commandé Unité_Commande Qté_Récep. Unité_Récep. Prix_unitaire Unite_de_prix Coût_unitaire_moyen Montant MT total Trimestre
7967,00 078/2022 600,00 u 600,00 u 600,00 u 3 u 3,00 1920 1920 Trim 1
9074,00 506/2022 1000,00 u 1000,00 u 1000,00 u 3 u 3,00 3000 3000 Trim 4
9074,00 503/2022 10,00 u 10,00 u 10,00 u 34.6 u 35,00 346 346 Trim 4
7611,00 142/2022 10,00 u 10,00 u 10,00 u 17.01 u 17,00 177 177 Trim 1
9039,00 224798 50,00 u 50,00 u 50,00 u 16.4 u 16,00 928 928 Trim 4
8717,00 223386 10,00 u 40,00 u 10,00 u 16.4 u 16,00 185.6 185.6 Trim 3
8608,00 223568 10,00 u 40,00 u 10,00 u 16.4 u 16,00 185.6 185.6 Trim 3
8717,00 223567 30,00 u 40,00 u 30,00 u 16.4 u 16,00 556.8 556.8 Trim 3
8608,00 223715 30,00 u 40,00 u 30,00 u 16.4 u 16,00 556.8 556.8 Trim 3
9039,00 224428 50,00 u 50,00 u 50,00 u 4.65 u 5,00 606 606 Trim 4
8490,00 BL222250 40,00 u 40,00 u 40,00 u 12.12 u 12,00 484.8 484.8 Trim 2
8448,00 50590 75,00 m 75,00 m 75,00 m 16.42 m 16,00 1231.19 1231.19 Trim 3
8448,00 50212 30,00 m 30,00 m 30,00 m 12.31 m 12,00 369.36 369.36 Trim 3
8544,00 80250235 20,00 u 20,00 u 20,00 u 149.039344 u 149,00 2980.79 2980.79 Trim 3
8332,00 H60YN6.101 10,00 gal 10,00 gal 10,00 gal 1520.75 gal 1521,00 11632.9 11632.9 Trim 4
Figure 18 : Feuille local
73
Pour la réduction du délai approvisionnements on a utilisé la première feuille du fichier qui
s’appelle ‘data final’
Dans le cadre de notre projet utilisant Power BI, nous visons à exploiter les fonctionnalités de
Business Intelligence pour créer un tableau de bord interactif. Ce tableau de bord présentera
des mesures pertinentes et permettra le calcul de l'OQD (On-Time Delivery) et de l'OTD (On-
Time Delivery) pour nos fournisseurs.
Tout d'abord, nous avons collecté et préparé les données dans Microsoft Excel. Les données
sont organisées en plusieurs feuilles, chacune contenant des informations spécifiques. Après
avoir effectué les étapes de nettoyage et de transformation, nous avons consolidé les données
pertinentes dans un seul fichier Excel.
Ensuite, nous avons utilisé Power BI pour importer le fichier Excel et effectuer des
transformations supplémentaires sur les données. Power BI nous offre des outils puissants
pour fusionner des tables, appliquer des filtres, créer des relations entre les données et réaliser
des calculs avancés.
74
‘ Avant la transformation et le nettoyage des données sur EXCEL’
Le premier fichier Excel, "Arrivage 2022", se compose de deux feuilles et qu’on a va
utiliser pour prédire la quantité à commander et réduire le délai d’approvisionnements.
Cette feuille contient les données principales liées aux arrivages des matières première. Les
colonnes de cette feuille comprennent les informations suivantes :
75
✓ Unité Récep : L'unité de mesure utilisée pour la quantité réceptionnée.
✓ Montant : Le montant total de la commande.
✓ Qté Gest : La quantité gérée de l'article.
✓ Unité Gest : L'unité de mesure utilisée pour la quantité gérée.
✓ Type : Le type de commande.
✓ Récepteur : Le nom du récepteur de la commande.
Ces statistiques donnent une idée de la taille des feuilles et du classeur "Arrivage 2022", ainsi
que du nombre de cellules contenant des données et d'autres éléments statistiques importants.
76
Feuille 2 - "Liste des fournisseurs" :
Cette feuille contient des informations spécifiques sur les fournisseurs. Les colonnes de cette
feuille comprennent :
Feuille 1 - "Articles"
77
Les colonnes de cette feuille comprennent les informations suivantes :
Id. Auto ARTICLEM
Désignation article
Larg/Ep/Diam/Pds
Code appel article
Fourniture de CC
Mode de gestion
Unité de gestion
Epaisseur/Diam
N° de Magasin
Motif Blocage
Désignation 2
Désignation 3
Date de sortie
Unite de prix
Code famille
Dimension 4
Dimension 5
Tps Réappro
Code Nature
Prix unitaire
Dernier prix
Etat matière
Lotie (O/N)
Fournisseur
Sortie (o/n)
Longueur
Nuance
(O/N)
Ces statistiques nous donnent une idée de la taille de la feuille et du classeur "Export
articles", ainsi que du nombre de cellules contenant des données et d'autres éléments
statistiques pertinents.
Le troisième fichier Excel que nous avons récupéré s'intitule "Export code fournisseur" et
il contient une seule feuille de données.
79
✓ Code postal : Le code postal du fournisseur.
✓ Téléphone : Le numéro de téléphone du fournisseur.
✓ Télécopie : Le numéro de télécopie du fournisseur.
✓ Compte tiers : Le compte tiers associé au fournisseur.
✓ Pays : Le pays du fournisseur.
✓ Règlement : Les informations de règlement du fournisseur, le cycle de paiement
fournisseur
✓ Adresse (ligne 1) : La première ligne de l'adresse du fournisseur.
✓ Adresse (ligne 2) : La deuxième ligne de l'adresse du fournisseur.
✓ Adresse (ligne 3) : La troisième ligne de l'adresse du fournisseur.
✓ Adresse (ligne 4) : La quatrième ligne de l'adresse du fournisseur.
✓ SIRET : Le numéro SIRET du fournisseur.
✓ Club : Le club associé au fournisseur.
80
Le quatrième fichier Excel que nous avons récupéré s’appelle ‘ suivi NC fournisseur’
Le fichier ‘Suivi NC fournisseur’ contient des données relatives au suivi des non-
conformités fournisseurs. Les colonnes présentes dans ce fichier sont les suivantes :
81
✓ Date de réception de la preuve de mise en place du Plan d'action : La date à laquelle la
preuve de mise en place du Plan d'action a été reçue.
✓ Arrivage 1, Arrivage 2, Arrivage 3 : Les dates d'arrivée des produits associés à la non-
conformité.
✓ Efficacité : L'efficacité de la mise en place du Plan d'action.
✓ Commentaire : Un espace pour ajouter des commentaires supplémentaires.
En ce qui concerne les statistiques du fichier, la feuille se termine à la cellule U42. Il y a 296
cellules contenant des données, aucun tableau n'est présent et il y a 32 formules utilisées dans
la feuille. De plus, il y a une image et un objet intégrés dans le fichier.
Le dernier fichier Excel que nous avons récupéré s’appelle ‘Commandes 2022’
Le fichier ‘Commandes 2022’ contient des données relatives aux commandes passées en
2022. Les colonnes présentes dans ce fichier sont les suivantes :
82
✓ Unité : L'unité de mesure de la quantité.
✓ Qté Gest : La quantité gérée.
✓ Unité Gest : L'unité de mesure de la quantité gérée.
✓ P.U. (Prix Unitaire) : Le prix unitaire de l'article.
✓ Unité Prix : L'unité de mesure du prix.
✓ Nom fournisseur : Le nom du fournisseur associé à la commande.
✓ Prix const. : Le prix constant de l'article.
✓ Rem (Remise) : La remise appliquée à l'article.
✓ Coût : Le coût de l'article.
✓ Mt H.T. (Montant Hors Taxe) : Le montant hors taxe de la commande.
✓ Mt T.T.C. (Montant Toutes Taxes) : Le montant toutes taxes comprises de la
commande.
✓ Livrée : Indique si la commande a été livrée.
✓ Reste : La quantité restante à livrer.
✓ Facturée : Indique si la commande a été facturée.
✓ Emett. : L'émetteur de la commande.
✓ Client : Le client associé à la commande.
✓ Famille : La famille de produits de l'article.
✓ Fournisseur : Le fournisseur de l'article.
✓ Affaire : L'affaire liée à la commande.
✓ Désignation 2 : Une deuxième désignation de l'article.
✓ Désignation 3 : Une troisième désignation de l'article.
✓ Pds/Lg : Le poids ou la longueur de l'article.
✓ Commande interne : Le numéro de commande interne.
✓ N°BL : Le numéro de bon de livraison.
✓ Réf fournisseur : La référence du fournisseur.
✓ Réf du fabricant : La référence du fabricant.
✓ Rang : Le rang de la commande.
✓ Phase : La phase de la commande.
✓ Gestionnaire : Le gestionnaire associé à la commande.
✓ AQ : La qualité associée à la commande.
✓ Réf/four : La référence du fournisseur.
✓ Fabricant : Le fabricant de l'article.
83
✓ Blocages : Indique s'il y a des blocages associés à la commande.
✓ N° ARC : Le numéro d'ARC.
✓ Devis : Le devis associé à la commande.
En ce qui concerne les statistiques du fichier, la feuille se termine à la cellule AO5185. Il y a
146,127 cellules contenant des données, aucun tableau n'est présent et il n'y a pas de formules
utilisées dans la feuille.
Ces informations et statistiques du fichier "Commandes 2022" sont essentielles pour suivre et
gérer les commandes passées en 2022 dans le cadre du projet.
Dans la deuxième partie de notre projet sur Power BI, nous avons consacré notre attention aux
transformations de données afin de préparer un jeu de données cohérent et prêt à être utilisé
pour l'analyse.
Nous avons commencé par appliquer des filtres pour cibler les informations spécifiques
nécessaires à notre étude. Ensuite, nous avons fusionné des tables pour combiner des données
provenant de différentes sources, créant ainsi des relations significatives entre les données.
De plus, nous avons effectué une opération de suppression des doublons afin d'éliminer les
enregistrements redondants et garantir l'intégrité des données.
Par ailleurs, nous avons renommé les colonnes pour une meilleure compréhension et une
facilité d'utilisation dans notre modèle de données. Enfin, nous avons identifié et éliminé les
colonnes vides ou contenant des valeurs aberrantes, garantissant ainsi la qualité et la fiabilité
de notre jeu de données.
Ce processus de transformation nous a permis de préparer une base solide pour notre analyse
ultérieure et le choix des tables les plus pertinentes pour notre modèle.
La table de données utilisée pour notre projet, intitulée ‘Commande’, est alimentée par la
source de données ‘Arrivage’. C’est une source fournit des informations nécessaires pour
analyser les commandes et leur correspondance avec les arrivages de la matière première
Nous avons pu établir des relations et des liens significatifs entre les commandes passées et
les arrivages correspondants, ce qui nous permettra d'explorer et d'analyser les différents
aspects de notre projet avec une vue complète et intégrée des données.
84
Figure 29: Étapes de transformation des données de la table 'COMMANDE'
Pour les fichiers ‘ NC fournisseur’, ‘Fournisseur’, ‘Détails commande’ et ‘MP’ voilà les
étapes appliquées sont :
85
Figure 33: Étapes de transformation des données de la table Figure 32: Étapes de transformation des données de la table ‘NC
‘fournisseur’ Fournisseur’
Figure 31: Étapes de transformation des données de la table Figure 30: Étapes de transformation des données de la table ‘MP’
‘Détails commande’
86
6.1.2 Pour Processus Qualité de la production
6.1.2.1 Le BI en faveur du processus Qualité de la production
Les données nécessaires pour notre projet proviennent de différentes sources telles que ‘Suivi
NC 2022’, ‘Suivi NC 2023’, ‘Statut Réclamation 2022’, ‘Statut Réclamation 2023’,
‘Pièces Fab’, ‘Code Défaut’, ‘Export BL Clt’, ‘Table Emp’ et ‘Grille de Compétences’.
Ces données ont été récupérées en collaboration avec l'équipe qualité et le responsable du
système d'information. De plus, nous avons créé un fichier Excel contenant une liste
actualisée des contrôleurs et des opérateurs, fournie par l'ingénieur qualité qui est responsable
de la mise en œuvre des procédures internes et du suivi des compétences au sein de
l'entreprise. Dans cette partie, notre objectif est d'analyser, d'expliquer et de transformer ces
données à la fois sur Excel et sur Power BI.
87
‘ Avant la transformation et le nettoyage des données sur EXCEL’
89
La feuille "Suivi des NC Interne" du fichier "Suivi Non-Conformité 2023" contient des
données relatives au suivi des non-conformités internes pour l'année 2023. Les statistiques de
cette feuille sont les suivantes :
90
Troisième fichier Excel : ‘ statut de réclamation 2022 ’
Les colonnes de la feuille ‘Statut 2022’, qui fait partie du fichier ‘Statut Réclamation 2022’,
comprennent les informations suivantes :
92
Quatrième fichier Excel : ‘statut des réclamations 2023 ’
Les colonnes de la feuille ‘Statut 2023’, qui fait partie du classeur ‘Statut Réclamation
2023’, sont les suivantes :
94
Cinquième fichier Excel : ‘EXPORT BL CLIENT’
Le cinquième fichier, intitulé ‘EXPORT BL CLIENT’, comprend une seule feuille nommée
‘Suivi BL client’. Les colonnes de cette feuille sont les suivantes :
95
✓ Désignation 2 : Une deuxième désignation éventuelle.
✓ Désignation 3 : Une troisième désignation éventuelle.
✓ Désignation 4 : Une quatrième désignation éventuelle.
✓ N°DC : Le numéro de document commercial.
✓ Emett-. : L'émetteur du bon de livraison.
✓ @. Liv. : L'adresse de livraison.
✓ AQ : L'assurance qualité associée.
✓ Famille : La famille de produits.
✓ N° B.R. : Le numéro de bordereau de réception.
✓ Transporteur : Le transporteur chargé de la livraison.
✓ DEVIS : Le numéro de devis.
Les statistiques de la feuille ‘Suivi BL client’ sont les suivantes :
96
Le sixième fichier Excel : ‘ Export pièces fabriqué’
97
✓ Désignation 3 : La troisième désignation de la pièce.
✓ Motifs Blocage : Les motifs de blocage éventuels pour la pièce.
✓ Réf. Homologation : La référence d'homologation de la pièce.
✓ N° Plan : Le numéro de plan de la pièce.
✓ Indice plan : L'indice de plan de la pièce.
✓ Classement ABC : Le classement ABC de la pièce.
✓ Classe de pièce : La classe de la pièce.
✓ Date Sortie : La date de sortie de la pièce.
✓ Section : La section à laquelle la pièce est rattachée.
✓ Acheteur : L'acheteur responsable de la pièce.
✓ Approvisionneur : L'approvisionneur associé à la pièce.
✓ Préparateur : Le préparateur de la pièce.
✓ Nom Client : Le nom du client lié à la pièce.
✓ Approbateur : L'approbateur de la pièce.
✓ Date Approbateur : La date d'approbation de la pièce.
✓ Vérificateur : Le vérificateur de la pièce.
✓ Date Vérificateur : La date de vérification de la pièce.
✓ Référence Client : La référence client de la pièce.
✓ Existe ? (Macro-gamme DT CBN) : Indique si une macro-gamme de type DT CBN
existe pour la pièce.
✓ Date création (Macro-gamme DT CBN) : La date de création de la macro-gamme DT
CBN pour la pièce.
✓ Existe ? (Macro-gamme DT Dev) : Indique si une macro-gamme de type DT Dev
existe pour la pièce.
✓ Date création (Macro-gamme DT Dev) : La date de création de la macro-gamme DT
Dev pour la pièce.
✓ Macro-gamme : Le type de macro-gamme associé à la pièce.
✓ Prix réf. article : Le prix de référence de l'article.
✓ Unité Prix Article : L'unité de mesure utilisée pour le prix de référence de l'article.
✓ Pièce créée le ... : La date de création de la pièce.
✓ Par : L'auteur de la création de la pièce.
Statistiques de la feuille 'Pièces’ :
98
✓ Fin de la feuille : AS5278
✓ Nombre de cellules contenant des données : 127 848
✓ Nombre de tableaux : 0
✓ Nombre de formules : 0
✓ Classeur :
✓ Nombre de feuilles : 1
✓ Nombre total de cellules contenant des données dans le classeur : 127 848
✓ Nombre total de tableaux dans le classeur : 0
✓ Nombre total de formules dans le classeur : 0
Ces informations fournissent une vue d'ensemble des colonnes présentes dans la feuille 'Pièce'
du fichier 'EXPORT PIECES FABRIQUE' et présentent les statistiques relatives à cette
feuille de données.
99
✓ Type AQ Système : Le type d'avis qualité pour le système.
Les statistiques de la feuille ‘Défaut’ du classeur ‘export code défaut’ sont les suivantes :
✓ Feuille active
✓ Fin de la feuille E120
✓ Cellules contenant des données : 598
✓ Tableaux : 0
✓ Formules : 0
Les colonnes de la feuille ‘Employé’ qui fait partie du fichier ‘Table Employé’ sont les
suivantes :
101
Figure 44: deuxième partie de la feuille Grille des Compétences
102
✓ Conductivité : Compétences en conductivité
✓ Dureté : Compétences en mesure de dureté
✓ Détourage : Compétences en détourage
✓ Chaudronnerie : Compétences en chaudronnerie
✓ Soudage : Compétences en soudage
✓ USINAGE : Compétences en usinage
✓ Traitement de surface (PS) : Compétences en traitement de surface
✓ Peinture (PS) : Compétences en peinture
✓ Montage : Compétences en montage
✓ Opérations : Compétences en opérations
✓ CND : Compétences en contrôle non destructif
✓ METHODES DE TESTES : Compétences en méthodes de tests
✓ Marquage : Compétences en marquage
✓ SI : Compétences en systèmes d'information
✓ Maintenance : Compétences en maintenance
✓ Finances : Compétences en finances
✓ Contrôle de gestion : Compétences en contrôle de gestion
✓ Ressources humaines : Compétences en gestion des ressources humaines
✓ Management : Compétences en management
✓ ADV : Compétences en gestion des ventes
✓ Projet : Compétences en gestion de projet
✓ Langues : Compétences linguistiques
Statistiques de la feuille ‘Compétences’ :
103
‘ La transformation et le nettoyage des données sur Power bi ’
104
Figure 49: Étapes de transformation des données de la table
Contrôleur
Figure 50: Étapes de transformation des données de la table Pièces
Figure 48: Étapes de transformation des données de la table Figure 51: Étapes de transformation des données de la table
Qualité externe ilots
105
Figure 52: Étapes de transformation des données de la table
Figure 53: Étapes de transformation des données de la table operateur
Clients
✓ synthèse
Le projet Power BI du service qualité a subi une transformation majeure lors de cette phase.
Nous avons effectué des opérations de nettoyage et de transformation des données. De plus,
nous avons modifié le type de données pour certains fichiers récupérés à partir d'une
extraction clipper, où les données étaient stockées sous forme de nombres plutôt que de textes
ou de chaînes de caractères. Étant donné que des opérations de fusion étaient présentes, il était
essentiel de gérer correctement les types de variables.
106
feuilles, appelées ‘import’ et ‘locale’, seront dédiées à la prédiction de la quantité
commandée.
Les projets d'achat et de qualité ont été renommés et préparés avec des tableaux bien définis à
la suite des transformations réalisées avec Excel et Power BI. Ces tableaux pour le service
qualité comprennent les tables ‘opérateur’, ‘qualité interne’ et ‘qualité externe’ …
En ce qui concerne les achats, une table a été créée pour relier les fournisseurs et les
indicateurs de performance OTD (On-Time Delivery) afin d'évaluer les performances des
fournisseurs de SIMRA Maroc.
Nous partagerons une synthèse des tableaux avant et après l'exploration des données afin de
résumer tout ce qui a été réalisé jusqu'à présent. Cette étape est essentielle pour les prochaines
phases de réalisation de notre projet.
Total 13399 69 3
Tableau 16: statistiques de données d'achat avant transformation
Data clt 3
Total 2375 78 3
Tableau 17: Statistiques de données d'achat après transformation
107
Pour Notre projet sur Power BI
✓ Achat avant
SUIVI NC 19 20 1
FOURNISSEUR
✓ Achat après
Data Achat VF 5
MP 6317 9 Feuil1
NC Fournisseur 18 3 Feuil5
Total 14107 49 5
Tableau 19: : Statistiques de données d'achat après transformation
108
✓ Qualité avant
✓ Qualité après
Client 26850 13 1
Contrôleur 11 3 1
Défaut 119 2 1
Ilot 97 4 1
Opérateur 109 11 1
Pièces 5278 14 1
109
Employé 194 4 1
Total 36350 82 9
Tableau 21: Statistiques de données de la qualité de production après transformation
Les variables présentes dans les différentes tables sont de plusieurs types, notamment :
Variables catégorielles : comme Type qui indique si l'article est Fourniture (Matières et
Divers) ou Sous-Traitance Réalisation.
Variables binaires : comme le certificat de conformité, qui indique si l'article est conforme
ou non.
Les utilisateurs liés au service achat ayant accès à cette base de données peuvent être :
Les acheteurs : ils ont accès à toutes les tables pour pouvoir suivre les commandes en cours,
les délais de livraison, les règlements, etc. Ils peuvent également effectuer des analyses pour
identifier les fournisseurs les plus performants en termes de qualité, de coût et de délai.
La responsable de la Supply Chain : ils ont accès aux informations sur les articles et les
fournisseurs pour planifier les approvisionnements et optimiser les stocks. Ils peuvent
également utiliser la table de faits pour suivre les dépenses liées aux approvisionnements et
pour effectuer des analyses de rentabilité.
110
Les responsables financiers : ils ont accès à la table de faits pour suivre les dépenses liées
aux approvisionnements et pour effectuer des analyses de rentabilité.
Les auditeurs externes : ils ont accès aux tables filtrés pour vérifier la conformité des
achats et des paiements avec les procédures qui concerne leur société (exemple : existence
CC), sans possibilité de modification ou de suppression des données.
Les privilèges de chacun dépendront de leur rôle. Pour cette partie, les acheteurs, la
responsable de la Supply Chain et les responsables financiers auront un accès complet à toutes
les tables pour pouvoir effectuer leurs analyses et leurs suivis. En revanche, les auditeurs
externes auront également un accès en lecture seule pour vérifier la conformité des procédures
avec leur établissement, sans possibilité de modification ou de suppression des données.
Pour le service qualité et son équipe, voici les utilisateurs et leurs privilèges associés :
Équipe qualité : Les membres de l'équipe qualité ont un accès approprié aux tables de la
base de données nécessaires à l'exécution de leurs tâches. Cela peut inclure l'accès aux
données relatives aux inspections, aux tests de conformité, aux rapports de qualité, etc. Leur
accès peut être spécifiquement défini en fonction de leur rôle et de leurs responsabilités au
sein de l'équipe qualité.
111
généralement limité aux informations nécessaires à leur évaluation de la conformité, sans
possibilité de modification ou de suppression des données.
Auditeurs externes qualité : Les auditeurs externes qualité ont un accès restreint aux
tables filtrées contenant les données nécessaires à leur évaluation. Ils peuvent vérifier la
conformité des processus qualité avec les normes et réglementations externes applicables à
l'entreprise. Leur accès est en lecture seule et ils ne peuvent pas modifier ou supprimer les
données.
Cible publique Les utilisateurs métiers qui ont Les administrateurs de base de données
besoin d'une analyse rapide des et les informaticiens qui doivent gérer et
données stocker les données
Structuration Les données sont décrites de Les données sont fournies de manière à
des données manière à répondre aux questions répondre aux besoins de stockage et de
les plus courantes posées par les maintenance des données, avec une
utilisateurs métiers, avec une granularité fine
granularité appropriée
Stockage des Les données sont extraites dans des Les données sont interprétées dans des
données tables de faits et de dimensions de tables normalisées
manière dénormalisée
Les Les modèles Kimball sont optimisés Les modèles Inmon peuvent être moins
performances pour les performances de requête, performants que les modèles Kimball car
car les tables de faits sont les tables sont normalisées, ce qui peut
dénormalisées et les jointures sont entraîner une complexité de requête plus
minimisées élevée
112
Évolutivité Les modèles Kimball peuvent être Les modèles Inmon peuvent nécessiter
étendus facilement pour inclure de des changements plus importants pour
nouvelles dimensions ou mesures s'adapter aux nouvelles exigences
Tableau 22: Tableau comparatif entre les approches de modélisation de données Kimball et Inmon
Nous avons choisi d'adopter l'approche de modélisation de données Kimball pour nos deux
projets de Business Intelligence. Pour le projet d'achat, nous mettrons en place un modèle en
étoile simple, qui permettra une analyse efficace des données d'achat en se concentrant sur
une table de faits principale entourée de dimensions. En ce qui concerne le projet du service
qualité, nous opterons pour une modélisation en constellation, qui nous permettra de gérer les
multiples aspects de la qualité en utilisant plusieurs tables de faits interconnectées. Cette
approche nous offrira une meilleure visibilité et une analyse approfondie des indicateurs de
qualité.
La vue modèle dans Power BI nous a permis de concevoir et de gérer les différentes tables et
relations qui composent notre modèle de données. C'est ici que nous pouvons créer, éditer et
organiser nos tables de faits, nos tables de dimensions et d'autres éléments nécessaires à
l'analyse et à la visualisation de vos données.
Les relations sont des liens établis entre les tables dans notre modèle de données. Elles
définissent comment les tables sont connectées les unes aux autres et comment les
informations sont partagées entre elles. Il existe deux aspects importants à considérer lors de
la création des relations : le flux et la cardinalité.
Le flux : Le flux d'une relation indique la direction dans laquelle les données sont filtrées. Il
peut être unidirectionnel (un seul sens) ou bidirectionnel (les données peuvent être filtrées
dans les deux sens). Par exemple, dans une relation entre une table de commandes et une table
de produits, le flux peut être unidirectionnel de la table de commandes vers la table de
produits, car vous souhaitez filtrer les produits en fonction des commandes.
La cardinalité : La cardinalité d'une relation définit la correspondance entre les lignes des
tables. Elle peut être de trois types : un-à-un, un-à-plusieurs ou plusieurs-à-plusieurs. Par
113
exemple, une relation entre une table de clients et une table de commandes peut avoir une
cardinalité d’un-à-plusieurs, car un client peut passer plusieurs commandes.
Dans le cadre de notre projet, nous avons développé un modèle de données axé sur la table
des faits ‘Commande’ ainsi que plusieurs tables de dimension essentielles, notamment ‘NC
fournisseur’, ‘MP’ (matière première), ‘Fournisseur’ et ‘Détails commande’. Ce modèle de
données suit une approche en étoile centralisée autour de la table des faits ‘Commande’, ce
qui nous permet de capturer et d'analyser efficacement les informations liées aux commandes
dans notre système. Cette structure en étoile nous offre une vue claire et organisée des
données, facilitant ainsi l'exploration et l'analyse approfondie de nos indicateurs d'achat.
114
Table des faits : ‘commande’
La table des faits ‘Commande’ joue un rôle central dans notre modèle de données. Elle
contient les informations essentielles liées aux commandes, telles que le numéro de bon de
livraison, le nom du fournisseur, le numéro de bon de commande, la matière première
commandée, les quantités commandées et reçues, le montant total de la commande, la date de
la commande, ainsi que le type de commande. Cette table des faits nous permet de capturer et
d'analyser les données clés relatives aux commandes, offrant ainsi une vue détaillée et
complète de notre activité d'achat. Elle constitue le pivot central autour duquel sont reliées les
différentes tables de dimension, telles que les informations sur les fournisseurs, les matières
premières, et les détails des commandes
Grâce à cette structure en étoile, nous pouvons facilement explorer et comprendre les
relations entre les différentes dimensions et les mesures associées à nos commandes, ce qui
nous permet de prendre des décisions éclairées en matière d'approvisionnement de la matière
première.
115
Table des dimensions : ‘MP’ Matière première
La table des dimensions ‘table MP’ contient plusieurs attributs essentiels liés à la matière
première. Chaque enregistrement est identifié par une clé unique, représentée par la colonne
‘Référence’.
116
approvisionnement en fonction de leur prix et de leur temps d'approvisionnement.
La table des dimensions ‘table fournisseur’ est une composante essentielle du modèle de
données lié à la table des faits ‘commande’. Chaque enregistrement de cette table est identifié
par une clé unique, représentée par la colonne ‘Nom fournisseur’. La colonne ‘Code
fournisseur’ contient un code spécifique qui permet d'identifier le fournisseur. La colonne
‘Localité’ indique l'emplacement géographique où le fournisseur est situé. L'adresse e-mail
du fournisseur est enregistrée dans la colonne ‘Email’. La colonne ‘Pays’ renseigne sur le
pays d'origine ou d'implantation du fournisseur. Les informations relatives aux conditions de
paiement et aux modalités de règlement du fournisseur sont enregistrées dans la colonne
‘Règlement’. En reliant cette table aux enregistrements de la table ‘commande’ via la clé
‘Fournisseur’, il est possible d'obtenir des informations détaillées sur chaque fournisseur,
telles que son identifiant, sa localité, son pays, son adresse e-mail et ses conditions de
règlement. Ces informations sont essentielles pour suivre et analyser les commandes, ainsi
que pour évaluer la performance des fournisseurs dans le cadre de la gestion de la chaîne
d'approvisionnement.
117
Table des dimensions : ‘NC Fournisseur’
La table des dimensions ‘table NC fournisseur’ est une autre composante importante du
modèle de données. Chaque enregistrement de cette table est identifié par une clé représentée
par la colonne ‘Nom fournisseur’. Cette table est utilisée pour enregistrer les informations
relatives aux non-conformités associées à chaque fournisseur. La colonne ‘Date’ indique la
date à laquelle la non-conformité a été constatée. La colonne ‘Nb Pcs NC’ représente le
nombre de pièces non conformes identifiées dans le cadre de cette non-conformité spécifique.
En reliant cette table aux enregistrements de la table des faits ‘Commande’ via la clé ‘Nom
fournisseur’, il est possible de suivre et d'analyser les non-conformités par fournisseur. Cette
information est essentielle pour évaluer la qualité des fournisseurs et prendre des mesures
correctives afin d'améliorer la qualité globale des produits et services de l'entreprise.
118
Table de dimensions : ‘Détails commande’
La table des dimensions ‘Table Détails Commande’ contient des informations détaillées sur
les commandes. La colonne ‘N°BC’ indique le numéro de bon de commande associé à
l'article. L'identifiant unique de l'article est enregistré dans la colonne ‘Article’, et la colonne
‘Délai’ représente le délai de livraison de l'article. La colonne ‘Désignation’ contient la
description de l'article, tandis que la colonne ‘Qté totale’ indique la quantité totale
commandée. Les unités de mesure utilisées pour la quantité totale et le prix unitaire sont
enregistrées respectivement dans les colonnes ‘Unité’ et ‘Unité Prix’. Les colonnes ‘P.U.’
(Prix Unitaire) et ‘Coût’ représentent le prix unitaire et le coût total de l'article, tandis que les
119
colonnes ‘Mt H.T.’ (Montant Hors Taxe) et ‘Mt T.T.C.’ (Montant Toutes Taxes Comprises)
enregistrent les montants hors taxe et toutes taxes comprises.
Pour la colonne ‘Livrée à l'heure’ indique si la commande a été livrée à temps, et la colonne
‘Reste" indique la quantité restante. Les identifiants uniques du client, de la famille et du
fournisseur sont enregistrés respectivement dans les colonnes "Client", "Famille " et "Nom
Fournisseur".
Après avoir établi les relations entre les différentes tables, nous avons créé une table de date
qui enrichit notre modèle de données. Cette table de date, nommée ‘Date’, a été générée à
l'aide de la fonction DAX ADDCOLUMNS et la fonction CALENDARAUTO () pour
générer automatiquement les dates en fonction des données disponibles dans notre modèle.
La table ‘Date’ contient plusieurs colonnes qui permettent une granularité temporelle
détaillée. Nous avons ajouté des colonnes telles que ‘Année’, ‘Num Mois’, ‘Mois’, ‘Num
Trimestre’, ‘Trimestre’, ‘Année Trimestre’, ‘Mois Année’ et ‘Année Mois’ pour faciliter
les analyses et les regroupements selon ces différentes périodes temporelles. Cette table
‘Date’ est ensuite liée à la table des faits ‘Commande’ grâce à une relation de type
‘plusieurs-vers-un’, en utilisant la colonne ‘Date’ comme clé de liaison. Cela nous permet
120
d'exploiter les informations temporelles lors de la visualisation des données dans notre tableau
de bord, en effectuant des analyses basées sur les dates telles que les commandes par mois,
par trimestre ou par année, ainsi que des comparaisons temporelles.
Afin d'assurer des analyses précises et fiables, nous avons établi des relations actives entre ces
tables. Ces relations permettent de filtrer et de croiser les données de manière cohérente. Dans
ce contexte, nous allons décrire les différentes relations et leurs caractéristiques, telles que la
cardinalité et la direction du filtrage croisé, afin de mieux comprendre comment les tables
sont connectées et comment elles interagissent entre elles pour soutenir nos analyses et nos
visualisations. Voici la description des différentes relations :
121
Relation entre la table ‘Date’ et la table ‘Commande’
✓ Cardinalité : Plusieurs à un
✓ Direction de filtrage croisé : Un seul sens (de la table ‘Date’ vers la table
‘Commande’)
✓ Description : Cette relation permet de filtrer les données de la table ‘Commande’ en
fonction de la date sélectionnée dans la table ‘Date’. Ainsi, il est possible d'analyser
les commandes en fonction de différentes périodes temporelles, telles que les jours, les
mois ou les années.
122
Relation entre la table ‘table commande’ et la table ‘table MP’
Figure 63: Relation entre la table ‘table commande’ et la table ‘table MP’
123
Relation entre la table ‘commande’ et la table ‘Fournisseur’
124
Relation entre la table ‘ commande’ et la table ‘ NC Fournisseur’
Figure 65: Relation entre la table ‘table commande’ et la table ‘table NC Fournisseur’
125
Relation entre la table ‘commande’ et la table ‘Détails commande’
126
Synthèse :
Ces relations permettent d'établir des liens entre les différentes tables, facilitant ainsi
l'exploration et l'analyse des données d'achat dans Power BI. En utilisant ces relations,
nous pourrons réaliser des visualisations interactives et obtenir des insights précieux pour
optimiser les processus d'achat et prendre des décisions éclairées.
Dans notre projet sur la qualité de production, nous avons mis en place un modèle de données
basé sur Power BI pour analyser et visualiser les mesures de qualité. Nous avons choisi
d'utiliser un modèle en constellation, avec deux tables de faits principales : ‘Qualité Interne’
et ‘Qualité Externe’. Ces tables de faits sont liées à plusieurs tables de dimensions, telles que
‘Pièces’, ‘Défaut’, ‘Contrôleur’, ‘Opérateur’, ‘Client’ et ‘îlot’.
Notre projet utilise le modèle en constellation sur Power BI pour analyser et visualiser les
mesures de qualité de production. Nous avons établi des relations entre les tables de faits et
les tables de dimensions, en mettant l'accent sur la dimension temporelle avec la table ‘Date’.
127
Cela nous permet d'explorer les tendances de qualité, de réaliser des analyses approfondies et
de prendre des décisions éclairées basées sur les données historiques et actuelles.
La table des faits ‘Qualité Interne’ est au cœur de notre modèle de données pour le contrôle
qualité interne. Elle rassemble les informations essentielles liées à la qualité de production,
telles que les codes des contrôleurs et des défauts, les coûts, les dates, les décisions prises, les
descriptions des non-conformités, les lots, les mois, les noms des clients, des contrôleurs et
des opérateurs, les numéros de FNC et d'OF, les quantités totales, les références et les types
de non-conformités. En reliant cette table aux dimensions clés telles que les ilots, les pièces,
les opérateurs, les contrôleurs, les dates et les défauts, nous pouvons analyser en détail la
qualité interne. Cela nous permet d'identifier les défauts spécifiques, les non-conformités liées
à certaines dimensions et d'observer les tendances de qualité. Cette vue des données nous aide
à détecter les problèmes, à comprendre leurs causes et à prendre les mesures appropriées pour
améliorer la qualité de notre production interne.
128
Table de dimensions : ‘Contrôleur’
La table de dimensions ‘Contrôleur’ joue un rôle essentiel dans notre modèle de données en
étant liée aux tables de faits ‘Qualité Interne’ et ‘Qualité Externe’. Elle contient des
informations telles que le code du contrôleur, son nom et son type. Cette table nous permet
d'analyser les performances individuelles des contrôleurs dans le processus de contrôle
qualité. En croisant ces données avec les tables de faits, nous sommes en mesure d'évaluer
l'efficacité de chaque contrôleur, d'identifier les problèmes de qualité et de prendre des
décisions éclairées pour améliorer le processus de contrôle qualité. Grâce à la table
‘Contrôleur’, nous obtenons une vision détaillée des attributs des contrôleurs, ce qui nous
permet d'effectuer des analyses approfondies et de mettre en œuvre des actions correctives
pertinentes.
129
Table de dimensions : ‘opérateur’
La table de dimensions ‘Opérateur’ est cruciale dans notre modèle de données, étant
associée aux tables de faits ‘Qualité Interne’ et ‘Qualité Externe’. Elle comprend des
informations telles que l'expérience, la date d'entrée, l'îlot, la fonction de management, le
matricule, le nom et prénom, la qualification aux procédés spéciaux et le site de rattachement
des opérateurs. En utilisant ces données, nous pouvons évaluer les performances individuelles
des opérateurs, détecter les écarts de qualité et prendre des décisions informées pour améliorer
nos processus de production et renforcer la gestion de la qualité.
130
La table de dimensions ‘Ilot’ est une composante clé de notre modèle de données en tant que
dimension principale liée à la table de faits ‘Qualité Interne’. Elle capture des informations
essentielles telles que l'année, l'îlot, le mois et la quantité fabriquée spécifique à chaque îlot de
production. Grâce à cette table de dimensions, nous pouvons analyser la qualité interne de
chaque îlot sur une base temporelle en identifiant les tendances, les performances et les
variations propres à chaque mois et chaque année. Cela nous permet de comprendre l'impact
des différents îlots sur la qualité interne globale et de prendre des décisions éclairées pour
améliorer les processus de production et garantir des normes de qualité élevées.
La table de dimensions ‘Défaut’ joue un rôle essentiel dans notre modèle de données pour la
qualité de production. Elle est conçue pour enregistrer et organiser les informations relatives
aux non-conformités identifiés lors du processus de contrôle qualité. En associant chaque
défaut à un code spécifique et en fournissant une description détaillée du type de non-
conformité, la table ‘Défaut’ permet de catégoriser et d'analyser efficacement les problèmes
de qualité.
Grâce à la table de dimensions ‘Défaut’, nous pouvons mieux comprendre les problèmes de
qualité, identifier les tendances, prendre des mesures correctives et améliorer les processus de
contrôle qualité. En capturant les informations essentielles sur les non-conformités, cette table
joue un rôle clé dans notre projet en permettant une analyse approfondie de la qualité de
production et en facilitant la prise de décisions basées sur les données.
131
Table de faits : ‘Qualité externe’
La table de faits ‘Qualité Externe’ joue un rôle essentiel dans notre modèle de données en
étant liée aux tables de dimensions telles que ‘Pièces’, ‘Défaut’, ‘Opérateur’, ‘Contrôleur’,
‘Client’ et ‘Date’. Cette table contient des informations détaillées sur la qualité externe de
nos produits, telles que l'activité, l'avis de non-conformité, la date, la décision/imputation, la
désignation de la pièce, la nature du défaut, le nombre de pièces non conformes, le nom du
client, le nom du contrôleur, le nom et prénom de l'opérateur, le numéro d'OF, la référence, le
statut et le type de non-conformité. En analysant ces données en relation avec les dimensions
associées, nous sommes en mesure de comprendre les tendances et les problèmes de qualité
externes, de prendre des décisions éclairées pour améliorer la satisfaction client et de mettre
en œuvre des actions correctives ciblées. La table ‘Qualité Externe’ est un élément clé de
notre processus de contrôle qualité et de notre démarche d'amélioration continue.
132
Pour faciliter l'analyse temporelle de nos données, nous avons créé une table de référence
spécifique aux dates, appelée ‘Date’. Cette table contient une liste de dates distinctes et des
colonnes supplémentaires pour l'année, le mois, le trimestre, etc. Elle est utilisée pour filtrer et
découper nos mesures de qualité en fonction de la date.
La table de dimension ‘Client’ occupe une place centrale dans notre modèle de données, étant
directement liée à la table de faits ‘Qualité Externe’. Elle contient une richesse
d'informations relatives à nos clients, tels que les détails de l'affaire, l'activité commerciale, le
nom du client, le pays, le prix unitaire, les quantités commandées et livrées, ainsi que les
références associées. Grâce à cette relation solide avec la table de faits ‘Qualité Externe’,
nous pouvons analyser en profondeur les données de qualité externe spécifiques à chaque
client. Cela nous permet de comprendre leurs exigences, d'évaluer leur niveau de satisfaction,
et de prendre des mesures appropriées pour améliorer continuellement la qualité de nos
133
produits et services. La table ‘Client’ constitue donc une ressource précieuse pour la gestion
de la qualité et la prise de décisions stratégiques éclairées, en nous permettant de visualiser et
d'analyser les performances de qualité en fonction de nos relations avec nos clients.
Figure 76: description des relations entre les tables utilisées dans la qualité de la production
Dans notre projet BI Qualité, nous travaillons avec un modèle de données dans Power BI pour
analyser les informations liées à la qualité des produits. Pour cela, nous utilisons plusieurs
tables de données qui contiennent des informations sur les dates, les contrôleurs, les
opérateurs, les pièces, les défauts, les clients et les îlots.
Afin de connecter ces tables de manière cohérente, nous établissons des relations entre elles.
Ces relations nous permettent de filtrer et d'analyser les données de manière structurée.
Chaque relation est définie en identifiant les colonnes communes entre les tables et en
spécifiant la cardinalité de la relation.
En utilisant ces relations, nous pouvons filtrer les données en fonction de différents critères
tels que la date, le contrôleur, l'opérateur, la pièce, le défaut, le client et l'îlot. Cela nous
134
permet d'effectuer des analyses approfondies et de créer des visualisations pertinentes pour
notre projet BI Qualité.
Figure 77: Relation entre table de faits ‘Qualité interne’ et table ‘Date’
✓ Cardinalité : Plusieurs à un
✓ Direction du filtrage croisé : De Date vers Qualité interne
✓ Description : Cette relation permet de filtrer les données de la table Qualité interne en
fonction de la date sélectionnée dans la table Date. Plusieurs enregistrements dans la
table Qualité interne peuvent correspondre à une seule date dans la table Date
135
Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘ ilot’
Figure 78: Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘ ilot’
136
Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘Contrôleur’
Figure 79: Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘Contrôleur’
Table Contrôleur (Nom contrôleur) filtre la table Qualité interne (Nom contrôleur)
Description : Cette relation permet de filtrer les données de la table Qualité interne en
fonction du nom du contrôleur sélectionné dans la table Contrôleur. Plusieurs enregistrements
dans la table Qualité interne peuvent correspondre à plusieurs noms de contrôleur dans la
table Contrôleur.
137
Relation entre table ‘Qualité interne’ et table ‘Opérateur’
Table Opérateurs (Nom et prénom op) filtre la table Qualité interne (Nom et prénom op)
138
Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘ Défaut’
Figure 81: Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘ Défaut’
Table Défaut (Code défaut) filtre la table Qualité interne (Code défaut)
139
Relation des deux tables ‘Pièces’ et ‘Qualité interne’
✓ Cardinalité : Plusieurs à Un
✓ Direction du filtrage croisé : De Pièces vers Qualité interne
✓ Description : Cette relation permet de filtrer les données de la table Qualité interne en
fonction de la référence de la pièce sélectionnée dans la table Pièces. Plusieurs
enregistrements dans la table Qualité interne peuvent correspondre à une référence de
pièces dans la table Pièces.
140
Relation des deux tables ‘Défaut’ et ‘Qualité externe’
Table Défaut (Type de non-conformité) filtre la table Qualité externe (Type de non-
conformité)
141
Relation des deux tables ‘Pièces’ et ‘Qualité externe’
142
Relation entre table de faits ‘Qualité externe’ et table ‘Opérateur’
Figure 85: Relation entre table de faits ‘Qualité externe’ et table ‘Opérateur’
Table Opérateurs (Nom et prénom op) filtre la table Qualité externe (Nom et prénom op)
143
Relation entre table de faits ‘Qualité externe’ et table ‘Contrôleur’
Figure 86: Relation entre table de faits ‘Qualité externe’ et table ‘Contrôleur’
Table Contrôleur (Nom contrôleur) filtre la table Qualité externe (Nom contrôleur)
144
Relation entre table de faits ‘Qualité externe’ et table ‘Client’
Figure 87: Relation entre table de faits ‘Qualité externe’ et table ‘Client’
Table Client (Nom Client) filtre la table Qualité externe (Nom Client)
145
Relation entre table de faits ‘Qualité externe’ et table ‘Date’
Figure 88: Relation entre table de faits ‘Qualité externe’ et table ‘Date’
✓ Cardinalité : Plusieurs à un
✓ Direction du filtrage croisé : De Date vers Qualité externe
✓ Description : Cette relation permet de filtrer les données de la table Qualité externe en
fonction de la date sélectionnée dans la table Date. Plusieurs enregistrements dans la
table Qualité externe peuvent correspondre à une seule date dans la table Date.
146
9 Présentation des mesures sur power BI
147
OTD (On- Mesurer la VAR DateSelectionnes = Fournisseur,
Time performance CALCULATETABLE (VALUES ('Détails Détails
Delivery) de livraison commande'[Edition]. [Mois]), 'Détails commande
à temps des commande’ [Qté totale]> 0)
fournisseurs VAR FournisseursSelectionnes =
CALCULATETABLE (VALUES
('fournisseur'[Nom Fournisseur]), 'Détails
commande'[Qté totale]> 0)
RETURN IF (ISFILTERED ('Détails
commande'[Edition]. [Mois]),
DIVIDE (
CALCULATE (
SUMX ('Détails commande','Détails
commande’ [Livrée à l'heure]),
FournisseursSelectionnes
),
CALCULATE (
SUMX ('Détails commande','Détails
commande’ [Qté totale]),
FournisseursSelectionnes
),
0
), BLANK ())
148
9.2 Pour le projet Qualité
CNQ Activité (global) - Rebut Mesure utilisée pour SUM ('Qualité externe’ [Nb Pcs Qualité
calculer le coût non- NC]) * SUM ('Pièces’ [Prix Pièce]) externe,
qualité d'activité Pièces
global pour les
rebuts.
CNQ Activité (global) - Mesure utilisée pour SUM ('Qualité externe’ [Nb Pcs Qualité
Retouche calculer le coût non- NC]) * SUM ('Pièces’ [Prix Pièce]) externe,
qualité d'activité * 0.2 Pièces
global pour les
retouches.
149
CNQ Mesure utilisée pour CALCULATE ( Qualité
Activité(partiel/retouche) calculer le coût non- externe,
SUM ('Qualité externe’ [Nb Pcs
qualité d'activité Pièces
NC]) * SUM ('Pièces’ [Prix
pour les parties Pièce]),
partielles ou les
retouches. FILTER ('Qualité externe', 'Qualité
externe'[Activité] = "PAR"))
Coût total CNQ (rebut partiel) Mesure utilisée pour SUM ('Qualité externe’ [CNQ Qualité
calculer le coût total (MAD)]) externe
de la non-qualité
pour les rebuts
partiels.
OQD (clt) Mesure utilisée pour DIVIDE (SUM ('Qualité Externe’ Qualité
calculer le taux de [Nb Pcs NC]), SUM ('Client’ [Qté Externe,
livraison à temps livrée])) * 1000000 Client
pour les clients.
OQD général Mesure utilisée pour ROUND (DIVIDE (SUM ('Qualité Qualité
calculer le taux de Interne’ [Qté NC]), SUM ('Qualité Interne
livraison à temps Interne’ [Quantité Totale]))
global. *1000000, 8)
150
10 Modèle dimensionnel
10.1 Service Achat
Pour le modèle dimensionnel dans le domaine des achats, nous avons opté pour l'approche en
étoile. Deux points clés qui justifient ce choix sont les suivants :
En ce qui concerne le modèle dimensionnel dans le domaine de la qualité, nous avons choisi
d'utiliser l'approche en constellation. Voici deux points clés qui soutiennent ce choix :
152
Chapitre 4 : Conduite du projet en faveur du processus
Achat
1 Data preprocessing
Dans cette partie, nous allons aborder différentes étapes de prétraitement des données qui sont
essentielles pour garantir la qualité et la fiabilité des résultats de notre projet qui vise à réduire
le délai d’approvisionnement et prédire la quantité à commander de la matière première. Ces
étapes comprennent le traitement des valeurs manquantes, l’encodage, la normalisation des
données, et le feature engineering ou la feature Selection si nécessaire.
Pour réaliser ces étapes de prétraitement et aussi pour la création du modèle, nous avons
importé plusieurs bibliothèques dans notre environnement de travail. Chacune de ces
bibliothèques joue un rôle spécifique dans le prétraitement des données. Voici une explication
de chaque importation et son utilité
153
Voici une explication de chaque bibliothèque et les fonctions importées dans notre code :
-`numpy` : C'est une bibliothèque Python qui prend en charge les opérations mathématiques
et les calculs sur des tableaux multidimensionnels. Elle est largement utilisée pour le
traitement des données et les opérations numériques.
- `pandas` : C'est une bibliothèque Python populaire pour la manipulation et l'analyse des
données. Elle fournit des structures de données puissantes et flexibles, telles que les
DataFrames, qui facilitent le chargement, la manipulation et la préparation des données.
- `os` : C'est une bibliothèque Python qui fournit des fonctions pour interagir avec le système
d'exploitation. Elle est utilisée ici pour accéder aux fonctionnalités du système d'exploitation,
telles que la gestion des fichiers et des répertoires.
- `seaborn` : C'est une bibliothèque Python basée sur matplotlib qui offre une interface de
haut niveau pour créer des graphiques statistiques attrayants. Elle facilite la visualisation et
l'exploration des données.
- `mpl_toolkits. mplot3d.Axes3D` : C'est une classe de matplotlib qui permet de créer des
graphiques 3D. Elle est utilisée lorsque vous voulez représenter des données en trois
dimensions.
154
- `sklearn.preprocessing.StandardScaler` : C'est une classe de scikit-learn qui permet de
standardiser les fonctionnalités en supprimant la moyenne et en mettant à l'échelle pour avoir
une variance unitaire. Cela est souvent utilisé avant l'ajustement d'un modèle pour s'assurer
que toutes les fonctionnalités sont sur la même échelle.
- `sklearn. metrics. R2_score` : C'est une fonction de scikit-learn qui calcule le coefficient de
détermination R2 pour évaluer la performance d'un modèle de régression. Il mesure la
proportion de la variance dans la variable dépendante expliquée par le modèle.
155
- `sklearn.feature_selection.SelectKBest` : C'est une classe de scikit-learn qui sélectionne
les meilleures fonctionnalités en fonction d'un test statistique univarié. Elle est utilisée pour
sélectionner les k meilleures fonctionnalités pour l'analyse.
- `sklearn. Feature_selection. Chi2` : C'est une fonction de scikit-learn qui calcule le test
chi2 entre chaque fonctionnalité et la variable cible. Elle est utilisée dans la sélection des
fonctionnalités pour les variables catégorielles.
156
Figure 91: corrélation entre les données
Nous avons calculé la matrice de corrélation en utilisant la méthode `corr ()` sur le dataset, ce
qui nous a donné la variable `corr` contenant les valeurs de corrélation entre les différentes
variables. Ensuite, nous avons créé une figure avec une taille de 12 pouces de largeur et 9
pouces de hauteur en utilisant `plt.figure(figsize=(12,9))`.
En utilisant la bibliothèque Seaborn (`sns`), nous avons généré une heatmap de corrélation en
utilisant la fonction `heatmap () ` avec les arguments `corr` pour la matrice de corrélation,
`annot=True` pour afficher les valeurs de corrélation sur la heatmap, et `cmap='coolwarm'`
pour spécifier la colormap à utiliser. Enfin, nous avons affiché la heatmap en utilisant
`plt.show()`.
Par la suite, nous avons supprimé plusieurs colonnes du dataset en utilisant la méthode
157
`drop () ` avec l'argument `axis=1` pour indiquer que nous voulons supprimer des colonnes
plutôt que des lignes. Les colonnes à supprimer étaient 'Désignation', 'MT total',
'Trimestre', 'Qté_Commandé', 'Qté', 'Nom_fournisseur', 'Année', 'Code_Nature',
'Unité', 'Unité_Commande', 'N° BL', et 'Coût_unitaire_moyen'. La modification a été
effectuée directement dans le dataset en utilisant `inplace=True`.
Ces étapes nous ont permis de visualiser la corrélation entre les variables du dataset à l'aide de
la heatmap, puis de supprimer les colonnes spécifiées qui étaient fortement corrélées ou
n'étaient pas nécessaires pour notre analyse.
Figure 94: Fonction pour remplir les valeurs null par la moyenne
Dataset ['Tps dappro'] = dataset [['Tps dappro']]. Apply (moy, axis=1) : Cette ligne de
code remplace les valeurs manquantes de la colonne 'Tps_dappro' par la moyenne de cette
colonne. La fonction moy est définie précédemment pour calculer la moyenne et la
retourner si la valeur est manquante. L'application de cette méthode permet de préserver la
158
tendance centrale des données et de maintenir la cohérence des valeurs dans la colonne
'Tps_dappro'.
❖ Après l'imputation
Le feature engineering consiste à créer de nouvelles variables à partir des variables existantes,
en appliquant des transformations ou des combinaisons spécifiques, afin d'améliorer la
représentation des données et d'en extraire des informations pertinentes pour le modèle.
159
Ce code crée une nouvelle variable 'Montant' en utilisant une fonction. La fonction prend les
valeurs des colonnes 'Qté_Récep.', 'Prix_unitaire', et 'Montant' en entrée et retourne le
produit de 'Qté_Récep.' et 'Prix_unitaire' si la valeur de 'Montant' est manquante, sinon elle
retourne 'Montant' tel quel.
Ainsi, cette étape de feature engineering contribue à améliorer la représentation des données
en introduisant une nouvelle variable ('Montant') qui synthétise l'information contenue dans
les variables 'Qté_Récep.' et 'Prix_unitaire'.
160
❖ Modification du type d'achat
Nous avons utilisé la méthode `pd.get_dummies()` pour créer des variables indicatrices à
partir de la colonne 'Type' du dataset. Cela a créé de nouvelles colonnes contenant des
valeurs binaires pour chaque catégorie présente dans la colonne 'Type'. Ensuite, nous avons
assigné ces nouvelles colonnes à la variable 'Type'. Nous avons également utilisé l'option
`drop_first=True` pour supprimer la première colonne indicatrice afin d'éviter la redondance
d'informations. Enfin, nous avons supprimé la colonne 'Type' d'origine du dataset et
concaténé la nouvelle colonne indicatrice au dataset.
❖ Modification du certificat de conformité (CC)
161
Nous avons suivi la même procédure que pour la variable 'Type' en utilisant la méthode
`pd.get_dummies()` pour créer des variables indicatrices à partir de la colonne 'CC(O/N)'.
Nous avons utilisé l'option `drop_first=True` pour supprimer la première colonne indicatrice
et éviter la redondance d'informations. Ensuite, nous avons supprimé la colonne 'CC(O/N)'
d'origine du dataset et concaténé la nouvelle colonne indicatrice au dataset.
Nous avons créé une fonction `reglement` qui prend en entrée une valeur de règlement et
renvoie un nombre entier correspondant à la catégorie de règlement. La fonction compare la
valeur de règlement avec les catégories '30FDM', '60FDM' et 'CMD' et renvoie
respectivement les nombres 1, 2 et 3. Ensuite, nous avons appliqué cette fonction à la colonne
'Règlement' du dataset, remplaçant ainsi les catégories de règlement par les valeurs
numériques correspondantes.
❖ Synthèse
Ces transformations permettent de convertir les variables catégorielles en représentations
numériques appropriées pour les modèles d'apprentissage automatique. Cela nous permet
d'utiliser ces variables dans notre analyse ultérieure de manière plus efficace.
162
1.3. Encodage des données
L'encodage est utilisé pour transformer des variables catégorielles en une représentation
numérique afin de les rendre exploitables par les modèles d'apprentissage automatique. Les
modèles d'apprentissage automatique travaillent généralement avec des valeurs numériques et
ne peuvent pas traiter directement des données catégorielles. Il existe plusieurs techniques
d'encodage, notamment l'encodage binaire, l'encodage par numérotation, l'encodage par One-
hot, etc.
L'encodage est important car il permet de conserver l'information contenue dans les variables
catégorielles tout en les rendant compatibles avec les modèles d'apprentissage automatique.
Cela permet de capturer les relations et les patterns présents dans les données catégorielles et
de les utiliser pour améliorer la performance des modèles.
Figure 101: Code dans Jupyter pour l'encodage des variables de type texte
163
article_encoded = encoder.fit_transform(dataset['Article']): Cette ligne de code encode les
valeurs de la colonne 'Article' en utilisant l'encodeur de labels.
Les colonnes originales sont ensuite remplacées par les colonnes encodées dans le dataset.
Dans ce code, nous avons effectué une opération de normalisation sur le DataFrame 'dataset'
en utilisant la méthode StandardScaler de la bibliothèque scikit-learn.
Tout d'abord, nous avons assigné le DataFrame 'dataset' à la variable X, pour conserver une
copie du DataFrame d'origine avant la normalisation.
Ensuite, nous avons instancié un objet scaler de la classe StandardScaler. Cette classe est
utilisée pour standardiser les données, c'est-à-dire les mettre à l'échelle en soustrayant la
moyenne et en divisant par l'écart-type.
Nous avons appliqué la méthode fit_transform sur l'objet scaler en passant le DataFrame X
en tant qu'argument. Cette méthode calcule la moyenne et l'écart-type des colonnes de X, puis
effectue la transformation en soustrayant la moyenne et en divisant par l'écart-type pour
chaque valeur du DataFrame. Le résultat de la transformation est stocké dans le DataFrame
'dataset_scaled'.
164
Figure 103: Code de normalisation des données avec MinMaxScaler()
Le résultat de la transformation est stocké dans un nouveau DataFrame X, où les valeurs des
caractéristiques ont été normalisées. Les colonnes du DataFrame sont également mises à jour
avec les noms de colonnes d'origine pour maintenir la correspondance avec les données
d'origine.
Ainsi, après l'exécution de ce code, les données dans le DataFrame X sont normalisées et
prêtes à être utilisées dans des modèles d'apprentissage automatique qui requièrent des
données à la même échelle.
165
2 Réalisation des modèles de prédiction de Machine Learning
validés par leurs propres indicateurs de performance
2.1 Choix des modèles après expérimentation
2.1.1 Objectif 1 : Réduction du délai d’approvisionnement
Pour réaliser notre expérimentation, nous avons choisi comme premier objectif la réduction
du délai d’approvisionnement. Notre objectif est de regrouper les fournisseurs selon leur
performance comme le délai et la qualité de la matière première. On veut regrouper les
fournisseurs selon des critères (liens) similaires. Notre étude ne va pas se basée sur un
‘Target’ bien précis pour cela nous allons adopter l’algorithme Kmeans et l’algorithme
clustering hiérarchique du modèle clustering.
166
Figure 105: Graphique de la méthode ELBOW
❖ Pour 5
167
Figure 107: visualisation des clusters
168
❖ Pour 3
169
Figure 110: la précision du modèle
b. Clustering hiérarchique
170
Figure 111: performance des model K means et clustering hiérarchique
2.1.2 Objectif 2 : Prédiction de la quantité à commander pour les achats locaux et les achats
import chez SIMRA MAROC
A. Modèle supervisé régression pour Achat Local
a. Régression de poisson
Nous avons choisi d'utiliser un modèle de régression de Poisson pour prédire la quantité à
commander dans le cadre de nos achats locaux. Ce choix s'est basé sur plusieurs
considérations importantes pour notre processus décisionnel.
171
Tout d'abord, les commandes de fournitures et divers que nous traitons présentent une
fréquence [quotidienne/mensuelle] de manière régulière. Le modèle de régression de Poisson
nous permet d'estimer les paramètres qui régissent la relation entre nos variables explicatives
et la quantité de commande. Il tient compte des facteurs spécifiques à notre processus d'achat
local, ce qui nous permet de prendre des décisions plus éclairées.
172
Figure 114: les indicateurs de performance du model
Dans notre code, nous divisons nos données en ensembles d'entraînement et de test à l'aide de
la fonction train_test_split(). Ensuite, nous créons notre modèle de régression de Poisson en
utilisant la classe GLM de la bibliothèque Statsmodels. Nous ajustons le modèle sur
l'ensemble d'entraînement en utilisant la méthode fit (). Une fois le modèle entraîné, nous
effectuons des prédictions sur l'ensemble de test à l'aide de la méthode predict(), et obtenons
ainsi les quantités prédites pour nos achats locaux.
173
b. Régression par arbre de décision
Le modèle de régression par arbre de décision est un algorithme d'apprentissage supervisé qui
vise à construire un arbre de décision en divisant les données en sous-ensembles homogènes.
Chaque nœud de l'arbre représente une condition sur une caractéristique, et les feuilles de
l'arbre correspondent aux valeurs prédites. Ce modèle est capable de gérer des variables
explicatives continues ou catégorielles, et il peut capturer des relations non linéaires entre les
caractéristiques et la variable cible.
Nous avons choisi ce modèle de régression par arbre de décision pour plusieurs raisons.
Premièrement, il est capable de capturer des relations non linéaires entre les caractéristiques et
les quantités commandées, ce qui est crucial dans notre processus d'achat local.
Deuxièmement, il est relativement facile à interpréter, ce qui nous permet de comprendre les
décisions prises par le modèle. Enfin, il offre de bonnes performances en termes de précision
et de rapidité d'exécution, ce qui est important pour un déploiement efficace dans un
environnement d'achat local
174
Figure 117: Comparaison entre la quantité à commander réelle par rapport à la quantité prédite
Figure 118: Visualisation réelle par rapport à la prédiction pour le modèle régression par arbre de décision
Le code que nous avons utilisé suit une série d'étapes pour mettre en œuvre le modèle de
régression par arbre de décision. Tout d'abord, nous divisons nos données en ensembles
d'entraînement et de test à l'aide de la fonction `train_test_split()`. Cela nous permet
d'évaluer les performances du modèle sur des données non utilisées lors de l'entraînement.
175
Ensuite, nous créons une instance du modèle de régression par arbre de décision en
utilisant la classe `DecisionTreeRegressor` de la bibliothèque scikit-learn. Nous
initialisons le modèle en spécifiant le paramètre `random_state` pour assurer la
reproductibilité des résultats.
Une fois le modèle entraîné, nous effectuons des prédictions sur les ensembles
d'entraînement et de test à l'aide de la méthode `predict()`. Cela nous permet d'obtenir les
quantités prédites pour nos achats locaux à partir des caractéristiques données en entrée.
Le modèle de régression par forêt aléatoire est une technique d'apprentissage supervisé qui
combine plusieurs arbres de décision indépendants pour améliorer la précision des
prédictions. Chaque arbre de décision est entraîné sur un sous-ensemble aléatoire des données
d'entraînement, et les prédictions finales sont obtenues en moyennant les prédictions de
chaque arbre. Ce modèle est capable de capturer des relations non linéaires complexes entre
les caractéristiques et la variable cible, ce qui est essentiel pour prédire les quantités
commandées dans notre processus d'achat local, il est robuste face aux valeurs aberrantes et
aux données manquantes, ce qui garantit des prédictions fiables. Enfin, il offre une flexibilité
en termes de paramètres ajustables tels que le nombre d'arbres et la profondeur des arbres, ce
qui nous permet de l'adapter à nos besoins spécifiques.
176
Figure 119: code de régression par forêt aléatoire
Dans notre étude sur un ensemble de données de 1053 lignes et 5 colonnes, nous avons utilisé
la méthode SelectKBest avec f_regression pour sélectionner les 4 meilleures caractéristiques,
ce qui nous a permis de réduire la dimensionnalité et de conserver les caractéristiques les plus
informatives pour prédire les quantités commandées. Pour le modèle de forêt aléatoire, nous
avons choisi d'utiliser 7 arbres de décision afin de trouver un équilibre entre la complexité du
modèle et sa capacité de généralisation, un nombre plus élevé d'arbres pourrait
potentiellement conduire à une meilleure précision, mais il peut également augmenter le
temps d'entraînement. Nous avons donc choisi 7 arbres comme une valeur raisonnable pour
notre volume de données.
En utilisant la classe RandomForestRegressor, nous avons entraîné le modèle sur les données
d'entraînement et effectué des prédictions sur les ensembles d'entraînement et de test.
177
Figure 121: Visualisation réelle par rapport à la prédiction du modèle régression par forêt aléatoire
178
Figure 122: Code de régression par gradient boosting XGBoost
Tout d'abord, les données sont divisées en ensembles d'entraînement et de test à l'aide de
la fonction `train_test_split` de scikit-learn. Un split de 0.1 est utilisé, ce qui signifie que
10% des données sont réservées pour le test et 90% sont utilisées pour l'entraînement. Les
données d'entraînement et de test sont préparées pour XGBoost en les transformant en
objets DMatrix à l'aide de la classe `xgb.DMatrix`. Cela permet de les adapter à l'entrée
requise par XGBoost. Ensuite, les paramètres du modèle de gradient boosting sont définis
dans un dictionnaire appelé `params`. Les paramètres choisis sont les suivants :
179
✓ `colsample_bytree` : 0.8 détermine la proportion de caractéristiques utilisées pour
construire chaque arbre, ce qui ajoute de la diversité et réduit le surajustement
potentiel.
✓ `seed` : 42 est la graine aléatoire pour la reproductibilité des résultats.
- Le modèle est ensuite entraîné sur les données d'entraînement en utilisant la fonction
`xgb.train`. Le nombre de cycles d'entraînement (`num_rounds`) est fixé à 100.
- Enfin, le modèle entraîné est utilisé pour faire des prédictions sur les données de test
avec la méthode `predict`, et les prédictions sont stockées dans la variable `y_pred`.
Les paramètres choisis pour le modèle ont été ajustés en tenant compte des
caractéristiques spécifiques de notre ensemble de données. Par exemple, un taux
d'apprentissage (eta) de 0.2 a été sélectionné pour permettre un apprentissage plus stable
sur un ensemble de données relativement petit. La profondeur maximale de l'arbre
(max_depth) a été fixée à 5 pour éviter un surajustement excessif. Les valeurs de
subsample et colsample_bytree ont été choisies pour introduire de la diversité dans les
échantillons et les caractéristiques utilisés pour la construction des arbres, respectivement,
afin de réduire le surajustement potentiel.
180
Figure 124: Tableau des données réelles par rapport à la prédiction
181
B. Modèle supervisé ‘régression’ pour Achat Import
a. Régression linéaire
Le modèle utilisé dans le code est une régression linéaire. La régression linéaire est un type de
modèle statistique qui permet de modéliser et prédire la relation linéaire entre une variable
dépendante et plusieurs variables indépendantes. Dans ce cas, le modèle vise à prédire les
quantités commandées au niveau de l'achat import en fonction des caractéristiques fournies
dans les données.
Le fonctionnement du modèle de régression linéaire consiste à ajuster une ligne droite (ou un
hyperplan dans le cas de plusieurs variables indépendantes) aux points de données en
minimisant la somme des carrés des erreurs entre les valeurs réelles et prédites. Ainsi, le
modèle apprend les coefficients qui pondèrent chaque caractéristique afin de prédire la
variable cible.
Les étapes du code commencent par diviser les données en ensembles d'entraînement et de
test à l'aide de la fonction `train_test_split`. Ensuite, la sélection des caractéristiques est
effectuée en utilisant la méthode `SelectKBest` avec le score de régression
`f_regression`. Cela permet de réduire la dimensionnalité des données et de ne conserver
que les 4 caractéristiques les plus pertinentes.
182
Figure 127:Indicateurs de performances du modèle
Figure 128: Visualisation réelle par rapport à la prédiction du model régression linéaire
b. Régression polynomiale
Le modèle de régression polynomiale crée de nouvelles caractéristiques en élevant les
caractéristiques d'entrée à des puissances successives jusqu'au degré spécifié. Par exemple, si
vous avez une caractéristique X, la régression polynomiale peut créer les caractéristiques X2,
X3, X4, etc. Ensuite, une régression linéaire est appliquée sur ces nouvelles caractéristiques
pour trouver les coefficients qui minimisent l'erreur entre les prédictions du modèle et les
valeurs réelles.
183
La régression polynomiale a été choisie pour prédire les quantités commandées au niveau
d'achat car elle permet de capturer des relations non linéaires entre les caractéristiques et la
variable cible puis applique une régression linéaire pour trouver les coefficients optimaux.
En utilisant des caractéristiques polynomiales, le modèle peut mieux s'adapter aux données
complexes et potentiellement améliorer les performances de prédiction par rapport à une
régression linéaire simple.
• Type du modèle : Le modèle utilisé est une régression polynomiale. Il s'agit d'une
extension de la régression linéaire où les caractéristiques d'entrée sont transformées en
polynômes de degré supérieur, ce qui permet de modéliser des relations non linéaires
entre les caractéristiques et la variable cible.
• Paramètres choisis : Le modèle de régression polynomiale utilise le paramètre "degré"
qui définit le degré maximal des polynômes à considérer. Dans ce cas, un degré de 4 a
été choisi.
Étapes du code
184
• Une sélection des caractéristiques est effectuée à l'aide de la méthode `SelectKBest`
avec la fonction de score `f_regression`. Cela permet de sélectionner les meilleures
caractéristiques qui sont les plus corrélées à la variable cible.
• Les caractéristiques sélectionnées sont ensuite transformées en caractéristiques
polynomiales à l'aide de `PolynomialFeatures` avec un degré de 4.
• Un modèle de régression linéaire est créé à l'aide de `LinearRegression`.
• Le modèle est entraîné sur les données d'entraînement en utilisant les caractéristiques
polynomiales.
• Des prédictions sont faites sur les ensembles d'entraînement et de test à l'aide de
`predict`.
185
Figure 132: Visualisation réelle par rapport à la prédiction du model Régression polynomiale
186
Figure 133: Régression par forêt aléatoire
187
Figure 135: Comparaison entre la quantité à commander réelle et prédite
Figure 136: Visualisation réelle par rapport à la prédiction du model Régression par forêt aléatoire
188
Figure 137: Régression par arbre de décision
Le code fourni accomplit plusieurs étapes cruciales pour construire un modèle d'arbre de
décision performant. Il suit une approche méthodique pour garantir des prédictions
précises et éviter les problèmes de surajustement ou de sous-ajustement.
Dans un premier temps, les données sont divisées en ensembles d'entraînement et de test.
Cela permet d'évaluer les performances du modèle sur des données non vues auparavant,
offrant ainsi une estimation réaliste de ses capacités.
Ensuite, une technique de sélection des caractéristiques appelée SelectKBest est utilisée
pour choisir les caractéristiques les plus informatives. Cela permet de réduire la
dimensionnalité des données et de se concentrer sur les aspects les plus pertinents pour la
prédiction.
189
l'ensemble de test. Le code suit une approche rigoureuse en divisant les données, en
sélectionnant les caractéristiques les plus pertinentes, en créant un modèle d'arbre de
décision régularisé et en l'entraînant sur les données d'entraînement. Cette approche vise à
obtenir un modèle précis, évitant les problèmes de surajustement ou de sous-ajustement.
Figure 139: Visualisation réelle par rapport à la prédiction du modèle Régression par arbre de décision
190
Figure 140: Prédiction du modèle
191
Figure 141: Régression par gradient boosting XGBoost
Étape Description
Division des données Les données sont divisées en ensembles d'entraînement et de test à
l'aide de la fonction train_test_split(). Cela permet d'évaluer les
performances du modèle sur des données indépendantes.
Définition des Les paramètres du modèle XGBoost, tels que l'objectif, le nombre
paramètres du d'estimateurs et la profondeur maximale de l'arbre, sont définis dans
modèle un dictionnaire.
192
Entraînement du Le modèle XGBoost est entraîné en utilisant la fonction xgb.train()
modèle avec les données d'entraînement et les paramètres spécifiés.
Prédictions sur Les prédictions sont faites sur l'ensemble de test en utilisant la
l'ensemble de test fonction model.predict() avec la matrice de données
correspondante.
193
Figure 144: Comparaison entre la quantité à commander réelle et prédite
194
2.2 Validation du choix
2.2.1 Comparaison des performances des modèles en utilisant les KPIs sélectionnés en
amont
A. Les performances des modèles utilisés dans les achats locaux
a. Erreur quadratique moyenne RMSE
RMSE signifie "Root Mean Square Error", qui se traduit en français par "Erreur
quadratique moyenne".
C'est une mesure couramment utilisée pour évaluer la précision d'un modèle de régression.
L'erreur quadratique moyenne calcule la différence entre les valeurs prédites par le modèle et
les valeurs réelles, élève ces différences au carré, calcule la moyenne de ces valeurs et enfin
prend la racine carrée de cette moyenne. L'erreur quadratique moyenne permet de quantifier
l'écart moyen entre les prédictions du modèle et les valeurs réelles, donnant ainsi une
indication de la précision globale du modèle.
195
Figure 147: Comparaison des modèles par RMSE
Le code permet de comparer les performances de différents modèles utilisés dans le contexte
des achats locaux en utilisant la métrique RMSE (Root Mean Squared Error). Parmi les
modèles comparés, XGBoost obtient la valeur la plus basse de RMSE, ce qui indique qu'il
présente la meilleure performance en termes de précision des prédictions des quantités à
commander. Cette performance supérieure de XGBoost peut être attribuée à sa capacité à
gérer des ensembles de données complexes et à produire des résultats de haute qualité. Ainsi,
XGBoost se révèle être un choix approprié pour le problème de prédiction des quantités à
commander dans le contexte des achats locaux.
196
Figure 148: Comparaison des modèle MAE
Le code permet de comparer les performances des différents modèles utilisés dans le contexte
des achats locaux en utilisant la métrique MAE (Mean Absolute Error). Le graphique
montre les valeurs de MAE pour chaque modèle. Parmi les modèles comparés, XGBoost
présente la valeur la plus basse de MAE, ce qui indique qu'il a la meilleure performance en
termes de précision des prédictions des quantités à commander. Cette performance supérieure
de XGBoost peut être attribuée à sa capacité à gérer des ensembles de données complexes et à
produire des résultats de haute qualité. Par conséquent, XGBoost est un choix approprié pour
le problème de prédiction des quantités à commander dans le contexte des achats locaux.
c. Coefficient de détermination R2
Le coefficient de détermination R2 est une mesure utilisée pour évaluer la performance d'un
modèle de régression. Il représente la proportion de la variance de la variable dépendante
expliquée par le modèle. Un R2 élevé indique que le modèle est capable de capturer une
grande partie de la variation des données, ce qui est souhaitable. En revanche, un R2 faible
indique que le modèle n'explique qu'une petite partie de la variation, ce qui suggère une moins
bonne adéquation. Il est important de prendre en compte le R2 en conjonction avec d'autres
métriques pour obtenir une évaluation complète de la performance du modèle.
197
Figure 149: Comparaison des modèle R2
Le code permet de comparer les performances des différents modèles utilisés dans le contexte
des achats locaux en utilisant la métrique R2 (coefficient de détermination). Le graphique
affiche les valeurs de R2 pour chaque modèle. Parmi les modèles comparés, XGBoost
présente la valeur la plus élevée de R2, ce qui indique qu'il a la meilleure adéquation des
prédictions aux valeurs réelles des quantités à commander. Cette performance supérieure de
XGBoost suggère que ce modèle est capable d'expliquer une plus grande partie de la
variabilité des données par rapport aux autres modèles. Par conséquent, XGBoost est un choix
approprié pour le problème de prédiction des quantités à commander dans le contexte des
achats locaux.
198
B. Les performances des modèles utilisés dans les achats imports
a. Erreur quadratique moyenne RMSE
199
b. Erreur absolue moyenne MAE
c. Coefficient de détermination R2
Figure 153: Comparaison des modèle R2
• Synthèse de notre choix basé sur les résultats R², RMSE et MAE
200
Modèle R² MAE RMSE
XGBoost a été choisi comme modèle final pour notre projet en raison de ses performances et
de sa capacité à éviter le surajustement (overfitting). Avec un R² élevé de 0.9669, XGBoost
explique près de 96% de la variance des données. Il affiche également les valeurs les plus
faibles pour les métriques MAE (11.5) et RMSE (22.9485), montrant ainsi des prédictions
précises et proches des valeurs réelles.
201
2.3 Gantt Réel pour le projet lié au processus Achat
202
Partie 2 : Déploiement et intégration du modèle ML
« XGBOOST » via une application web
Introduction
Dans le cadre de notre projet, nous avons adopté la méthodologie Scrum afin d'assurer la
réussite de notre projet. Après avoir sélectionné XGBoost comme modèle pour prédire la
quantité à commander pour les achats des matières premières chez SIMRA MAROC, nous
nous sommes penchés sur le déploiement de notre modèle.
Nous avons réalisé une étude approfondie des frameworks Python disponibles pour notre
déploiement. Initialement, nous avons envisagé d'utiliser Flask, un micro-framework Python,
ou d'autre comme Django et TORNADO qui sont plus complexe. Après examen, nous avons
décidé d'opter pour un environnement convivial, open source et adapté à notre projet. C'est
ainsi que nous avons choisi d'utiliser Streamlit pour le déploiement et l’intégration de notre
modèle via une application web.
L'objectif principal de notre application web, nommée "PrediX", est de prédire avec précision
la quantité à commander des matières premières, renforçant ainsi les décisions prises par les
acheteurs chez SIMRA MAROC. Notre slogan, "Anticipez, Réussissez, Commandez", reflète
l'importance de l'anticipation et de la prise de décisions éclairées pour optimiser la chaîne
d'approvisionnement.
Un exemple concret de cette nécessité est observé dans le cas du magasin de quincaillerie
chez SIMRA MAROC. Pour satisfaire les besoins interne de la production et pour livrer leur
client potentiel comme AIRBUS STELIA à l’heure, le magasin de quincaillerie doit anticiper
la demande et mettre en stock une quantité suffisante de matières premières. Dans certains
cas, ils effectuent ces anticipations jusqu'à six mois à l'avance. Notre solution, basée sur le
modèle XGBoost, permettra au magasin de quincaillerie de prédire de manière précise la
quantité à commander et optimisant le stock.
Grâce à "PrediX" et à l'utilisation du modèle XGBoost, notre application web apportera une
réelle valeur ajoutée à la chaîne d'approvisionnement chez SIMRA MAROC, permettant une
meilleure gestion des matières premières et une prise de décisions plus éclairée.
203
1. Conception de la solution
En passant du design thinking à Scrum, nous bénéficions d'une transition fluide et efficace
pour le développement de notre application "PrediX". Le design thinking nous permet de
comprendre les besoins des utilisateurs et de concevoir des solutions adaptées, tandis que
Scrum nous offre une approche itérative et incrémentielle pour réaliser notre vision de bout en
bout.
Avec ces deux approches, nous pouvons rapidement créer des prototypes, recueillir les
commentaires des utilisateurs et itérer rapidement pour améliorer l'expérience utilisateur. Les
principes agiles de Scrum, tels que la planification itérative, les réunions quotidiennes et la
rétroaction continue, nous aident à maintenir la flexibilité nécessaire pour ajuster notre
application en fonction des retours des utilisateurs et des évolutions du marché.
Du design thinking à Scrum, nous combinons la compréhension des besoins utilisateurs avec
une approche agile pour créer une solution « PrediX » bout en bout qui répondra précisément
aux attentes de la chaîne d'approvisionnement chez SIMRA MAROC, tout en offrant une
expérience utilisateur optimale.
2. User persona
Avant de commencer le déploiement de notre application, nous avons pris en compte
l'importance de comprendre les différents utilisateurs potentiels. Dans notre cas, nous avons
identifié les profils suivants :
✓ L’Acheteuse Oumaima KHALED, ce profil gère achat import des achats dans
l'entreprise. L'acheteur utilisera notre application pour prendre des décisions éclairées
en se basant sur le modèle XGBoost de Machine Learning intégré.
204
Figure 155: Profil 1 'Acheteuse'
205
Figure 157: Savoir plus sur le profil 1 pour une étude détaillée
✓ Fadoua en tant que responsable SI chez SIMRA MAROC, elle joue un rôle crucial
dans la gestion du système d'information Clipper, qui est utilisé pour gérer la
production et les commandes de l'entreprise. Fadoua est également chargée du
206
calcul de l'OQD (On-Time Quality Delivery) des fournisseurs de SIMRA
MAROC.
En intégrant le profil dans nos user personas, nous reconnaissons son importance dans
le processus de déploiement de notre application. Sa contribution permettra de garantir
une intégration harmonieuse de notre application avec le système Clipper, assurant
ainsi la sécurité, la fiabilité et la performance du système global de gestion des
opérations chez SIMRA MAROC.
207
Figure 160: Savoir plus sur le profil 2 pour une étude détaillée
208
Synthèse
En intégrant les besoins et les objectifs de ces utilisateurs dans notre développement, nous
visons à offrir une expérience adaptée à leurs besoins spécifiques. En comprenant les
attentes et les défis de nos utilisateurs, nous pouvons concevoir une application qui répondra
efficacement à leurs besoins en matière de prédiction des quantités à commander pour les
matières premières chez SIMRA MAROC
3. User map
La User Map que nous avons créée sur FigJam (FIGMA) est une représentation visuelle des
fonctionnalités, des épics et des releases de notre projet. Elle facilite la planification et le
développement de notre application en mettant en évidence les étapes clés et les
fonctionnalités attendues.
Grâce à la User Map, nous avons une vision claire des objectifs, des dépendances et des
priorités. Elle favorise la collaboration et la coordination au sein de l'équipe de
développement, permettant ainsi de maximiser la valeur livrée aux utilisateurs.
La Release 1 se concentre sur l'authentification et l'achat, avec des étapes spécifiques telles
que l'inscription, la connexion, la déconnexion, l'affichage du graphique, l'importation du
fichier et la récupération des prédictions.
La Release 2 met l'accent sur l'administration et le feedback, avec des étapes telles que
l'affichage des utilisateurs et de leurs mots de passe, l'ajout et la modification d'un utilisateur
avec confirmation des données, la suppression d'un compte avec confirmation, et l'affichage
de la lIste mise à jour.
209
Figure 161: User map de la partie 2 de notre projet
210
3.1 Authentification
211
3.2 Achat
Figure 163: User map des besoins fonctionnels liés à l'achat import et local
212
3.3 Administration
Figure 164: User map pour les besoins fonctionnels liés à l'administration
213
3.4 Feedback
Figure 165: User map pour les besoins fonctionnels liés aux feedbacks
4. Use case
Les diagrammes de cas d'utilisation sont des représentations visuelles des interactions entre
les acteurs et le système. Dans notre projet, nous avons créé quatre diagrammes de cas
d'utilisation distincts pour organiser et visualiser les différentes fonctionnalités et interactions
214
de notre application. Cela nous permet de mieux comprendre le fonctionnement de notre
application et de répondre aux besoins spécifiques de chaque cas d'utilisation. Voici un aperçu
des principaux diagrammes de cas d'utilisation que nous avons développés :
215
Figure 167: Cas d'utilisation pour l'achat
✓ Gestion d'administration : c’est pour illustrer les interactions liées à la gestion des
utilisateurs. Il inclut des fonctionnalités telles que l'affichage des utilisateurs, l'ajout de
nouveaux utilisateurs, la modification des informations utilisateur et la suppression de
comptes utilisateur.
216
✓ Gestion des feedbacks : Ce diagramme représente les interactions liées à la gestion
des feedbacks des utilisateurs.
✓ Synthèse
Les diagrammes de cas d'utilisation nous aident à comprendre les besoins des utilisateurs, à
organiser les fonctionnalités de manière cohérente et à développer une application répondant à
leurs attentes. Grâce à ces diagrammes, nous planifions précisément les fonctionnalités à
implémenter, ce qui nous permet de créer une expérience utilisateur optimisée. Afin d'assurer
le bon fonctionnement du système et de satisfaire les utilisateurs, nous présenterons
maintenant les règles de gestion associées à chaque cas d'utilisation.
217
5. Les règles de gestion
✓ Administration : Les actions disponibles sont l'ajout, la modification, la suppression
et l'affichage d'un utilisateur et son mot de passe, les boutons
correspondants sont affichés.
218
S'inscrire
219
S'identifier
220
Se déconnecter
✓ Les règles de gestion liée à l'achat permettent à l'utilisateur de choisir le type d'achat
et d'afficher un graphique avec des prédictions basées sur ses achats passés.
Figure 174: Règles de gestion liées au cas d'utilisation 'choisir le type d'achat'
221
Afficher le graphique, Faire les prédictions, Importer et Télécharger le fichier Excel
Figure 176: Règles de gestion pour le cas d'utilisation 'Rejoindre notre communauté sur Disqus'
✓ Synthèse
Le système met en place des règles de gestion pour chaque cas d'utilisation, y compris
l'authentification, l'administration, l'achat et le feedback. Ces règles permettent aux
utilisateurs de s'inscrire, de se connecter et de se déconnecter, d'effectuer des actions
d'administration telles que l'ajout, la modification, la suppression et l'affichage des
utilisateurs, de choisir le type d'achat et d'accéder à des informations pertinentes, ainsi que de
rejoindre la communauté pour partager leurs commentaires
Les règles de gestion garantissent un accès sécurisé, des fonctionnalités d'administration, des
options d'achat personnalisées et la participation active des utilisateurs.
6. Prototype
Le prototype conçu sur Figma est basé sur une palette de couleurs principales comprenant le
bleu et le rouge. Cette combinaison de couleurs vives est utilisée pour créer une interface
attrayante et moderne.
223
✓ La page d'accueil (Home) du prototype présente une description de l'application et
met en avant nos valeurs principales. Elle vise à attirer l'attention des utilisateurs et à
les informer sur les fonctionnalités et les avantages de l'application.
6.1 Authentification
✓ Les pages de connexion (Login) et d'inscription (Signup) sont dédiées à la partie
d'authentification de l'application. Ils offrent aux utilisateurs la possibilité de créer un
compte ou de se connecter avec leurs identifiants existants. Des éléments de
conception intuitifs et conviviaux sont utilisés pour simplifier le processus
d'authentification.
224
Figure 178: Page de connexion
Le menu principal comprend également une option pour accéder à l'interface d'administration
(Admin)*, qui offre des fonctionnalités avancées de gestion et de contrôle de l'application.
225
Cette interface permet aux administrateurs de gérer les utilisateurs, les données et les
paramètres de l'application de manière efficace.
6.2 ADMIN
226
6.3 Achat
227
6.3 Feedback
Dans l'ensemble, le prototype conçu sur FIGMA présente une interface utilisateur moderne et
attrayante, avec des fonctionnalités clés telles que la description de l'application,
l'authentification, l'interface d'administration et la communication via le chat. Il vise à offrir
aux utilisateurs une expérience fluide et conviviale tout en mettant en avant les valeurs et les
fonctionnalités de l'application
7. Diagramme de déploiement
Le diagramme de déploiement décrit l'architecture du système avec trois nœuds
interconnectés. Le premier nœud est le serveur d'application basé sur Streamlit, qui comprend
les fichiers app.py, local.py et import.py pour gérer les fonctionnalités de l'application, le
228
deuxième représente l'environnement d'apprentissage automatique utilisant JUPYTER, où les
fichiers ‘local.pkl’ et ‘import.pkl’ sont utilisés pour stocker les modèles et les données
nécessaires au processus d'apprentissage automatique. Enfin, le troisième nœud est la base de
données SQLite3, représentée par le fichier ‘data.db’, qui stocke et rend accessible les
données de l'application.
229
8. Charte projet
8.1. Gantt réel
230
8.2. WBS
231
9. Réalisation de l'application
Après la conception du projet en utilisant l'approche Scrum, nous avons réalisé un incrément
basé sur les user personas, les use cases et les règles de gestion. Nous avons veillé à respecter
les besoins exprimés par les utilisateurs.
Le prototype réalisé sur Figma correspond étroitement à la solution déployée. Nous avons
cherché à développer une application web simple et efficace. Les utilisateurs ont la possibilité
d'exploiter les modèles en important un fichier Excel pour effectuer des prédictions. Ils
peuvent ensuite télécharger ces prédictions en un simple clic, sous la forme d'un fichier Excel
comportant cinq colonnes : Mois, Unité de la commande, Temps d'approvisionnement, Article
et Prédictions (la quantité à commander en matières premières).
Dans cette section, nous détaillerons les cinq pages clés de notre application PrediX. Chaque
page a été soigneusement conçue pour offrir une expérience utilisateur fluide et répondre aux
besoins spécifiques des utilisateurs. Voici un aperçu de chaque page :
232
9.2 Page d’authentification
La page de connexion de PrediX offre aux utilisateurs une expérience fluide et sécurisée. Les
utilisateurs peuvent choisir entre l'achat local ou import en cochant simplement une case, et se
connecter ou se déconnecter facilement à l'aide d'un bouton dédié. Cela leur permet d'accéder
rapidement à leur compte tout en préservant la sécurité de leurs informations.
9.2.1 Login
233
9.3 Choisir le type d’achat
Une fois connecté, l'utilisateur aura la possibilité de choisir entre l'achat import et l'achat local
dans la tâche à effectuer. La principale différence réside dans les modèles XGBoost entraînés
spécifiquement pour chaque type d'achat.
Lorsque l'utilisateur est connecté en tant qu'acheteur local, il pourra visualiser les données
réelles par rapport aux prédictions du modèle XGBoost spécifique à l'achat local. Pour ce
faire, l'utilisateur pourra importer un fichier Excel contenant les données nécessaires. Une fois
le fichier importé, il sera affiché à l'écran, permettant à l'utilisateur de vérifier les
informations.
Ensuite, l'utilisateur pourra effectuer les prédictions en utilisant le modèle XGBoost pour
l'achat local. Les prédictions seront calculées en fonction des données importées et affichées à
l'écran. Cela permettra à l'utilisateur de voir la quantité prévue à commander pour chaque
matière première.
Enfin, l'utilisateur aura la possibilité de télécharger le fichier Excel contenant les prédictions.
Ce fichier téléchargé contiendra les colonnes suivantes : Mois, Unité de la commande, temps
d'approvisionnement, Article et Prédictions (quantité à commander des matières premières).
Cette fonctionnalité permet à l'utilisateur de visualiser les prédictions, de les comparer aux
données réelles et de télécharger les résultats pour une utilisation ultérieure.
234
9.3.1 L’utilisateur est connecté à l’achat local
9.3.2 Visualisation des données réelles par rapport à la prédiction pour le modèle
XGBOOST
235
9.3.3 Importer le fichier Excel
236
9.3.5 Afficher les prédictions
La page d'administration est spécialement conçue pour les utilisateurs ayant des privilèges
administratifs. Elle permet de gérer les utilisateurs existants et d'effectuer diverses actions.
Les fonctionnalités incluent l'ajout d'un nouvel utilisateur en fournissant les informations
nécessaires, la modification du nom d'utilisateur et du mot de passe, un bouton pour rafraîchir
la liste des utilisateurs et leurs mots de passe, ainsi que la possibilité de supprimer un
utilisateur si nécessaire.
237
9.4.1 Se connecter au tant qu’administrateur
238
9.4.3 Ajouter un utilisateur
Figure 199:Page d'administration avec les fonctionnalités de modification et suppression des utilisateurs
Nous attachons une grande importance aux commentaires et aux échanges avec nos
utilisateurs. C'est pourquoi nous avons intégré une fonctionnalité de chat et de feedback
utilisant la plateforme "Disqus". Les utilisateurs pourront partager leurs commentaires, poser
des questions et interagir avec d'autres utilisateurs. Cette fonctionnalité favorisera les
discussions et permettra d'obtenir des retours précieux sur l'application.
239
Figure 200: Visualisation de la page Feedback
✓ Synthèse
Dans cette partie, nous avons mis en œuvre l'application PrediX en suivant une approche agile
basée sur la méthodologie Scrum. Nous avons conçu l'interface utilisateur en utilisant des
techniques telles que la création de personas et l'identification des cas d'utilisation.
L'application offre plusieurs pages clés, notamment la page d'accueil, la page de connexion, la
page d'inscription et la page d'administration. Les utilisateurs peuvent choisir entre l'achat
local et l'achat import sur la page de connexion.
Nous avons intégré le modèle XGBoost pour effectuer des prédictions sur les commandes de
matières premières. Les utilisateurs peuvent importer un fichier Excel, afficher les données
importées, effectuer les prédictions et télécharger les résultats.
En outre, nous avons inclus une fonctionnalité de chat et de feedback en utilisant le système
Disqus, permettant aux utilisateurs de partager leurs commentaires et de discuter entre eux.
Nous avons effectué des tests sur notre application Predix pour évaluer ses performances et
garantir son bon fonctionnement. Dans cette optique, nous avons développé plusieurs tests
unitaires et de performance, qui nous ont permis de mesurer les performances de différentes
fonctionnalités clés de l'application.
240
Pour réaliser ces tests, nous avons utilisé un répertoire spécifique qui contient les fichiers
Python où nous avons implémenté les tests. Ces fichiers contiennent des scénarios de test qui
simulent des situations réelles d'utilisation de l'application, en mettant l'accent sur les
fonctionnalités d'administration.
241
10.1.1. Test unitaire login user
Les tests unitaires sont une pratique essentielle du développement logiciel. Ils consistent à
vérifier individuellement le bon fonctionnement des parties isolées d'un programme, appelées
"unités". Dans notre cas, le test unitaire vise à vérifier la fonction login_user de notre
application predix.
Le code que nous avons fourni est un exemple d'utilisation de Pytest pour tester une fonction
login_user importée depuis un module appelé ‘app’.
242
Nous avons un test unitaire qui effectue une requête SQL pour sélectionner des données à
partir d'une table d'utilisateurs en fonction d'un nom d'utilisateur et d'un mot de passe. Si des
données sont renvoyées par la requête, la fonction renvoie True, sinon elle renvoie False.
Lorsque nous exécutons le script avec Pytest, nous avons deux tests qui passent avec succès.
Le résultat indique que les deux tests ont été réussis, avec une couverture de 50% pour
test_de_performance.py et 100% pour test_login_user.py. notre code passe les tests unitaires
avec succès et affiche seule
243
Le test de performance que nous avons fourni mesure le temps de réponse de la fonction
login_admin lorsqu'elle est appelée avec le mot de passe administrateur requis.
Lorsque nous exécutons le test à l'aide de Pytest, il passe avec succès. Le résultat affiche que
le test a réussi à 100%. De plus, il affiche le temps de réponse mesuré, qui est de 0.0 seconde
dans ce cas.
Il est important d'effectuer des tests de performance pour évaluer les performances de notre
application et identifier les éventuels goulots d'étranglement ou les zones qui nécessitent une
optimisation. Cela nous permet d'optimiser l'efficacité de notre code et d'améliorer
l'expérience utilisateur.
244
Figure 207: Résultat du test unitaire pour ‘login_user, create_usertable et add_userdata’
Le test unitaire que nous avez fourni est une classe `TestApp` dérivée de `unittest.TestCase`.
Dans cette classe, nous avons la méthode `test_login_user` qui effectue le test de la fonction
`login_user` de notre application.
Dans ce test, nous préparons des données de test avec des noms d'utilisateur et des mots de
passe. Ensuite, nous réinitialisons la table des utilisateurs en appelant `create_usertable`.
Ensuite, nous itérons sur les données de test et appelons la fonction `login_user` pour chaque
paire nom d'utilisateur / mot de passe. Si la connexion échoue, nous ajoutons l'utilisateur à
l'aide de `add_userdata`. Enfin, nous utilisons `self.assertTrue` pour vérifier que le résultat de
`login_user` est `True` pour chaque paire nom d'utilisateur / mot de passe, sinon le test
échouera avec un message approprié.
Lorsque nous exécutons le test à l'aide de `unittest.main()`, il passe avec succès. Le résultat
affiche que le test a réussi à 100%.
245
10.1.4. login_user, add_userdata, delete_user
Dans notre test, nous utilisons pytest pour effectuer les tests. Nous avons une fonction de test
appelée test_login_user qui vérifie le bon fonctionnement de notre fonction login_user de
l'application.
Pour commencer, nous créons un utilisateur fictif en utilisant la fonction add_userdata pour
l'ajouter à la base de données. Ensuite, nous appelons la fonction login_user avec les
identifiants valides de cet utilisateur. Nous utilisons ensuite des assertions (assert) pour
vérifier les résultats :
246
Nous vérifions si le résultat de la fonction login_user n'est pas None, ce qui indiquerait qu'un
utilisateur authentifié a été renvoyé.
Enfin, nous utilisons la fonction delete_user pour supprimer l'utilisateur fictif de la base de
données.
Lorsque nous exécutons le test à l'aide de pytest, il passe avec succès. Le résultat affiche que
le test a réussi à 100%.
247
Figure 212: Graphes générés par Locust
D'après les résultats que nous avons fournis, voici quelques observations sur les performances
de notre application lors des tests de charge :
Aucune requête n'a échoué, ce qui indique que toutes les requêtes ont été traitées avec succès.
248
Le temps de réponse le plus court enregistré était de 3 millisecondes, tandis que le temps de
réponse le plus long était de 971 millisecondes.
10.2. DEPLOIEMENT
Ce déploiement représente une étape clé dans la mise en valeur de notre travail. En prenant en
charge toutes les étapes du processus de déploiement, nous nous assurons que l'application est
configurée de manière optimale et répond aux besoins spécifiques de SIMRA MAROC. Grâce
à l'utilisation de l'environnement PyCharm, nous bénéficions d'outils avancés qui facilitent le
développement et garantissent une mise en ligne réussie.
249
10.2.1 Sur GITHUB
250
10.2.2 Sur streamlit Share
Streamlit Share est une plateforme d'hébergement qui simplifie le déploiement et le partage de
nos applications Streamlit en ligne. Nous pouvons créer un compte, connecter notre
référentiel GitHub et déployer notre application en quelques étapes simples. Streamlit Share
s'occupe de la gestion, de la surveillance et de la disponibilité de notre application, nous
permettant ainsi de partager nos projets avec d'autres utilisateurs via un lien URL. C'est un
moyen pratique de rendre nos applications Streamlit accessibles à un large public, sans
nécessiter d'installation ou de configuration complexe.
251
Figure 218: Visualisation de l'application hébergée sur Streamlit Share
Synthèse
La réalisation et l'intégration du modèle ML XGBoost via une application web ont été des
étapes cruciales de notre projet. Grâce à notre expertise en développement logiciel et à
l'utilisation de l'environnement PyCharm, nous avons réussi à concevoir une application web
puissante et conviviale.
L'application web permet aux utilisateurs de prédire avec précision la quantité de matières
premières à commander, en utilisant le modèle ML XGBoost entraîné sur des données
historiques. Cela offre à SIMRA MAROC la possibilité d'optimiser sa chaîne logistique, en
évitant les problèmes de surstockage ou de pénurie de matières premières.
Le déploiement de l'application sur GitHub nous permet de partager facilement notre code
source avec d'autres développeurs et de collaborer de manière transparente. De plus,
l'utilisation de Streamlit Share pour héberger l'application en ligne offre une accessibilité
maximale aux utilisateurs, sans nécessiter d'installation ou de configuration supplémentaire.
En intégrant le modèle ML XGBoost dans une application web, nous avons créé une solution
complète et facile à utiliser pour SIMRA MAROC. Les avantages de cette intégration sont
nombreux, notamment une meilleure planification des commandes, une réduction des coûts
252
liés aux stocks excédentaires ou insuffisants, ainsi qu'une amélioration globale de l'efficacité
de la chaîne logistique.
Pour générer ce Dashboard nous nous sommes basés sur les tables suivantes : ‘Commande’,
‘NC fournisseur’, ‘Fournisseur’, ‘MP’ et ‘commande’.
Sur cette page du tableau de bord, nous avons visualisé un suivi détaillé des fournisseurs
SIMRA MAROC en 2022. Parmi nos constats Boeing Distribution Services représentait
49,47% de la quantité totale commandée par SIMRA MAROC. Cela indique une forte
dépendance vis-à-vis de ce fournisseur pour les approvisionnements.
Le suivi des fournisseurs comprend également l'ensemble des 123 noms de fournisseurs et la
somme des quantités commandées, qui varient de 1 à 312 411. Cette diversité de fournisseurs
et de quantités commandées témoigne de la complexité et de l'ampleur des activités
d'approvisionnement de SIMRA MAROC.
Quelques données pertinentes ont été recueillies aussi à savoir le temps d'approvisionnement
moyen était de 50 jours, ce qui représente le délai moyen entre la passation de la commande et
la réception des matières premières et il y a des références avec un délai qui dépasse un an.
253
Figure 219: Dashboard 'Fournisseurs de SIMRA MAROC'
Dans ce Dashboard nous nous sommes concentrées sur les références (matière première)
achetées par SIMRA MAROC et ses caractéristiques comme le type de règlement par
référence, le temps d’approvisionnement, l’exigence du certificat de conformité pour mettre
analyser les coûts et les dépenses liés au service achat, pour visualiser les données on a utilisé
les tables suivantes : ‘Commande’, ‘Details commande’, ‘MP’, ‘fournisseur’ et table ‘Date’
pour filtrer par mois.
Le nombre de références achetées pour les matières premières s'élevait à 147. Cela indique la
diversité des matières premières nécessaires à la production de SIMRA MAROC.
254
Figure 220:Dashboard ‘matières premières consommées par SIMRA MAROC’
Pour le dernier Dashboard on a utilisé des mesures pour calculer le délai de livraison (OQD)
et la qualité de la livraison du fournisseur (OTD)
255
Figure 222: Dashboard 'KPI's lié à la performance du service achat de SIMRA MAROC'
L'OTD est un indicateur clé de performance qui mesure la capacité des fournisseurs à
respecter les délais de livraison. Pour le suivi de l'OTD en 2022, différents fournisseurs ont
été évalués chaque mois. Voici les performances d'OTD de certains fournisseurs clés :
256
Il est clair que certains fournisseurs ont des performances médiocres en matière de livraison à
temps, ce qui peut avoir un impact négatif sur la chaîne d'approvisionnement de SIMRA
Maroc. Il est recommandé que SIMRA Maroc communique avec ces fournisseurs pour
identifier les problèmes éventuels et travailler ensemble sur des solutions d'amélioration de la
performance logistique et de livraison. Des accords clairs sur les délais et les attentes de
livraison devraient être établis avec les fournisseurs, et un suivi régulier devrait être effectué
pour s'assurer que les performances s'améliorent au fil du temps.
L'indicateur OQD (On Quality Delivery) mesure le nombre de pièces non-conformes par
rapport au nombre total de pièces livrées par un fournisseur. L'objectif fixé pour l'OQD est
généralement de 2000ppm (parties par million). Voici une description des résultats obtenus
pour l'OQD des fournisseurs de SIMRA Maroc en 2022 :
257
Figure 224: Détails de OQD fournisseurs
Ces résultats révèlent des niveaux élevés de non-conformité des pièces livrées par certains
fournisseurs, ce qui peut avoir un impact négatif sur la qualité globale des
produits de SIMRA Maroc.
258
Figure 225: OQD des fournisseurs de SIMRA MAROC
✓ Synthèse
Les tableaux de bord que nous avons mis en place dans Power BI jouent un rôle essentiel dans
le suivi et l'analyse des performances du service d'achat de SIMRA MAROC. Ils fournissent
des informations clés sur différents aspects liés aux activités d'achat, ce qui permet une
meilleure prise de décision et une gestion plus efficace.
Ces tableaux de bord nous permettent de suivre de près les fournisseurs. Nous pouvons
visualiser les données relatives aux différents fournisseurs, tels que le nombre de commandes
passées, les montants dépensés et les délais de livraison. Cela nous permet d'identifier les
fournisseurs les plus performants, qui respectent les délais et fournissent des produits
conformes aux normes de qualité.
259
Chapitre 5 : Conduite du projet en faveur du processus
Qualité de la Production
Dans le tableau de bord "Qualité interne de SIMRA MAROC", nous présentons une
visualisation de :
✓ L’année 2022
Figure 226: Dashboard 'Qualité interne de SIMRA MAROC' pour l’année 2022
260
✓ L’année 2023
Figure 227: Dashboard 'Qualité interne de SIMRA MAROC' pour l’année 2023
261
On Quality (Nombre 89867 699 Indicateur spécifique aux rebuts qui mesure
Delivery Quantité Non la non-conformité des produits rejetés. Il
(Rebut) Conforme Rebut permet de contrôler la fréquence des rebuts
/ nombre total et de prendre des mesures pour réduire leur
Qté fabriquée) * occurrence. Cet indicateur est important
1000000 pour minimiser les coûts liés aux rebuts et
améliorer la qualité globale des produits.
COUT NON Quantité Non 123233 6828 Coût total des non-qualités lié aux décisions
QUALITE Conforme * Prix euros euros de retouche. Il évalue les dépenses engagées
(retouche) Unitaire de la pour corriger les non-conformités et assurer
pièce * 0.1 la conformité des produits. Cet indicateur est
important pour surveiller les coûts de la
retouche et prendre des mesures pour les
réduire.
COUT NON Quantité Non 739396 40970 Coût total des non-qualités lié aux décisions
QUALITE Conforme * Prix euro euro de rebut. Il mesure les dépenses engendrées
(Rebut) Unitaire de la par les produits rejetés et non utilisables. Cet
pièce * 0.6 indicateur est important pour évaluer
l'efficacité des processus de contrôle qualité
et pour réduire les coûts associés aux rebuts.
262
✓ Graphique en courbes et histogrammes empilé lié à la quantité non conforme en
2022
Figure 229 : Graphe 'Quantité Non Conforme par Décision' pour l’année 2022
En 2022, le nombre total d'unités non conformes était pour la décision retouche, avec 7 832
pièces non conformes, contre 7609 pièces non conformes pour la décision rebut. La quantité
de non-conformes a augmenté vers la fin de l'année, notamment en novembre avec 2 486
pièces non conformes et en décembre avec 1919 pièces non conformes.
263
✓ Graphique en courbes et histogrammes empilé 2023
Figure 230: Graphe 'Quantité Non Conforme par Décision' pour l’année 2023
✓ Synthèse
Le premier tableau de bord sur Power BI lié à la qualité interne de SIMRA MAROC met en
évidence la nécessité d'améliorer la qualité interne de l'entreprise. Les visualisations montrent
que les non-conformités, en particulier dans les processus de retouche et de rebut, ont un
impact important sur les coûts et la satisfaction du client. Pour remédier à cela, il est essentiel
de mettre en place des actions correctives et préventives afin de réduire les non-conformités,
d'améliorer l'efficacité opérationnelle et de maintenir des normes élevées de qualité interne
tout au long de l'année. En résumé, le tableau de bord souligne l'importance de la qualité
interne et la nécessité d'agir pour résoudre les problèmes identifiés.
Dans le cadre de notre tableau de bord "Qualité externe de SIMRA MAROC", nous avons
collaboré avec le responsable qualité pour définir de nouveaux indicateurs personnalisés
visant à mesurer la qualité externe. Ces indicateurs nous permettent d'évaluer la qualité des
produits en termes de coût, de type d'activité et de décision
264
✓ Pour l’année 2022
Figure 231: Dashboard 'Qualité externe de SIMRA MAROC' pour l'année 2022
Figure 232: Dashboard 'Qualité externe de SIMRA MAROC' pour l'année 2023
265
Les KPI’S personnalisé lié Méthode de En 2023 En 2022 Description
à la qualité externe de calcul jusqu’à
SIMRA MAROC présent
COUT NON QUALITE Qté Non 12804695 47725886 Le coût de non-qualité lié à l'activité
(global/retouche) Conforme * euros euros globale avec décision de retouche
Prix s'élève à 12 804 695 euros pour
Unitaire de l'année en cours jusqu'à présent
la pièce *0.2 (2023), tandis qu'il était de 47 725
886 euros en 2022.
COUT NON QUALITE (Quantité 155208 131830745 En comparant les coûts de non-
(partiel/retouche) Non euros euros qualité liés à l'activité partielle avec
Conforme * des décisions de retouche, on
Prix observe une diminution significative
Unitaire de de ces coûts entre 2022 et l'année en
la pièce) cours, jusqu'à présent en 2023. En
2022, le coût s'élevait à 131 830 745
euros, tandis qu'en 2023, il est de
155 208 euros.
COUT NON QUALITE Cout fixé en 48915 e 107461 Le coût des non-qualités lié à
(partiel/rebut) accord avec euros l'activité partielle et aux décisions de
le client rebut peut être déterminé à travers
des accords préalables entre SIMRA
MAROC et ses clients. Il peut être
établi dans le cadre des termes et
conditions du contrat entre les deux
parties, où les coûts associés aux
non-qualités sont spécifiés. Dans ce
266
cas, le client fixe les critères et les
coûts liés aux non-qualités. En 2023
jusqu'à présent, le coût s'élève à 48
915 euros, tandis qu'en 2022, il était
de 107 461 euros.
Pour la qualité externe, on a utilisé est un histogramme groupé comparant la quantité livrée à
la quantité totale non conforme par mois.
267
Figure 233: Graphe 'Quantité livrée VS Quantité retournée' pour l’année 2022
En 2022, SERMP a enregistré le plus grand total de quantité livrée avec 73296 pièces, mais
également 246 pièces non conformes aux exigences qui ont été retournées par les clients. Les
autres clients, tels que SIMRA SNZ, STRATA et AIRBUS ATLANTIC ROCHEFORT, ont
également signalé des quantités non conformes mais à des niveaux inférieurs.
Figure 234: Graphe 'Quantité livrée VS Quantité retournée' pour l’année 2023
268
Au début de l'année 2023, AIRBUS ATLANTIC a retourné 50 pièces qui faisaient partie d'une
quantité totale livrée de 2 854 pièces. Cela met en évidence la nécessité de surveiller
attentivement la qualité des produits livrés afin de garantir leur conformité aux exigences des
clients.
✓ Synthèse :
Les histogrammes et les KPIs personnalisés utilisés dans le tableau de bord de la qualité
externe mettent en évidence l'importance de la gestion des non-conformités client chez
SIMRA MAROC. Les données visuelles présentées montrent la quantité livrée par mois ainsi
que la quantité totale non conforme, permettant une comparaison visuelle entre ces deux
mesures.
En se référant aux KPIs, tels que l'On Quality Delivery General et l'On Quality Delivery
(Rebut), nous pouvons évaluer le taux de non-conformité en termes de parties par million
(ppm). Ces indicateurs fournissent des informations sur la performance globale et spécifique
aux rebuts. Les valeurs actuelles montrent une nécessité d'améliorer la qualité externe, en
particulier en réduisant le nombre de non-conformités.
Les KPIs de coût non-qualité (retouche et rebut) permettent de quantifier les impacts
financiers des non-conformités. Ces mesures reflètent les coûts associés à la retouche et aux
rebuts, et soulignent l'importance de prendre des mesures correctives et préventives pour
minimiser ces coûts et améliorer l'efficacité opérationnelle.
✓ Introduction :
Le suivi des îlots de production est essentiel pour évaluer la performance et la qualité des
processus de fabrication dans différentes sections de l'usine. Le tableau de bord présente les
données relatives à l'ilot de chaudronnerie, de montage, de peinture, d’usinage, detourage et
de TDS pour les années 2022 et 2023.
269
✓ Pour l’année 2022
En 2022, l'îlot de chaudronnerie a réalisé une production importante avec un total de 394 874
pièces fabriquées. Cependant, parmi ces pièces, 6 276 étaient non conformes. L'îlot de
montage a produit 1 975 pièces, l'îlot de peinture a fabriqué 3 375 pièces, l'ilot d'usinage a
produit 1 902 pièces, et l'ilot TDS a fabriqué 626 pièces. Il convient de noter que le détourage
n'a enregistré aucune non-conformité, grâce à la présence d'opérateurs qualifiés et
expérimentés.
270
Figure 236: Dashboard de suivi des îlots de SIMRA MAROC en 2023
271
Figure 238: Détails sur le graphique 'Quantité NC par ilot' (2)
✓ Synthèse
Ces données mettent en évidence une amélioration globale de la qualité de production et une
réduction des non-conformités dans les différents îlots en 2023 par rapport à 2022. Cependant,
il est important de continuer à surveiller attentivement la qualité dans chaque îlot et de
prendre des mesures correctives pour maintenir des normes élevées. La présence d'opérateurs
qualifiés au niveau du détourage a contribué à prévenir les non-conformités
dans ce processus.
Le tableau de bord 5 est axé sur la qualité client, mesurée par l'indicateur On Quality Delivery
(OQD). Il permet d'évaluer le taux de non-conformité des produits livrés aux clients et de
surveiller la satisfaction client. Les données présentées dans ce tableau de bord concernent les
années 2022 et 2023.
272
Figure 239: Suivi client de SIMRA MAROC en 2022
En 2022, l'indicateur OQD client variait entre 5 et 1522. Cela signifie que le taux de non-
conformité des produits livrés aux clients était compris dans cette plage. De plus, 207 pièces
non conformes ont été retournées par les clients sur une quantité totale livrée de 468 000
pièces.
273
Figure 240: Suivi des clients SIMRA MAROC du début 2023 jusqu'à présent
En 2023, l'indicateur OQD client varie de 584 à 197158. Cela indique que le taux de non-
conformité des produits livrés aux clients est plus élevé en 2023 par rapport à 2022. Il est
important de noter que le taux de non-conformité OQD client ne devrait normalement pas
dépasser 2000 ppm (parties par million). De plus, 71 pièces non conformes ont été retournées
par les clients sur une quantité totale livrée de 468 000 pièces.
✓ Synthèse :
Les données du tableau de bord 5 révèlent une augmentation du taux de non-conformité des
produits livrés aux clients en 2023 par rapport à 2022, avec un indicateur OQD client allant de
584 à 197158. Cela met en évidence la nécessité d'améliorer la qualité des produits pour
répondre aux attentes des clients et réduire les non-conformités. Les 71 pièces non conformes
retournées par les clients soulignent l'importance de maintenir un contrôle rigoureux de la
qualité tout au long du processus de production et de livraison. Des actions correctives
doivent être mises en place pour réduire le taux de non-conformité et améliorer la
satisfaction client.
En 2023, l'indicateur OQD client varie de 584 à 197158. Cela indique que le taux de non-
conformité des produits livrés aux clients est plus élevé en 2023 par rapport à 2022. Il est
important de noter que le taux de non-conformité OQD client ne devrait normalement pas
dépasser 2000 ppm (parties par million). De plus, 71 pièces non conformes ont été retournées
par les clients sur une quantité totale livrée de 468 000 pièces.
274
2. Gantt Réel du projet qualité de la production
275
Chapitre 6 : Clôture du projet
Chacune de ces initiatives a été conçue pour répondre à des besoins spécifiques au sein de
l'organisation.
La mise en place de Power BI pour le service qualité a permis de créer des tableaux de bord
interactifs et dynamiques en temps réel, offrant une visibilité accrue sur les indicateurs clés de
performance qualité interne et externe. Les recommandations pour développer cette initiative
sont les suivantes :
✓ Intégrer Power BI sur les postes de travail SIMRA MAROC : Actuellement, seuls
l'ingénieur qualité et le responsable du service utilisent les tableaux de bord sur leurs
ordinateurs personnels via Power Service, où les tableaux de bord sont partagés. Il est
recommandé généraliser l’installation de Power BI directement sur les postes de travail
276
de l'ensemble du personnel du service qualité. Cela permettra une utilisation plus facile
et une accessibilité rapide aux tableaux de bord.
En suivant ces recommandations, le service qualité pourra tirer le meilleur parti de Power BI,
améliorer la gestion de la performance qualité interne et externe, et faciliter la prise de
décision basée sur des données fiables et actualisées.
277
2. Recommandations pour le développement de Power BI pour le processus d'achat :
✓ Intégration complète des données : Nous devrions veiller à intégrer toutes les
sources de données pertinentes pour le processus d'achat dans Power BI. En utilisant
Power BI en combinaison avec Microsoft Teams, nous pouvons créer des liens vers les
fichiers et les bases de données partagées sur Teams, facilitant ainsi l'accès et la mise à
jour des données en temps réel.
✓ Automatisation des rapports : En intégrant Power BI et Teams, nous pouvons
automatiser la génération et la distribution des rapports sur les performances d'achat.
Les rapports peuvent être programmés pour être envoyés périodiquement aux
membres de l'équipe d'achat via Teams, ce qui permettra à chacun de rester informé
des dernières mises à jour sans effort supplémentaire.
278
Figure 245:Liaison entre Power BI et Teams
✓ Formation des utilisateurs : Nous devrions offrir une formation aux membres de
l'équipe d'achat sur l'utilisation de Power BI et Teams en synergie. Cela leur permettra
de maîtriser les fonctionnalités de Power BI, de collaborer efficacement sur Teams et
d'exploiter pleinement le potentiel de ces outils pour optimiser le processus d'achat.
Nous pouvons organiser des sessions de formation en ligne via Teams pour assurer
une adoption rapide et efficace.
✓ Suivi continu des performances : Une fois l'application mise en place, il est essentiel
de surveiller en continu les performances du modèle de prédiction. Analysez les
résultats de prédiction par rapport aux commandes réelles et évaluez la précision et la
fiabilité du modèle. Identifiez les erreurs et les écarts afin de pouvoir ajuster et
améliorer le modèle au fil du temps.
279
✓ Intégration de retours d'information utilisateurs : Encouragez les utilisateurs de
l'application, tels que les responsables des achats et de la chaîne d'approvisionnement,
à fournir des retours d'information sur l'efficacité de la prédiction et son impact sur les
opérations. Intégrez ces retours dans les mises à jour et les améliorations futures de
l'application.
280
✓ Bilan et analyse réflexive
Réduire les délais Délai moyen 60 30 Jours Solution d'achat lié 60 jours
d'approvisionnement des d'approvisionnement Jours au modèle non
fournisseurs SIMRA supervisé
(ML)
Améliorer la qualité des Nombre moyen de 11.58 par 8 par mois Solution qualité 7 par mois
pièces produites retours client mois (BI)
Améliorer la qualité des Temps moyen de 30 jours 20 jours Solution qualité 25 jours
pièces produites résolution des (BI)
problèmes de qualité
Améliorer la qualité des Taux de rebuts 19.46% 10% Solution qualité 14%
pièces produites (BI)
281
Prédire la quantité Erreur de prédiction +/- 30.86% +/- 18% Solution d'achat +/- 25%
commandée par le service moyenne (PrediX)
achat
Améliorer la qualité des OQD Client 2000 1500 Solution qualité 1800
produits (BI)
Figure 246 : Évolution des objectifs, statistiques et résultats avant et après l'implémentation de la solution
2. Difficultés rencontrées
Lors du projet, nous avons rencontré plusieurs difficultés en raison de la complexité du projet
et de la participation de multiples services chez SIMRA. Cependant, grâce à notre résilience
et à notre approche proactive, nous avons réussi à les surmonter. Voici un résumé des
difficultés rencontrées et des actions que nous avons adopté pour les résoudre :
✓ Nettoyage et préparation des données : Nous avons été confrontés à des problèmes
de qualité des données initiales, ce qui a rendu le processus de nettoyage et de
préparation complexe et chronophage. Nous avons adopté une approche méthodique
en utilisant des techniques de nettoyage automatisées.
✓ Choix du modèle de Machine Learning : Le choix du modèle de Machine Learning
approprié a représenté un défi en raison des nombreuses options disponibles. Nous
avons effectué une analyse approfondie en évaluant les performances des modèles
potentiels, leur adaptabilité à notre problématique et leurs exigences en termes de
données. Nous avons investi du temps dans la recherche en ligne, suivi des cours pour
prendre des décisions éclairées et sélectionner le modèle le mieux adapté à nos
besoins.
✓ Volume important de données : Le traitement d'un grand volume de données a posé
des défis en termes de temps d'exécution et de ressources nécessaires. Pour y faire
face, nous avons optimisé nos méthodes de traitement des données en utilisant des
techniques avancées sur Power Bi.
En surmontant ces difficultés, nous avons acquis une précieuse expérience, renforcé nos
compétences techniques et développé notre capacité à résoudre des problèmes complexes.
282
Malgré les obstacles rencontrés, nous sommes fiers d'avoir mené à bien ce projet, atteint nos
objectifs et fourni une solution de qualité à SIMRA.
Le processus de nettoyage et de préparation des données est une étape essentielle dans tout
projet d'analyse de données. Compte tenu de la nature complexe des données utilisées dans les
services Achat et Qualité, il est compréhensible que cela ait pris plus de temps que prévu. La
qualité des données est cruciale pour garantir des résultats fiables et précis, ce qui justifie le
temps supplémentaire accordé à cette étape critique. Pour remédier à cela on a automatisé la
phase de prétraitement de données en amont pour faciliter l’exploitation future et pour garder
la continuité automatique du processus data preprocessing.
Le projet impliquait plusieurs services et objectifs, ce qui a nécessité une coordination et une
communication étroites entre les différentes parties prenantes. La coordination et l'alignement
des différentes exigences et besoins peuvent prendre du temps, en particulier lorsque des
ajustements ou des modifications sont nécessaires pour répondre aux attentes de tous les
acteurs impliqués. Cela peut entraîner des retards, mais cela témoigne également de l'ampleur
et de l'importance du projet dans la réalisation des objectifs globaux de l'entreprise.
Il est important de noter que malgré ces retards, il est essentiel de considérer ces obstacles
comme des opportunités d'apprentissage et de croissance. Les retards rencontrés ont permis de
renforcer la compréhension des enjeux liés au nettoyage des données, au choix des modèles et
à la gestion de projets complexes. Ils ont également conduit à une meilleure collaboration et à
une meilleure gestion des attentes et des exigences des différentes parties prenantes.
283
4. Bénéfices de l’entreprise
Après l'utilisation des tableaux de bord liés à l'achat, à la qualité et l’application web
PREDIX, l'entreprise SIMRA Maroc s'attend à réaliser d'importants bénéfices futurs. Ces
outils permettent à l'entreprise d'anticiper plus efficacement ses besoins en matières
premières, ce qui se traduit par une meilleure gestion des stocks et une réduction des coûts liés
aux surstocks ou aux ruptures de stock.
Grâce à l'analyse approfondie des données fournies par ces tableaux de bord, l'entreprise sera
en mesure d'identifier les tendances et les modèles qui influencent ses opérations. Cela
permettra de prendre des décisions plus éclairées en matière d'achat, de qualité et de gestion
des stocks, ce qui contribuera à améliorer l'efficacité globale de l'entreprise.
Par ailleurs, l'utilisation des tableaux de bord liés à la qualité permettra à l'entreprise de
maintenir des normes élevées de qualité des produits, ce qui se traduira par une satisfaction
client accrue et une fidélité renforcée. Cela peut également réduire les coûts associés aux
retours et aux réclamations, contribuant ainsi à une meilleure rentabilité.
Dans l'ensemble, l'utilisation de ces tableaux de bord et de l'outil PREDIX ouvre de nouvelles
opportunités pour l'entreprise SIMRA Maroc. Les bénéfices attendus se situent principalement
dans l'anticipation des besoins, l'analyse approfondie des données et la prise de décisions plus
éclairées. Ces avantages permettront à l'entreprise de gagner en compétitivité sur le marché et
de consolider sa position en tant que leader dans son secteur d'activité.
284
gestion de la chaîne d'approvisionnement (SCM). Nous avons acquis une
compréhension approfondie des exigences et des défis propres à ce secteur.
✓ Compétences managériales : Nous avons combiné des approches telles que le Design
Thinking et le SCRUM pour mener à bien une solution end-to-end. Nous avons géré
un projet qui s'est déroulé sur plusieurs sprints, développant ainsi nos compétences en
gestion de projet à long terme. Nous avons également renforcé notre sens de l'analyse
en traitant un grand volume de données. Le travail d'équipe et la collaboration ont été
essentiels, tout en respectant les délais fixés (time box).
285
En résumé, ce projet nous a permis d'acquérir des compétences techniques solides en utilisant
des outils tels que Power BI et le Machine Learning. Nous avons également développé des
compétences managériales en gérant efficacement un projet de grande envergure. Ces
compétences seront précieuses pour notre développement professionnel futur dans le
domaine.
286
Conclusion
Ce projet a été mené avec succès chez SIMRA MAROC, permettant la mise en place d'une
gestion intelligente de la chaîne logistique. Grâce à l'utilisation de technologies telles que
Power BI, le Machine Learning et l'application PrediX, nous avons développé des solutions
complètes qui ont apporté des améliorations significatives à l'entreprise.
Le déploiement de l'application PrediX a été une étape majeure, permettant aux utilisateurs
d'accéder facilement aux fonctionnalités de prédiction de quantité à commander. En utilisant
le modèle ML "XGBOOST", nous avons pu fournir des prédictions précises, optimisant ainsi
les stocks, évitant les problèmes de pénurie ou de surstockage, et améliorant la planification
des commandes.
Les résultats obtenus ont été positifs, avec des améliorations mesurables dans des domaines
tels que le délai moyen d'approvisionnement, le taux de non-conformité et le temps de
résolution des problèmes de qualité. SIMRA MAROC a pu réduire ses coûts opérationnels,
améliorer la qualité des produits et renforcer sa compétitivité sur le marché.
Il est important de souligner que la gestion intelligente de la chaîne logistique est un processus
continu qui nécessite une surveillance constante et des ajustements en fonction des évolutions
du marché. SIMRA MAROC doit maintenir la continuité des solutions mises en place, en
continuant à collecter et à analyser les données pertinentes, afin de rester compétitif et
d'assurer sa croissance future.
Les solutions ont apporté une réelle valeur ajoutée à SIMRA MAROC en améliorant sa
gestion de la chaîne logistique grâce à des solutions technologiques. Les efforts et l'énergie
investis ont permis d'optimiser les opérations, d'accroître l'efficacité et d'obtenir des résultats
tangibles. SIMRA MAROC sera mieux positionné pour répondre aux défis de l'industrie et
pour assurer sa croissance durable à l'avenir.
287
Table des Tableaux
Tableau 1: FICHE TECHNIQUE DE SEGULA TECHNOLOGIES ..................................................................... 17
Tableau 20: statistiques de données de la qualité de production avant transformation ..................................... 109
Tableau 22: Tableau comparatif entre les approches de modélisation de données Kimball et Inmon ............... 113
Tableau 23: Description technique des mesures du service achat ...................................................................... 148
Tableau 24: Description technique des mesures du service qualité de la production ........................................ 150
Tableau 25: Description des étapes de conception du modèle XGBOOST ......................................................... 193
Tableau 26: KPI's personnalisé lié à la qualité externe de SIMRA MAROC ...................................................... 267
288
Table des figures
figure 1 : Organigramme De l'entreprise SIMRA MAROC .................................................................................. 21
Figure 6: Business Process Model and Notation de l'administration des ventes .................................................. 30
289
Figure 29: Étapes de transformation des données de la table 'COMMANDE' ..................................................... 85
Figure 31: Étapes de transformation des données de la table ‘Détails commande’ ............................................. 86
Figure 32: Étapes de transformation des données de la table ‘NC Fournisseur’ ................................................. 86
Figure 34: Vue d'ensemble des données récupérées chez SIMRA ........................................................................ 87
Figure 44: deuxième partie de la feuille Grille des Compétences ...................................................................... 102
Figure 46: Étapes de transformation des données de la table Défaut ................................................................ 104
Figure 47: Étapes de transformation des données de la table Qualité interne ................................................... 104
Figure 48: Étapes de transformation des données de la table Qualité externe .................................................. 105
Figure 49: Étapes de transformation des données de la table Contrôleur ......................................................... 105
Figure 50: Étapes de transformation des données de la table Pièces ................................................................. 105
Figure 51: Étapes de transformation des données de la table ilots .................................................................... 105
Figure 52: Étapes de transformation des données de la table operateur ........................................................... 106
Figure 53: Étapes de transformation des données de la table Clients ................................................................ 106
290
Figure 59: Table de dimensions ‘Détails commande’ ........................................................................................ 119
Figure 60: Visualisation de la table DATE sur Power BI avec DAX .................................................................. 120
Figure 61: Description des relations entre les tables ........................................................................................ 121
Figure 62: Relation entre la table ‘Date’ et la table ‘Commande’ ..................................................................... 122
Figure 63: Relation entre la table ‘table commande’ et la table ‘table MP’ ...................................................... 123
Figure 64: Relation entre la table ‘commande’ et la table ‘Fournisseur’ .......................................................... 124
Figure 65: Relation entre la table ‘table commande’ et la table ‘table NC Fournisseur’ .................................. 125
Figure 66: Relation entre la table ‘commande’ et la table ‘Détails commande’ ................................................ 126
Figure 74: Visualisation de la table DATE sur Power BI avec DAX .................................................................. 132
Figure 76: description des relations entre les tables utilisées dans la qualité de la production ........................ 134
Figure 77: Relation entre table de faits ‘Qualité interne’ et table ‘Date’ ......................................................... 135
Figure 78: Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘ ilot’ .................................... 136
Figure 79: Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘Contrôleur’ ......................... 137
Figure 80: Relation entre table ‘Qualité interne’ et table ‘Opérateur’ .............................................................. 138
Figure 81: Relation entre table de faits ‘Qualité interne’ et table de dimensions ‘ Défaut’ ............................... 139
Figure 82: Relation des deux tables ‘Pièces’ et ‘Qualité interne’ ...................................................................... 140
Figure 83: Relation des deux tables ‘Défaut’ et ‘Qualité externe’ ..................................................................... 141
Figure 84: Relation des deux tables ‘Pièces’ et ‘Qualité externe’ ...................................................................... 142
Figure 85: Relation entre table de faits ‘Qualité externe’ et table ‘Opérateur’ ................................................. 143
Figure 86: Relation entre table de faits ‘Qualité externe’ et table ‘Contrôleur’ ................................................ 144
Figure 87: Relation entre table de faits ‘Qualité externe’ et table ‘Client’ ........................................................ 145
Figure 88: Relation entre table de faits ‘Qualité externe’ et table ‘Date’ .......................................................... 146
291
Figure 89: bibliothèques utilisées ....................................................................................................................... 153
Figure 94: Fonction pour remplir les valeurs null par la moyenne .................................................................... 158
Figure 100: Code dans Jupyter pour la modification du type de règlement ....................................................... 162
Figure 101: Code dans Jupyter pour l'encodage des variables de type texte ..................................................... 163
Figure 103: Code de normalisation des données avec MinMaxScaler() ............................................................ 165
Figure 111: performance des model K means et clustering hiérarchique .......................................................... 171
Figure 117: Comparaison entre la quantité à commander réelle par rapport à la quantité prédite ................. 175
Figure 118: Visualisation réelle par rapport à la prédiction pour le modèle régression par arbre de décision 175
292
Figure 119: code de régression par forêt aléatoire ............................................................................................ 177
Figure 121: Visualisation réelle par rapport à la prédiction du modèle régression par forêt aléatoire ............ 178
Figure 122: Code de régression par gradient boosting XGBoost ....................................................................... 179
Figure 124: Tableau des données réelles par rapport à la prédiction................................................................ 181
Figure 128: Visualisation réelle par rapport à la prédiction du model régression linéaire ............................... 183
Figure 132: Visualisation réelle par rapport à la prédiction du model Régression polynomiale ...................... 186
Figure 135: Comparaison entre la quantité à commander réelle et prédite ....................................................... 188
Figure 136: Visualisation réelle par rapport à la prédiction du model Régression par forêt aléatoire ............. 188
Figure 139: Visualisation réelle par rapport à la prédiction du modèle Régression par arbre de décision ...... 190
Figure 144: Comparaison entre la quantité à commander réelle et prédite ....................................................... 194
Figure 145: Visualisation réelle par rapport à la prédiction du model XGBOOST ........................................... 194
293
Figure 149: Comparaison des modèle R2 ........................................................................................................... 198
Figure 157: Savoir plus sur le profil 1 pour une étude détaillée ........................................................................ 206
Figure 160: Savoir plus sur le profil 2 pour une étude détaillée ........................................................................ 208
Figure 162: User map des besoins fonctionnels liés à l’authentification ........................................................... 211
Figure 163: User map des besoins fonctionnels liés à l'achat import et local .................................................... 212
Figure 164: User map pour les besoins fonctionnels liés à l'administration ...................................................... 213
Figure 165: User map pour les besoins fonctionnels liés aux feedbacks ............................................................ 214
Figure 169: Cas d'utilisation pour la gestion des feedbacks .............................................................................. 217
Figure 170: Règles de gestion des utilisateurs pour l'admin .............................................................................. 218
Figure 171: Règles de gestion de l'inscription des nouveaux utilisateurs .......................................................... 219
Figure 174: Règles de gestion liées au cas d'utilisation 'choisir le type d'achat' ............................................... 221
Figure 176: Règles de gestion pour le cas d'utilisation 'Rejoindre notre communauté sur Disqus' ................... 223
294
Figure 179: Page d'inscription pour les nouveaux utilisateurs .......................................................................... 225
Figure 180: Page Admin pour la gestion des utilisateurs utilisateurs ................................................................ 226
Figure 190: Page d'achat local après la connexion de l'utilisateur ................................................................... 235
Figure 197: Affichage des utilisateurs dans la page admin ................................................................................ 238
Figure 198:Page d'administration avec la fonctionnalité d'ajouter un nouvel utilisateur ................................. 239
Figure 199:Page d'administration avec les fonctionnalités de modification et suppression des utilisateurs ..... 239
Figure 206: Code du test unitaire pour ‘login_user, create_usertable et add_userdata’ ................................... 244
Figure 207: Résultat du test unitaire pour ‘login_user, create_usertable et add_userdata’ .............................. 245
Figure 208: Test unitaire pour ‘login_user, delete_user et add_userdata’ ........................................................ 246
295
Figure 209: Résultat du test unitaire pour ‘login_user, delete_user et add_userdata’ ...................................... 246
Figure 217: Exécution en cours de l'hébergement sur Streamlit Share .............................................................. 251
Figure 218: Visualisation de l'application hébergée sur Streamlit Share .......................................................... 252
Figure 220:Dashboard ‘matières premières consommées par SIMRA MAROC’ ............................................... 255
Figure 222: Dashboard 'KPI's lié à la performance du service achat de SIMRA MAROC' .............................. 256
Figure 226: Dashboard 'Qualité interne de SIMRA MAROC' pour l’année 2022.............................................. 260
Figure 227: Dashboard 'Qualité interne de SIMRA MAROC' pour l’année 2023.............................................. 261
Figure 228: KPI's personnalisé lié à la qualité interne de SIMRA MAROC ...................................................... 262
Figure 229 : Graphe 'Quantité Non Conforme par Décision' pour l’année 2022 .............................................. 263
Figure 230: Graphe 'Quantité Non Conforme par Décision' pour l’année 2023 ............................................... 264
Figure 231: Dashboard 'Qualité externe de SIMRA MAROC' pour l'année 2022 .............................................. 265
Figure 232: Dashboard 'Qualité externe de SIMRA MAROC' pour l'année 2023 .............................................. 265
Figure 233: Graphe 'Quantité livrée VS Quantité retournée' pour l’année 2022 ............................................... 268
Figure 234: Graphe 'Quantité livrée VS Quantité retournée' pour l’année 2023 ............................................... 268
Figure 235:Dashboard de suivi des îlots de SIMRA MAROC en 2022 ............................................................... 270
Figure 236: Dashboard de suivi des îlots de SIMRA MAROC en 2023 .............................................................. 271
Figure 237: Détails sur le graphique 'Quantité NC par ilot' (1) ........................................................................ 271
Figure 238: Détails sur le graphique 'Quantité NC par ilot' (2) ........................................................................ 272
296
Figure 239: Suivi client de SIMRA MAROC en 2022 ......................................................................................... 273
Figure 240: Suivi des clients SIMRA MAROC du début 2023 jusqu'à présent ................................................... 274
Figure 242: Liste des espaces de travail dans power service ............................................................................. 276
Figure 246 : Évolution des objectifs, statistiques et résultats avant et après l'implémentation de la solution ... 282
297
Annexes
Utilisation de l’outil Figjam pour la collaboration en ligne
Trello
Prototype
298
Dashboard Achat
• Suivi des fournisseurs SIMRA MAROC
299
• KPI’s de SIMRA MAROC
300
• Qualité externe de SIMRA MAROC
301
• Suivi lié aux opérateurs et aux contrôleurs de SIMRA MAROC
302
• Suivi Client de SIMRA MAROC
303
Bibliographies et webographies
Alpaydin, E. (2010). Introduction to Machine Learning. . The MIT Press.
astie, T. T. (2009). The Elements of Statistical Learning: Data Mining, Inference, and
Prediction (éd. (2nd ed.).). (Springer, Éd.)
Corporation, M. (s.d.). Power BI. Récupéré sur https://powerbi.microsoft.com/
Creswell, J. W. (2014). Research design: qualitative, quantitative, and mixed methods
approaches. Sage publications.
Denscombe, M. (2014). The good research guide: for small-scale social research projects.
UK: McGraw-Hill Education(UK).
GitHub. (s.d.). GitHub Documentation. Récupéré sur https://docs.github.com/
Hair Jr, J. F. (2010). Multivariate data analysis: a global perspective (Vol. 7). Pearson.
IEEE Transactions on Neural Networks and Learning Systems. (2012). 23(2), 201-221.
IEEE Transactions on Neural Networks and Learning Systems. (2018). 29(5), pp. 1710-1725.
LeCun, Y. B. (2015). Deep learning. Nature, 521(7553), 436–444. Récupéré sur
https://doi.org/10.1038/nature14539
McKinney, W. (2018). Python for Data Analysis: Data Wrangling with Pandas, NumPy, and
IPython (éd. 2nd ed.). O'Reilly Media.
Müller, A. .. (2017). Introduction to Machine Learning with Python: A Guide for Data
Scientists. O'Reilly Media.
Rasmussen, C. E. (2006). Gaussian Processes for Machine Learning (Adaptive Computation
and Machine Learning series). The MIT Press.
scribbr. (n.d.). Retrieved from scribbr: https://www.scribbr.fr/methodologie
Streamlit. (s.d.). Streamlit Documentaion. Récupéré sur https://docs.streamlit.io/
Streamlit. (n.d.). Streamlit Share documentation. Retrieved from
https://docs.streamlit.io/en/stable/sharing/index.html
W3schools. (n.d.). Retrieved from https://www.w3schools.com/
304