Académique Documents
Professionnel Documents
Culture Documents
Thème
Présenté par :
GHERNOUTI OUSSAMA
ZETCHI YOUVA
LOUBAR WALID
Zetchi youva
Loubar walid
Ghernouti oussama
13 octobre 2022
Remerciement
Avant tout développement sur cette expérience professionnelle, il apparaît
opportun de commencer ce rapport de projet de fin d’études par des remer-
ciements à tous ceux qui nous ont appris au cours de ce projet et à ceux qui
ont eu la gentillesse d’en faire un moment très profitable.
Nous tenons, tout d’abord à remercier Dieu le tout puissant, le tout mi-
séricordieux, qui nous a donné la force et la patience d’accomplir ce modeste
travail.
Nous n’oublions pas, nos parents pour leur contribution, leur soutien et
leur patience.
Nous adressons, aussi, nos vifs remerciements à notre jury Mme. Bous-
til pour l’honneur qu’elle nous fait en acceptant de juger notre travail.
i
Résumé
Dans un monde de plus en plus concurrentiel, l’informatique est devenu un
outil de gestion et donc de production pour les entreprise, grâce aux logi-
ciels qui font circuler l’information aisément au sein de cette dernière. Ce
mémoire s’inscrit dans le cadre d’un projet de fin d’étude (PFE), et a pour
thème : "conception et réalisation d’une application mobile dédiée à l’entre-
prise ENAGEO", dont le but est d’organiser la gestion des stock
Mots clés
Application Mobile, Gestion de stock, Développement, Informa-
tique, Entreprise, Produit, Flatter, Dart, firestore.
Abstract
In an increasingly competitive world, IT has become a management tool and
therefore a production tool for companies, thanks to software that ease in-
formation circulation in these companies. This work is about the design and
production of a mobile application dedicated to the ENAGEO company, ai-
ming the organisation of the stock.
ii
Table des matières
Introduction générale 1
2 Étude de l’existant 7
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Étude des postes de travail : . . . . . . . . . . . . . . . . . . . 7
2.2.1 Définition : . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.2 Liste des postes de travail : . . . . . . . . . . . . . . . 8
2.2.3 Description des postes de travail . . . . . . . . . . . . 8
2.3 Étude documentaire . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.2 Liste des document . . . . . . . . . . . . . . . . . . . 10
2.3.3 Description des document . . . . . . . . . . . . . . . . 10
2.4 Flux d’information . . . . . . . . . . . . . . . . . . . . . . . . 13
iii
2.4.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4.2 Diagramme de flux de données . . . . . . . . . . . . . 13
2.5 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.6 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Analyse de besoins 16
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2 Présentation d’UML . . . . . . . . . . . . . . . . . . . . . . . 16
3.3 Spécification des besoins . . . . . . . . . . . . . . . . . . . . . 17
3.3.1 Les besoins fonctionnels . . . . . . . . . . . . . . . . . 17
3.3.2 Les besoins non fonctionnels . . . . . . . . . . . . . . 17
3.4 Diagramme des cas d’utilisation . . . . . . . . . . . . . . . . 17
3.4.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4.2 Diagramme de cas d’utilisation Général . . . . . . . . 18
3.4.3 Diagramme de cas d’utilisation détailler . . . . . . . . 19
3.5 Descriptions textuelles . . . . . . . . . . . . . . . . . . . . . . 21
3.5.1 Inscription . . . . . . . . . . . . . . . . . . . . . . . . 21
3.5.2 Authentification . . . . . . . . . . . . . . . . . . . . . 22
3.5.3 Consulter demande(s) matériel . . . . . . . . . . . . . 23
3.5.4 Consulter la liste matériel . . . . . . . . . . . . . . . . 24
3.5.5 Effectuer demande d’acquisition . . . . . . . . . . . . 24
3.5.6 Voir la liste des demandes . . . . . . . . . . . . . . . . 25
3.5.7 Faire une commande . . . . . . . . . . . . . . . . . . . 26
3.5.8 Ajouter une facture . . . . . . . . . . . . . . . . . . . 27
3.5.9 Ajouter un fournisseur . . . . . . . . . . . . . . . . . . 28
3.5.10 Modifier la liste du matériel . . . . . . . . . . . . . . . 28
3.5.11 Gérer les comptes . . . . . . . . . . . . . . . . . . . . 30
3.5.12 Gérer fournisseurs . . . . . . . . . . . . . . . . . . . . 31
3.5.13 Gérer factures . . . . . . . . . . . . . . . . . . . . . . 31
3.6 Diagrammes De Séquences . . . . . . . . . . . . . . . . . . . 33
3.6.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.6.2 Composition d’un diagramme de séquences . . . . . . 33
3.6.3 Diagramme de séquence "d’inscription" . . . . . . . . 33
3.6.4 Diagramme de séquence"d’authentification" . . . . . . 34
3.6.5 Diagramme de séquence "Consulter demande matériel" 35
3.6.6 Diagramme de séquence "Effectuer une demande d’ac-
quisition" . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.6.7 Diagramme de séquence "Faire une commande" . . . . 37
3.6.8 Diagramme de séquence "ajouter facture" . . . . . . . 38
3.6.9 Diagramme de séquence "Modifier la liste du matériel" 39
iv
3.6.10 Diagramme de séquence "gérer les comptes" . . . . . . 41
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4 Conception 43
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.2 Dictionnaire de donnée . . . . . . . . . . . . . . . . . . . . . 44
4.3 Diagramme de classe . . . . . . . . . . . . . . . . . . . . . . 45
4.3.1 Définition de diagramme de classe . . . . . . . . . . . 45
4.3.2 Présentation de diagramme de classe . . . . . . . . . . 45
4.4 Les règles de gestion . . . . . . . . . . . . . . . . . . . . . . . 46
4.5 Passage du modèle conceptuel au modèle relationnel . . . . . 47
4.5.1 Règle 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.5.2 Règle 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.5.3 Règle 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.5.4 Règle 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.6 Modèle logique de données relationnel . . . . . . . . . . . . . 48
4.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5 Implémentation 49
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.2 Environnement de développement . . . . . . . . . . . . . . . 49
5.3 Les interfaces de l’application . . . . . . . . . . . . . . . . . . 54
5.3.1 Authentification . . . . . . . . . . . . . . . . . . . . . . 54
5.3.2 Interface d’inscription . . . . . . . . . . . . . . . . . . 55
5.3.3 Interface MainPageAdmin . . . . . . . . . . . . . . . . 56
5.3.4 Interface gérer utilisateurs . . . . . . . . . . . . . . . . 57
5.3.5 Interface pour valider les items . . . . . . . . . . . . . 58
5.3.6 Interface Items déjà validés . . . . . . . . . . . . . . . 59
5.3.7 Interface Catégories . . . . . . . . . . . . . . . . . . . 60
5.3.8 Interface Liste des fournisseurs . . . . . . . . . . . . . . 61
5.3.9 Interface Liste des factures . . . . . . . . . . . . . . . . 62
5.3.10 L’interface MainPageEmployé . . . . . . . . . . . . . . 63
5.3.11 L’interface items de catégorie . . . . . . . . . . . . . . 64
5.3.12 L’interface demander un matériel . . . . . . . . . . . . 65
5.3.13 Interface Historique de demandes de matériel . . . . . 66
5.3.14 L’interface Profil . . . . . . . . . . . . . . . . . . . . . 67
5.3.15 L’interface track item . . . . . . . . . . . . . . . . . . . 68
5.3.16 Interface de Notifications . . . . . . . . . . . . . . . . . 69
5.3.17 Interface Ajouter une nouvelle catégorie . . . . . . . . 70
5.3.18 Interface Ajouter un nouveau item . . . . . . . . . . . 71
v
Conclusion Générale : 72
Bibliographie 74
vi
Table des figures
vii
5.12 Logo de Dart . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.13 Interface authentification . . . . . . . . . . . . . . . . . . . . . 54
5.14 Interface inscrire . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.15 MainPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.16 Liste des utilisateurs . . . . . . . . . . . . . . . . . . . . . . . 57
5.17 Items pour les validé . . . . . . . . . . . . . . . . . . . . . . . 58
5.18 Items validé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.19 Hangar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.20 Fournisseurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.21 Factures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.22 MainPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.23 Liste des items . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.24 Faire une demande matériel . . . . . . . . . . . . . . . . . . . 65
5.25 Historique de demande . . . . . . . . . . . . . . . . . . . . . . 66
5.26 Profil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.27 Tracking item . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.28 Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.29 Ajouter catégorie . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.30 Ajouter item . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
viii
Liste des tableaux
x
Introduction générale
L’informatique est une nouvelle technologie qui entre en force dans les
faits et mentalités de tous les jours. Mais bien plus que d’autres "technolo-
gies nouvelles", elle impose peu à peu des changements de méthodes et des
changements de points de vue, qui constituent les éléments d’une nouvelle
culture. Cette dernière a pénétré le système éducatif depuis quelque temps
et fait partie des savoirs à transmettre, qu’ils soient optionnels ou non. Sui-
vant les dates de référence et le niveau de leurs applications, le statut de
ces savoirs a évolué, d’abord et principalement reliés à la programmation des
ordinateurs et aux méthodes algorithmiques de résolution de problèmes.
xi
— Le troisième chapitre est dédié à la description des besoins du projet
en utilisant le langage UML ainsi que les différents diagrammes de
cas d’utilisation et de séquences.
— Le quatrième chapitre décrit la conception architecturale du projet. Il
présente le dictionnaire de données, le diagramme de classe, les règles
de gestion ainsi que le modèle relationnel.
— Dans le dernier chapitre, nous passons à la phase de réalisation où
nous décrivons les différents outils de développement utilisés ainsi que
la présentation de notre application. Nous clôturons le rapport avec
une conclusion générale et des perspectives.
1
Chapitre 1
Présentation de l’organisme
d’accueil
1.1 Introduction
Avant de se lancer dans le vif du sujet, il est essentiel de connaître le
terrain sur lequel nous allons travailler et les objectifs à atteindre. Nous
allons, alors, dans ce chapitre, présenter l’organisme d’accueil ainsi que notre
projet.
2
1.2.1 Historique de l’ENAGEO
L’ENAGEO a été créé en aout 1981(décret 81-172 du 01/08/1981) à par-
tir :
• D’ALGEO qui était une société mixte entre SONATRACH et Teledyne
(américaine) depuis le 01/03/1967.
• Du département géophysique et de service topographie de la Direction
des Travaux Pétroliers (DTP) de SONATRACH.
• Du service de traitement sismique de SONATRACH.
Sous tutelle du Ministère de l’énergie et des Mines jusqu’en février 1989
acquiert alors le statut d’entreprise autonome dont les actionnaires sont les
trois participations :
— Mines, Hydrocarbure et Hydraulique : 40%.
— Industries agro-alimentaires : 30%.
— Chimie, Pétrochimie et Pharmacie : 30%.
En 1998 après le remplacement des fonds de participation par des Holding,
SONATRACH rachète 51% du capital d’ENAGEO qui devient alors la pro-
priété :
— • Du Holding Sonatrach Service Para-pétroliers (SPP) : 51%.
— • De la société de Gestion des Participations Travaux Énergétiques
(SGP-TRAVEN). Depuis 2005, elle est une filiale SONATRACH à
100%. ENAGEO était actionnaire à 50% dans la société Libyo-Algérienne
de géophysique (ALAGCO) jusqu’au 31/12/2007. Cette participation
a évolué vers la création d’une représentation directe d’ENAGEO sur
le marché libyen par le rachat d’ALGCO. Parmi les principaux associés
de aux quels ENAGEO offert ses services sur le territoire national, ci-
tons AGIP, BP, JNOC. L’entreprise a également travaillé à l’étranger
pour le compte d’AGIP, COHO, SITEP .
3
1.2.3 Domaines d’activités de l’ENAGEO
L’entreprise ENAGEO travail sur plusieurs domaines d’activités qui sont :
• Topographie : Les études topographiques couvrent toutes les applications
de la topographie notamment :
— levé des profils et études pour l’ensemble des activités géophysique.
— Implantation des forages pétroliers et hydrauliques.
— Reconnaissance et choix de pistes d’accès aux puits.
— Étude de projets de pipe pétrolière.
— Études des routes et levée des terrains.
• Réflexion Sismique : ENAGEO possède une expérience de plusieurs dé-
cennies dans le domaine de la recherche des hydrocarbures par la réflexion
sismique, une des méthodes les plus utilisées en algerie et dans le monde, Une
maîtrise parfaite dans l’utilisation d’instruments tels que les laboratoires télé-
métrique a grand nombre de canaux pour la sismique 3D. ENAGEO dispose
de seize (16) équipes sismiques autonomes. Les matériels utilisés dans cette
étape sont : bulldozer, camion vibreur,camion labo, serveurs, camion câbliers
, câble d’enregistrement.
• Sismique de puits :L’introduction du profil sismique vertical, permet
d’étudier la réponse sismique des formations géologiques traversées par un
puits. Le traitement des données se fait sur site pour le contrôle de qualité.
Les matériaux utilises dans cette étape sont : bulldozer, camion vibreur, ca-
mion labo.
• Forage hydraulique :Le Forage hydraulique c’est l’aboutissement de
l’ensemble des études hydrogéologique ,ENAGEO est dotée d’appareils de
forage performantes, d’une unité d’essai entièrement équipée d’appareils so-
phistiquer, d’une unité de digraphie et de camps de vie équipée et autonome.
l’ensemble du parc est exploiter par un personnel spécialiser et jouissant
d’une longue expérience pour satisfaire les exigences de ses clients.
• Traitement et interprétation des données géophysique : l’entreprise
ENAGEO dispose de deux centres de calcul située a Ouled Fayet, wilaya d’Al-
ger et boumerdes, dotée d’équipement informatiques de pointe lui permettant
un traitement de données sismique de très haute qualité. des géophysiciens de
haut niveau sont a la disposition des clients pour résoudre tout les problèmes
technique dans le domaine du traitement. Ce département réalise aussi des
opérations de scanning et vectorisation des données sismiques.
les équipements utiliser sont : : Serveurs ultra puissant,Baie de stockage,Cartouches
de données, Ordinateurs.
4
1.2.4 L’organigramme de l’ENAGEO
Afin de déterminer les liens hiérarchique et fonctionnelle existants entre
les différents métiers de la société ENAGEO, la figure 1.2.4 représente l’or-
ganigramme général de l’ENAGEO.
5
organiser l’enregistrement l’approvisionnement et l’expédition des produit
[9]. La gestion de stock est une opération des plus importantes pour une
entreprise car elle impacte les autres activités de l’entreprise.
1.4 Conclusion
Ce chapitre a servi à mettre notre projet dans son cadre, de présenter
notre organisme d’accueil, sa mission et son but. Il nous a aussi permis de
présenter notre projet de manière générale. Le chapitre suivant nous permet-
tra de faire l’étude de l’existant.
6
Chapitre 2
Étude de l’existant
2.1 Introduction
Chaque système qui vise la résolution d’un problème rencontré par l’hu-
main, passe par une étape primordiale pour mieux comprendre ce qui est
nécessaire et qu’on appelle : l’étude de l’existant.
Cette phase a pour but décrire le déroulement des processus et de définir les
frontières du domaine d’étude, ainsi que la communication entre les acteurs.
Cette étude apportera beaucoup d’informations et va faciliter l’élaboration
de l’analyse des besoins.
Nous avons décompose cette phase a 3 points principaux :
-Étude des postes de travail
-Étude des documents
-Le flux d’information.
Une fois ces étapes accomplies, nous pourrons critiquer le système de ges-
tion existant, et conclure en proposant des solutions pragmatique et faisable.
7
2.2.2 Liste des postes de travail :
Les différents postes de la société en relation avec notre projet sont les
suivantes :
1. Administrateur.
2. Magasinier.
3. Fournisseur.
4. Responsable.
5. Employer (simple).
Administrateur
— Gérer les systèmes informatique de l’entreprise (ajouter,modifier ou
supprimer des données du système ).
— Donner aux utilisateur l’accès au système.
— Vérifier les document comme les facture et les transmettre à la direc-
tion générale.
— Régler les pannes et les défaillances du système de l’entreprise.
Magasinier
— Être en charge de la réception de l’entreposage des marchandises dans
le hangar.
— Assurer les entrées et sorties de tous les produits de l’entreprise.
— Prendre en considération les mise à jour du stock.
— Le regroupement des produits destinés à une commande faite par le
responsable.
— Gérer tous les bons d’entrées et de sorties.
— Vérifier le chargement avant l’expédition et l’établissement de tous les
documents reliés à cette dernière.
Fournisseur (externe)
— Réceptionner des listes et bons de commandes faites par le magasinier.
8
— Fournir les produits commandés par la société est assurer leurs livrai-
son à l’entrepôt .
— Générer la facture liée à la transaction d’achat .
Responsable
— Assurer le lien entre les employés, les propriétaires de cette entreprise
et les membres de l’équipe.
— Encourager l’esprit d’équipe et les relations interpersonnelles positives.
— Diriger la planification du travail quotidien pour s’assurer l avance-
ment vers l’objectif de l’entreprise.
— Vérifier les fiches de demande des employeurs et émettre une demande
d’acquisition de matériel auprès du magasinier.
Employer
Nous nous intéressons uniquement aux taches des employés en relation
avec notre étude et qui sont :
9
code désignation
A Alphabétique
N Numérique
AN Alphanumérique
D Date
S Signature
10
Figure 2.1 – Demande d’acquisition
Le bon de commande
Le bon de commande est un document reprenant les éléments d’une com-
mande donnant lieu à une vente entre un vendeur et un acheteur. Ce do-
cument a, donc, une valeur d’engagement dès qu’il est signé par les deux
parties. En effet, le vendeur s’engage à fournir la commande et l’acheteur
11
s’engage à la régler, dans l’étude que nous menons l’acheteur n’est autre que
le magasinier et le vendeur est le fournisseur.
Le bon de commande doit contenir les éléments suivants pour être valide :
— Identité de l’émetteur (adresse, numéro de TVA, raison so-
ciale, capital social, numéro SIREN et RCS ) .
— Identité du destinataire (adresse, raison sociale, numéro RCS
et SIREN) .
— Détails des produits/services et quantité .
— Prix HT et prix TTC .
— Montant de la TVA .
— Date et numéro de la commande .
— Date de livraison .
— Mode de paiement ( facultatif ) .
— Conditions de livraison .
— Délai et modalités du droit de rétractation .
Pour des raisons administratives, nous ne pouvons pas illustrer avec une
figure un exemple d’un bon de commande de la société.
12
2.4 Flux d’information
2.4.1 Définition
Le flux d’information est le transfère d’information entre deux acteur du
système d’information, généralement représenté par des flèches, un flux part
d’un acteur source pour aboutir à un de finalité [10].
13
de réception.
4 En cas de non disponibilité ou de rupture de stock du matériel suite a la
demande d’acquisition (1) le magasinier rédige une commande et la transmet
au fournisseur.
5 Le fournisseur transmet le matériel figurant dans la commande (4) avec la
facture de vente du matériel transmit.
6 Le magasinier vérifie le matériel envoyé par le fournisseur ainsi que la fac-
ture (5), puis la transmet à l’administrateur .
2.5 Problématique
Après l’étude de sujet la majorité des problèmes constatés lors de la vi-
sualisations de l’utilisation du gestionnaire (existant) mis en service :
1. Logiciel mono-poste : la gestion se fait sur une seule machine.
2. Données non-sécurisées
3. Stock non-inventorié : tel que les pièces de rechange des voitures,
les meubles, les produits alimentaires,les produits électroniques.
4. Erreurs de gestion : le logiciel provoque des erreurs alors qu’il est
sensé en résoudre
5. Gestionnaire lent : le logiciel prend beaucoup de temps pour des
taches sensé être rapide à faire .
6. Gestion complexe ce qui rend le travaille difficile a gérer .
7. Prise en compte partielle des demandes.
2.6 Objectifs
L’objectif de notre approche est de satisfaire les contraintes suivantes :
1. Une sécurité accrue et efficace .
2. Enregistrement des produit achetées est bien définir leur
emplacement.
3. Suivi en temps réel des évolutions par exemple : les évolutions
des demandes, évolution des produits expédier .
4. Anticipation des besoins futures.
5. Accès simple au service.
6. Gain du temps.
7. Interaction rapide aux probable incidents.
8. Réalisation des taches sans erreurs.
14
2.7 Conclusion
Tout d’abord ce chapitre nous aura permis de bien comprendre le che-
minement des informations dans la société, de définir les postes de travail
ainsi que tout les documents liés au processus auquel nous nous intéressons.
Il nous a aussi permis de constater les défaillances au niveau de la gestion
du stock au niveau de la société. Ces défaillances nécessitent la mise en place
d’une solution de gestion de stock qui doit être en mesure de satisfaire les
objectifs citées.
Le prochaine chapitre sera consacre a l’analyse des besoins.‘
15
Chapitre 3
Analyse de besoins
3.1 Introduction
Au démarrage d’un projet, le client et les futurs utilisateurs finaux ont une
idée brute de ce qu’ils souhaitent qui peut mêler des attentes plus ou moins
précises avec des idées de conception. Les besoins analysés décrivent ce que
l’application doit faire dans l’environnement qui est le sien, les principaux
services qu’elle doit rendre (besoins fonctionnels), les exigences qualitatives
souhaitées et les contraintes sous lesquelles l’application doit s’exécuter et
être développée [11].
Ce chapitre nous permettra donc de définir les principaux besoin de notre
application, le diagramme de cas d’utilisation ainsi que le que les diagrammes
de séquence qui schématisent les actions de notre système par rapport dans
le temps.
16
3.3 Spécification des besoins
3.3.1 Les besoins fonctionnels
Cette partie présente les fonctionnalités du système. Ce sont les besoins
spécifiant un comportement d’entrée -sortie du système illustrée dans les
diagrammes de cas d’utilisation. Les besoins fonctionnels de notre système
se résument comme suit :
— La gestion des comptes des responsables
— La gestion des fournisseurs
— La gestion des factures
— La gestion du matérielle
— Le gestion des demandes d’acquisition
— Gestion des consultation des demandes
17
3.4.2 Diagramme de cas d’utilisation Général
La figure ci-dessous représente le diagramme des cas d’utilisations géné-
rale de notre système 3.4.2
18
3.4.3 Diagramme de cas d’utilisation détailler
Diagramme de cas d’utilisation (responsable)
Le diagramme de cas d’utilisation représentent le responsable est dans la
figure 3.4.3
19
Figure 3.3 – Diagramme de cas d’utilisation (magasinier)
20
Figure 3.4 – Diagramme cas d’utilisation (admin)
3.5.1 Inscription
Sommaire d’inscription :
— Titre : S’inscrire .
— But : Permet de crée un compte.
— Acteurs : Visiteur (nouveaux utilisateurs).
Pré-Conditions :
— L’utilisateur ne possède pas un compte.
21
— Le visiteur choisit d’ouvrir un nouveau compte .
— Le système affiche le formulaire d’inscription .
— Le visiteur rempli le formulaire .
— Le système vérifie que le formulaire a était rempli correctement
— Le système affiche un message que le compte a était créer et en attente
de validation .
Enchaînement alternatif :
— Si les champs ne sont pas remplis ou que la syntaxe des champs n’est
pas respecter le système affiche un message d’erreur puis réinitialise
la page du formulaire .
— Si il existe déjà un compte avec le même nom d’utilisateur le système
affiche un message qui demande a l’utilisateur d’entre un nouveau nom
d’utilisateur et réinitialise les champs du formulaire .
Poste-Condition :
Création d’un nouveau compte .
3.5.2 Authentification
Sommaire d’authentification :
— Titre : authentification .
— But : permet d’accéder a son compte .
— Acteurs : Responsable,magasinier,admin .
Pré-Conditions :
— L’utilisateur doit être en possession d’un compte .
22
— Le système affiche la page d’accueil attribuer .
Enchaînement alternatif :
— Si la BDD ne trouve pas de correspondance entre les donnes remplis
par l’utilisateur et les donnes d’aucun compte le système affiche un
message d’erreur.
Poste-Condition :
Le système affiche la page d’accueil .
Pré-Conditions :
— L’utilisateur doit être authentifier .
— L’utilisateur doit au moins avoir fait une demande .
Enchaînement alternatif :
—
Poste-Condition :
L’utilisateur consulte ses anciennes demandes .
23
3.5.4 Consulter la liste matériel
Sommaire de Consultation de la liste matériel :
— Titre : Consulter la liste matériel .
— But : s’informer du matériel disponible dans l’entrepôt .
— Acteurs : Responsable, Magasinier, Admin .
Pré-Conditions :
— L’utilisateur doit s’autentifier a son compte .
Poste-Condition :
Consultation du matériel disponible .
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
— Le matériel demander doit figurer dans la liste matériel .
24
— Le système permet a l’utilisateur de sélectionner le matériel choisi .
— L’utilisateur sélection un produit .
— A chaque sélection le système affiche un formulaire de demande lie au
produit choisi .
— L’utilisateur rempli le formulaire de la demande puis confirme .
— Le système vérifie que les champs sont rempli correctement sauve-
garde les information de la demande puis enlève le formulaire d’où
l’utilisateur peut choisir d’autre produit .
— L’utilisateur choisit de finir sa demande .
— Le système affiche la liste des produits sélectionner par l’utilisateur et
demande a l’utilisateur de confirmer sa demande .
— L’utilisateur confirme sa demande .
— Le système affiche un message de succès lance la demande et la sau-
vegarde dans la listes des demandes effectuer .
Enchaînement alternatif :
— Si les champs du formulaire ne sont pas bien rempli le système affiche
un message d’erreur et réinitialise les champs du formulaire .
— Si l’utilisateur demande un nombre supérieur a celui indiquer dans un
produit le système affiche un message d’erreur et réinitialise le champs
.
— Si l’utilisateur annule la demande avant que le système ne la lance
le système affiche un message d’échec puis dirige l’utilisateur vers la
page d’accueil .
Poste-Condition :
Effectuer une demande d’acquisition de matériel .
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
25
— Il doit y avoir au moins une demande non traiter .
Poste-Condition :
Voir la liste des demandes reçus .
Pré-Conditions :
— L’utilisateur dois s’être authentifier .
— Le stock doit être épuiser ou besoin d’un nouveau produit .
26
— Le système affiche un message de succès puis dirige l’utilisateur vers
la page d’accueil.
Enchaînement alternatif :
— Si les champs du formulaire continents des fautes (par exemple un
champs de nombre contient des caractères) le système affiche un mes-
sage d’erreur puis réinitialise les champs du formulaire
— Si l’utilisateur annule la commande avant que cette dernière ne soit
achever le système affiche un message d’échec puis dirige l’utilisateur
vers la page d’accueil
Poste-Condition :
Effectuer une commande au profil de l’entrepôt de la société mère .
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
— La facture doit être vérifier (ne contient aucune erreur ou produit
manquant) .
27
Enchaînement alternatif :
— Si le formulaire contient une ou plusieurs erreurs le système affiche un
message d’erreur et réinitialise les champs du formulaire .
— Si l’utilisateur annule la tache avant qu’elle ne soit achever le sys-
tème affiche un message d’échec puis dirige l’utilisateur vers la page
d’accueil .
Poste-Condition :
Ajout d’une facture .
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
Poste-Condition :
Ajout d’un fournisseur .
28
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
Enchaînement alternatif :
— Si les champs du formulaire d’ajout contiennent des erreurs le système
affiche un message d’erreur et réinitialise le formulaire
— Si les modifications des informations d’un produit contiennent des
erreurs le système affiche un message d’erreur puis demande a l’utili-
sateur de corriger les erreurs .
— Si l’utilisateur décide d’annuler une tache avant qu’elle ne soit achever
le système affiche un message d’échec et dirige l’utilisateur vers la page
d’accueil .
29
Poste-Condition :
Mise a jour la liste du matériel .
Pré-Conditions
— L’utilisateur doit être authentifier en tant que Admin .
30
Enchaînement alternatif :
— Si l’utilisateur décide d’annuler la validation d’un compte avant que
la tache soit accomplie le système marque l’échec de l’action par un
message puis dirige l’utilisateur vers la liste des comptes .
— Si l’utilisateur décide d’annuler la suppression d’un compte avant que
la tache soit accomplie le système marque l’échec de l’action par un
message puis dirige l’utilisateur vers la liste des comptes .
Poste-Condition :
Gestion des comptes des utilisateurs .
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
Poste-Condition :
Liste des fournisseurs mise a jour .
31
Pré-Conditions :
— L’utilisateur doit s’être authentifier .
Poste-Condition :
Les factures sont gérer .
32
3.6 Diagrammes De Séquences
3.6.1 Définition
Un diagramme de séquences est un diagramme d’interaction qui expose
en détail la façon dont les opérations sont effectuées : quels messages sont
envoyés et quand ils le sont. Les diagrammes de séquences sont organisés
en fonction du temps qui s’écoule au fur et à mesure que nous parcourons
la page. Les objets impliqués dans l’opération sont répertoriés de gauche à
droite en fonction du moment où ils prennent part dans la séquence [12].
33
Figure 3.5 – Diagramme de séquence Inscription
34
Figure 3.6 – Diagramme de séquence Authentification
35
Figure 3.7 – Diagramme de séquence Consulter demandes matériel
36
Figure 3.8 – Diagramme de séquence Effectuer une demande d’acquisition
37
Figure 3.9 – Diagramme de séquence Effectuer une commande
38
Figure 3.10 – Diagramme de séquence Ajouter une facture
39
Figure 3.11 – Diagramme de séquence Modifier la liste du matériel
40
3.6.10 Diagramme de séquence "gérer les comptes"
Remarque :
Les diagramme de séquence gérer fournisseur,gérer factures est sem-
blable a celui présenter dans le diagramme suivant
41
3.7 Conclusion
Le troisième chapitre, «Analyse des besoins» nous a permis d’illustrer le
lancement du projet et cerner les besoins de notre application mobile. Ceci en
déterminant les besoins fonctionnels et non fonctionnels, puis en identifiant
des acteurs ainsi que les différents cas d’utilisations, leurs descriptions et en
fin les diagrammes de séquences.
42
Chapitre 4
Conception
4.1 Introduction
Dans ce chapitre, nous allons décrire la conception du projet.le diction-
naire de données, le diagramme de classe, les règles de gestion ainsi que le
modèle relationnel.
43
4.2 Dictionnaire de donnée
Le dictionnaire de données est un tableau qui regroupe toutes les données
de base,c’est la base pour réalisation du diagramme de classe.
44
4.3 Diagramme de classe
4.3.1 Définition de diagramme de classe
Le diagramme de classes est un schéma utilisé en génie logiciel pour pré-
senter les classes et les interfaces des systèmes ainsi que leurs relations. Ce
diagramme fait partie de la partie statique d’UML, ne s’intéressant pas aux
aspects temporels et dynamiques.
45
4.4 Les règles de gestion
Le diagramme de classe général présenté dans la figure se base sur les
règles de gestion suivantes :
— Le Responsable et Magasinier sont des User.
— L’Admin peut être Magasinier.
— L’Admin peut gérer plusieurs comptes et plusieurs fournisseurs.
— Un Responsable peut faire plusieurs demandes. Une demande ne peut
être faite que par un seul Responsable.
— Un Responsable peut consulter plusieurs Matériel. Un matériel peut
être consultée par plusieurs responsables.
— Un Responsable peut consulter plusieurs demandes. Une demande
peut être consultée par plusieurs responsables.
— Un Magasinier peut gérer un seul Hangar. Un Hangar peut être géré
par plusieurs magasiniers.
— Un magasinier peut gérer plusieurs catégories. Une catégorie peut être
gérée par un seul magasinier.
— Une catégorie comprend plusieurs Matériels. Un matériel fait partie
d’une seule catégorie.
— Un magasinier peut faire plusieurs commandes. Une commande est
faite par un seul magasinier.
— Un Magasinier peut valider plusieurs demandes.Une demande peut
être validée par un seul Magasinier.
— Un Magasinier peut ajouter plusieurs fournisseurs. Un fournisseur
peut être ajouter par un seul Magasinier.
— Une commande concerne une demande validé par le magasinier et
envoyée a un fournisseur.
46
4.5 Passage du modèle conceptuel au modèle
relationnel
Le modèle logique de données relationnel est basé sur une organisation des
données sous forme de tables (c’est une manière de modéliser les informations
contenues dans la base de données). Pour passer du diagramme de classes
UML au modèle relationnel, il existe un ensemble de règles à respecter :
4.5.1 Règle 1
Traduction des classes :
— Une classe devient une table.
— Les attributs de la classe deviennent les attributs de la table.
— L’identifiant devient une clé primaire.
4.5.2 Règle 2
Traduction d’une relation d’héritage :
— Créer une table pour chaque sous type.
— Chaque table se fait en migrant la clé de la classe mère vers les classes
filles et ajouter des attributs génériques et d’attributs spécifiques.
4.5.3 Règle 3
Traduction d’une association 1-N :
— Incluant la clé étrangère dans la relation dont la multiplicité maximale
est la clé primaire de l’autre relation.
4.5.4 Règle 4
Traduction d’une association M-N :
— Créer une nouvelle relation dans laquelle les clés primaires des rela-
tions participantes sont les clés étrangères de la nouvelle relation.
— Les attributs de la classe d’association sont insérés dans cette nouvelle
relation si nécessaire.
47
4.6 Modèle logique de données relationnel
— Admin (idUser)
— Responsable (idUser)
— Magasinier (idUser,#idHangar)
— Materiel (idMat,nomMat,quantiteMat,colorMat,dateAJMAT, #idResponsable,#idC)
— Catégorie (idC ,nomC)
— Demande (idD ,nomMAT ,quantitéNéc,colorMat,dateD,isvalide,
#idResponsable,#idMat)
— Consulter (#idC,#idUser)
— Commande (idCO,dateCO,#idMagazinier)
— Fournisseur (idF,NomF,PhnF,emailF,Facture)
— Hangar(idH,localisationH)
Remarque :
Les premiers attributs de chaque classe sont des clés primaires, et les
clés étrangères commencent par un #.
4.7 Conclusion
Dans ce chapitre nous avons présenté la modélisation de notre application
en utilisant Le diagramme de classe, ce qui permettra dans le chapitre suivant
d’aborder la phase d’implémentation.
48
Chapitre 5
Implémentation
5.1 Introduction
Dans ce chapitre, nous allons parlé des différents moyens logiciels que nous
avons utilisés pour compléter l’application, et nous avons également détaillé
des captures d’écran pour expliquer les fonctionnalités de l’application étape
par étape.
UMLET est un outil UML gratuit et open source avec une interface uti-
lisateur simple : dessinez rapidement des diagrammes UML, créez des dia-
grammes de séquence et d’activité à partir de texte brut, exportez des dia-
grammes vers eps, pdf, jpg, svg et presse-papiers, partagez des diagrammes
à l’aide d’Eclipse. [6]
49
Outil de développement
Android studio
Flutter
50
Google chrome emulator
Chrome est un navigateur web développé par Google basé sur le projet
open source Chromium. Google Chrome lui-même n’est pas open-source, les
binaires officiels sont eux soumis à un contrat de licence utilisateur final
(CLUF). [4]
Firebase
google auth
51
Firestore
Github
Figma
Figma est une application web d’édition graphique qui permet le partage
en temps réel sur le même fichier.
52
Langages de développement
NOSQL(Not only Sql)
Dart
53
5.3 Les interfaces de l’application
5.3.1 Authentification
C’est l’interface qui permet aux utilisateurs de se connecter a l’applica-
tion,en saisissant leur nom et le mot de passe.
Les champs d’entrée sont sécurisés a l’aide d’instructions SQL préparées et
le mot de passe est haché puis comparé a son équivalent dans la base de
données pour vérifier et authentifier l’utilisateur concerné.
54
5.3.2 Interface d’inscription
Cette interface a été spécialement conçue pour les utilisateur qui utilisent
l’application pour la première fois,en saisissant leur nom et e-mail et mot de
passe.
55
5.3.3 Interface MainPageAdmin
La figure ci-dessus représente l’interface dirigée pour l’administrateur.dans
cette interface on peut accéder au comptes des utilisateurs et des fournisseurs
et les gérer,consulter les catégories et les items disponibles,et aussi valider les
items.
56
5.3.4 Interface gérer utilisateurs
L’admin peut accédé à cette interface en sélectionnant un utilisateur ins-
crit .
57
5.3.5 Interface pour valider les items
Dans cette interface L’admin et le magasinier peuvent consulter les de-
mandes de matériel et peuvent les valider.
58
5.3.6 Interface Items déjà validés
L’admin et le magasinier peuvent consulter les demandes qu’ils ont déjà
validé.
59
5.3.7 Interface Catégories
Cette interface représente les catégories disponibles dans le hangar, on
peut ajouter des nouvelles catégories si nécessaire.
60
5.3.8 Interface Liste des fournisseurs
Cette interface représente la liste des fournisseurs ajoutés par le magasi-
nier et L’admin.
61
5.3.9 Interface Liste des factures
Cette interface représente la liste des factures ajoutées par le magasinier
et l’admin.
62
5.3.10 L’interface MainPageEmployé
La figure ci-dessus représente la page d’accueil après l’authentification qui
représente les catégories des matérielles.L’employé peut rechercher un item
par son nom.il peut aussi voir les catégories qui a déjà consulter en cliquant
sur récent.
63
5.3.11 L’interface items de catégorie
Cette interface représente les items d’une catégorie.
64
5.3.12 L’interface demander un matériel
Dans cette interface le responsable doit remplir les données pour effectuer
la demande matériel.
65
5.3.13 Interface Historique de demandes de matériel
Le Responsable peut voir l’historique de toutes ces demandes matériel.
66
5.3.14 L’interface Profil
cette interface représente toutes les informations nécessaires de profil.
67
5.3.15 L’interface track item
Cette interface nous montre l’étape atteint par l’item.
68
5.3.16 Interface de Notifications
Cette interface montre comment tout les utilisateurs de l’application re-
çoivent des notifications, si une nouvelle catégorie ou un item est ajouté.
69
5.3.17 Interface Ajouter une nouvelle catégorie
Cette interface doit être remplie par l’utilisateur pour ajouter un nouvel
catégorie.
70
5.3.18 Interface Ajouter un nouveau item
Cette interface doit être remplie par l’utilisateur pour ajouter un nouveau
item.
71
Conclusion Générale
Les applications mobiles sont de plus en plus utilisées dans les entreprises.
Elles permettent d’y la communication mais aussi de faciliter beaucoup de
taches au sien de cette dernière .
Durant notre projet, le travail a été organisé en cinq étapes : nous avons
commencé par nous familiariser avec l’organisme d’accueil ainsi que le contexte
de notre projet. En second lieu, il a fallu comprendre comment l’information
et les documents circulaient entre les différents postes de travail au sein de
l’entreprise. Grâce à l’étude de l’existant, nous avons réussi à cerner claire-
ment la problématique que rencontre la société et à fixer l’objectif à atteindre.
Une fois ce dernier déterminé, nous nous sommes dirigé vers la spécification
générale de l’application future à l’aide des diagrammes des cas d’utilisation
et diagrammes de séquences. Lors de la quatrième phase, nous avons modélisé
la structure de l’application à l’aide du diagramme de classe. Tout cela nous
a permis d’aboutir à la réalisation de l’application, en utilisant des outils et
des langages de programmation divers.
72
découvrir de nouveaux langages tel que "Dart" et la bibliothèque "FLUT-
TER". Enfin, ce fut un moyen d’acquérir une expérience en entreprise et de
se familiariser avec la vie professionnelle.
Nous avons atteint notre objectif initial qui était de développer une ap-
plication mobile pour la direction de conception et développement de L’EN-
AGEO, permettant la gestion des stock d’une manière plus simple et plus
efficace, cependant et en vue probable évolution future, nous avons comme
perspective d’améliorer notre application en ajoutant une discussion instan-
tanée entre les diffèrent utilisateur de l’application, Ceci faciliterait encore
plus la communication entre les différent utilisateur de l’application
de moderniser les méthodes d’authentification et de connections aux compte
par exemple permettre aux utilisateur de se connecter a leurs compte a l’aide
de l’empreinte digitale ce qui permettra de sécuriser encore plus les données
de l’application.
En fin, nous envisageons de rajouter la technologie nommé le Mapping pour
renforcer notre application avec une map pour tracker nos items en temps
réel.
73
Bibliographie
74