REPUBLIQUE DU SENEGAL
Un peuple – un but – une foi
Ministère de l’enseignement supérieur, de la recherche et de
l’innovation
Direction générale de l’enseignement supérieur
Direction de l’enseignement supérieur privé
Ecole supérieure de technologie et de management
Mémoire de fin de cycle pour l’obtention de la licence en
Téléinformatique
Option : Génie logiciel et Administration réseaux
Intitulé
CONCEPTION ET REALISATION D’UNE
APPLICATION DE GESTION
PHARMACEUTIQUE
Présenté et soutenu par : Sous la direction de :
Abdelhamid HARBA
Adji Nguissaly DIENE Mme CISSE
Demba SOUMARE Spécialité : Ressources Humaines
El Hadji Malick NDIAYE
Mouhamed LO
Oulimata NDIAYE
Thioro FALL
Année académique : 2018-2019
AVANT -PROPOS
L’ESTM (Ecole supérieure de Technologie et de Management) est une
école privée d’enseignement supérieur. Elle a été créée en 2002 et propose des
diplômes homologués par l’ETAT, reconnus par le CAMES et les entreprises. En
conséquence, elle a mis tout en œuvre, dans l’innovation et l’excellence, pour
donner à chacun de ses diplômés les connaissances et les qualités le rendant apte à
relever les défis d’aujourd’hui et de demain. Dans des domaines aussi variés que
l’informatique, les Télécommunications, et le Management des entreprises, des
programmes sont conçus et exécutés en concertation avec les partenaires.
L’enseignement s’adosse sur une gouvernance de qualité et un corps professoral
qualifié composé d’universitaires et de professionnels experts dans leurs
domaines.
Pour l’obtention de la licence en téléinformatique, l’ESTM exige
l’élaboration d’un mémoire de fin de cycle. C’est dans cette perspective que nous
avons rédigé ce document qui s’intitule : conception et réalisation d’une
application de gestion pharmaceutique.
Dans ce sujet, il s’agira de mettre en place une application desktop qui
permettra de gérer plus facilement une pharmacie. Nous proposons une solution
qui permettra d'optimiser les recherches d'informations en abandonnant leur
stockage sur les supports papiers. Aussi, les pharmacies pourront avoir beaucoup
plus de facilité à faire leurs inventaires et à réaliser périodiquement des
statistiques.
Ce document représente notre premier travail de recherche. A cet effet,
nous sollicitons de la part du jury beaucoup d’indulgence quant à l’évaluation.
Plan détaillé
INTRODUCTION GENERALE
I. CADRES THEORIQUE ET METHODOLOGIQUE
1.1 Cadre théorique
1.1.1 Présentation générale du sujet
[Link] : Contexte
[Link] : Problématique
1.1.2 : Solutions existantes et comparaison avec le sujet
[Link] : Solutions similaires
[Link] : Contribution aux solutions existantes
1.2 Cadre méthodologique
1.2.1 : Démarche méthodologique
1.2.2 : Techniques d’investigation
II. ANALYSE ET CONCEPTION
2.3 : Analyse
2.3.1 : Présentation des différentes méthodes de modélisation
[Link] : Présentation de Merise et d’UML
[Link] : Comparaison et justification du choix
2.3.2 : Spécification des besoins
[Link] : Besoins non fonctionnels
[Link] : Besoins fonctionnels
2.4: conception
2 .4.1 Cas d’utilisation
[Link] : Diagramme des cas d’utilisation
[Link] : Description des cas d’utilisation
2.4.2 : Diagramme de séquences et de classes
2 .4.2.1 Diagramme de séquences
2 .4.2.2 Diagramme de classe
III. REALISATION ET MISE EN ŒUVRE
3.5 Cycle de vie et architecture d’une application
3.5.1: Cycle de vie d’une application
3.5.2 : Architecture logicielle
3.6 : Technologies et outils utilisés
3.6.1 : Technologies
3.6.2 : Outils
3.7 : Présentation de l’application
CONCLUSION GENERALE
INTRODUCTION GENERALE
L’informatique est une branche technique qui permet de rendre
automatique certaines tâches, ainsi que les traitements sur l’information par le
biais de programmes ou d’applications. Au regard du monde actuel, nous
constatons que cette science se trouve de plus en plus au cœur de tous les secteurs
d’activité qui souhaitent optimiser leur productivité ; notamment dans le domaine
de la gestion pharmaceutique.
Compte tenu du grand nombre de médicaments qui existe au niveau des
pharmacies ; la gestion de stock à ce niveau, qui jusque-là se faisait de façon
manuelle, devient de plus en plus difficile. Aussi, avec la gestion traditionnelle, la
recherche d’informations se faisait de manière assez chronophage 1. C’est dans ce
contexte que notre problématique s’articulera autour de la question suivante :
comment peut-on faire pour faciliter la gestion d’une pharmacie ?
L’objectif principal de ce mémoire est de concevoir une application facile
à utiliser et conforme à la gestion pharmaceutique. De façon plus spécifique, il
s’agira de mettre en place une solution capable de :
-faciliter la recherche d’informations (disponibilité, coût, quantité en
stock…) ;
-faciliter les inventaires à savoir le bilan de fin de semaine ou du mois.
Si nous avons choisi ce sujet c’est parce que nous avons remarqué que
dans les pharmacies la gestion manuelle des informations est dominante. Ceci
peut entrainer une mauvaise organisation du travail sans oublier que l’obtention
des statistiques n’est pas toujours facile.
Dans le but de mettre au point notre application, nous souhaiterions
d’une part concevoir et réaliser une application desktop afin de permettre aux
pharmaciens ou gérants de stocker leurs données et de les modifier selon leurs
envies. D’autre part, prenant en compte les besoins du client, nous pourrions nous
pencher sur le développement d’une application mobile qui permettrait à ce
dernier de pouvoir connaitre la disponibilité des médicaments : s’ils sont en stock
ou non, le prix et dans quelle pharmacie.
Pour mieux aborder notre sujet nous avons eu à faire quelques
investigations pour recueillir le maximum d’informations. C’est en ce sens qu’une
observation du fonctionnement d’une pharmacie a été faite. En outre, un entretien
avec un spécialiste de ce domaine et quelques recherches documentaires ont été
réalisées afin de prendre en compte les réalités dans ce milieu.
La réalisation de notre mémoire portera sur trois parties : d’abord nous
allons présenter les cadres théorique et méthodologique du sujet, ensuite nous
ferons l’analyse et la conception. Et enfin nous terminerons par la réalisation et
mise en œuvre de notre application.
1 : Qui demande beaucoup de temps.
I. Cadres théorique et méthodologique
Cette première partie est consacrée à la présentation de notre sujet afin de
permettre au lecteur de mieux comprendre le thème traité. D’abord, nous
présenterons le cadre théorique ensuite le cadre méthodologique.
1.1 Cadre théorique
Pour mieux aborder notre sujet, il est indispensable d’exposer l’étude
préalable que nous avons effectuée. Il s’agira de faire une présentation
générale suivie d’une description des solutions existantes. Ceci nous permettra
de faire une comparaison avec la nôtre.
1.1.1 Présentation générale du sujet
Cette présentation consistera d’abord à dégager le contexte, lieu où nous
soulèverons les circonstances qui ont générées notre réflexion. Nous allons
ensuite poser la problématique de notre sujet, afin d’en illustrer la pertinence.
[Link] : Contexte
Les pharmacies offrent un service important et indispensable, elles
devraient donc bénéficier d'une attention particulière.
C’est dans un tel contexte que nous avons décidé de proposer une
application de gestion pharmaceutique, qui permettrait de répondre aux
interrogations soulevées par notre problématique.
[Link] : Problématique
La problématique à la laquelle nous avons l’optique d’apporter une
solution, peut être résumée en quelques interrogations que sont :
-comment faciliter la recherche d’informations (disponibilité, coût, quantité en
stock …) ?
-comment faciliter les inventaires à savoir le bilan de fin de semaine ou du
mois ?
-comment avoir une solution qui permettrait de gérer l’ensemble des tâches
effectuées dans une pharmacie.
La présentation de notre thème nous permettra de parler plus aisément des
solutions existantes afin de faire la comparaison.
1.1.2 : Solutions existantes et comparaison avec le sujet
Nous ne saurions débuter ce travail sans avoir une idée claire et précise des
méthodes de gestion pharmaceutique existantes .Nous allons donc nous intéresser
aux solutions similaires à la nôtre avant d’y apporter notre contribution.
[Link] : Solutions similaires
Afin d’assurer une bonne gestion de leurs différentes tâches, les
pharmacies utilisent des systèmes informatiques. Ainsi, sur le marché, il est
fréquent de trouver des systèmes qui gèrent soit les stocks de médicaments, soit
les fournisseurs, soit les ventes.
L’analyse des différentes solutions existantes sur le marché nous a permis
de dévoiler des failles auxquelles nous allons essayer de proposer des solutions :
notre contribution.
I.1.2.2 : Contribution aux solutions existantes
Notre contribution aux solutions présentées ci-dessus consistera à
concevoir et réaliser une seule et unique application qui regroupera des
fonctionnalités permettant de faire toutes les tâches que ces solutions effectuaient
séparément.
En somme nous avons tenue à faire ce travail préalable pour permettre au
lecteur de mieux s’imprégner du sujet et ainsi comprendre les enjeux et
l’importance de ce dernier.
Afin d’atteindre nos objectifs fixés au début nous allons par la suite décrire
le cadre méthodologique.
I.2 Cadre méthodologique
Dans ce volet de notre travail, nous décrirons le processus qui nous a
permis de choisir notre sujet ainsi que les méthodes que nous avons utilisées pour
la collecte des informations.
1.2.1 Démarche méthodologique
La démarche méthodologique est le processus de recherche utilisé pour
atteindre des objectifs précis. Elle permet au chercheur de contrôler la qualité de
ses recherches et de répondre à ses objectifs.
C’est dans cette lancée que nous nous intéresserons aux techniques
d’investigation.
I.2.2 Techniques d’investigation
Pour collecter le maximum d’informations sur notre thème, nous avons eu
à combiner trois techniques de recherches à savoir une enquête sur le terrain, la
recherche documentaire et la recherche sur Internet.
Dans ce chapitre nous avons fait une étude théorique de notre sujet et la
présentation de ce dernier. Dans le chapitre suivant nous allons procéder à
l’analyse et la conception de la solution.
II. Analyse et conception
L’analyse et la conception consistent à formaliser les étapes préliminaires du
développement d’un système. Nous commencerons donc par l’analyse suivie de la
conception de notre application.
2.3 : Analyse
Durant la phase d’analyse nous allons expliquer comment faire pour rendre
le développement le plus fidèle possible aux besoins exprimés par le client.
Nous présenterons les différentes méthodes de modélisation qui existent en
faisant un focus sur les deux méthodes les plus utilisées puis nous terminerons par
une comparaison de ces dernières afin de justifier notre choix.
2.3.1 : Présentation des différentes méthodes de modélisation
La modélisation en analyse informatique permet de représenter les
résultats attendus au moment de la concrétisation de la solution notamment
l’organisation des données. Il existe différentes méthodes permettant la
modélisation d’un système. Parmi ces dernières nous avons fait le tri et retenu les
deux méthodes les plus connues et plus utilisées à savoir UML et Merise.
Après présentation des méthodes de modélisation les plus utilisées nous
allons faire une étude comparative qui nous permettra de faire un choix pour notre
solution.
[Link] : Comparaison et justification du choix
Il s’agit ici de faire une comparaison entre les deux méthodes vu
précédemment. Celle-ci nous permettra de faire un choix judicieux pour la
méthode d’analyse que l’on adoptera.
A la fin de cette comparaison nous constatons que la méthode d’analyse
UML est la plus adéquate pour les applications orientées objets car ayant
beaucoup plus de flexibilité.
Ce chapitre nous a permis de choisir une méthode d’analyse ce qui nous
permettra de rendre le développement de notre système le plus fidèle possible aux
besoins spécifiques du client.
2.3.2 : Spécification des besoins
Un acteur est un individu qui interagit avec le système. Il il cherche à
satisfaire un besoin bien précis se trouvant dans le système. Nous avons de
manière générale pour notre application les acteurs suivants :
- Les utilisateurs : ce sont ici principalement les clients ;
- L’administrateur : il est considéré comme le pharmacien en personne ;
- et enfin les vendeurs : il s’agit des fournisseurs.
L’interaction des acteurs cités ci-dessus est déclenchée par un ou plusieurs
besoins spécifiques. Nous avons cependant deux types de besoins : les besoins
non fonctionnels et les besoins fonctionnels.
[Link] : Besoins non fonctionnels
Ce sont les besoins qui ne sont pas directement en rapport avec ce que
veulent les acteurs mais leurs permettent d’utiliser le système sans trop de
difficultés. On peut citer :
- la rapidité ;
- la fluidité ;
- le design …
Cependant, la priorité est donnée aux besoins qui ont été spécifiées par le
client : les besoins fonctionnels.
[Link] : Besoins fonctionnels
Ce sont contrairement aux besoins non fonctionnels les buts ou désirs
qu’ont les acteurs et que le système propose. Ce sont les demandes des acteurs au
système. Nous allons les citer en dessous pour chaque acteur les besoins
fonctionnels.
- client : il peut commander des médicaments, acheter des médicaments,
voir la liste de ses achats et commandes mais aussi des médicaments qui
sont en stocke dans la pharmacie.
- pharmacien : il supervise et a accès à toutes les fonctionnalités.
- vendeur : assure la vente, le règlement ou paiement. Il peut également voir
la liste des commandes et des médicaments disponibles ou pas dans la
pharmacie.
L’expression des besoins met fin à la partie analyse de notre solution. Ce
qui nous permettra d’en faire la conception.
2.4 : conception
La conception présente une entrée majeure pour les activités
d’implémentation et de test.
Elle se traduit, dans notre cas, par les diagrammes de cas d’utilisation, de
séquences et de classes d’UML.
2 .4.1 Cas d’utilisation
Les cas d'utilisation représentent l’ensemble des fonctionnalités de
l’application. Dans cette partie, nous présenterons les diagrammes des cas
d’utilisations de l’application ainsi que leur description textuelle.
[Link] : Diagramme des cas d’utilisation
Le diagramme de cas d’utilisation est la représentation des possibilités
d’interaction entre le système et les acteurs (intervenants extérieurs au système),
c’est-à-dire de toutes les fonctionnalités que doit fournir l’application sans
indiquer comment elles sont réalisées.
Pour une meilleure compréhension du fonctionnement de l’application,
nous présenterons dans la partie qui suit la description des cas d’utilisation.
[Link] : Description des cas d’utilisation
Le but de la description des cas d’utilisation est de détailler leur
fonctionnement. Elle consiste à présenter différents scénarios possibles pour
chaque cas d’utilisation. Nous avons donc établi leur fiche descriptive.
Toujours dans le but d’apporter une meilleure compréhension du
fonctionnement de l’application, nous poursuivrons avec les diagrammes de
classes et de séquences.
2.4.2 : Diagrammes de séquence et de classe
Les cas d’utilisation décrivent les interactions des acteurs avec le système
qu’on veut concevoir. Lors des interactions, les acteurs génèrent des messages
qui affectent le système informatique et attendent généralement une réponse de
celui-ci.
On va donc isoler ces messages et les représenter graphiquement sur des
diagrammes de séquence et de classe.
2 .4.2.1 Diagrammes de séquences
Les diagrammes de séquences permettent de décrire comment les éléments
du système interagissent entre eux et avec les acteurs. La représentation se
concentre sur l'expression des interactions en insistant sur la chronologie des
envois de messages.
Utilisés avec des diagrammes de séquence, les diagrammes de classes
fournissent un mécanisme de communication extrêmement efficace. Dans l’étape
qui suit, nous présentons les diagrammes de classe relatif à notre mémoire.
2 .4.2.1 Diagramme de classes
Un diagramme de classes est défini comme étant un schéma représentant
toutes les classes d’un programme, leurs attributs, leurs méthodes, ainsi que les
relations qui les relient. Les éléments du diagramme de classes sont les classes et
leurs et leurs relations. Notre diagramme de classe est le suivant :
Dans cette partie, nous avons identifié les différents acteurs qui
interagiront avec l'application et identifier les besoins fonctionnels et les besoins
nom fonctionnels. En plus de cela, nous avons déterminé les règles de gestion de
l’application et les classes associées.
Nous poursuivrons avec la présentation de l'environnement matériel et
logiciel utilisés pour assurer la réalisation de l'application.
3. Réalisation et mise en œuvre
Dans cette dernière étape du mémoire, nous allons implémenter la
conception réalisée précédemment. Il s'agira d'étudier le cycle de vie et
l'architecture de l'application mais aussi de présenter les technologies et outils
utilisés pour sa mise en œuvre.
3.5 Cycle de vie et architecture d'une application
Ce chapitre s'intéresse au cycle de vie et à l'architecture d'une application.
3.5.1 Cycle de vie d'une application web
Le cycle de vie d'un logiciel désigne toutes les étapes du développement
du logiciel, de sa conception à sa disparition. Nous décrirons ces étapes et
montrerons les différents modèles de découpage.
L’'objectif du cycle de vie qui est de valider le développement logiciel et
de vérifier son processus. Sa présentation nous permettra d’étudier l'architecture
logicielle de l'application.
3.5.2. Architecture logicielle
Dans cette section nous présenterons l'architecture des serveurs, le
diagramme de composants et le diagramme de déploiement de l'application.
L’architecture logicielle décrit toutes les formes de vues du système.
Après avoir décrit les étapes de développement du logiciel ainsi que son
architecture, il s’impose une présentation des technologies et outils utilisés pour sa
mise en œuvre.
3.6 Technologies et outils utilisés:
Les outils et technologies désignent l'usage des ordinateurs, du stockage,
des appareils, des logiciels, et des processus pour créer, traiter, stocker, sécuriser
et échanger toutes sortes de données électroniques. Dans notre cas, nous allons
nous intéresser à la présentation des technologies et outils utilisés pour la mise en
œuvre de notre application.
3.6.1 : Technologies
Il s’agit de la présentation des différents logiciels et langage utilisés pour
réaliser notre application.
Ces technologies nous sont indispensables pour la mise en œuvre de notre
application. Cependant, à elles seules elles ne pourront pas nous être utiles. D’où,
la nécessité de les combiner à des outils.
3.6.2 : Outils
Le choix des outils est une décision importante à prendre puisque cela a un
impact direct sur notre productivité. Nous allons présenter quelques outils
nécessaires à la réalisation de notre application.
Nous avons présenté les outils utilisés pendant la phase de documentation,
de spécification des besoins, de conception et de développement de notre
application.
En somme, dans ce chapitre, nous avons décrit brièvement le processus de
réalisation de notre application en spécifiant les outils de développement et les
technologies utilisées pour la mise en œuvre. Le dernier chapitre de ce document
nous permettra de faire la présentation de notre solution.
3.7 : Présentation de l’application
Dans cette partie nous allons faire une brève présentation de notre
application.
CONCLUSION GENERALE
Une étude approfondie sur le problème de la gestion traditionnelle des
pharmacies a permis de constater le manque d’efficacité et de fiabilité de cette
méthode. En effet, avec cette dernière, toutes les tâches se faisaient manuellement
et ceci engendrait une perte de temps. Pour remédier à ce problème, nous avons
pensé à développer une application desktop de gestion pharmaceutique. Ainsi,
nous avons d’abord effectué une étude théorique afin de mieux cadrer le sujet.
Ensuite, cette étude nous a permis de faire l’analyse et la conception du système
pour satisfaire les besoins des pharmaciens. Enfin, nous avons pu mettre en place
notre application grâce à l’utilisation d’un certain nombre d’outils et de de
technologies.
Notre solution vise à faciliter la recherche d’informations (disponibilité,
coût, quantité en stock...), à faciliter les inventaires et le bilan. L’administrateur
aura la possibilité de consulter la disponibilité des médicaments et de suivre leurs
entrées et sorties.
Pour accomplir ce travail, nous avons eu à rencontrer de nombreuses
difficultés dues au fait que le domaine pharmaceutique nous été totalement
inconnu. Aussi, une telle application nécessite des informations fiables et concises
pour une satisfaction optimale des pharmaciens. Ceci sous-entend une certaine
maitrise du domaine et surtout de l’adaptation. Ces choses n’ont pas été tout de
suite acquises mais, avec de la persévérance et l’aide de notre directeur de
recherche nous avons réussi à aller au bout de ce mémoire.
Par ailleurs, un vaste travail mériterait d'être mené en expérimentant le
développement mobile pour ce type d’application. Ceci permettrait aux
pharmaciens ou gérants de pharmacie d’avoir accès aux informations relatives à
leur pharmacie instantanément et tout le temps par le biais de leur téléphone
portable.
Bibliographie
I. Ouvrages
Harba Bour, UML Modélisation des applications web,
[Link], 2001,420 pages.
Mohamed Lo, UML Modélisation des applications web, [Link],
2001,480 pages.
II. Mémoires
Abdelhamid Harba, Mise en place d’une application de la gestion de
stocks pharmaceutique, ESTM, 2018-2019, 70 pages.
Soumaya Fall, Réalisation d’une application de gestion de dépôt
pharmaceutique, ESTM, 2016-2020,200 pages.
Webographie :
[Link] 07/12/2018,10h25.
[Link] 04/01/2019,16h05.
[Link] 07/01/2019,11h12.
[Link] 07/01/2019,19h45.
[Link] 11/01/2019,03h25.
[Link] 12/01/2019,13h13.
[Link] 13/01/2019,18h14.
[Link] 14/01/2019,10h08.
[Link] 14/01/2019,17h17.
[Link] 15/01/2019,14h03.
[Link] 15/01/2019,15h15.