Acad 032
Acad 032
Thème :
Management visuel dynamique de l’affectation
personnel usine
Promotion : 2022/2023
REMERCIEMENT
Avant tout, nous remercions dieu ALLAH, le tout-puissant, de nous avoir donné de la
santé, de la volonté, du savoir.
Nous tenons à remercier toutes les personnes qui ont contribué au succès de notre stage
et qui nous ont aidé lors de la rédaction de ce rapport.
Nous adressons également nos sincères remerciements à Mme. Hind Baslimane notre proma-
trice au niveau de « MINIROS », pour son suivi, ses orientations, ses connaissances et les
détails fournis durant toutes les réunions de ce projet.
Nos sincères remerciements aux membres du jury qui ont accepté d’assister à notre
soutenance et d’évaluer notre travail.
DÉDICACE
Je dédie ce mémoire à :
Mes chers parents, qui ont consacré leur vie pour que je puisse poursuivre mes études et
qui m’ont apporté un soutien constant. Leur amour, leurs encouragements et leurs sacrifices
ont été essentiels dans mon parcours académique.
J’adresse également ma dédicace à mes sœurs, qui ont toujours été là pour m’aider
et m’encourager. Leur soutien inconditionnel et leur présence précieuse ont été une source
de motivation et de force tout au long de cette période. Ma chère amie Amina, qu’elle ma
donnée. Sa confiance en moi et ses encouragements ont été une source d’inspiration et de
tout au long de cette expérience.
A mon binôme Soraya, pour son aide tout au long du projet. Nous avons partagé de bons
moments ensemble. Son soutien, sa collaboration et notre travail d’équipe ont grandement
contribué à la réussite de ce mémoire.
Meliouh Wissam
DÉDICACE
Mes parents, ma mère et mon père, qui ont été une source constante d’inspiration et
de soutien tout au long de ce parcours. Leur soutien moral, spirituel, émotionnel et financier
a été inestimable et a joué un rôle essentiel dans ma réussite.
Remerciement
Dédicace
Dédicace
Introduction générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1 Etude de l’existant 2
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Présentation de l’organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Entreprise MINIROS . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Organigramme MINIROS . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.3 Visions MINIROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.4 Digitalisation à MINIROS . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Cadre du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Service production . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.2 Analyse de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.3 Critique de l’analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.4 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3 Réalisation et implémentation 26
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2 Architecture du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 Langages et outils utilisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.1 Visual Studio Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.2 HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.3 CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.4 JSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.5 REACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.6 TailwindCss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.7 JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.8 PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.9 Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.10 Rest Api . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.11 XAMPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.12 GitHub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.13 Lucidchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4 Présentation du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4.1 Interface d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4.2 Interface authentification . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.4.3 Interface administarteur . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4.4 Interfaces demande besoin . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.5 Interfaces téléchargement ordre de fabrication . . . . . . . . . . . . . 33
3.4.6 Interface affectation . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4.7 Interface affectation service . . . . . . . . . . . . . . . . . . . . . . . 34
3.4.8 Interfaces gestion de la matrice . . . . . . . . . . . . . . . . . . . . . 35
3.4.9 Interface historique d’affectation . . . . . . . . . . . . . . . . . . . . . 37
3.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Conclusion générale 38
LISTES DES FIGURES
A nos jours, l’organisme d’accueil «MINIROS» planifie tous les jours l’affectation de per-
sonnel aux postes de travail pour atteindre la cadence et les commandes à leur temps et pour
gagner les clients, mais ne dispose pas toujours de solution.
L’objectif de notre projet est d’automatiser l’affectation pour faciliter la prise de décision,
optimiser le temps, garder la traçabilité et simplifier le travail, une application web est conçue
à cet égard.
Afin d’aborder tous ces aspects, nous avons décomposé ce mémoire en trois chapitres es-
sentiels qui se présentent comme suit :
1
CHAPITRE 1
ETUDE DE L’EXISTANT
1.1 Introduction
L’analyse de l’existant est une étape importante dans le cycle de vie d’un système, il
s’agit de connaître la situation actuelle de l’organisation pour pouvoir porter les améliorations
demandées. Alors, nous abordons dans ce chapitre une présentation générale de l’organisme
d’accueil, son organigramme, ses visions et son intérêt pour la digitalisation.
2
– Bureaux d’études spécialisés
• 40 fournisseurs et sous-traitants conventionnés.
• Sponsor officiel du Ministère de la Formation Professionnelle depuis 2008.
Elle a Un système de gestion et une logistique intégrée, utilisant les meilleures techno-
logies, et un système de gestion de la chaine de valeur orienté client, à ce titre :
• Elle synchronise toutes les opérations selon la demande client.
• Elle stabilise l’outil de production et optimise les coûts.
• Elle veille au développement des compétences et de la polyvalence des salariés.
3
Figure 1.1 – Organigrame de l’organisme d’acceuil
4
clients de la valeur qu’ils leur donnent, de ses dynamique d’innovation et de ses engagement
qualité. Dans le cadre de la digitalisation, faire la transformation digitale : Allant vers un
contrôle automatisé, une optimisation et une intégration digitale, son système informatique
devrait voire une percée.
5
Figure 1.2 – Evolution de l’intégration des solutions de l’informatique au sein de MINIROS
Matrice de compétences
Les responsables de productions pinceaux et rouleaux ont élaboré une matrice de com-
pétences afin de distinguer le personnel en fonction de leurs compétences spécifiques à chaque
6
poste.
Elle répertorie :
• Les membres du personnel des ateliers dans ses lignes.
• Les noms des postes dans ses colonnes.
• Les compétences des employés pour chaque poste à l’intersection des lignes et des
colonnes. Les compétence sont classées en trois niveaux :
1. Compétence"A" : Expert.
2. Compétence"B" : Maîtrise.
3. Compétence"C" : Basique.
À la fin de chaque année, les responsables de productions analysent cette matrice en
attribuant des taux (pourcentages) à chaque personnel afin de pouvoir obtenir un point
de vue sur :
• Les personnels les plus polyvalents
• Leurs capacités dans chaque poste.
Après avoir effectué cette analyse, ils élaboreront plan de formation ainsi qu’une liste
des besoins en recrutement.
Situation actuelle
Chaque jour, avant midi, Le responsable central de commande de l’entreprise reçoit
les commandes des clients et les transmet au responsable de planification. Les commandes
doivent être livrées dans un délai de 72 heures.
Le comité de planification"responsable de planification, responsable expédition et respon-
sables de productions pinceau et rouleau" s’occupe chaque jour de la planification des ex-
péditions, de la production et des approvisionnements en fonction des besoins du jour, qui
varient en fonction de la demande et des produits demandés.
La planification se fait chaque jour à midi où les responsables de production affectent les
personnels des ateliers aux différents postes de travail en fonction de la commande en cours,
en prenant en compte :
• les compétences des employés et leur disponibilité.
• Les absences : maladies, employés en congé...
• Les ordres de fabrication(work-order).
• Les besoins d’affectation : Les autres services peuvent demander des employés des
ateliers pour une durée donnée, et inversement.
7
Le Responsable de planification utilise le logiciel "TEAMEX" pour traiter la commande et
générer l’ordre de fabrication qui indique les lignes actives pour chaque atelier, le nombre de
produits par ligne et le temps de travail nécessaire pour chaque ligne. permettant ainsi aux
responsables de faire l’affectation du personnel.
L’affectation se fait chaque jour, et est affiché aux salariés pour que chacun connaisse son
affectation du lendemain. Elle varie chaque jour en fonction de l’ordre de fabrication.
Cette affectation peut subir des changement pendant la journée, soit par les respon-
sables de productions, ou par les superviseurs à cause de plusieurs raisons parmi eux :
• Changement de ligne.
• Absense non prévu.
• Cas d’incidence.
Ces changements sont effectué par les superviseurs. En d’autres termes, ils sont res-
ponsables des modifications d’affectation par rapport à chaque cellule/ligne.
8
par des aimants sur le tableau. Une fois l’affectation effectuée, les responsables de
productions prennent des photos du tableau de la salle et se déplacent vers les ateliers
pour recopier les informations sur un autre tableau.
9
• L’acceptation ou le refus des demandes se fait soit par email, soit par téléphone. Le res-
ponsable de planification utilise ses moyens pour informer les services de la disponibilité
du personnel demandé.
• La matrice de compétences est présente dans un fichier Excel. Elle est imprimée et
affichée pour que les responsables et les employés puissent consulter les compétences
requises et disponibles.
1.3.4 Objectifs
Les problèmes identifiés précédemment se résument comme suit :
• Perte de temps : Le processus actuel implique des tâches manuelles et des déplacements
physiques, ce qui entraîne une perte de temps.
• Absence de traçabilité d’affectation : Il n’y a pas de système en place pour suivre et
enregistrer les affectations du personnel, ce qui rend difficile la vérification des infor-
mations et la recherche d’un historique.
• Risque d’erreurs : Les affectations manuelles peuvent conduire à des erreurs humaines.
• Données non organisées : La matrice de compétences et les absences, ne sont pas
centralisées ou organisées de manière efficace, ce qui rend difficile leur utilisation.
L’objectif est de résoudre ces problèmes en développant une application web qui permettra
de :
• Eliminer la perte de temps en centralisant le processus des demandes besoins, en au-
tomatisant l’affectation manuelle et en permettant le travail à distance, ce qui réduira
les déplacements et les tâches manuelles.
• Assurer une traçabilité d’affectation complète en enregistrant toutes les affectations et
en permettant de consulter facilement l’historique.
• Réduire les risques d’erreurs en automatisant les affectations.
• Centraliser et organiser les données en numérisant la matrice de compétences, faire une
liste fiable des absences.
1.4 Conclusion
Ce chapitre a fourni un aperçu de l’organisation, de sa structure d’accueil et de son
domaine d’activité. Il a également contribué à une meilleure compréhension de la problé-
matique. Étant donné l’absence de logiciel adapté à ces problèmes, nous avons entrepris le
développement de notre propre application. Après avoir défini nos objectifs, nous aborderons
le chapitre suivant qui se concentre sur l’étude conceptuelle de notre application.
10
CHAPITRE 2
2.1 Introduction
Après une étude approfondie de l’existant, nous aborderons dans ce chapitre la phase
cruciale de modélisation et de conception de notre projet. Nous commencerons par identifier
les besoins, puis expliquerons le fonctionnement de notre système en décrivant les différents
acteurs impliqués. Enfin, nous présenterons les différents diagrammes et modèles UML que
nous avons utilisés pour la conception de notre solution.
11
• Un accès rapide.
• Mise à jour facile : Codage lisible commenté avec guide technique .
• Des données sécurisées.
• Manipulation sur Pc / tablette / écran tactile / smartphone .
• Le système doit être disponible 24h sur 24h et 7jrs sur 7jrs pour répondre aux besoins
des utilisateurs.
Role
Gérer matrice Gérer Affection Gérer besoin Gérer comptes
Acteurs
Responsable de production ✗ ✗ ✗
Resposable de planification ✗ ✗
Service ✗ ✗
Superviseur ✗
Personnel ✗
Administrateur ✗
12
• Gérer Besoin : il peut affecter des personnels ( choisir personnel et choisir service ),
afficher demande besoin des services (accepter/refuser demande).
2.4.3 Superviseur
Après s’être authentifié, le superviseur sera en mesure de réaliser les actions suivantes :
• Gérer Affectation : Superviseur peut consulter, modifier l’affectation.
2.4.4 Service
Après s’être authentifié, le service sera en mesure de réaliser les actions suivantes :
• Gérer Affectation : Service peut consulter l’affectation seulement.
• Gérer Besoin : Il peut envoyer demande au responsable de planification, Afficher ses
demandes, afficher demande besoin du reponsable de planification (accepter/refuser
demande).
2.4.5 Personnel
Sans s’être authentifié, le personnel sera en mesure de réaliser les actions suivantes :
• Gérer Affectation : Le personnel peut consulter l’affectation du jours.
2.4.6 Administrateur
Après s’être authentifié, l’administrateur sera en mesure de réaliser les actions sui-
vantes :
• Gérer Comptes : L’administarteur peut ajouter compte, changer mot de passe, afficher
compte, supprimer compte.
13
2.5 Présentation d’UML
UML (Unified Modeling Language) est un langage de modélisation graphique utilisé
pour représenter les systèmes logiciels. Il est constitué de diagrammes qui servent à visualiser
et décrire la structure et le comportement des objets d’un système. UML propose une série
de diagrammes tels que "Cas d’utilisation, diagramme de séquence, diagramme de classe..."
14
Figure 2.1 – Diagramme de cas d’utilisation Global
15
Diagramme de cas d’utilisation de sous système "Gérer comptes"
16
Figure 2.3 – Diagramme de cas d’utilisation de sous système "Gérer matrice"
17
Figure 2.4 – Diagramme de cas d’utilisation de sous système "Gérer affectation"
18
Figure 2.5 – Diagramme de cas d’utilisation de sous système "Gérer besoin"
19
Diagramme de séquence "Consulter affectation"
Dictionnaire de données
Dictionnaire de données est un document qui regroupe toutes les données qu’on aura
conserver dans notre base de données. Pour chaque donnée, il indiquele code mnémonique,
21
la désignation, le type et la taille de la donnée.
22
Diagramme de classes
23
– Toute association hiérarchique de type [1, n] se traduit par une clé étrangère.
– La clé primaire correspondant à l’entité mère (côté n) migre comme clé étrangère
dans la relation correspondant à l’entité fille (côté 1).
• Règle 3 :
– Toute association non hiérarchique de type [n, n] ou de dimension > 2 devient
une relation.
– La clé primaire est formée par la concaténation des identifiants des entités reliées.
• Transformation de la relation d’héritage par la classe mère
– Seule la classe mère est représentée par une relation (ses classes filles ne sont pas
représentées par des relations).
– Tous les attributs de chaque classe fille sont réintégrés au niveau de la classe mère.
– La clé primaire de la classe mère est utilisée pour identifier la relation.
– Un attribut supplémentaire de discrimination t (pour "type"), est ajouté à la
classe mère, afin de distinguer les tuples. Cet attribut est de type énumération et
a pour valeurs possibles les noms de la classe mère ou des différents classes filles.
24
2.6 Conclusion
Au cours de ce chapitre, nous avons effectué une étude approfondie pour modéliser
notre système à l’aide d’UML, en définissant ses aspects fonctionnels et structurels. Cette
démarche nous a permis de mettre en place une implémentation claire et simple que nous
présenterons dans le prochain chapitre.
25
CHAPITRE 3
RÉALISATION ET IMPLÉMENTATION
3.1 Introduction
Ce chapitre se concentre sur la solution qui traite la structure de l’application web et
la transition du modèle logique au modèle physique. Nous commençons par décrire l’archi-
tecture, les langages et les outils utilisés. Ensuite, nous abordons les différentes interfaces de
notre application.
26
3.3 Langages et outils utilisés
Nous allons présenter les différents langages et outils que nous avons utilisés lors du
développement de notre application.
27
3.3.6 TailwindCss
Tainwind CSS se décrit comme un premier framework CSS
utilitaire. Plutôt que de se concentrer sur la fonctionnalité de
l’élément en cours de style, Tailwind est centré sur la façon dont
il doit être affiché. Cela permet au développeur de tester plus
facilement de nouveaux styles et de modifier la mise en page. [6]
3.3.7 JSON
JSON (JavaScript Object Notation) est un format d’échange
de don nées léger et donc performant. C’est un format de texte
indépendant de tout langage mais utilisant des conventions fa-
milières aux programmeurs de la famille de langages C (incluant
JavaScript et Python notamment). JSON est une syntaxe pour
mettre des données en série tel que des objets, tableaux, nombres,
chaînes de caractères, booléens et valeurs null. Elle est basée sur
la syntaxe de JavaScript. [7]
3.3.8 PHP
PHP « Hypertext Preprocessor » est un langage de scripts gé-
néraliste et Open Source, spécialement conçu pour le dévelop-
pement d’applications web. Il peut être intégré facilement au
HTML. Le code PHP est exécuté sur le serveur, générant ainsi le
HTML, qui sera ensuite envoyé au client. Le client ne reçoit que
le résultat du script, sans aucun moyen d’avoir accès au code qui
a produit ce résultat. [8]
3.3.9 Laravel
Laravel est un puissant framework PHP basé sur le modèle de
conception Modèle-vue-contrôleur, conçu pour les développeurs
qui ont besoin d’une boîte à outils simple et élégante pour créer
des applications web complètes. [9]
3.3.10 Rest Api
API REST (également appelée API RESTful) est une interface
de programmation d’application (API ou API web) qui respecte
les contraintes du style d’architecture REST et permet d’inter-
agir avec les services web RESTful. L’architecture REST (Repre-
sentational State Transfer) a été créée par l’informaticien Roy
Fielding. [10]
28
3.3.11 XAMPP
Xampp est un ensemble de logiciels qui permet de mettre en
place facilement un serveur Web confidentiel, un serveur FTP et
un serveur de messagerie électronique. Simple d’utilisation, il est
à la porté d’un grand nombre de personnes puisqu’il ne demande
aucune connaissance particulière. [11]
3.3.12 GitHub
GitHub est un service d’hébergement Open-Source, permettant
aux programmeurs et aux développeurs de partager le code in-
formatique de leurs projets afin de travailler dessus de façon col-
laborative. On peut le considérer comme un Cloud dédié au code
informatique. [12]
3.3.13 Lucidchart
Lucidchart est une solution évolutive de création de divers sché-
mas pour les entreprises. Elle permet de réaliser des diagrammes
facilement. Il est possible de réaliser des logigrammes, cartes
conceptuelles, UML ou encore des cartes mentales rapidement.
Bénéficiant d’une bibliothèque de formes exceptionnelle. Lucid-
chart fonctionne en version SaaS peu importe l’ordinateur que
l’on utilise. Que cela Mac, PC et également Linux. [13]
29
Figure 3.2 – Page d’acceuil
30
Figure 3.4 – Message d’erreur "Mot de passe erroné"
31
3.4.4 Interfaces demande besoin
Si l’utilisateur authentifié est un service/responsable de planification, il a la possibilité
de remplir un formulaire pour ajouter demande besoin de personnel.
32
3.4.5 Interfaces téléchargement ordre de fabrication
Des que le responsable de planification s’authentifie, il peut telecharger l’ordre de fa-
brication à l’aide du boutton "Choose file", et valider l’affecation finale. Notre application
va détecter les postes qui sont actifs pour l’affectation automatique.
33
3.4.6 Interface affectation
Lorsque le responsable de production s’authentifié, il a la possibilité de lancer l’affec-
tation automatique en appuyant sur le bouton "Lancer", il pourra également apporter des
modifications, permuter entre les personnels ou bien supprimer l’affectation existante afin
d’en créer une nouvelle manuellement.
34
Figure 3.11 – Affichage des demandes et l’affectation pour les services
35
Figure 3.13 – Page gestion la matrice
36
3.4.9 Interface historique d’affectation
Cette interface permet aux responsables de productions et de planification de consulter
l’historique d’affectation en saisissant la date du jour pour laquelle ils souhaitent voir les
affectations.
3.5 Conclusion
Dans ce chapitre « implémentation », nous avons présenté les langages et les outils
que notre application s’appuie dessus, nous avons aussi détaillé toutes les fonctionnalités de
notre application web grâce à des captures d’écran et des explications détaillées.
37
CONCLUSION GÉNÉRALE
38
BIBLIOGRAPHIE
[1] Visual Studio Code : l’éditeur de code gratuit et complet de Microsoft — blogdumode-
[Link]. [Link] studio- code/.
[Accessed 25-May-2023].
[2] Tony Archambeau. [Link]. [Link] [Accessed
25-May-2023].
[3] Qu’est-ce que le CSS et quelle est son lien avec l’HTML ? — [Link]. https :
//[Link]/dictionnaire-du-web/css. [Accessed 26-May-2023].
[4] Qu’est ce que le JSX en [Link], exemples et fonctionnalités — [Link].
[Link] [Accessed 27-May-2023].
[5] React – Une bibliothèque JavaScript pour créer des interfaces utilisateurs — [Link].
[Link] [Accessed 26-May-2023].
[6] markdefalco. What is Tailwind CSS — [Link]. https : / / learn .
[Link]/en- us/shows/web- wednesday/what- is- tailwind- css. [Acces-
sed 26-May-2023].
[7] Présentation de JSON et utilisation en JavaScript - Pierre Giraud — [Link].
[Link] [Link]/javascript- apprendre- coder- cours/json/.
[Accessed 26-May-2023].
[8] PHP : Quapos ;est ce que PHP ? - Manual — [Link]. [Link]
fr/[Link]. [Accessed 26-May-2023].
[9] Laravel - The PHP Framework For Web Artisans — [Link]. [Link]
com/docs/10.x. [Accessed 26-May-2023].
[10] Une API REST, qu’est-ce que c’est ? — [Link]. [Link]
topics/api/what-is-a-rest-api. [Accessed 26-May-2023].
[11] XAMPP | Pack Logiciel Libre de l’entreprise. [Link]
fr/[Link]?logiciel44. [Accessed 26-May-2023].
[12] GitHub : qu’est-ce que c’est et comment apprendre à l’utiliser ? — [Link].
[Link] [Accessed 26-May-2023].
[13] Lucidchart Avis clients, aperçu des fonctionnalités | Appvizer. [Link]
fr/operations/business-process/lucidchart. [Accessed 26-May-2023].