IV .1 Introduction
Le but de ce chapitre est de présenter l’application qu’on a réalisée pour l’aide à la supervision des activités d’impression dans l’imprimerie IMPRILAC. 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 Java comme langage de programmation.
IV. 2 Choix des outils utilisés
1. Choix de MySQL
Il existe de nombreux SGBD .Un Système de Gestion de Base de Données (SGBD) est un logiciel qui permet de stocker des informations dans des bases de données. Un tel système permet de lire, écrire, modifier, trier, transformer ou même imprimer les données qui sont contenues dans les bases de données qu’il gère.
Parmi les SGBD les plus connus on peut citer : MySQL, PostgreSQL, SQLite, Oracle Database, Microsoft SQL Server, etc. Certains sont payant et d'autres sont libres.
1. MySQL : libre et gratuit, c'est probablement le SGBD le plus connu ;
2. PostegreSQL : libre et gratuit comme MySQL, avec plus de fonctionnalités mais un peu moins connu ;
3. SQLite: libre et gratuit, très léger mais très limité en fonctionnalités ;
4. Oracle : On les trouve souvent dans de grandes entreprises, sans aucun doute un des SGBD les plus complets, mais il n'est pas libre et on le paie le plus souvent très cher ;
5. Microsoft SQL Server : le SGBD de Microsoft [29].
Pour la réalisation de notre application, nous avons utilisé MySQL pour des raisons qui suivent :
- MySQL est rapide et stable. Ceci constitue la clé de son succès. Des études qui ont été réalisées sur plusieurs bases de données majeures incluant ORACLE, Microsoft SQL Server, DB2, et MySQL, l’étude a montré que MySQL et Oracle étaient les meilleurs ;
- MySQL est un logiciel gratuit mais aussi commercial. Tous les logiciels MySQL demeurent gratuits sous forme de ce qu’on appelle GPL (General Public Licence) mais on peut aussi acheter une version commerciale si on en a besoin ;
- MySQL soutient une grande majorité d’outils considérés comme importants par la communauté de bases de données à savoir : les transactions, blocage basé sur une ligne, clé étrangère, les sous requêtes et la recherche basée sur des mots complets ;
- MySQL possède une grande adaptabilité. Il est utilisé par des clients très rigoureux comme Yahoo ! Finance, Slashdot, US Census Bureau, Google, pour ne citer que ceux-là ;
· MySQL est un outil défiant toute concurrence concernant l’apprentissage de base de données en général grâce à sa facilité d’installation et d’utilisation et l’espace très réduit qu’il occupe sur le disque dur et la mémoire[30].
2. Choix du langage de programmation
Ici on va essayer de faire une étude comparative sur quelques langages de programmation orientés objets qui sont sur le marché et essayer d'en sélectionner un qui répondra bien les besoins d'implémentation de notre application.
On va s'intéresser surtout sur les langages Java, C++ et Visual Basic.
· Java : Java est pourvu d'une grande sécurité, la richesse de ses bibliothèques, son adaptation à plusieurs plateformes, la qualité présentée par ses composantes graphiques (Swing) qui suivent le modèle MVC, sa facilité de déploiement en font de lui un langage performant. Une grande partie de sa syntaxe est empruntée de C et C++. La lenteur de sa machine virtuelle (JVM) constitue son principal défaut.
· Visual Basic (VB) : VB fait parti des langages suivant le concept orienté objet. Il a un environnement de développement intégré (EDI) qui permet de développer facilement des interfaces graphiques.
En appliquant quelques propriétés à ces dernières et en écrivant quelques petits bouts de codes on obtient des résultats satisfaisants. VB est facilement accessible et assimilable.
· C++ : Comme on l'a dit précédemment Java puise une grande partie de ses sources dans le C++ ce qui fait que les défauts rencontrés par le deuxième sont améliorés voire éliminés par le premier.
Les comparaisons faites ci-dessus nous permettent de choisir Java comme langage d'implémentation de notre application. Avec ses multiples avantages en comparaison avec VB qui peut servir un début pour l'apprentissage des Langages Orientés Objets (LOO), Java s'impose. Quant à C++, que Java a essayé de supprimer ses erreurs et d'améliorer quelques points parait plus difficiles à développer surtout les interfaces graphiques. Or ces dernières constituent une grande partie de notre logiciel. Une autre raison d’opter java comme notre langage de développement est qu’il se veut être un langage multiplateforme et doit assurer la sécurité aussi bien pendant le développement que pendant l’utilisation d’un programme Java [31].
IV.3 PRESENTATION DE QUELQUES FENETRES DE L’APPLICATION
Notre application aide à la supervision des activités d’impression. La multitude des taches de l’application engendre un grand nombre de pages constituant l’interface utilisateur. On va essayer de sélectionner quelques une qui nous paraissent important pour les intégrer dans ce travail de fin d’études.
L’application est déployée sur un serveur et est accessible à partir d’un poste client possédant un navigateur web, comme nous l’avons spécifié dans le diagramme de déploiement au troisième chapitre.
Ici, l’application est divisée en 5 parties principales (une partie par rôle d’utilisateur) permettant ainsi de fournir à chaque utilisateur le strict nécessaire dont il a besoin pour accomplir son travail. Ainsi un chef de production, un gérant, un gestionnaire, un producteur et un caissier n’accèdent pas aux mêmes fonctionnalités. La page principale d’un utilisateur est déterminée par le système d’authentification selon le profil de cette personne qui s’authentifie.
VI.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 après avoir fait un simple click sur le lien CONNEXION.
Figure_31.JPG
VI.3 .2 Authentification des utilisateurs
Si l’utilisateur clique sur le lieu CONNEXION, le formulaire de la figure suivante s’ouvre et lui permet de saisir son login ainsi que son mot de passe.
Figure_32.JPG
Si au moins l’un des paramètres d’authentification est incorrect, on a un message d’erreur qui apparaît indiquant que la personne qui se connecte n’est pas reconnu par le système comme le montre la figure suivante :
Figure_33.JPG
Après authentification avec des paramètres corrects, c’est-à-dire avec des paramètres correspondant à ceux qui sont enregistrés dans la base de données, une page d’accueil s'affiche selon le profil de la personne authentifiée.
L’application peut donc être divisée en 5 parties chacune comprenant des pages utilisateurs correspondant aux différents rôles des utilisateurs de notre application. Ainsi on a :
· Une page pour le gérant qui s’appelle PageAccueilGerant.xhtml ;
· Une page pour le chef de production qui s’appelle PageAccueilChefProd.xhtml ;
· Une page pour le gestionnaire qui s’appelle PageAccueilGestion.xhtml ;
· Une page pour le producteur qui s’appelle PageAccueilEmploye.xhtml ;
· Une page pour le caissier qui s’appelle PageAccueilCaissier.xhtml .
VI.3.3 Partie du chef de production
VI.3.3.1 Page d’accueil
La page d’accueil du chef de production nous présente différentes action faites par lui dans l’IMPRILAC. Il est chargé de faire :
- L’enregistrement des clients;
- L’enregistrement des produits qu’on imprime dans l’IMPRILAC;
- L’enregistrement des charges (choses qu’on fait payer au client) ;
- L’enregistrement des matériels qu’on utilise ;
- L’enregistrement des chemins qu’un produit suit lors de son traitement ;
- L’enregistrement des étapes des chemins ;
- La demande des matériels au près du gérant ;
- L’historique des matériels qui lui sont accordés ;
- L’enregistrement des commandes des clients ;
- L’enregistrement des maquettes (document qu’on imprime) ;
- La Création d’un groupe d’employés qui va s’occuper de la commande quelconque ;
- La Livraison des produits payés et l’enregistrement des factures signées par la client et par lui même;
- La modification des états des producteurs ainsi que leurs comptes au besoin.
La page « PageAccueilChefProd » ressemble donc à ceci :
Figure_33.JPG
Cette interface est très facile à utiliser. Pour enregistrer un nouveau client par exemple, on choisit le lien ENREGISTRER puis CLIENT. Un formulaire qui permet de saisir les informations du nouveau client est affiché.
VI.3.3.2 Page d’enregistrement des clients
Figure_34.JPG
Si on veut supprimer ce client, on clique sur le bouton supprimer et le client sera supprimé. Tandis que pour le modifier, on clique sur le bouton modifier et le formulaire de modification s’ouvre contenant les informations du client à modifier. Ce panel ressemble à ceci :
Figure_35.JPG
Après avoir enregistré un client dans le système, il peut demander de lui faire un pro forma pour qu’il puisse commander. La page pour l’édition du pro forma ainsi que la création des commandes est représenté sur la figure qui va suivre.
VI.3.3.3 Page de création des commandes
Figure_36.JPG
Description de l’interface
Voici les grandes fonctionnalités qu’on retrouve dans cette page :
1. La liste de tous les clients de l’IMPRILAC ;
2. La liste de tous les produits qu’on imprime dans l’IMPRILAC ;
3. La liste des matières première qu’on utilise pour imprimer ;
4. La création d’une commande;
5. Mettre les produits sur cette commande avec tout les détails;
6. Sur chaque produit, on y met des charges et le système calcul le montant pour un produit puis pour toute la commande ;
7. Imprimer le pro forma pour la commande.
Utilisation
Le menu « COMMANDE » vient par défaut. On choisit donc le client qu’on crée la commande. En cliquant sur le bouton créer, on désactive les champs de saisie des informations du client et invite l’utilisateur d’aller dans le menu « PRODUITS COMMANDES ». L’interface devient :
Figure_37.JPG
On doit sélectionner le type du produit, saisir son nom, le nombre d’exemplaires à imprimer ainsi que le chemin qu’il va suivre. Le bouton « AJOUTER LE PRODUIT » permet d’ajouter un produit sur la commande. En finissant l’ajout des produits, on clique sur « FINIR AJOUT DES PRODUITS ». Ce bouton nous donne l’accès d’ajouter des charges sur les produits qu’on vient de mettre sur la commande.
Le menu « CHARGES POUR UN PRODUIT » nous donne donc l’interface suivant :
Figure_38.JPG
On doit sélectionner le produit, la charge et dire la quantité de la charge qu’on va utiliser. En ajoutant la charge sur le produit, le montant de celui-ci s’autogère ainsi que le montant total de la commande.
Après cela, on peut imprimer le pro forma pour le présenter au client.
NB : Il faut obligatoirement cliquer sur le bouton « FINIR AJOUT DES CHARGES » ainsi que « FINIR AJOUT DES PRODUITS » avant d’imprimer. Le bouton « IMPRIMER » nous donne le document PDF suivant :
Figure_39.JPG
Si le client accepte le pro forma l’utilisateur peut enregistrer la commande. Le chef de production se dirige alors vers la page d’enregistrement des maquettes pour garder dans la base de données le document du client à imprimer.
VI.3.3.4 Page d’attachement des maquettes à un produit
Cette fenêtre aide le chef de production à enregistrer le(s) document(s) à imprimer dans la base de données.
Figure_40.JPG
Description de la page
Sur cette page, il ya tous les clients qui a déjà commandé et leur numéro de commande avec des produits y figurant. Le Bouton « +Add.. » permet de chercher le fichier dans un emplacement de la machine. L’utilité de cette page est d’attacher une ou plusieurs maquettes à un produit qu’on a commandé.
Utilisation
Son utilisation est facile .On doit sélectionne le client, la commande ainsi que le produit. Puis clique sur « Add » pour chercher le document. En fin on enregistrer et on voit la liste des maquettes pour le produit sélectionné.
Ce qui concerne le chef de production c’est ensuite de créer le(s) groupe(s) d’employés qui va /vont traiter la commande.
VI.3.3.5 Page de création d’un groupe d’employés
Cette fenêtre permet de voir les employés disponibles pour une période donnée.
Figure_41.JPG
Description de l’interface
· Liste des clients qui ont commandé c’est-à-dire qui ont payés l’avance pour la commande ou ont amené un bon de commande.
· Les numéros de commande pour un client sélectionné.
· Les produits figurant sur un numéro de commande.
· Calendrier pour indiquer la période de traitement du produit.
· La liste des producteurs disponible dans cette période.
· La liste des producteurs affectés sur un produit.
Utilisation
La sélection d’un client permet de visualiser toutes les commandés qu’il a fait. On sélection ensuite un numéro de la commande pour voir les produits se trouvant sur ce dernier. La liste des producteurs libre vient après avoir déterminé la date de prévision du début et de fin du traitement du produit. En fin on ajoute un à un les producteurs sur la liste et on enregistre.
Une autre interface pour le chef de production c’est celle de livrer les produits qu’on a terminés. Nous la voyons tout de suite.
VI.3.3.6 Page de livraison des produits payés
Cette fenêtre permet au chef de production de livrer les produits payés.
Figure_42.JPG
Description
1. Liste des clients qui ont payés mais qui n’ont pas encore récupérés leurs produits.
2. La liste des produits payés sur un payement.
3. Liste des maquettes pour le produit à livrer.
Utilisation
La sélection d’un client génère la liste de ses commandes ayant des produits payés mais non livrés. On sélectionne ensuite la commande pour voir les payements effectué sur cette dernière. Le lien Lister maquettes permet d’afficher la liste des maquettes pour en fin les voir avant de les livrer.
VI.3.3.7 Page pour stock les factures
La fenêtre suivant permet de garantir si le produit est livré ou pas :
Figure_43.JPG
Après la livraison d’un produit, le client marque son accord de réception sur la facture et le chef de production garde une copie.
VI.3.4 Partie du gérant
VI.3.4.1 Page d’accueil
Le gérant a droit sur toutes les fonctionnalités du chef de production. Nous n’allons donc pas décrire les fonctionnalités décrites plus haut. Les fonctionnalités spécifiques au gérant sont notamment l’accès la création des employés ainsi que leurs comptes en plus de l’analyse des demandes des matériaux faite par le chef de production.
N.B Signalons que pour accomplir les actions du chef de production, il doit lui créer un compte avec profil de chef de production.
Voici son interface d’accueil :
Figure_44.JPG
L’utilisation de cette page est simple, il suffit de choisir le lien la page souhaitée s’affiche. Si par exemple on est dans le menu « FICHIER » et cliquer sur le lien « Enregistrer Personne » on est rediriger vers la page d’enregistrement des personnes.
VI.3.4.2 Page pour enregistrer les employés
Cette page permet au gérant d’enregistrer les employés de l’IMPRILAC c’est-à-dire le chef de production, les gestionnaires, les producteurs ainsi les caissiers.
Figure_45.JPG
Description de l’interface
On trouve sur cette page les profils existant dans l’IMPRILAc et la liste des personnes de chaque profil.
Utilisation
Le nom, le prénom et la catégorie sont obligatoire. Le calendrier exige que la personne qui a droit d’être employé de l’IMPRILAC doive avoir au minimum 15ans de naissance.
VI.3.4.3 Page pour la création des comptes des employés
Après l’enregistrement d’une personne, on peut par la suite lui crée un compte en utilisant le formulaire suivant :
Figure_46.JPG
Description
1. La liste des personnes selon le profil choisit.
2. La liste des personnes qu’on peut modifier ses informations dans le tableau en bas de l’interface.
Utilisation
Après avoir saisi le login et le passe, on doit sélectionner la catégorie de la personne ainsi le propriétaire du compte avant d’enregistrer
En cliquant sur le bouton modifier du tableau le panel de modification s’ouvre et semble à ceci :
Figure_47.JPG
Ce panel vient avec les ancien login et mot de passe et on doit dire au moins un des nouveaux avant de modifier sinon le système donne le message qu’on a rien modifier.
VI.3.4.4 Page pour analyser la demande de matériel
Le gérant autorise ou refuse la demande des matériels effectué par le chef de production grâce à l’interface suivante :
Figure_48.JPG
Description :
1 .Numéro des demandes à analyse.
2. Information sur la quantité du matériel sélectionné en stock ainsi que la quantité demandé.
3 .Le détail du chef de production demandeur.
Utilisation
La quantité accordée doit être supérieur ou égale à la quantité en stock et il doit motiver la décision d’autorisation.
VI.3.5 Partie du gestionnaire
VI.3.5.1 Page d’accueil
Le gestionnaire de l’IMPRILAC est chargé de gérer les stocks des matériaux qu’on utilise. S’il se connecte voici sa page d’accueil :
Figure_49.JPG
Description et utilisation de l’Interface
Les fonctionnalités du gestionnaire dans le système se trouvent dans le menu «OPERATION ».Etant dans ce dernier donc on peut choisir le lien qu’on veut. Si on clique sur « MARQUER UNE SORTIE », alors la page de sortie des matériaux s’affiche.
VI.3.5.2 Page de sortie des matériaux en stock
Cette page aide le gestionnaire de donner au chef de production les matériaux qui lui sont accordé par le gérant.
Figure_50.JPG
La sélection d’une demande visualise ses matériaux accordés et leur quantité. Le gestionnaire n’a pas droit de modifier la quantité accordé. Le tableau en bas indique le chef de production bénéficiaire du matériel.
VI.3.5.3 Page de signalisation de l’augmentation de la quantité
La figure ci-dessous est une page qui aide le gestionnaire à approvisionner le stock :
Figure_51.JPG
Cette page décrit la liste des matériaux et leur quantité déjà enregistré. Il doit donc préciser le matériel et sa quantité à ajouter dans le stock.
VI.3.6 Partie du producteur
VI.3.6.1 Page d’accueil
Le rôle du producteur est de traiter les produits jusqu’à leur impression. Pour faciliter donc le suivi, il doit toujours marquer l’étape sur laquelle est un produit. La figure suivante est la page d’accueil si on se connecte comme producteur.
Figure_52.JPG
Pour marquer l’étape, on clique sur le lien « MARQUER ETAPE » dans le menu « OPERATION ».
On peut également modifier le compte dans le même menu en cliquant sur « MODIFIER COMPTE »
VI.3.6.2 Page pour marquer l’étape d’un produit
Cette partie permet de dire : le produit tel est sur cette étape.
Figure_53.JPG
Description de l’interface :
Sur l’interface est figuré :
1. La liste des produits à traiter ;
2. La liste des groupes de producteur affecté sur ce produit indiqué par la date provisoire début et fin ;
3. Les étapes sur lesquelles le produit doit passer.
4. Les employés membre du groupe ainsi que l’historique de traitement de ce produit.
Utilisation
Tout dépend de la sélection du produit. Ensuite le producteur choisit son groupe. On clique sur le bouton « COMMENCER » pour commencer le travail, sur «ENREGISTRER ETAPE » pour marquer l’étape sur laquelle se trouve un produit sélectionné et enfin sur le bouton « TERMINER » pour marquer la fin de la tache.
VI.3.7 Partie du caissier
VI.3.7.1 Page d’accueil
L’interface suivant est la page d’accueil si on se connecté comme caissier.
Figure_54.JPG
Description de l’interface
On trouve sur cette interface les fonctionnalités suivantes :
1. L’orientation vers la page de payement dans le menu « OPERATION » ;
2. On peut également enregistrer un bon de commande en cliquant sur le lien «ENREGISTRER UN BON » dans le même menu ;
3. Le caissier peut également modifier son compte.
Utilisation
On entre dans le menu « OPERATION », puis on choisit le lien qu’on veut et la page souhaité s’ouvre. Le bouton déconnexion renvoie sur la page d’authentification.
VI.3.7.2 Page pour enregistrer un bon de commande
Le caissier utilise cette page pour enregistrer un bon de commande pour les clients de haut niveau qui commande par bon de commande.
Figure_55.JPG
Description
· Liste des clients ayant des commandes en attente de traitement ;
· Liste de ses commandes ;
· Le bouton pour la recherche du bon dans la machine ;
· Le tableau pour visualiser le bon ;
Utilisation de la page : on sélectionne le client, puis la commande et cherche le bon à enregistrer.
VI.3.7.3 Page pour le payement
Si il ya une commande qui a des produits terminés, le caissier peut les voir sur la page qui semble à ceci :
Figure_56.JPG
Description
· La liste des clients ayant des produits terminés mais qui ne sont pas encore payés ;
· Les numéros de commandes pour ces produits ;
· Le bouton « VALIDER » pour enregistrer le payement et imprimer la facture ;
· Le tableau contenant le détail des produits figurant sur la commande sélectionné.
Utilisation
On doit sélectionner le client qui va payer et le numéro de commande à payer. On saisit ensuite la quantité à payer dans le tableau en bas de la page et le montant total à payer se calcul automatiquement puis on valide. Si la quantité restante devient nulle, l’icone montrant que le produit est totalement payé change.
VI.3.8 Modification du compte
En fin chaque utilisateur connecté peut modifier ses paramètres d’authentification en utilisant le formulaire suivant:
Figure_57.JPG
Le bouton valider change dans la base de données le login et le mot de passe de l’utilisateur avec ceux saisi dans les champs de saisi de ce formulaire.
Conclusion
Dans ce chapitre nous avons justifiés en premier lieu le Choix des outils utilisés pour développer notre application. Vu le grand nombre des fenêtres composant notre application, en second lieu on s'est concentré de donner quelques unes qui nous paraissent plus importantes.