UNIVERSITE DE NGOZI FACULTE D’INFORMATIQUE ‘’Conception et Réalisation d’une application de gestion de stock des produits commerciaux : Cas de l’Office National des Télécommunications « ONATEL » NGOZI Présenté par : NIKUZE Bendrix & NKURUNZIZA Bellard Sous l’encadrement de : Msc. BUCANAYANDI Pascal Rapport de stage effectué au sein de L’Office National des Télécommunications « ONATEL » de NGOZI du 02 juillet au 02 septembre 2019 présenté et défendu publiquement en vue de l’obtention du grade de Bachelier en Informatique. Membre du Jury : Président du Jury : MFURA Armand Assesseur : MUTAGORAMA T Samedi, le 25/04/2020, à 9h SS Ngozi I DEDICACES 1 A Dieu tout puissant ; A mon regretté cher père ; A ma très chère mère ; A mon frère et mes sœurs ; A mes oncles et tantes ; A mes cousins et cousines ; A mes camarades, amis et connaissances ; A tous ceux qui m'ont soutenu ; Je dédie ce travail. NIKUZE Bendrix II DEDICACES 2 A Dieu tout puissant ; A mon cher père ; A ma chère mère ; A mes frères et sœurs ; A mes oncles et tantes ; A mes cousins et cousines ; A mes camarades, amis et connaissances ; A tous ceux qui m'ont soutenu ; Je dédie ce travail. NKURUNZIZA Bellard III Remerciements Nos remerciements s’adressent à Dieu tout puissant qui nous a protégés tout au long de notre cursus académique. Nos profonds remerciements vont également à nos chers parents pour leur soutient et leurs sacrifices consentis depuis l’école primaire jusqu’à ce jour. Au terme de ce modeste travail, nous tenons à remercier chaleureusement et respectivement tous les enseignants depuis l’école primaire jusqu’à l’Université et à ceux qui ont contribué de près ou de loin à la réalisation de ce projet de fin d’étude, à savoir notre encadreur et doyen de la faculté d’informatique Mr. BUCANAYANDI Pascal. Nous tenons à remercier le Directeur General de l’ONATEL pour nous avoir acceptés comme stagiaire et tout le personnel de l’ONATEL NGOZI pour nous avoir accueillis et aidés dans recherche. Nous remercions également nos amis et connaissances et tous ceux qui nous ont soutenu tant moralement que financièrement pour l’achèvement de notre cursus académique. Nous ne pouvons pas terminer sans toutefois remercier tous nos camarades de classe, nous disons merci. A tous ceux qui n’ont pas été cités, nous disons tout de même merci. IV Liste des figures V Sigles et abréviations BDD : Base de données. CET : Centre d’étude technique. HTML: Hyper Text Markup Language. HTTP : Hyper Text Transfert Protocol. IDE : Integrated Developement Environnement. JDK : Java Développement Kit. JRE : Java Runtime Environnement d’exécution. JSP : Java Server Pages. JVM: Java Virtual Machine. MCD : Modèle conceptuel des données. MCT : Modèle conceptuel des traitements. MLD : Modèle logique des données. MOPT : Modèle opérationnel des traitements. MOT : Modèle organisationnel des traitements. MPD : Modèle physique des données. MySQL: Mystructured Query Language. ONATEL : Office National des Télécommunications PHP : PreHypertext Processor. SGBD : gestion de base de données. SI : Système d’information. SQL : Structued Query Language. URL : Uniforme Ressource Locator VI Tables des matières DEDICACES 1 ............................................................................................................................................. I DEDICACES 2 ............................................................................................................................................ II Remerciements ...................................................................................................................................... III Liste des figures ...................................................................................................................................... IV Sigles et abréviations............................................................................................................................... V Tables des matières ................................................................................................................................ VI CHAPITRE I : INTRODOCTION GENERALE ................................................................................................ 1 I.1. INTRODUCTION ............................................................................................................................. 1 I.2. PROBLEMATIQUE.......................................................................................................................... 1 I.3. OBJECTIFS DE L'ETUDE................................................................................................................... 1 a. Objectif global.............................................................................................................................. 1 b. Objectif spécifique....................................................................................................................... 1 I.4. INTERET DE LA PROBLEMATIQUE .................................................................................................. 2 a. Intérêt pour l’ONATEL ................................................................................................................. 2 b. Intérêt Académique..................................................................................................................... 2 c. Intérêt Personnel ......................................................................................................................... 2 I.5. DELIMITATION DU SUJET ............................................................................................................... 2 I.6. ARTICULATION DU TRAVAIL .......................................................................................................... 2 CHAPITRE II : PRESENTATION DE L’ONATEL ET DEROULEMENT DE STAGE ............................................ 4 II.1. PRESENTATION DE L’ONATEL ....................................................................................................... 4 a. Historique .................................................................................................................................... 4 II.2. Organigramme.............................................................................................................................. 5 a. administration ............................................................................................................................. 6 II.3. DEROULEMENT DE STAGE ............................................................................................................ 6 II.4. ANALYSE, CRITIQUE DE L’EXISTANT ET LA SOLUTION PROPOSEE .............................................. 7 a. analyse de l’existant ................................................................................................................... 7 b. Critique de l’existant ................................................................................................................... 7 c. Proposition des solutions............................................................................................................. 7 CHAPITRE III : CONCEPTION ET MODELISATION DU NOUVEAU SYSTEME ............................................. 8 CHAPITRE III : CONCEPTION ET MODELISATION DU NOUVEAU SYSTEME ............................................. 8 III.1. Introduction ................................................................................................................................. 8 III.2. UML ............................................................................................................................................. 8 VII a) Diagrammes................................................................................................................................. 9 b) Diagrammes de cas d’utilisation ............................................................................................... 10 CHAP IV : REALISATION D’UNE APPLICATION ....................................................................................... 13 IV.1. Introduction .............................................................................................................................. 13 IV.2. Environnement de développement .......................................................................................... 13 IV.2.1. Environnement matériel .................................................................................................... 13 IV.2.2. Environnement logiciel et Choix des outils utilisés ............................................................ 13 IV.2.2.1. Java SE ......................................................................................................................... 14 IV.2.2.2. NetBeans ..................................................................................................................... 14 IV.2.2.3. StarUML....................................................................................................................... 15 IV.2.2.4. WampServer................................................................................................................ 15 IV.3. PRESENTATION DEL’APPLICATION ............................................................................................ 15 IV.3.1. Démarrage de l’application ................................................................................................ 15 1 CHAPITRE I : INTRODOCTION GENERALE I.1. INTRODUCTION Dans le but d’approfondir notre connaissance théorique et pratique acquises à l’Université de NGOZI dans la faculté d’informatique, il est ordonné pour chaque étudiant de la troisième année de baccalauréat de faire un stage de fin d’études qui consiste à renforcer les connaissances acquises en classe. Raison pour laquelle nous avons eu le privilégié de faire notre stage dans l’une des institutions se situant au territoire Burundais qui est l’ONATEL NGOZI, et ce dernier nous a bien accueillis et permis d’y passer deux mois en franche collaboration. Le stage apparaît comme un élément très important dans la mesure où il permet d’adapter le stagiaire avec son futur environnement (le marché du travail), de lui offrir une possibilité d’élargir ses connaissances théoriques que pratiques avec la réalité du terrain. I.2. PROBLEMATIQUE L’Office National des Télécommunications « ONATEL » est une Entreprise Publique à caractère Industriel et Commercial. Au cours de ce stage, nous avons passé dans plusieurs services comme : service d’énergie, service de commutation, service de vente, etc. Le service de vente utilise un ordinateur pour enregistrer les biens vendus et fournir des factures. Mais pour apporter les résultats de l’inventaire à la direction commercial et exploitation, ils utilisent des clés USB mais encore cette dernière ne peut pas superviser en temps réel l’état de vente des produits. C’est de ce fait qu’on nous a proposé de concevoir une application qui va aider ce service de gérer leurs activités moyennant une base de données et qui va faciliter la tâche aux utilisateurs. I.3. OBJECTIFS DU SUJETS a. Objectif global L’objectif global de notre travail est de concevoir et réaliser une application de gestion de stocks des produits commerciaux. b. Objectifs spécifiques Les objectifs spécifiques sont les suivants : Faciliter la tâche d’enregistrement des produits à vendre Faciliter le suivi ou le control de vente Permettre l’ajout d’un produit Permettre la suppression d’un produit Permettre la modification d’un produit 2 I.4. INTERET DU SUJET a. Intérêt pour l’ONATEL Nous espérons que ce travail sera bénéfique pour l’ONATEL dans la gestion de vente de leurs produits en leur permettant de gagner en temps et dans l’efficacité. b. Intérêt Académique Ce sujet s’inscrit dans d’autres travaux de recherches universitaires réalisés par les étudiants. Ainsi, il sera une source de documentation supplémentaire pour ceux qui souhaiteraient effectuer des recherches dans le domaine de programmation. c. Intérêt Personnel La mise en place de ce travail, nous a permis d’améliorer nos connaissances théoriques et pratiques acquises pendant trois ans à l’université dans le domaine de programmation, de nous familiariser aux outils informatiques, de maitriser les techniques de rédaction d’un travail scientifique et de nous améliorer dans le développement des applications Java. I.5. DELIMITATION DU SUJET Notre sujet se limite à la conception d’une application qui servira à la gestion de vente des produits commerciaux de l’ONATEL. I.6. ARTICULATION DU TRAVAIL Notre travail intitulé « CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE STOCK DES PRODUITS COMMERCIAUX : Cas de l’ONATEL Ngozi est articulé sur quatre chapitres : Le premier chapitre est l’introduction générale qui est une brève présentation de notre travail ; Le second chapitre est la présentation de l’ONATEL Ngozi qui est l’endroit de déroulement de nos stages durant ces deux mois avec une présentation des activités faites ; Le troisième chapitre est intitulé conception et modélisation du nouveau système qui montre une étude qui nous a servi à faire de la mise en place de cette application ; 3 Le dernier chapitre présente la réalisation de l’application qui va nous montrer les différents outils matériels et logiciels utilisés et qui va également nous présenter les différentes interfaces de notre application et enfin nous allons clôturer notre travail par une conclusion générale et recommandations. 4 CHAPITRE II : PRESENTATION DE L’ONATEL ET DEROULEMENT DE STAGE II.1. PRESENTATION DE L’ONATEL a. Historique [1] L’Office National des Télécommunications « ONATEL » est une Entreprise Publique à caractère Industriel et Commercial. Créé depuis 1979 par le Décret Présidentiel N°100/146 du 8 Novembre de la même année, l’ONATEL est devenu une Entreprise Citoyenne et Innovante se penchant sur le social que le commercial car elle participe à la création de l’emploi et au soutien des personnes vulnérables. L’ONATEL a pour objet la gestion des télécommunications par transmission des messages de tous genres par le support matériel : fils, câbles ou radio par l’exploitation de la téléphonie fixe, la téléphonie mobile, l’internet et la transmission des données. Par gestion des Télécommunications, la mission est de : Fournir des prestations, des moyens, des outils de bonne qualité ; Instaurer des conditions de travail qui puissent permettre à la clientèle de travailler efficacement dans un environnement satisfaisant et stimulant ; Etablir un moyen de communication entre individus jusqu’aux coins les plus reculés du pays et à l’international. Par sa devise « d’être citoyenne et innovante », avec le progrès des Technologies de l’Information et de la Communication, est apparu sur le marché la téléphonie mobile vers la fin des années 2005 puisque l’ONATEL n’offrait que les services de la téléphonie fixe dont il détient le monopole depuis 1979 jusqu’à nos jours. Aujourd’hui, la clientèle a la chance de la diversité des services qu’offre l’ONATEL comme : Des bonnes conditions d’abonnement à la téléphonie fixe, à la téléphonie mobile ONAMOB, à la connexion Internet ADSL2+, à la connexion Internet WIMAX, à la connexion Internet à fibre optique MAN mais aussi à la Transmission des données ; Avec l’année 2018, l’ONATEL entre dans l’ère de la grande Innovation avec l’extension et la modernisation du réseau mobile ONAMOB en la dotant des nouvelles technologies comprenant la 3ème Génération (3G) et la 4ème Génération (4G LTE). 5 II.2. Organigramme [2] Ministre des TICS Conseil d’administration Direction Générale Régions Secrétariat Audit interne Bureau des conseillers Direction technique Direction administrative et financière Direction Commercial et Exploitation SERVICE S.I SERVICE| FINANCE SERVICE CLIENT SERVICE COMPTABILITE SERVICE MARKERTING SERVICE COMMUTATION SERVICE TRANSMISSION SERVICE LOGISTIQUE SERVICE VENTE SERVICE SEMO SERVICE CONTROLE DE GESTION SERVICE BAGT SERVICE RH SERVICE EBE SERVICE INTERNET LIGNES ET CABLE 6 a. administration L’ONATEL est un établissement public doté d’une personnalité morale et physique et est placé sous la tutelle administrative du Ministre ayant en charges le Ministère de la Jeunesse, des Postes et des Technologies de l’Information. Après le Ministre de la Jeunesse, des Postes, des Technologies de l’Information, il y a le Conseil d’Administration suivi du Comité de Direction Le Comité de Direction de l’ONATEL comprend le Directeur Général, le Directeur Commercial et d’Exploitation, le Directeur Financier et d’Administration et enfin le Directeur Technique. Tout ceci se résume dans la hiérarchie ici-bas : 1. LE MINISTERE DE LA JEUNESSE, DES POSTES ET DES TECHNOLOGIES DE L’INFORMATION ; 2. LE CONSEIL D’ADMINISTRATION ; 3. LE COMITE DE DIRECTION. II.3. DEROULEMENT DE STAGE Lors de notre stage, nous avons passé dans différents services ; comme le service d’Energie, de Commutation et de Vente : Service d’Energie : dans ce service on nous a montré les différentes sources d’énergie qui entrent en jeu dans l’alimentation électrique des équipements ; Service de Commutation : on nous a montré le fonctionnement de quelques équipements qui sont utilisés dans la commutation et la transmission Service de Vente : là on a observé les différents produits qu’ils ont à vendre : Des cartes Sim, Des cartes de recharge, Des Téléphones mobiles, des Modem, des Câble et connecteurs ; des Routeurs, Les appareils téléphoniques fixes ; des cartes prépayées pour la téléphonie fixe, etc. ……………… 7 ANALYSE, CRITIQUE DE L’EXISTANT ET LA SOLUTION PROPOSEE II.4. a. Analyse de l’existant Dans le monde d’aujourd’hui, la technologie de l’information a une grande importance qu’on ne peut pas ignorer. Comme nous l’avons déjà décrit dans la problématique, Le service de vente utilise un ordinateur pour enregistrer les biens vendus, établir des factures et contrôler l’état du stock. Mais pour apporter les résultats de l’inventaire à la direction commerciale et exploitation, ils utilisent des clés USB mais aussi la direction commerciale ne peut pas superviser en temps réel la vente des produits et le contenu du stock. b. Critique de l’existant Elle consiste à évaluer le fonctionnement du système existant afin de dégager les défauts et les conséquences qui en découlent. Le contrôle de l’état du stock, l’établissement des listes des besoins en matériel, et toute autre opération en rapport avec la gestion du stock sont fait par un logiciel de Micosoft Office \Excel. Cela ne facilite pas la supervision de la direction commerciale parce que le rapport est donné sur un clé USB ce qui peut causer des problèmes suivants tels que : Dommage de fichier Pas de sécurité de données Perte du temps Problème d’archivage Pas de contrôle en temps réel des activités c. Proposition des solutions Afin d’apporter une solution aux problèmes ci-dessus indiqués, nous proposons une application de gestion de stock des produits commerciaux afin d’améliorer le système existant. Le nouveau système permettra notamment de : Enregistrer des entrées et sorties de stock ; Faciliter le contrôle de l’état du stock ; Faciliter la supervision à la direction commerciale ; Consulter l’historique des opérations ; Sécuriser les informations ; Etc. 8 CHAPITRE III : CONCEPTION DU NOUVEAU SYSTEME III.1. Introduction [3] Dans la conception d’un système d’information, la modélisation des données est l’analyse et la conception de l’information contenue dans le système. La modélisation des données est une représentation abstraite, dans le sens où les valeurs des données individuelles observées sont ignorées au profit de la structure, des relations, des noms et des formats des données pertinentes, même si une liste des valeurs valides est souvent enregistrée. Grâce au modèle, il est possible de représenter simplement un problème, un concept et le simuler. La modélisation comporte trois composantes, à savoir : (i) L’analyse, c’est-à-dire l’étude du problème, (ii) La conception, soit la mise au point d’une solution au problème, (iii) Le modèle constitue ainsi une représentation possible du système selon un point de vue donné. La modélisation d’un système d’information implique qu’il faut choisir le modèle de développement logiciel mais aussi l’atelier de génie logiciel. Dans ce modèle, les étapes retenues sont l’expression de besoins, l’implémentation et le codage. Par ailleurs, l’atelier de génie logiciel Visual paradigme for UML a été utilisé comme outil de modélisation, notamment pour la représentation des diagrammes UML. La modélisation d’un système d’information repose également sur la méthode ou le langage à suivre. Ainsi, le langage UML (Unified Modeling Language) a été choisi pour notre projet. III.2. UML [4] Le Langage de Modélisation Unifié, de l'anglais Unified Modeling Language (UML), est un langage de modélisation graphique à base de pictogrammes conçu pour fournir une méthode normalisée pour visualiser la conception d'un système. Il est couramment utilisé en développement logiciel et en conception orientée objet. UML est un moyen d'exprimer des modèles objet en faisant abstraction de leur implémentation, c'est-à-dire que le modèle fourni par UML est valable pour n'importe quel langage de programmation. UML est un langage qui s'appuie sur un méta-modèle, un modèle de plus haut niveau qui définit les éléments d'UML (les concepts utilisables) et leur sémantique (leur signification et leur mode d'utilisation). Le méta-modèle permet de se placer à un niveau d'abstraction supérieur car il est étudié pour être plus générique que le modèle qu'il permet de construire. Le méta-modèle d'UML en fait un langage formel possédant les caractéristiques suivantes : Un langage sans ambiguïtés Un langage universel pouvant servir de support pour tout langage orienté objet Un moyen de définir la structure d'un programme Une représentation visuelle permettant la communication entre acteurs d'un même projet Une notation graphique simple, compréhensible même par des non informaticiens 9 Le méta-modèle permet de donner des bases solides et rigoureuses à ce langage graphique, dont les représentations graphiques ne sont là que pour véhiculer des concepts de réalisation. a) Diagrammes [5] Les diagrammes sont dépendants hiérarchiquement et se complètent, de façon à permettre la modélisation d'un projet tout au long de son cycle de vie. Il en existe quatorze depuis UML 2.3. Diagrammes de structure ou diagrammes statiques Les diagrammes de structure (structure diagrams) ou diagrammes statiques (static diagrams) rassemblent : Diagramme de classes (class diagram) : représentation des classes intervenant dans le système. Diagramme d'objets (object diagram) : représentation des instances de classes (objets) utilisées dans le système. Diagramme de composants (component diagram) : représentation des composants du système d'un point de vue physique, tels qu'ils sont mis en oeuvre (fichiers, bibliothèques, bases de données…) Diagramme de déploiement (deployment diagram) : représentation des éléments matériels (ordinateurs, périphériques, réseaux, systèmes de stockage…) et la manière dont les composants du système sont répartis sur ces éléments matériels et interagissent entre eux. Diagramme des paquets (package diagram) : représentation des dépendances entre les paquets (un paquet étant un conteneur logique permettant de regrouper et d'organiser les éléments dans le modèle UML), c'est-à-dire entre les ensembles de définitions. Diagramme de structure composite (composite structure diagram) : représentation sous forme de boîte blanche les relations entre composants d'une classe (depuis UML 2.x). Diagramme de profils (profile diagram) : spécialisation et personnalisation pour un domaine particulier d'un méta-modèle de référence d'UML (depuis UML 2.2). Diagrammes de comportement Les diagrammes de comportement (behavior diagrams) rassemblent : Diagramme des cas d'utilisation (use-case diagram) : représentation des possibilités d'interaction entre le système et les acteurs (intervenants 9extérieurs au système), c'està-dire de toutes les fonctionnalités que doit fournir le système. Diagramme états-transitions (state machine diagram) : représentation sous forme de machine à états finis le comportement du système ou de ses composants. Diagramme d'activité (activity diagram) : représentation sous forme de flux ou d'enchaînement d'activités le comportement du système ou de ses composants. 10 Diagrammes d'interaction ou diagrammes dynamiques Les diagrammes d'interaction (interaction diagrams) ou diagrammes dynamiques (dynamic diagrams) rassemblent : Diagramme de séquence (sequence diagram) : représentation de façon séquentielle du déroulement des traitements et des interactions entre les éléments du système et/ou de ses acteurs. Diagramme de communication (communication diagram) : représentation de façon simplifiée d'un diagramme de séquence se concentrant sur les échanges de messages entre les objets (depuis UML 2.x). Diagramme global d'interaction (interaction overview diagram) : représentation des enchaînements possibles entre les scénarios préalablement identifiés sous forme de diagrammes de séquences (variante du diagramme d'activité) (depuis UML 2.x). Diagramme de temps (timing diagram) : représentation des variations d'une donnée au cours du temps (depuis UML 2.3). Même si nous avons plusieurs diagrammes, dans notre travail, nous avons préféré d’utiliser deux diagramme qui sont le diagramme de cas d’utilisation et le diagramme de classe. b) Diagrammes de cas d’utilisation [6] Les diagrammes de cas d'utilisation sont des diagrammes UML utilisés pour donner une vision globale du comportement fonctionnel d'un système logiciel. Ils sont utiles pour des présentations auprès de la direction ou des acteurs d'un projet, mais pour le développement, les cas d'utilisation sont plus appropriés. Un cas d'utilisation représente une unité discrète d'interaction entre un utilisateur (humain ou machine) et un système. Il est une unité significative de travail. Dans un diagramme de cas d'utilisation, les utilisateurs sont appelés acteurs (actors), ils interagissent avec les cas d'utilisation (use cases). UML définit une notation graphique pour représenter les cas d'utilisation, cette notation est appelée diagramme de cas d'utilisation. UML ne définit pas de standard pour la forme écrite de ces cas d'utilisation, et en conséquence il est aisé de croire que cette notation graphique suffit à elle seule pour décrire la nature d'un cas d'utilisation. Dans les faits, une notation graphique peut seulement donner une vue générale simplifiée d'un cas ou d'un ensemble de cas d'utilisation. Les diagrammes de cas d'utilisation sont souvent confondus avec les cas d'utilisation. Bien que ces deux concepts soient reliés, les cas d'utilisation sont bien plus détaillés que les diagrammes de cas d'utilisation. 10 Cette figure représente le diagramme de cas d’utilisation de notre système, nous y retrouvons comme convenu les acteurs principaux et leurs rôles. 11 Figure 3. Diagramme de cas d’utilisation III.3. Diagramme de classes (Class Diagram) a. Introduction [7] Le diagramme de classes est considéré comme le plus important de la modélisation orientée objet, il est le seul obligatoire lors d'une telle modélisation. Alors que le diagramme de cas d'utilisation montre un système du point de vue des acteurs, le diagramme de classes en montre la structure interne. Il permet de fournir une représentation abstraite des objets du système qui vont interagir pour réaliser les cas d'utilisation. Il est important de noter qu'un même objet peut très bien intervenir dans la réalisation de plusieurs cas d'utilisation. Les cas d'utilisation ne réalisent donc pas une partition des classes du diagramme de classes. Un diagramme de classes n'est donc pas adapté (sauf cas particulier) pour détailler, décomposer, ou illustrer la réalisation d'un cas d'utilisation particulier. Il s'agit d'une vue statique, car on ne tient pas compte du facteur temporel dans le comportement du système. Le diagramme de classes modélise les concepts du domaine d'application ainsi que les concepts internes créés de toutes pièces dans le cadre de l'implémentation d'une application. Chaque langage de Programmation orienté objet donne un moyen spécifique d'implémenter le paradigme objet (pointeurs ou pas, héritage multiple ou pas, etc.), mais le diagramme de classes permet de modéliser les classes du système et leurs relations indépendamment d'un langage de programmation particulier. Les principaux éléments de cette vue statique sont les classes et leurs relations : association, généralisation et plusieurs types de dépendances, telles que la réalisation et l'utilisation. 12 13 CHAP IV : REALISATION D’UNE APPLICATION IV.1. Introduction Le but de ce chapitre est de présenter les interfaces de notre application que nous avons réalisée de gestion de stock des produits commerciaux de l’ONATEL Ngozi. Pour arriver à ce produit, nous avons utilisé UML comme langage de modélisation, MySQL comme système de gestion de base de données et le Java SE comme langage de programmation. IV.2. Environnement de développement IV.2.1. Environnement matériel Pendant les processus de développement et de test, nous avons utilisé un ordinateur portable avec les spécifications suivantes : Fabricant : HP. Modèle : Inspiron n5110. Processeur : AMD A10_4600M APU. Mémoire : 4,00 Go de RAM. Type de système : Windows 10, 64bits IV.2.2. Environnement logiciel et Choix des outils utilisés Dans le développement de notre application, nous avons utilisé les outils suivants : Java Standard Edition (abrégé en Java SE) comme langage de programmation ; NetBeans version 8.2 comme environnement de développement intégré (IDE : Integrated development environment) ; Wampserver avec son outil phpMyAdmin pour exploiter MySQLpour la gestion de la base de données ; starUml comme le logiciel pour la création des diagrammes UML ; Mysql-connector-java-5.1.46 comme pilote permettant de faire la communication entre l’application java et MySql ; Le connecteur JDBC pour établir la connexion entre l’application et le SGBD. 14 IV.2.2.1. Java SE [10] Lorsque la plupart des gens pensent au langage de programmation Java, ils pensent à l'API Java SE. L'API de Java SE fournit les fonctionnalités essentielles du langage de programmation Java. Il définit tout, des types et objets de base du langage de programmation Java aux classes de haut niveau utilisées pour la mise en réseau, la sécurité, l'accès aux bases de données, le développement de l'interface graphique et l'analyse XML. Outre l’API principale, la plate-forme Java SE est composée d’une machine virtuelle, d’outils de développement, de technologies de déploiement et d’autres bibliothèques de classes et kits d’outils couramment utilisés dans les applications de technologie Java. IV.2.2.2. NetBeans [11] Créé en 1996 sur les bases d'un projet étudiant, NetBeans est environnement de développement intégré (ou IDE) racheté par Sun Microsystèmes. Son parcours explique ainsi sa forte orientation pour le Java bien que le logiciel, qui continue à évoluer, permette également de gérer des développements en JavaScript, Python, XML, RubyC et C++ ainsi qu'en PHP et HTML5. NetBeans intègre la plupart des fonctionnalités exigées d'un IDE moderne dont, bien sûr, un éditeur de code gérant l'auto indentation et la colorisation : Gestion des systèmes de versions CVS, Subversion, Mercurial et ClearCase, Analyses en « run » et débogage, Explorateur de base de données. Édition graphique d'interfaces et de pages Web, En outre celui-ci permet la gestion des projets multilangage. Son interface se compose par défaut d'un éditeur de code, d'un navigateur de projet, de fichiers ou de services, d'un navigateur de sources et enfin, d'un éditeur de propriétés CSS. Nul doute que l'utilisateur saura sans problème agencer et ajouter les fenêtres nécessaires à son usage. NetBeans fait partie des classiques du genre, facile à prendre en main et gratuit. Remarque : Dans le cadre d'une installation pour des développements en Java, veillez à installer au préalable le kit de développement Java (Java JDK). 15 IV.2.2.3. StarUML [12] Pour ce genre de projets il vaut mieux utiliser un UML (Unified Modelling Language), comme StarUML. Ce logiciel dispose d'une interface très dynamique et facile à utiliser et de tous les éléments nécessaires pour pouvoir créer des diagrammes et améliorer le flux de travail de n'importe quel projet, en associant chaque élément du processus, même avec le code de chaque partie correspondante inclut. IV.2.2.4. WampServer [13] WampServer est en mesure de lancer des sites web dynamiques qu'il soit connecté à Internet ou en local. Il peut être utilisé avec de simples navigateurs et contient un serveur Apache permettant de transférer des fichiers en ligne. Ce logiciel prend en charge la gestion des banques d'informations. La gestion de cette base de données se fait en mode contextuel ou par le biais d'une console dans le serveur MySQL. Il supporte l'ajout et la suppression de tables ainsi que les tris et les recherches. IV.3. PRESENTATION DEL’APPLICATION Notre application aide dans la gestion de stock des produits commerciaux. Elle est composée de plusieurs interfaces. On va essayer de sélectionner quelques-unes pour les présenter dans ce sous chapitre. L’application est divisée en 3 parties principales (une partie par rôle d’utilisateur) permettant ainsi de fournir à chaque utilisateur le nécessaire dont il a besoin pour accomplir son travail. Ainsi un agent de vente, un superviseur et un administrateur n’accèdent pas aux mêmes fonctionnalités. La page principale d’un utilisateur est composée par le système d’authentification selon le profil de cette personne qui s’authentifie. IV.3.1. Démarrage de l’application Lors du lancement de notre application, la page suivante s’affiche. Les utilisateurs du système auront l’occasion de se connecter en complétant leur nom d’utilisateur et leur mot de passe correspondant à celle qui sont stocké dans la base de données. 16 IV.5. Description des interfaces de l’application IV.5.1. Interface d’authentification La figure IV.2 représente l’interface d’authentification qui permet à l’utilisateur de s’authentifier. Figure IV.2: L’interface d’authentification. IV.5.2. Interface principale Apparait une fois l’utilisateur authentifié, permet de voir les informations de l’établissement ainsi que l’accès aux interfaces de gestion des produits et d’utilisateurs. La Figure IV.3 est une représentation de cette interface. 17 Figure IV.3 : L’interface principale. IV.5.3. Interface de gestion des utilisateurs Cette interface permet la consultation, l’ajout, la modification, la suppression et l’actualisation des informations des comptes utilisateurs, elle est représentée dans la figure IV.4 Figure IV.4: L’interface gestion des utilisateurs 18 IV.5.4. Fenêtre de gestion des produits Cette interface permet la consultation, l’ajout, la modification, la suppression et l’actualisation sur le stock des produits. Elle est illustrée dans la figure IV.5 Figure IV.5 : L’interface gestion des produits. 19 CONCLUSION GENERAL Le travail élaboré dans ce projet a été réalisé durant le stage passé dans les locaux de l’ONATEL Ngozi dans un but d'obtention de diplôme de baccalauréat. L'objectif principal pour notre projet de fin d'études est la conception et la réalisation d'une application de gestion de stock des produits commerciaux. Ce projet a été très bénéfique pour nous car il nous a permis de renforcer et enrichir nos connaissances théoriques dans le domaine de la conception, et de mettre en application nos connaissances acquises le long de nos études. Il nous a encore donné l'occasion de maîtriser le langage de programmation Java, la base de données et de nous familiariser avec la gestion des projets informatiques. C’était une bonne occasion pour réaliser un travail très concret, avec des objectifs clairs et bien définis, la confrontation de nos connaissances théoriques avec la réalité du terrain nous a permis de renforcer notre conviction quant à la pertinence du choix informatique et de se familiariser avec l'environnement du travail et la vie professionnelle. Notre travail a débuté par des généralités sur les systèmes d’informations et les bases de données, alors que la deuxième partie comprend une étude préalable axée principalement sur la présentation de l’entreprise, la présentation du sujet et une étude de l’existant achevée par des critiques et des suggestions. Nous avons ensuite développé le chapitre de conception et modélisation, définissant ainsi les différents modèles de données et de traitements. C’est à partir de là que nous avons pu entamer la dernière partie, à savoir la réalisation de l’application. SUGGESTIONS ET RECOMMANDATIONS Au terme de ce travail, nous aimerions donner quelques suggestions aux autorités de l’ONATEL Ngozi de bien vouloir utiliser cette application afin d’améliorer leur production. Pour les futurs chercheurs, notre application peut être améliorée en ajoutant d’autres fonctionnalités telles que le renforcement de la sécurité pour l’authentification en limitant le nombre d’essai à l’authentification pour un utilisateur et exigée différentes formes de caractère pour le mot de passe. Notre application peut être perfectionnée en ajoutant des interfaces pour établir des bons de commande et facturation. De ce fait, nous les recommandons donc de : Utiliser l’application que nous avons développée. Faire la formation du personnel concerné pour qu’il puisse bien exploiter le système. 20 BIBLIOGRAPHIE OUVRAGES CONSULTES [2] : SITES WEB CONSULTES [1]: http://www.onatel.bi/onatel/presentation/ [3] http://www.africmemoire.com/part.4-chapitre-ii-modelisation-du-systeme-dinformation1034.html [4] https://www.lucidchart.com/pages/fr/quest-ce-que-le-langage-de-modelisation-unifie [7] https://laurent-audibert.developpez.com/Cours-UML/?page=diagramme-classes [8] https://www.cours-gratuit.com/cours-uml/cours-elements-d-uml [9] https://laurent-audibert.developpez.com/Cours-UML/?page=diagramme-classes [10] https://sodocumentation.net/fr/java/topic/8973/editions-java--versions--versions-etdistributions [11] https://www.clubic.com/telecharger-fiche429613-netbeans-1.html [12] https://staruml.fr.malavida.com/#gref [13] http://www.wampserver.com/