Académique Documents
Professionnel Documents
Culture Documents
Par
Kawtar REGUIAI
Sous la direction de :
Rapport confidentiel
2022 - 2023
A ma chère mère,
Aucun mot aussi signifiant soit-il, le saurait exprimer le degré de gratitude,
de respect et de reconnaissance que j’éprouve pour vous. Ma pensée la
plus forte aille vers ma mère, à qui je dois la vie.
REGUIAI Kawtar
Grand merci à M.TOUIL Achraf, mon encadrant pédagogique pour son écoute, ses
orientations et sa confiance qui m’étaient une très grande source de motivation depuis le début de
mon projet de fin d’études.
Mes vifs remerciements à tout le corps professoral de « l’Ecole Supérieure des Industries
du Textile et Habillement » de Casablanca, pour la qualité de la formation et la compétence de
ses formateurs et de ses professeurs. Et plus précisément Mme.LAHRACHE Sanae, pour ses
remarques pertinentes et ses conseils.
IA Intelligence Artificielle
BI Business Intelligence
C'est dans ce contexte que s'inscrit mon stage de fin d’études au sein de l'entreprise JESA.
Pendant cette période, j'ai eu l'opportunité de participer au développement d'une solution de data
analytics visant à répondre aux besoins métiers de l'entreprise.
Ce rapport de stage vise à présenter les différentes étapes de ce projet, les outils utilisés, les
problématiques rencontrées ainsi que les résultats obtenus.
L'objectif principal de ce stage était de développer une solution de data analytics qui permettrait
d'exploiter pleinement les données issues de la plateforme JPASS, le potentiel de ses données pour
prendre des décisions éclairées et optimiser ses performances.
Pour ce faire, j'ai travaillé en étroite collaboration avec l'équipe transformation digitale.
Ce rapport de stage présentera donc en détail les différentes étapes de ce projet, les outils et
technologies utilisés. Il s’articule autour de 4 chapitres :
Business Intelligence
La Business Intelligence (BI) ou informatique décisionnelle est un ensemble de processus, de
technologies, de compétences et d'applications utilisés pour fournir des informations pertinentes
aux responsables et aux managers d'entreprises. Son objectif est d'analyser des volumes de données
considérables stockées dans les data warehouses et les rendre des informations exploitables.
Machine Learning
Le machine learning (apprentissage automatique) est une branche de l'intelligence artificielle (IA)
qui se concentre sur la création de systèmes capables d'apprendre et d'améliorer leurs performances
en se basant sur les données qu'ils traitent.
La performance
Dans le contexte d'une entreprise, la performance peut être définie comme le degré de réalisation
des résultats par rapport aux efforts déployés et aux ressources utilisées. Cette notion repose
principalement sur les concepts d'efficacité et d'efficience.
Brainstorming
Le brainstorming est une méthode de génération d'idées dans laquelle les participants d'un groupe
proposent des idées de manière libre et non structurée. Au cours de cette activité, les idées sont
initialement recueillies sans être jugées ou censurées, puis elles sont ensuite triées et évaluées.
Charte de projet
Une charte de projet est un document officiel émis par l'initiateur ou le commanditaire du projet,
qui confirme l'existence du projet et donne au gestionnaire du projet l'autorité pour utiliser les
ressources organisationnelles dans le cadre des activités liées au projet.
Gantt
Le diagramme de Gantt est une représentation visuelle utilisée pour la planification et la gestion
de projets. Il permet de diviser les projets en tâches distinctes et concrètes, organisées dans le
temps. Dans le diagramme de Gantt, chaque activité (tâche) est représentée par une barre. La
position et la longueur de la barre reflètent la date de début, la durée et la date de fin de l'activité.
Bête à cornes
La bête à cornes est un diagramme graphique utilisé pour évaluer la satisfaction des utilisateurs
vis-à-vis d'un produit ou d'un service. Son nom provient de sa ressemblance avec une tête de
taureau, avec une ligne reliant les deux bulles situées en haut du diagramme.
QQOQCP
La méthode QQOQCP est un outil de collecte et d'analyse d'informations visant à comprendre une
situation et identifier un problème. En technique de vente, cette méthode de questionnement
Benchmarking
Le benchmarking des outils consiste à évaluer et comparer différentes solutions en fonction de
critères spécifiques pour déterminer quelle option répond le mieux à vos besoins.
Cette première partie du rapport, donne une vision globale et une perspective
d’ensemble du projet, y compris l’environnement de son déroulement, et le
contexte professionnel lié à notre problématique.
Tel +212.5.22.87.70.00
Fax +212.5.22.87.72.34
Email info@jesagroup.com
4. Organigramme de JESA
Pour répondre aux besoins en constante évolution de ses clients, JESA compte sur une
équipe talentueuse et diversifiée, composée de professionnels hautement qualifiés issus de
différents domaines.
Managing Director
Mr.Kabbaj Hicham
Fertlizers Buildings
Finance Assurance
PMO JESA studio
IT
Managing Director
Mr.Kabbaj Hicham
Project Delivery
Head of Digital
Transformation
Principal
Data Data
Data &
System
Architect Integratio
Engineer
n Enginer
i. Industrie
Ce secteur comporte les domaines leader du groupe JESA, tel que le domaine de la
production d’engrais et de phosphate.
Métaux et Mines,
Produits chimiques de base,
Pétrole et gaz, pétrochimie,
b. Services
a. Visions
Fournisseur de solutions de classe mondiale avec un ADN africain
b. Missions
Devenir le leader africain des services de conception, d'ingénierie, de réalisation
de projets et de gestion d'actifs.
Fournir des solutions de bout en bout, innovantes et durables pour l'avancement
industriel et urbain.
c. Valeurs fondamentales
We care
Montrer du respect à chaque personne ; en plaçant l'humain au cœur de l’entreprise
et de son développement, et le bien-être est une priorité.
La satisfaction des clients et des partenaires de l’écosystème est un facteur essentiel
du succès de JESA.
Se soucier de l'environnement et la durabilité fait partie intégrante des solutions de
l’entreprise.
We grow together
Innover et développer de nouvelles opportunités.
Prospérer grâce au développement des clients, de l’écosystème et des
collaborateurs.
We are agile
1. La problématique
Au cours des dernières années, l'adoption de technologies numériques a permis une
amélioration considérable dans le suivi et la gestion des projets.
Les logiciels de gestion de projet, les outils de communication en ligne et les plateformes
collaboratives ont facilité la planification, l'exécution et le suivi des projets, en permettant
aux équipes de travailler plus efficacement et de collaborer plus facilement.
La digitalisation a également permis une plus grande transparence dans le suivi des progrès
et l'utilisation des ressources, en offrant des analyses en temps réel et des tableaux de bord
pour suivre l'avancement des tâches et des objectifs.
L’équipe transformation digitale, pour répondre à ce besoin, a développé 2 plateformes :
Collab et Jpass.
2. Cahier de charge
a. Contexte pédagogique
Ce stage s’inscrit dans le contexte d’un projet de fin d’études intitulé : «
Développement d’une solution Data Analytics pour répondre aux besoins
métiers », pour l’obtention du diplôme d’ingénieur d’état en génie industriel option
chef de produit à l’Ecole Supérieure des Industries du Textile et Habillement de
Casablanca.
Département
Plateforme JPASS
transformation digitale
Développement d’une
solution Data Analytics pour
répondre aux besoins
métiers
Le maître d’ouvrage : Le porteur du projet, qui pour son compte le projet a été
réalisé. Il est responsable de la définition du besoin et le choix des objectifs.
Le maître d’ouvrage peut être soit un client externe soit l’entreprise elle-même qui
décide de réaliser le projet pour son propre compte.
Le maître d’œuvre : La personne qui pour sa compétence assure la mise en œuvre
des opérations pour réaliser le projet.
Il va mobiliser les moyens définis par le maître d'ouvrage pour atteindre les
objectifs fixés.
Pour assurer la réussite du projet, l’encadrement et le suivi sont exigés ;
l’encadrement implique l’aide et l’orientation des membres de l’équipe du projet,
et le suivi pour mesurer et évaluer l’avancement.
Cette étape consiste à faire une recension des différents risques qui peuvent
influencer le bon déroulement du projet. Les risques peuvent êtres techniques,
humains, financiers, juridiques, organisationnels, ou intrinsèques au projet.
Le tableau ci-dessous regroupe le résultat d’un brainstorming avec l’équipe projet
et aussi une large consultation auprès des personnes qui ont approché par le passé
un projet similaire, pour répertorier les risques possibles.
C=PxG
Avec :
P : La probabilité d’occurrence, soit la fréquence d’apparition du risque,
G : La gravité du risque, soit la sévérité.
Les tableaux ci-dessous présentent les échelles de cotation des 2 notions cités :
Probable 3 6 9 12
Possible 2 3 6 8
Improbable 1 2 3 4
Tableau 5 : Matrice de vraisemblance
Un AMDEC dont est élaboré pour anticiper les événements qui peuvent survenir et
influencer l’avancement du projet, et pour mettre en place des actions préventives pour
éliminer ces risques :
Action
Nature Risque Effet Cause Pi Gi Ci
préventive
Programmer des
Indisponibilité réunions
3 2 6
de l'équipe hebdomadaires
Ne pas respecter Collaborateurs avec l’équipe
Risques les délais de surchargés +
liés aux Manque de livraison du projet + Non
ressources disponibilité sur
collaboration et Ne pas parvenir à Préciser
humaines atteindre les site (Mode
de clairement les
objectifs fixés. hybride)
communication 2 2 4 rôles pour
entre les augmenter leur
membres de implication
l'équipe
Prioriser les
tâches +
Dérapage sur le Prendre en
planning du fait considération
d’une mauvaise Report de la date Mauvaise les risques +
estimation de la de livraison du gestion des 3 2 6 Déployer un
durée projet plannings diagramme de
nécessaire au Gantt pour
projet visualiser
l'avancement du
Risques projet
liés aux Adopter une
délais méthode flexible
pour s'adapter
Evolution dans rapidement aux
Changement
la vision du nouvelles
fréquent des Inaccomplissement
projet + exigences +
exigences ou du des objectifs 1 3 3
Feedback des Maintenir une
périmètre du attendus
parties communication
projet
prenantes ouverte avec
toutes les
parties
prenantes
Demander
Retard dans la
Indisponibilité des Système de l'accès auprès
livraison du 2 4 8
données confidentialité du service
projet
concerné
Effectuer un
nettoyage
régulier des
Risques liés données +
Manque de
aux données Connaître la
Endommager les contrôle qualité
source des
Non fiabilité des données qui des sources +
2 4 8 données +
données impacteront la Erreurs de frappes
Garder un
prise de décision ou d'omission +
journal des
Absence DWH
mises à jour
effectuées à la
base de
données
III. RSE
La Responsabilité Sociale des Entreprises (RSE) revêt une importance croissante dans le
contexte actuel, où les entreprises sont de plus en plus conscientes de leur impact sur la société
et l'environnement. Dans le cadre de mon stage, j'ai pu constater l'importance accordée à la
RSE dans la gestion des machines au sein de l'entreprise.
JESA se positionne comme un acteur responsable, en adoptant des pratiques respectueuses de
l'environnement et en veillant à la sécurité et à la santé des travailleurs. Dans cette optique,
Synthèse :
Au cours de ce chapitre, on a présenté le contexte général du projet, à savoir une présentation de
l’organisme d’accueil, ainsi que la problématique et le cahier de charge.
Dans le présent chapitre, nous allons définir notre projet pour bien cerner la
problématique, en commençant par une analyse fonctionnelle du projet et
définir la méthodologie à suivre pour réaliser la solution.
Cette étape vise à expliquer l’état actuel, pour bien comprendre l’environnement et dégager
les points faibles afin de pouvoir déterminer la portée du projet et les améliorations prévues.
1. Environnement
Le département transformation digital au sein de JESA, afin d’automatiser les processus,
a développé deux plateformes dans le but est de digitaliser les processus de travail de
JESA.
Cette initiative vise à réduire les erreurs humaines, d’accélérer les délais de traitement et
d’améliorer la productivité globale.
Collab :
Un environnement qui permet aux parties prenantes du projet de suivre
efficacement l’avancement et le progrès des projets dont ils sont affectés.
Collab est né d’une nécessité exprimée par les contributeurs du projet afin de crée
un environnement commun pour tous les intervenants impliqués dans l’exécution
du projet, afin d’avoir une vue d’ensemble centralisée.
Bénéficiaires :
Jpass :
Une plateforme destinée aux employées JESA et aux clients et fournisseurs, afin
d’identifier, contrôler et suivre les différents intervenants et équipements clés
pendant les phases des projets.
La plateforme contient 3 volets :
Contractor Personnel ;
Construction Equipment ;
Procured Equipment & Material.
Dans le cadre de mon stage, j’étais chargée du 2ème volet qui est Construction
Equipment.
Construction Equipment :
Pour améliorer la performance des machines utilisés dans les projets JESA, le client a
demandé un outil de suivi et de pilotage des performances qui fournit une représentation
visuelle afin d’affiner la qualité de la prise de décision.
1. Besoins fonctionnels
Les besoins fonctionnels que doit satisfaire cet outil sont :
Extraire les machines inactives et réduire le temps d’inactivité ;
Visualiser l’avancement des différents projets ;
Communiquer avec toutes les parties prenantes, à savoir opérateurs, managers,
clients, fournisseurs …
Qui ?
Qui est concerné par le problème ? Employés et clients de JESA.
Quoi ?
De quoi s'agit-il ? Non visibilité sur les ressources matérielles.
Où ?
Où aura-t-il lieu ? Service transformation digitale.
Quand ?
Quand résoudre le problème ? Période de stage.
Comment ?
Comment résoudre le problème ? Développer une solution Data Analytics.
Pourquoi ?
Avoir une visibilité sur les données extraites de
Pourquoi résoudre le problème ? la plateforme, pour le suivi de la performance
des machines.
Tableau 8 : QQOQCP
Charte de projet
Développement d'une
Intitulé du solution Data Analytics Chef de projet Kawtar REGUIAI
Objectif du projet
Pour avoir une visibilité sur l'ensemble des machines utilisés dans les projets JESA, le client a exprimé un
besoin d'un outil de visualisation afin d'augmenter la qualité de la prise des décisions. Le but de ce projet est
de : Améliorer la performance des machines - Anticiper la surcharge et l'inactivité - Assurer la cohérence et
l'alignement entre toutes les parties prenantes.
Service concerné
Le projet consiste à développer une solution Data Analytics pour faire le suivi de la performance des
machines enregistrées sous la plateforme Jpass. Jpass est une plateforme digitale conçue par JESA, qui
permet l'identification, le contrôle et le suivi des différents intervenants et équipements clés pendant les
phases des projets.
La finalisation du projet dans les délais de livraison est le souci majeur de chaque équipe de
développement d’une solution BI. L'un des problèmes les plus fréquemment affrontés lors de
la construction du logiciel est la mauvaise spécification et le changement brusque des besoins.
Cela peut influencer non seulement l'équipe de développement en créant un environnement de
stress, mais aussi le temps consacré pour la réalisation du projet et donc des délais de livraison
dépassées.
Afin d'éviter ces situations critiques, nous avons adopté la méthode AGILE pour la gestion de
notre projet.
1. Limites des approches classiques
Depuis des décennies, les projets ont été traditionnellement gérés selon une approche
classique, souvent appelée "en cascade" qui repose sur des activités séquentielles.
Ces méthodologies se distinguent par leur forte volonté de tout planifier et de rendre tout
prévisible dès le début du projet. C'est pourquoi elles sont qualifiées d'approches "prédictives".
Un plan de gestion de projet décrit comment et quand le travail sera réalisé, les étapes de
planification, d'exécution, de suivi et de clôture du projet.
2. Méthode agile
Une méthode agile est une approche itérative et progressive, caractérisée par une collaboration
étroite et un niveau de formalisme adapté. Elle génère un produit de haute qualité tout en
prenant en compte les évolutions des besoins des clients.
Le concept du développement itératif implique de diviser le projet en plusieurs étapes,
appelées itérations, d'une durée de quelques semaines.
Au cours de chaque itération, une version minimale du produit attendu est développée et
présentée au client sous forme de version intermédiaire, afin d'être validée. Les fonctionnalités
sont ainsi intégrées de manière progressive tout au long du cycle de vie, ce qui permet au
système de s'enrichir graduellement pour atteindre les niveaux de satisfaction et de qualité
requis.
Chaque itération est essentiellement un projet en miniature, englobant toutes les activités de
développement menées en parallèle, telles que l'analyse, la conception, la programmation et
les tests, sans oublier les activités de gestion de projet. L'objectif est d'obtenir, à la fin de
chaque itération, un sous-ensemble fonctionnel du système cible, et à la fin de la dernière
itération, la version finale du produit.
Avantages
Les différentes méthodes agiles partagent les valeurs et les principes du Manifeste
Agile. Cependant, bien qu'elles aient un tronc commun de pratiques, elles se
distinguent par leur degré de formalisme.
Cela se reflète dans la quantité de documentation produite, les étapes formelles, les
revues, le rythme du projet, ainsi que le nombre et la durée des itérations.
Chaque méthode agile peut varier en termes de rigueur et d'approche
méthodologique. Certaines méthodes peuvent accorder plus d'importance à la
documentation et aux processus formels, tandis que d'autres privilégient la
flexibilité et la communication directe. De même, le rythme du projet peut varier,
avec des itérations plus courtes ou plus longues selon la méthode choisie.
3. Scrum
La méthode Scrum est un cadre de travail qui permet d'aborder la réalisation de projets
complexes. Bien qu'elle ait été initialement conçue pour le développement de projets
informatiques, elle peut être appliquée à divers types de projets, qu'ils soient simples ou
innovants.
L'approche de Scrum est caractérisée par sa simplicité, ce qui en facilite la mise en œuvre.
Cette méthodologie offre la possibilité de s'adapter rapidement aux changements demandés
par le client. À intervalles réguliers (à la fin de chaque itération), l'équipe et le client réévaluent
les spécifications du projet. Cela signifie que le client reçoit plus fréquemment les
spécifications qu'il a demandées, avec la possibilité d'avoir un livrable par semaine. Cette
approche contribue à accroître la satisfaction du client. De plus, les spécifications développées
sont constamment réévaluées avant d'être entamées, ce qui garantit qu'elles restent pertinentes
pour le client. Ainsi, les ressources de développement sont optimisées en fonction des besoins
réels du client.
Scrum repose sur 3 principes fondamentaux :
Transparence : Tous les membres de l'équipe ont accès aux informations
pertinentes concernant le produit en développement. Cela favorise la
collaboration et la compréhension commune des objectifs et des besoins.
VI. Reporting
Le reporting implique la création d'un rapport d'activité dans le but de rendre compte aux
responsables hiérarchiques des performances de cette activité.
Dans le cadre du reporting, les résultats de l'activité sont présentés sous forme de données
chiffrées à un moment précis, et l'évaluation de l'activité se fait à travers des indicateurs de
performance préalablement définis.
Les données sont présentées aux décideurs sans être accompagnées d'une analyse
approfondie.
Les leaders identifiés dans le Magic Quadrant de Gartner pour la Business Intelligence
(BI) sont les fournisseurs qui se distinguent par leur solide capacité d'exécution et leur
vision claire du marché de la BI. Ces fournisseurs sont renommés pour leurs solutions
complètes, leur présence étendue sur le marché et leur historique éprouvé de fourniture
de solutions de haute qualité.
Dans la version 2022, Microsoft, Tableau et Qlik maintiennent leurs positions régulières
de Leaders.
Afin de choisir un seul outil de Reporting pour réaliser notre tableau de bord, on va
réaliser une étude comparative entre les 3 outils.
Synthèse :
Dans la conception du projet, nous avons défini notre problématique en se basant sur la méthode
QQOQCP, et présenté la charte du projet, en abordant la méthodologie du travail et les différents
environnements utilisés pour réaliser la solution. Dans le chapitre suivant, nous présenterons la
solution déployée.
La collecte de données est une étape clé dans le processus de création de rapports de
Business Intelligence (BI). Cela comprend l'identification, l'extraction et le traitement des
données pertinentes provenant de diverses sources.
L'objectif principal de la collecte de données est d'obtenir des informations précises et
fiables pour le reporting BI.
Cela nécessite souvent d'explorer et d'extraire des données de bases de données internes,
de systèmes externes, et de fichiers.
Les sources pour la collecte de données se diffèrent, pour notre cas on a recueilli les
données à partir de la plateforme JPASS.
Le tableau ci-dessous regroupe les différents tables et champs utilisés pour réaliser notre
tableau de bord :
Table Champs
ID, name, brand, serial_number, type, matriculation,
lifting_equip, more_information, photo, qr_code, creation_date,
Construction_equipment
update_date, longitude, latitude, upload_id, company,
subcontractor, is_deleted, linked_all_contracts
ID, constrution_equipment_id, project_id, start_date,
Construction_equipment_project
end_date, status, assignment_rate
Construction_equipment_employee ID, creation_date, construction_equipment, employee_id
ID, certificate_date, certificate_expiring_date,
accredited_organization, creation_date, update_date,
Construction_equipment_certificate
certificate_id, construction_equipment, validation_comment,
validation_status_id, file, mobile_id
ID, inspection_date, expiring_date, required_action,
description, creation_date, update_date,
Construction_equipment_inspection
construction_equipment, inspection, validation_comment,
validation_status_id, file, mobile_id
Après avoir récupéré toutes les tables qui contiennent les informations nécessaires, nous
abordons maintenant les spécifications techniques, à savoir les indicateurs de performances
qu’on doit élaborer dans le tableau de bord.
Les indicateurs de performance dans le domaine de la business intelligence (BI) sont des
mesures clés utilisées pour évaluer et analyser la performance d'une entreprise ou d'un
processus.
Ces indicateurs fournissent des données quantitatives et qualitatives qui permettent de
suivre et de comprendre les performances par rapport aux objectifs et aux résultats attendus.
En mode tabulaire, cet indicateur est créé à partir d’une mesure.
Les indicateurs de performance peuvent être calculés à l'aide de différents langages de
requête. Le choix du langage dépend souvent de l'outil ou de la plateforme de business
intelligence utilisée.
Nous avons fait recours au langage SQL : Il est principalement utilisé pour interagir avec
les bases de données relationnelles, il offre des fonctionnalités puissantes pour effectuer
des requêtes, filtrer les données, agréger les valeurs et effectuer des jointures entre les
tables, et également le SQL convient pour calculer des indicateurs de performance à partir
de données structurées et stockées dans des tables relationnelles.
Le tableau ci-dessous présentent les différents KPI’s avec leur formule de calcul :
Machinery By
construction_equipment Count(distinct(matriculation)) by company
contractor
Machinery by city /
construction_equipment_project Count(matriculation) by project
Project
Total machinery
construction_equipment_certificate Count(certificate_id)
certificate
Total machinery
Count(certificate_id) where certificate_expiring_date => current
certificate ( expiring construction_equipment_certificate
date
date ⩾ Today )
Total machinery
Count(certificate_id) where certificate_expiring_date =< current
certificate ( expiring construction_equipment_certificate
date
date ⩽ Today )
Total machinery
warnings by construction_equipment &
Count(warning) by company / Count(warning) by subcontractor
contractor/ construction_equipment_warning
Subcontractor
Total machinery
construction_equipment_inspection Sum(inspection)
inspection
Total machinery
inspection by construction_equipment &
Sum(inspection) by company /Sum(inspection) by subcontractor
contractor/ construction_equipment_inspection
Subcontractor
Machinery task construction_equipment & Select * from task_history, Select company from
history ( by construction_equipment_project & construction_equipment, Select project_id from
contractor/ project) task_history Construction_equipment_project
Approved construction_equipment_certificate &
assotiations KPI ( construction_equipment_warning & Count(approved_associations)
Total ) construction_equipment_inspection
certificate_expired = ( if
construction_equipment_certificate["certificate_expiring_date"] >=
current date return 0, else return 1) /inspection_expired = ( if
construction_equipment_inspection["expiring_date"] >= current
construction_equipment_certificate &
Total Expired date return 0, else return 1) / warning_expired = ( if
construction_equipment_warning &
Documents construction_equipment_warning["expiring_date"] >= current date
construction_equipment_inspection
return 0, else return 1) certificate_expired_document= Sum(
certificate_expired) / inspection_expired_document= Sum(
inspection_expired) /warning_expired_document= Sum(
warning_expired)
construction_equipment_certificate &
Total approved construction_equipment_warning &
Count(approved_documents) by company /
Documents by construction_equipment_inspection &
Count(approved_documents) by project
contractor/ Project construction_equipment &
construction_equipment_project
Machinery location (
construction_equipment
maps )
Un datawarehouse représente une base de données : les données étant intégrées, non
volatiles, et historisées. La conception et la modélisation de la DataWarehouse se ramènent
à définir deux concepts principaux : faits et dimensions.
C’est la mise en place de faits et de dimensions qui permet de définir le schéma de
modélisation que le DWH doit suivre :
1. Les faits
Une table de faits est une table qui contient les données observables (les faits) que l'on
possède sur un sujet et que l'on veut étudier, selon divers axes d'analyse (les
dimensions).
Les colonnes d’une table de faits représentent les faits ou les mesures. Ses données
sont généralement numériques, quantifiables et agrégeables.
2. Les dimensions
Une dimension est une table qui contient les axes d'analyse (les dimensions) selon
lesquels on veut étudier des données observables (les faits) qui, soumises à une analyse
multidimensionnelle, donnent aux utilisateurs des renseignements nécessaires à la
prise de décision.
Une table de dimension contient des colonnes, chaque colonne correspondant à un
attribut.
3. Schéma relationnel
Un schéma relationnel de DataWarehouse est une représentation visuelle de la
structure et de l'organisation des tables dans une base de données. Il définit les tables,
les colonnes, les relations et les contraintes qui permettent de stocker et de gérer les
données dans le DWH.
Les principaux types de schémas relationnels sont :
Schéma en étoile (Star Schema) :
Dans un schéma en étoile, il y a une table centrale appelée table de faits. Autour de
la table de faits, il y a plusieurs tables de dimensions (dimension tables) qui
contiennent des attributs des données. Les tables de dimensions sont reliées à la
table de faits par des clés étrangères. Ce schéma est simple, facile à comprendre et
à interroger, mais il peut contenir des redondances de données.
Les données utilisées dans cet exemple sont fictives et ne reflètent pas les données
spécifiques de l’entreprise.
Le tableau de bord ci-dessous met en place des indicateurs de performance pour assurer le
suivi des différents contractants et sous-contractants qui fournissent de machines, ainsi que
le nombre d’employés par contractant. On peut aussi visualiser l’état des machines si elles
sont actives ou inactives.
Présentons dans un 2ème lieu les différents documents techniques de la machine, ainsi que l’état
de ces documents, s’ils sont validés, en cours de validation ou rejetés.
Aussi dans ce tableau de bord on peut extraire le total des machines par contractant et par
sous-contractant.
Le filtre peut être appliqué sur les 2 visuels, pour contrôler les caractéristiques.
Synthèse :
Dans ce chapitre, nous avons présenté la solution proposée tout en mettant en œuvre les points
discutés dans la phase de conception, en précisant toutes les étapes suivies pour la réalisation.
Une étude économique du projet a été traitée en se basant sur de données et des projections
réalistes.
1. Le regroupement
Il consiste à regrouper les données similaires en clusters afin de détecter des schémas
ou des groupes naturels dans les ensembles de données.
Par exemple, en utilisant des données telles que les relevés de capteurs, les paramètres
de fonctionnement et les caractéristiques de performance des machines, l'algorithme de
regroupement peut être utilisé pour regrouper les machines similaires en fonction de leur
comportement ou de leurs caractéristiques communes.
Cela peut aider à identifier les groupes de machines ayant des performances similaires,
des besoins de maintenance similaires ou des schémas de défaillance similaires.
En identifiant ces groupes, les entreprises peuvent prendre des décisions éclairées en
matière de maintenance, telles que l'allocation efficace des ressources de maintenance,
la planification des activités de maintenance préventive et la mise en place de politiques
de remplacement ou de réparation basées sur le comportement des machines dans
chaque groupe.
3. K-means
L'algorithme K-means est l'un des algorithmes de regroupement les plus couramment
utilisés en apprentissage automatique non supervisé. Il permet de diviser un ensemble
de données en plusieurs groupes (clusters) en fonction de la similarité de leurs
caractéristiques. L'objectif est de trouver les centres de clusters qui minimisent la
variance intra-cluster et maximisent la variance inter-cluster.
Figure 28 : Itération 0
Figure 30 : Itération 2
Figure 31 : Itération 3
Concept de base :
Le concept de base de l'algorithme K-means repose sur l'idée de trouver les centres de
clusters en minimisant la somme des distances au carré entre les points de données et les
centres de leurs clusters respectifs.
Inconvénients de le PCA
Interprétation des composantes : Les composantes principales n'ont pas
nécessairement une signification physique directe, ce qui peut rendre leur
interprétation complexe.
Perte d'informations : Malgré la conservation d'une grande partie de
l'information, la réduction de la dimensionnalité peut entraîner une perte
d'informations, en particulier si seules les premières composantes
principales sont conservées.
Visualisation
Figure 35 : Visualisation
Dans un premier temps, nous examinons les variables numériques en créant des
histogrammes. Ces graphiques nous permettent de visualiser la répartition des valeurs dans
ces variables. Grâce à l'utilisation de la fonction "hist()" de la bibliothèque Pandas, nous
générons des histogrammes pour chaque variable numérique présente dans le jeu de
données. Cette visualisation nous offre un aperçu des motifs et des tendances, facilitant
ainsi la détection de schémas significatifs.
Ensuite, nous portons notre attention sur les variables catégoriques et utilisons des
diagrammes de dénombrement (countplots). Ces diagrammes nous permettent d'observer
le nombre d'occurrences de chaque catégorie dans les variables catégoriques.
L'encodage des données joue un rôle crucial dans le cadre de l'apprentissage automatique
(Machine Learning) car de nombreux algorithmes ne peuvent traiter que des données
numériques. Lorsque nous travaillons avec des données catégoriques, il est nécessaire de les
encoder en valeurs numériques pour permettre aux modèles d'apprentissage automatique de
les utiliser efficacement.
Figure 40 : Encodage
Dans le code fourni, nous utilisons l'encodage des variables catégoriques à l'aide de la classe
"LabelEncoder" de la bibliothèque scikit-learn. Cela consiste à attribuer un identifiant
numérique unique à chaque catégorie de chaque variable catégorique. Par exemple, si une
variable catégorique possède trois catégories distinctes, elles seront encodées en 0, 1 et 2.
L'encodage des variables catégoriques permet de représenter les informations catégoriques
sous une forme numérique que les modèles d'apprentissage automatique peuvent
comprendre et traiter.
En ce qui concerne les variables numériques, nous effectuons une mise à l'échelle à l'aide de
la classe "StandardScaler" de scikit-learn. La mise à l'échelle est importante car elle permet
1. Meilleure valeur de K
L'algorithme K-Means est une technique de regroupement non supervisée couramment
utilisée en analyse de données. L'une des décisions clés à prendre lors de l'utilisation de K-
Means est de déterminer le nombre de clusters, souvent désigné par la valeur de K. La valeur
de K influence directement la performance et la qualité des regroupements obtenus.
Lorsque la valeur de K est trop faible, cela peut conduire à une fusion excessive de clusters et
à une perte de détails dans les données. Les regroupements obtenus peuvent ne pas être
significatifs et laisser des informations importantes non représentées. À l'inverse, si la valeur
de K est trop élevée, cela peut conduire à une fragmentation excessive des données, avec des
clusters trop petits et peu significatifs. Cela peut rendre l'interprétation des résultats plus
difficile et conduire à une surinterprétation des structures peu pertinentes.
Par conséquent, choisir la valeur de K appropriée est crucial pour obtenir des résultats
significatifs et interprétables. Il existe plusieurs méthodes pour déterminer la valeur optimale
de K, telles que la méthode du coude (Elbow method) ou la méthode de la silhouette
(Silhouette method). Ces méthodes évaluent la cohérence des clusters obtenus pour différentes
valeurs de K et aident à identifier le point où l'ajout d'un cluster supplémentaire n'apporte pas
beaucoup d'amélioration significative.
Dans le premier sous-graphique, nous utilisons la méthode du coude pour tracer les valeurs de
WCSS en fonction du nombre de clusters. La courbe représente la somme des carrés des
distances des points de données à leurs centroïdes de cluster respectif. Nous recherchons un
"coude" où l'ajout d'un cluster supplémentaire ne réduit pas significativement le WCSS. Ce
point est considéré comme le nombre optimal de clusters.
Dans le deuxième sous-graphique, nous traçons les scores de silhouette en fonction du nombre
de clusters. Le score de silhouette mesure la cohérence des points de données à l'intérieur de
leur propre cluster par rapport aux autres clusters. Un score élevé indique que les points sont
bien regroupés et séparés des autres clusters. Nous recherchons un pic net qui indique le
nombre.
3. K-means et PCA
Synthèse
Ce chapitre se penche sur une analyse exploratoire des données et un clustering.
Une partie intégrale de ce projet a été la mise en œuvre du clustering hiérarchique et K-means,
qui a révélé des clusters distincts dans les données. Nous avons utilisé la méthode du coude pour
déterminer le nombre optimal de clusters pour l'algorithme K-means.
Pour compléter notre clustering K-means, nous avons effectué une analyse en composantes
principales (PCA) sur les données, fournissant une représentation de faible dimension tout en
conservant autant d'informations que possible.
Les informations recueillies à partir de cette analyse pourraient former la base pour des études
futures ou potentiellement informer un modèle prédictif pour la gestion des machines.