0% ont trouvé ce document utile (0 vote)
99 vues71 pages

Application de Gestion de Stock Pharma

Transféré par

leghmouche.afaf
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
99 vues71 pages

Application de Gestion de Stock Pharma

Transféré par

leghmouche.afaf
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

N° d’ordre : 01 / STI / TCO Année Universitaire : 2017 / 2018

UNIVERSITE D’ANTANANARIVO
----------------------
ECOLE SUPERIEURE POLYTECHNIQUE
-----------------------
MENTION TELECOMMUNICATION

MEMOIRE
en vue de l’obtention
du DIPLOME de LICENCE

Domaine : Sciences de l’Ingénieur


Mention : Télécommunication
Parcours : Système et Traitement de l’Information

par : ANDRIAMANJAKA Ny Aina Manoa

CREATION D’UNE APPLICATION DE GESTION


DE STOCK PHARMACEUTIQUE : GESTPHARMA
Soutenu le vendredi 17 mai devant la Commission d’Examen composée de :
Président :
M. ANDRIAMASY Zidora

Examinateurs :
M. RANDRIAMANAMPY Samuel
M. BOTO ANDRIANANDRASANA Jean Espérant
M. RAKOTONDRAINA Tahina Ezéchiel
Directeur de mémoire :
M. RANDRIAMIHAJARISON Jimmy
REMERCIEMENTS

Je tiens à exprimer en premier toute ma gratitude à Dieu de m’avoir donnée la santé et le courage
de réaliser ce travail.

J’adresse par la suite mes plus vifs remerciements ainsi que mes sentiments et mes
reconnaissances les plus respectueux à quelques personnes qui m’ont aidé à l’achever et qui
m’ont aussi assisté jusqu’à son aboutissement final, à savoir :

 Monsieur RAVELOMANANA Mamy Raoul, Professeur Titulaire, Président d


l’Université d’Antananarivo ;

 Monsieur RAKOTOSAONA Rija Lalaina, Professeur Titulaire, Directeur de l’Ecole


Supérieure Polytechnique d’Antananarivo ;
 Monsieur RAKOTOMALALA Mamy Alain, Maître de Conférences, Docteur HDR
Chef de la Mention Télécommunication à l’Ecole Supérieure Polytechnique d’Antananarivo et
qui m’a fait l’honneur de présider ce mémoire.
 Monsieur RANDRIAMIHAJARISON Jimmy, Assistant d’Enseignement et Recherche,
en tant que Directeur de mémoire et Encadreur pédagogique, qui m’a dirigé et conseillé durant
la réalisation de ce travail ;
Je témoigne toutes mes reconnaissances aux membres de jury qui ont voulu examiner ce travail :

 Monsieur ANDRIAMASY Zidora, Maitre de conférences au sein de la mention


Télécommunication, en tant Président de jury

 Monsieur RANDRIAMANAMPY Samuel, Assistant d’Enseignement de Recherche au


sein de la mention Télécommunication

 Monsieur BOTO ANDRIANANDRASANA Jean Espérant, Assistant d’Enseignement


de Recherche au sein de la mention Télécommunication

 Monsieur RAKOTONDRAINA Tahina Ezéchiel, Maitre de conférences au sein de la


mention Télécommunication
 Mes parents, pour leur soutien moral et financier pour la réalisation de ce travail ;
J’adresse aussi, mes sincères remerciements, à tous ceux qui, de près ou de loin,
contribué à l’aboutissement final de ce travail.

i
TABLE DES MATIERES

REMERCIEMENTS ................................................................................................................. i

TABLE DES MATIERES ....................................................................................................... ii

ABREVIATIONS .................................................................................................................... vi

INTRODUCTION GENERALE ........................................................................................... 1

CHAPITRE 1 NUMERISATION DE L’INFORMATION ET ETUDE DE BASE DE


DONNEES................................................................................................................................. 2

1.1 Introduction ........................................................................................................................ 2

1. 2 Numérisation de l’information et systèmes informatiques ............................................ 2

1.2.1 Numérisation de l’information ........................................................................................ 2

1.2.2 Systèmes informatiques .................................................................................................... 3

1. 3 Etude de base de données ................................................................................................. 4

1.3.1 Généralisation .................................................................................................................. 5

1.3.2 Systèmes de gestion de base de données (SGBD) ............................................................ 5

1.3.3 Logiciels de gestion de base de données .......................................................................... 7

1.3.4 Méthodes de conception de base de données ................................................................... 7

1.3.5 Merise................................................................................................................................ 8

1.6 Conclusion ......................................................................................................................... 11

CHAPITRE 2 ........................................................................................................................ 12

LA GESTION DE STOCK ET GENERALITE SUR GESTPHARMA ........................... 12

2.1 Introduction ...................................................................................................................... 12

2.2 Gestion de stock ................................................................................................................ 12


ii
2.2.1 Généralité sur les stocks ................................................................................................. 12

2.2.2 La gestion de stock ......................................................................................................... 13

2.3 Présentation du projet : GestPharma ............................................................................. 15

2.3.1 Gestion de projet et application informatique ............................................................... 15

2.3.2 Etude de l’existant .......................................................................................................... 16

2.3.3 Solution proposée ........................................................................................................... 18

2.4 Conclusion ......................................................................................................................... 19

CHAPITRE 3 .......................................................................................................................... 20

ANALYSES DE BESOINS ET LES OUTILS DE REALISATION DU TRAVAIL ....... 20

3.1 Introduction ...................................................................................................................... 20

3.2 Analyse des besoins .......................................................................................................... 20

3.2.1 Les besoins fonctionnels ................................................................................................ 20

3.2.1 Les besoins non fonctionnels ......................................................................................... 21

3.2.2 Le cas d’utilisation ......................................................................................................... 21

3.3 Choix de logiciel pour la conception de la base de données ......................................... 22

3.3.1 PowerAMC 15................................................................................................................. 22

3.3.2 MySQL ............................................................................................................................ 24

3.4 Choix de logiciel pour la conception des pages .............................................................. 25

3.4.1 Artisteer ........................................................................................................................... 25

3.4.2 Macromedia Dreamweaver 8 ......................................................................................... 26

3.5 Choix de langages ............................................................................................................. 28

3.5.1 Le langage PHP.............................................................................................................. 29

iii
3.5.2 HTML ............................................................................................................................. 31

3.5.4 JavaScript ....................................................................................................................... 34

3.6 Choix de service local ....................................................................................................... 35

3.6.1 Présentation de WampServer ......................................................................................... 35

3.6.2 Utilisation de WampServer ............................................................................................ 36

3.6.3 S ....................................................................................................................................... 36

3.7 Conclusion ......................................................................................................................... 36

CHAPITRE 4 CONCEPTION ET REALISATION DE GESTPHARMA .................. 37

4.1 Introduction ...................................................................................................................... 37

4.2 Conception du logiciel ...................................................................................................... 37

4.2.1 Recueille des besoins fonctionnels................................................................................. 37

4.2.2 Identifications des messages .......................................................................................... 38

4.2.3 Modélisation du contexte ............................................................................................... 38

4.2.5 Conception de la base de données ................................................................................. 41

4.3 Réalisation de l’application ............................................................................................. 46

4.3.1 Le squelette et template de l’application ........................................................................ 46

4.3.2 Les interfaces de l’application ....................................................................................... 47

4.4 Conclusion ......................................................................................................................... 50

CONCLUSION GENERALE .............................................................................................. 51

ANNEXES 1 ............................................................................................................................ 52

EXTRAIT DE CODE SOURCES ......................................................................................... 52

A1.1 Extrait de code de la page d’authentification ............................................................. 52

iv
A1.2 Extrait de code de la page d’accueil ............................................................................. 53

ANNEXES 2 ............................................................................................................................ 55

APPLICATION WEB............................................................................................................ 55

A2.1 Structure d’une application web .................................................................................. 55

A2.2 Architecture MVC (Modèle, Vue, Contrôleur) .......................................................... 55

A2.2.1 Les vues ....................................................................................................................... 55

A2.2.2 Le modèle ..................................................................................................................... 55

A2.2.3 Le contrôleur ................................................................................................................ 56

A2.2.4 Démarche M.V.C ......................................................................................................... 56

A2.3 Quelques conseils ........................................................................................................... 57

BIBLIOGRAPHIE ................................................................................................................. 59

FICHE DE RENSEIGNEMENTS ........................................................................................ 61

RESUME ................................................................................................................................. 62

ABSTRACT ............................................................................................................................ 62

v
ABREVIATIONS

AIX : Advanced Interactive eXecutive

ASP : Application Service Provider

BPEL : Business Process Execution Language

BPMN : Business Process Model and Notation

BSDi : Berkeley Software Distribution

CD : Compact Disc

CGI : Common Gateway Interface

CSS : Cascading Styles Sheets

CV : Curriculum Vitæ

DOS : Disk Operating System

DVD : Digital Versatile DisC

EbXML : Electronic Business using eXtensible Markup Language

E/R : Entité/Relation

FI : Form Interpreter

FreeBDS : Free Berkeley Software Distribution

HOOD : Hierarchical Object-Oriented Design

HP-UX : Hewlett Packard UniX

HTML : Hypertext Markup Langage

JSP : Java Server Page

vi
MCD : Modèle Conceptuel de Données

MLD : Modèle Logique de Données

MPD : Modèle Physique de Données

OOA : Object Oriented Analysis

OS/2 : Operating System/2

PC : Personnal Computer

PDF : Portable Document Format

PHP : Personal Home Page

PSM : Persistent Stored Modules

RAM : Random Access Memories

SGBD : Système de gestion de bases de donnéess

SGBDR : Système de gestion de bases de données relationnelles

UML : Unified Modeling Language

URL : Uniform Resource Locator

WAP : Wireless Application Protocol

W3C : World Wide Web Consortium

XHTML : Extensible HyperText Markup Language

XML : Extensible Markup Language

vii
INTRODUCTION GENERALE

Durant ces dernières années, l'informatique s'est imposée d'une manière très impressionnante
dans les entreprises, cela est dû à son apport extraordinaire dans le domaine de gestion des bases
de données.
En effet, l'informatique désigne l'automatisation du traitement de l'information par un système
concret (machine) ou abstrait. On entend également par l'informatique, l'ensemble des sciences
et techniques en rapport avec le traitement de l'information.
L'informatique est de plus en plus utilisée dans tous les domaines d'activités y compris celui de
la gestion des stocks auquel nous rattacherons d'ailleurs notre étude, et cela pour une meilleure
gestion des différents traitements exigés par cette activité de gestion des stocks.
Nous avons pu constater, en effet, pendant nos recherches que l'ensemble des traitements au
sein du magasin de stockage d’une pharmacie se fait manuellement, ce qui engendre un certain
nombre de problèmes tels que la lenteur dans l'accès aux données et le risque de perte
d'informations ; donc la meilleure solution pour pallier aux problèmes est l'informatisation afin
d'assurer l'accès instantané aux données et une sécurisation de ces dernières, ce qui simplifie le
travail administratif d’où la mise en place de notre projet qui s’intitule : « LA CREATION
D’UNE APPLICATION DE GESTION DE STOCK PHARMACEUTIQUE :
GESTPHARMA ».
Ayant présenté les outils et la méthode adoptée, nous allons maintenant exposer le plan de
travail qui se subdivisera en quatre principaux chapitres.
Dans le premier chapitre, nous commençons à introduire le thème en développant la
numérisation de l’information et l’étude de base de données.
Puis, au sein de l’insertion du thème dans le deuxième chapitre, nous analysons la gestion des
stocks et l’application lui-même.
Au niveau de troisième chapitre, nous étendons la représentation l’analyse des besoins et les
outils utilisés durant la réalisation de notre projet. Finalement dans le dernier chapitre qu'on a
nommé : Conception et Réalisation de GestPharma, nous présentons le déroulement de la
réalisation de notre projet.

1
CHAPITRE 1
NUMERISATION DE L’INFORMATION ET ETUDE DE BASE DE DONNEES

1.1 Introduction

L’informatique est définie comme la science du traitement rationnel et automatique de


l'information à l’aide d’une machine informatique. Une machine informatique qui est faite à
partir de circuits électroniques ne peut traiter que des informations numérisées, c’est-à-dire
traduites par des séries de nombres. En situation éducative, où il est important de verbaliser et
formuler les situations pour aider les apprenants à se les approprier, il est d’autant plus
important d’adosser toute utilisation d’un produit à une démarche de compréhension et de
structuration des principes sous-jacents. [1]

1. 2 Numérisation de l’information et systèmes informatiques

1.2.1 Numérisation de l’information

Pour être traitées automatiquement, toutes les informations qu'il s'agisse de données chiffrées,
de textes, d'images, ou encore de sons, sont traduites sous une forme conventionnelle
numérique, en fait binaire (0 et 1). Les données ainsi obtenues ont toutes le même format,
homogène. Une première conséquence est leur possible dématérialisation, c’est-à-dire leur
dissociation de tout support physique. [2]

La question du choix du système de codage des informations, à savoir la convention de


transformation en nombre, est centrale. La manière de coder n’est pas indépendante des
traitements de l’information visés. Les principes généraux sont assez simples : le codage d’un
texte brut nécessite un code pour chacun des caractères le constituant, y compris la ponctuation
et le caractère « espace ». Un texte mis en forme : paragraphe, gras, italique, etc., comportera,
Den plus du texte, un codage de chaque élément de mise en forme. Une technique de codage
d’images repose sur sa découpe en une trame de petits rectangles de dimension égale, ou
pixellisation. Ce sont les coordonnées dans la trame et la couleur de chaque pixel qui sont
codées. Le nombre de couleur est limité, ainsi que la finesse du tramage. Une autre technique,
celle du codage vectoriel, consiste à voir l’image comme un ensemble de formes que l’on peut
décrire à l’aide de caractéristiques. Ce sont ces formes et leurs caractéristiques (dont la position
dans l’image) qui sont codées.

2
Ce que l’utilisateur a devant soi, c'est donc toujours le couple « machine » plus « logiciel ». De
plus, dans une tâche instrumentée par de tels systèmes, il est rare de ne pas utiliser plusieurs
logiciels, et donc finalement plusieurs systèmes, en même temps.
Il est aussi de plus en plus rare d'utiliser un système informatique qui ne soit en réseau avec
d'autres systèmes. Des systèmes qui échangent des données, mais aussi des traitements. Ces
systèmes voient ainsi leurs capacités de stockages et de traitements augmenter.
Les modes d'échanges des systèmes informatiques sont basés sur des processus d'envoi d’une
requête puis d’attente d’une réponse. Les deux systèmes concernés sont mis, l’un dans un rôle
de client (celui qui envoie la requête), et l’autre de serveur (celui qui répond à la requête, qui
rend un service). Ces processus nécessitent des données et traitements spécifiques. Dans la
mesure où les systèmes en communication peuvent utiliser des technologies différentes, il est
nécessaire d’établir des conventions et des normes sur les formats des données échangées, les
langages permettant de les communiquer, ainsi que les protocoles suivis par ces échanges.

1.2.2 Systèmes informatiques

Un système informatique est un ensemble mixte constitué de composants matériels et


d'intelligence logicielle, lesquels travaillent en synergie au service de l'utilisateur et ne seraient
rien l'un sans l'autre.
Lorsqu'on parle des composants d'un ordinateur ou PC (Personal Computer), on parle du
matériel qui se trouve à l'intérieur de l'ordinateur, contrairement aux périphériques externes qui
sont reliés par des câbles ou des moyens de communication sans fil. Ce sont ces composants
internes qui sont décrits ici pour vous permettre de vous familiariser avec le matériel
informatique de votre PC : l'alimentation, la carte mère, le processeur et son ventilateur, la
mémoire vive (RAM : Random Access Memories), le disque dur, le lecteur/graveur CD/DVD
et enfin la carte graphique. Mis à part le lecteur de DVD, tous les composants cités plus haut
sont nécessaires au bon démarrage du PC(Personal Computer). [3]
Le principe énoncé précédemment est celui mis en œuvre dans les ordinateurs, les tablettes, les
téléphones et plus généralement toutes les machines informatiques que nous utilisons chaque
jour.
Ces machines ont une architecture fonctionnelle commune : des organes de calcul, de mémoire,
de communication entre matériels, d’interface avec l’utilisateur humain. Cette composition
fonctionnelle est relativement stable. En revanche, les technologies utilisées pour les différents

3
composants, et leur performance, font l’objet de progrès et d’innovation et sont donc très
variables.
La machine ne fonctionne pas seule, nue, sans logiciels ou programmes. Ils décrivent, dans un
langage interprétable par la machine, des traitements à réaliser et les données sur lesquelles les
réaliser. Lors d’une session d’utilisation d’une machine informatique, on utilise en fait de
nombreux programmes. Certains programmes font fonctionner la ou les machines utilisées (le
système d’exploitation, les pilots d’imprimantes, les gestionnaires de bus de communication,
etc.). D’autres programmes sont directement utilisés par l’utilisateur pour l’assister dans la
réalisation d’une tâche et l’obtention d’un résultat. Ce sont les logiciels applicatifs.
Ce que l’utilisateur a devant soi, c'est donc toujours le couple « machine » plus « logiciel ». De
plus, dans une tâche instrumentée par de tels systèmes, il est rare de ne pas utiliser plusieurs
logiciels, et donc finalement plusieurs systèmes, en même temps. [4]
Il est aussi de plus en plus rare d'utiliser un système informatique qui ne soit en réseau avec
d'autres systèmes. Des systèmes qui échangent des données, mais aussi des traitements. Ces
systèmes voient ainsi leurs capacités de stockages et de traitements augmenter.
Les modes d'échanges des systèmes informatiques sont basés sur des processus d'envoi d’une
requête puis d’attente d’une réponse. Les deux systèmes concernés sont mis, l’un dans un rôle
de client (celui qui envoie la requête), et l’autre de serveur (celui qui répond à la requête, qui
rend un service). Ces processus nécessitent des données et traitements spécifiques. Dans la
mesure où les systèmes en communication peuvent utiliser des technologies différentes, il est
nécessaire d’établir des conventions et des normes sur les formats des données échangées, les
langages permettant de les communiquer, ainsi que les protocoles suivis par ces échanges.

1. 3 Etude de base de données

Une base de données est un ensemble structuré de données apparentées qui modélisent un
univers réel.
Une base de données est faite pour enregistrer des faits, des opérations au sein d'un organisme
(administration, banque, université, hôpital, ...).
Les bases de données ont une place essentielle dans l'informatique. [5]

4
1.3.1 Généralisation

Une base de données est une collection de données connexes à partir desquelles l'utilisateur
peut efficacement extraire des informations. Les données sont stockées dans un emplacement
central et partagées par différents utilisateurs. Les applications de base de données sont
largement utilisées dans de nombreux domaines: réservation de voyages, horaires de vols, suivi
de comptes ou d'emprunts, inscription à des cours, résultats d'examens, annuaires
téléphoniques, magasins en ligne, billetterie, consultations médicales, suivi d'achats, de stocks,
facturation, bibliothèques numériques, listes de produits et de clients, payement des salaires,
suivi des vacances, taxation, informations géographique ainsi que conception assistée par
ordinateur.
Une base de données peut-être partagée entre plusieurs utilisateurs en même temps d’où le
contrôle des accès concurrents.

Dans les applications de fouille de données (data mining), des renseignements bruts sont
collectés et placés dans une base de données géante, puis sont analysés et synthétisés en vue
d'en extraire des renseignements potentiellement utiles. Les applications de fouille de données
sont utilisées dans le domaine de la santé, du commerce et des banques pour obtenir des
réponses à des questions telles que « quelle est la probabilité d'obésité d'un adulte qui mange
rarement des fruits et des légumes ? », ou « quels sont les facteurs qui conduisent un client à
fermer son compte en banque ? », ou encore « quelle est la différence entre le panier d'achats
d'un habitant des villes et un habitant des campagnes ? ».
Les applications de base de données font appel à un logiciel moteur le SGBD pour définir,
stocker, retrouver et manipuler le contenu de la base de données, ainsi que contrôler la
redondance des données, imposer de la cohérence, et partager les informations entre plusieurs
utilisateurs. Dans ce type d'application, les utilisateurs expérimentés peuvent manipuler
directement le SGBD, pour répondre à des demandes complexes, tandis que les demandes
ordinaires sont effectuées en utilisant l'application et ne requièrent pas de connaissances
techniques.
1.3.2 Systèmes de gestion de base de données (SGBD)

Généralement, une base de données est contrôlée par un système de gestion permettant
d’effectuer la recherche, le tri ou la fusion de données, ainsi que toute autre requête relative à
ces données. Les bases de données comptent à l’heure actuelle de nombreux domaines de mise
5
en pratique : gestion de stocks, suivi commercial, gestion électronique de documents, gestion
de clientèle, etc.
Parmi les systèmes de gestion de bases de données (SGBD), les plus courants sont ceux associés
aux bases de données relationnelles (SGBDR), où l’information est rangée dans des fichiers,
sous forme de tables composées de lignes et de colonnes. Les lignes représentent les
enregistrements (ensembles d’informations relatives à des rubriques séparées), tandis que les
colonnes correspondent aux champs (attributs spécifiques à un enregistrement).
Lorsque l’on effectue une recherche dans une base de données relationnelle, on peut associer
l’information d’un champ d’une première table à celle d’un champ d’une deuxième table, afin
d’en produire une troisième rassemblant certaines données des deux tables d’origine. Par
exemple, si une table contient les champs N° EMPLOYÉ, NOM, PRÉNOM et DATE-
EMBAUCHE, et qu’une autre table contient les champs SERVICE, N° EMPLOYÉ et
SALAIRE, une base de données relationnelle pourra associer les champs N° EMPLOYÉ des
deux tables pour rechercher certaines informations, telles que les noms de tous les employés
ayant un certain revenu ou les services de tous les employés embauchés après une date donnée.
En d’autres termes, une base de données relationnelle utilise les correspondances existant entre
plusieurs tables pour en définir de nouvelles. [6]
Un SGBD doit permettre de décrire indépendamment des applications (de manière intrinsèque).
Il doit aussi manipuler des données c’est-à-dire interroger et mettre à jour les données sans
préciser l’algorithme d’accès.
Un SGBD permet aussi la vérification, le control des données.
Le choix de SGBD est également important dans la création d’une application. Il existe comme
le choix de langage de programmation quelques éléments à savoir :
- licence: libre et gratuit ou payant
- la plateforme: sa capacité à s’adapter aux plateformes
- les avantages: les plus par rapport aux autres SGBDR

- les inconvénients: les soucis rencontrés en l’utilisant

6
On va voir un tableau récapitulatif pour bien déterminer un SGBDR :

SGBD Licence Plateforme Avantages Inconvénients


MySQL Commercial Multiplateforme Solution très Support
courant en incomplet des
hébergement procédures
public, très stockées, pas
bonne assez robuste
intégration dans avec de fortes
l’environnement volumétries
Apache/PHP
Oracle Multiplateforme Support les Prix exorbitant
procédures demande
stockées, et de beaucoup de
importants ressources
volume de
données
Tableau 1.01 : Tableau récapitulatif d’un SGBDR

1.3.3 Logiciels de gestion de base de données

En règle générale, les bases de données conçues pour les micro-ordinateurs sont relationnelles.
De nos jours, il existe de nombreux logiciels de gestion de bases de données relationnelles :
Access de Microsoft, Paradox de Novell, Oracle de Oracle Systems, etc.
La plupart d’entre eux utilisent le langage SQL, langage d’interrogation, de mise à jour et de
gestion de bases de données relationnelles.
1.3.4 Méthodes de conception de base de données

Lorsque l’on décide de créer une base de données relationnelle, il faut surtout veiller à définir
clairement ses caractéristiques. Les données du problème doivent être énoncées avec précision
et décidées en amont selon les besoins à traiter, la réalisation et l’installation de la base de
données s’avérant alors beaucoup plus souples.
En effet, une erreur de conception pourrait en générer d’autres bien plus graves lors de
l’installation de la base, allant parfois même jusqu’à la perte de certaines données.
7
C’est pour ceux que des méthodes de conception de bases de données ont été mises au point
afin d’éviter les erreurs majeures : la méthode MERISE constitue ainsi l’une des méthodes la
plus employée en entreprise, mais d’autres comme UML, HOOD, OOA ou encore REMORA
sont également très présentes dans les milieux industriels.

1.3.5 Merise

Merise ou Méthode d’Etude et Réalisation Informatique par Sous Ensemble étant une méthode
de conception et de développement de système d’information.

Merise est une méthode de conception, de développement et de réalisation de projet


informatique.
Elle est basée sur séparation des données et des traitements à effectuer en plusieurs modèles
conceptuels et physiques.
La séparation des données et des traitements assure la longévité au modèle. En effet
l’agencement des données n’a pas à être souvent remanié, tandis que les traitements le sont plus
fréquemment. Merise permet de concevoir une base de données relationnelle : c'est-à-dire les
données utilisées dans la conception du système sont liées entre elles. [7]
Il existe quatre types de niveaux d’abstraction de Merise :
- Niveau conceptuel : exprime les choix fondamentaux de gestion, les objectifs de
l’organisation. Il décrit les invariants de l’organisation et le métier de l’organisation. Le
niveau conceptuel définit les activités, les choix des gestions et les informations.
- Niveau organisationnel : exprime les choix organisationnels de ressources humaines et
matérielles. Il définit la répartition géographique et fonctionnelle des sites de travail, le
mode de fonctionnement, la répartition du travail homme/machine, les postes de travail,
la volumétrie des données et enfin la sécurité des données.
- Niveau logique : exprime la forme que doit prendre l’outil informatique pour être adapté
à l’utilisateur, à son poste de travail. Le niveau logique décrit le schéma de la base de
données c’est-à-dire les caractéristiques du mode de gestion des données, les volumes
par unité de stockage et l’optimisation des coûts induits par le mode de gestion.
- Niveau physique : traduit les choix techniques et la prise en compte de leurs spécificités
et répond aux besoins des utilisateurs sur les aspects logiciels et matériels. Il définit
complètement les fichiers, les programmes, l’implantation physique des données et des
traitements, les ressources à utiliser et enfin les modalités de fonctionnement.
8
Dans la réalisation de ce projet nous avons utilisés de nombreux concepts et niveaux dans
MERISE tels que :
- Le Niveau Conceptuel : entité et relation ; la règle de gestion et Modèle Conceptuel des
Données (MCD)
- Le Niveau Logique : le Modèle Logique des Données (MLD)

Réel perçu

Invariant / Stable
Conceptuel

Organisationnel

Logique

Physique
Variable

Figure 1.01 : Schéma des niveaux d’abstraction de Merise

9
[Link] Modèle conceptuel de données (MCD)

Le MCD a pour objectif de modéliser les données (aspect statique) à mémoriser et à traiter ;
l’objectif est d’avoir des données toujours cohérentes et intègres ; il s’agit donc d’une
représentation des données, facilement compréhensibles.

Le MCD est une représentation graphique des données à un niveau conceptuel, c'est-à-dire, sans
se préoccupé ni des contraintes d’organisation, ni du gestionnaire de bases de données utilisé,
ni des traitements.
Le MCD de Merise correspond au modèle Entité-Association.
Une Entité est la représentation d’un élément matériel ayant un rôle dans le système que nous
souhaitons décrire.
Une Propriété est une donnée élémentaire que nous percevons sur une entité. L’identifiant d’une
entité est une propriété (ou ensemble de plusieurs propriété) de l’entité telle que à chaque valeur
de l’identifiant correspond une et une seul occurrence de l’entité.
Une association est un lien perçu dans le réel entre deux ou plusieurs entités.
La cardinalité d’une entité par rapport une association s’exprime sous forme d’un couple :
(cardinalité minimale, cardinalité maximale).
Cardinalité minimale : elle vaut 0 ou 1, c’est ne nombre minimal de fois ou une occurrence d’un
objet participe aux occurrences de l’association.
Cardinalité maximale : elle vaut 1 ou une entité fixé, n, c’est le nombre maximal de fois ou une
occurrence d’un objet participe aux occurrences de l’association.

[Link] Modèle logique de données (MLD)

Le MLD est une transcription (également appelée dérivation) du MCD dans un formalisme
adapté à une implémentation ultérieure, au niveau physique, sous forme de base de données
relationnelle.
Le MLD ajoute au MCD la notion d’organisation. Il indique comment les données seront
organisées.
La transcription d’un MCD en modèle relationnel s’effectue selon quelque règle simple qui
consiste d’abord à transformer toute entité en table, avec l’identifiant comme clé primaire, puis
à observer les valeurs prises par cardinalités maximum de chaque association pour représenter
celle-ci soit (exemple : cardinalité max 1,1 et 0,n) par l’ajout d’une clé étrangère dans la table

10
qui possède la cardinalité max 1, soit ( ex : cardinalité max n-n ) par la création d’une nouvelles
table dont la cl primaire est obtenue par concaténation de clés étrangères correspondant aux
table liées.

1.6 Conclusion

Dans ce chapitre, on a présenté en premier lieu notre domaine de travail qui se trouve dans le
domaine informatique. L’informatique facilite les tâches dans une entreprise et sécurise leurs
données et leurs informations.
La culture informatique a une double dimension. Une dimension pratique, d’une part, relative
à la connaissance des « produits » qui portent sur des objets concrets, répondent à des besoins
spécifiques, et sont sujets au changement. Une dimension plus théorique, d’autre part, portant
sur la connaissance de certains concepts et principes qui sont abstraits, indépendants des outils,
et stables dans le temps.
En situation éducative, où il est important de verbaliser et formuler les situations pour aider les
apprenants à se les approprier, il est d’autant plus important d’adosser toute utilisation d’un
produit à une démarche de compréhension et de structuration des principes sous-jacents.
Ensuite, on a vu aussi une étude approfondie d’une base de données qui nous aide à gérer les
données dans une entreprise, et les stocker dans un emplacement assuré. [8]
Dans la réalisation de ce projet nous avons utilisés de nombreux concepts et niveaux dans
MERISE tels que : le niveau conceptuel : entité et relation ; la règle de gestion et modèle
conceptuel des Données (MCD) et le niveau logique : le modèle logique des données (MLD).

11
CHAPITRE 2

LA GESTION DE STOCK ET GENERALITE SUR GESTPHARMA

2.1 Introduction

De nos jours, les progrès de la science et de la technologie s’accomplissent si rapidement que


nous ne sommes pas capables de les suivre dans tous les domaines. Cet engouement récent des
technologies de l’information dans le monde force les organisations à s’intéresser au système
d’information, il est devenu un point central dans leur développement. Cet avancement au
niveau du système informatique couvre plusieurs domaines, en particulier le domaine
pharmaceutique. En effet, le progrès de l’information intéresse les pharmaciens qui visent
toujours à concrétiser leurs objectifs, à conserver les données et à améliorer leur rendement.
C’est dans ce cadre que se situe notre projet. En effet, nous étions confiés de concevoir et de
développer une application locale de gestion d’une pharmacie qui permet d’informatiser et de
faciliter les différentes tâches au niveau de la pharmacie. La solution que nous avons proposée,
qui est nommée « GestPharma », présente un système complet en assurant la gestion au
quotidien de la pharmacie : inventaire des produits, gestion de stock, et les commandes des
clients. GestPharma englobe aussi un module « Statistique » permettant au pharmacien de
prendre les bonnes décisions et de bien gérer ses achats.

2.2 Gestion de stock

2.2.1 Généralité sur les stocks

[Link] Définition de stock

Le stock est un mot anglo-saxon signifiant, « une souche ».l’idée du stock est liée aux notions
de prévision et de précaution : on stock pour se prémunir contre les risques d’une période
possible. Exemple : des provisions de bois pour l’hiver.
Un stock est constitué par l’ensemble des marchandises ou des articles accumulés dans l’attente
d’une utilisation ultérieure plus au moins proche et qui permet d’alimenter les utilisateurs au
fur et à mesure de leurs besoins sans leur imposer les délais et les à-coups d’une fabrication ou
d’une livraison par les fournisseurs. [9]

12
Le stock est un régulateur entre l’approvisionnement, la production et l’écoulement des produits
et des marchandises.

Le stock est l’ensemble des biens accumulés qui seront utilisés ultérieurement (dans le future).la

notion de stock regroupe : les marchandises, les matières et fournitures, les produits finis,

produits semi-finis, les encours,…

[Link] Objectifs du stock

Son objectif est de gérer les articles disponibles dans l'entreprise en vue de satisfaire les besoins
à venir. Ces besoins seront à satisfaire au bon moment, dans les bonnes quantités et d'une
manière permettant la bonne utilisation du stock, la rupture du stock est le non capacité de
satisfaire un besoin à l'aide du stock. Tout l'art de cette gestion est d'avoir suffisamment de stock
pour répondre correctement aux besoins et pas trop pour ne pas avoir à supporter les différents
coûts du stock.
Un stock est nécessaire pour les raisons suivantes :

- parce que le rythme de la production est différent du rythme de la consommation.


- parce qu’il est peut être avantageux d’acheter à des moments favorables ou par quantités
économiques.
- parce qu’il est souvent impossible et onéreux d’acheter chaque fois qu’on a besoin d’une
petite quantité d’un produit même si le fournisseur peut la délivrer.
- parce que même si le rythme de production correspond au rythme d’utilisation il faut se
prémunir contre les aléas de la fourniture.

2.2.2 La gestion de stock

[Link] Définition de la gestion de stock

La gestion des stocks est l'ensemble des procédures appliquées par une entreprise pour
déterminer les approvisionnements et les quantités à acheter.
La gestion des stocks est une fonction fondamentale pour la majorité des fonctions donc une
mauvaise gestion des stocks peut compromettre sérieusement les activités d'une entreprise à
court-terme pour cela il faut trouver le point d'équilibre afin de maximiser l'efficacité de
l'entreprise. La création d'un stock se produit lorsque l'arrivée des marchandises est plus élevée
13
que la sortie des marchandises. La rupture de stock, elle, se produit lorsque les sorties de
marchandises excèdent les entrées. La gestion des stocks commence dès les achats.
Une entreprise cherche toujours à éviter les ruptures de stocks et les commandes en souffrance
lorsque l'entreprise possède des stocks, elle s'assure d'une livraison alerte et ponctuelle, elle doit
aussi prendre en compte : un coût est lié au stockage de la marchandise tel que le coût des
intérêts, de la manutention, de l'espace loué, des assurances ainsi de suite.
Les dirigeants d'entreprise devront choisir la technique de gestion des stocks la plus appropriée
au bon fonctionnement de l'organisation.
Une étude de comparaison doit être élaborée avant de choisir une technique de gestion des
stocks.

[Link] Les enjeux de la gestion de stock

Les responsables de la gestion des stocks doivent perpétuellement rechercher l’équilibre entre
le niveau de satisfaction des consommateurs et les coûts engendrés par la constitution des
stocks.
Une quantité élevée de stocks peut provoquer :

• Des charges financières élevées. Des charges fixes (bâtiment, étagères, engins
lourds de manutention …) et des charges variables (Salaires du personnel, frais
d’entretien, quittances d’électricité, pertes dues à la détérioration ou à
l’obsolescence des produits stockés …) ;
• Des immobilisations des capitaux. Chaque article qui entre en stock est valorisé
et réduit ainsi les facilités de trésorerie;

Une quantité trop faible de stocks peut provoquer :

• Une augmentation des risques de rupture de stocks, avec quelques fois des
conséquences financières graves;
• La désorganisation d’un système de production entier (goulots d’étranglement,
augmentation des stockages intermédiaires) ;
• Une diminution des bénéfices de vente et une perte de la clientèle déçue par la
mauvaise qualité de service (retard de livraison, disponibilités insuffisantes,
ruptures …).

14
Une bonne gestion des stocks consiste donc à trouver cet équilibre qui permettra de maximiser
le profit en minimisant les coûts. Les prévisions et la planification sont des outils efficaces au
service de la gestion des stocks. [10]

2.3 Présentation du projet : GestPharma

2.3.1 Gestion de projet et application informatique

[Link] Gestion de projet

Un projet est un ensemble finalisé d’activités et d’actions entreprises dans le but de répondre à
un besoin défini dans des délais fixés et dans la limite de l’enveloppe budgétaire allouée.
Les cinq aspects d’un projet sont :

- fonctionnel : répond à un besoin défini par un client


- technique : respecte les spécifications et les contraintes
- organisationnel : respecte un mode de fonctionnement (rôles, cultures, fonctions,
résistance de changement)
- délais : respecte les échéances
- coût : respecte le budget prévu

Les types de projet sont :

- ouvrage : résultat unique tel que la construction des ponts, création des logiciels,…
- produit : mise au point d’une gamme de produit tel que la création de nouveau modèle
de voiture, nouvelle création de haute couture,…
- opération : fusion des deux entreprises, automatisations de processus, formation des
personnels
- évènement : coupe du monde de foot,…

La gestion de projet est définie comme une démarche visant à structurer, assurer et optimiser le
bon déroulement d’un projet, l’objectif étant d’obtenir un résultat de qualité pour le moindre
coût et dans le meilleur délai possible.
Les projets informatiques sont de plus en plus gros faisant intervenir des gens d’horizons
différents.

15
Le projet de création d’une application locale n’échappe pas aux règles de la gestion de projet.
En effet construire ou faire construire une application locale est avant tout un projet qui doit
être écrit, planifié et surtout évalué. Il s’agit de se fixer des objectifs, trouver des acteurs, répartir
des tâches, définir des étapes et aussi des échéances. [11]
Lorsque l’on souhaite créer une application locale, la première des choses est de définir son
projet. La perception d’un projet est essentielle pour sa réussite. En effet de nombreux projets
échouent à cause d’un mauvais cadrage ou d’une mauvaise définition du projet. Il est donc
important de définir la dimension d’un projet avant son lancement.

[Link] L’application informatique

Une application, un applicatif ou encore une appli, dans le domaine informatique, est
un programme (ou un ensemble logiciel) directement utilisé pour réaliser une tâche, ou un
ensemble de tâches élémentaires d'un même domaine ou formant un tout. Typiquement,
un éditeur de texte, un navigateur web, un lecteur multimédia, un jeu vidéo, sont des
applications. Les applications s'exécutent en utilisant les services du système
d'exploitation pour utiliser les ressources matérielles.

2.3.2 Etude de l’existant

Afin d’assurer une bonne gestion de ses différentes tâches, une pharmacie utilise des systèmes
informatique. On va voir deux sortes de logiciels : officine et pharma 2000.

[Link] Le logiciel Officine

Officine est un logiciel de gestion de pharmacie développé par un pharmacien dans les années
90s en une version DOS avec le langage COBOL puis il a évolué au début des années 2000
vers une version Windows en utilisant le langage procédurale WLANGAGE de WINDEV.
Etant donné que ce logiciel est conçu et développé par un pharmacien qui n’a pas de
connaissances fondamentales en informatique, Officine présente des défauts majeurs aussi
fonctionnels que non fonctionnels :
- il est clair que ce logiciel ne respecte pas les principes de génie logiciel tel que
l’extensibilité ou la modularité,
- Officine est un logiciel monoposte qui se base sur la fonctionnalité de partage de fichiers
et d’imprimante de Windows pour pouvoir s’exécuté en réseau,

16
- l’application oblige les utilisateurs parfois à effectuer des tâches répétitives, ce qui cause
une perte de temps considérable,
- Officine utilise pour la persistance de donné les fichiers indexés, ce qui nécessite
beaucoup des ressources ainsi qu’une phase de programmation importante pour gérer
l’intégrité des données,
- la manipulation d’Officine est un peu difficile vu qu’il fournit des interfaces
compliquées et chargées par plusieurs boutons inutiles.

[Link] Le logiciel Pharma 2000

Développé dans les années 2000, Pharma 2000 se compte parmi les logiciels de gestion de
pharmacie les plus utilisés sur le marché. Il est mis à jour chaque année pour supporter
l’évolution du domaine pharmaceutique. Bien que ce logiciel, procure à son utilisateur les
principales tâches de gestion de la pharmacie, il souffre de quelques défaillances parmi
lesquelles :
- Pharma 2000 ne contient pas un module de gestion de personnels et de ressources
humaines,
- l’application oblige les utilisateurs parfois à effectuer des tâches répétitives ce qui cause
une perte de temps considérable.

[Link] Comparaison entre les deux logiciels

Nous présentons dans cette section une comparaison entre les logiciels de gestion de pharmacie
cités précédemment. [12]

OFFICINE PHARMA 2000


Ergonomie *** *
Facilité * **
Efficacité **** **
Coûts ** **
Nombres d’utilisateurs ***** **

Tableau 2.01 : Tableau comparatif de logiciels officine et pharma 2000

17
2.3.3 Solution proposée

Pour remédier aux inconvénients des logiciels de gestion de pharmacie existants, nous
proposons une solution qui assure le bon déroulement des différents processus dans une
pharmacie en prenant en considération l’expérience utilisateur en termes d’interface
homme/machine, rapidité et efficacité. Nous envisageons alors de concevoir et de développer
un système qui permet de :

- simplifier et automatiser les tâches répétitives de la gestion de la pharmacie,


- garantir une meilleure maintenabilité grâce à la modularité ainsi que le respect des

normes du génie logiciel,

- ajouter des fonctionnalités d’analyse et de statistiques afin d’aider l’utilisateur à prendre

les bonnes décisions,

- proposer une meilleure expérience utilisateur avec une interface graphique moderne et

riche qui s’adapte avec les écrans tactiles et non tactiles

[Link] Généralités sur GestPharma

L’objectif du projet est de créer une application locale pour gérer les stocks dans une pharmacie
afin de faciliter les tâches de ces travailleurs et aussi d’éviter les pertes des données dans la
pharmacie.
La création d’une telle application peut donner beaucoup d’avantages au propriétaire de la
pharmacie, si on ne parle simplement que du temps par exemple.

[Link] Les résultats attendus

Les résultats attendus pour cette application locale sont :

- application fonctionnelle : le résultat attendu est que l’application soit complètement


fonctionnelle, sans aucune erreur, tous les liens fonctionnent parfaitement.
- service fiable : toutes les données des utilisateurs de l’application sont en sécurité.

18
2.4 Conclusion

L’informatique devient une carrière très importante dans les pays plus ou moins développés,
son importance croissante peut s’expliquer en outre par une augmentation du degré
d’automatisation dans tous les systèmes d’informations…, et nous pouvons conclure que la
finalité première de la fonction de l’informatique consiste à faciliter le travail pour l’utilisateur
tout ce qui concerne la recherche, la mise à jour de l’information.
L’évolution de l’information exige et oblige l’utilisation de l’outil informatique avec une bonne
gestion, car l’informatique joue un très grand rôle dans la survie et le développement de
l’entreprise et les administrations, nous pouvons dire qu’il n’y aura pas d’accélération dans
l’information sans l’outil informatique et la bonne gestion.
Ce travail nous a permis d’aborder les problèmes dans les pharmacies, et de les situer dans le
conteste de réalité. Nous avons donc essayé de mettre à profil notre contribution à l’examen
bien pratique du sujet et d’apporter des suggestions qui permettront son amélioration. A travers
cet étude, nous pouvons conclure que : la pratique quelques soit sa nature nous a permis de
voir les problèmes que vit la gestion, ainsi que la mission de l’informatique.
A travers les démarches appliquées à travers notre étude détaillée on a pu dégager les points
suivants : adopter une meilleure méthode de travail pour aboutir au vif du sujet et connaître au
mieux les étapes pour la création d’une application de gestion de stock qui répond aux exigences
d’une pharmacie.

19
CHAPITRE 3

ANALYSES DE BESOINS ET LES OUTILS DE REALISATION DU TRAVAIL

3.1 Introduction

Dans ce chapitre, on voudra présenter les analyses de besoins du système utilisé. On


commencera par déterminer les besoins fonctionnels et non fonctionnels du système ensuite
définir les acteurs qui interagissent avec le système.
Ce projet informatique nécessite plusieurs logiciels afin d’atteindre les buts de l’utilisateur et
du client. Après avoir analysé les besoins, dans ce chapitre, on va citer tous les outils utilisés
durant la réalisation du projet.

3.2 Analyse des besoins

3.2.1 Les besoins fonctionnels

Les besoins fonctionnels se rapportent aux fonctionnalités que l'application en question doit
offrir pour satisfaire les utilisateurs.

Les fonctionnalités que doit intégrer l'application à développer peuvent être décrites comme
suit :

- Gestion des sécurités : le système permet de gérer les droits d'accès de chaque utilisateur
ainsi les menus qui seront affichés selon le privilège

- Gestion des médicaments : cette opération consiste à suivre l'état du stock à savoir les
mouvements réalisés sur le stock (entrée /sortie de médicament, quantité des
médicaments dans le stock).

- Gestion des commandes : cette opération est établie lorsqu'il y a un besoin de renouveler
le stock des médicaments. L'utilisateur doit créer un bon de commande correspondant à
ses besoins.

- Statistiques : cette fonction permettra de suivre les différentes statistiques possibles


selon le type de produit.

20
3.2.1 Les besoins non fonctionnels

Les besoins non fonctionnels sont indispensables et permettent l'amélioration de la qualité


logicielle de notre système. Ils agissent comme des contraintes sur les solutions, mais leur prise
en considération fait éviter plusieurs incohérences dans le système. Ce dernier doit répondre
aux exigences suivantes :

- Authentification : le système doit permettre à l'utilisateur de saisir son login et son mot
de passe pour accéder au système. Cette opération assure la sécurité du système et limite
le nombre des utilisateurs.

- Ergonomie : le système devra offrir aux utilisateurs une interface qui soit le plus riche
possible afin de limiter le nombre d'écrans. Par ailleurs, l'interactivité devra être adaptée
(usage du clavier, menu, etc..).

- La rapidité de traitement: en effet, vu le nombre important des transactions quotidiennes,


il est impérativement nécessaire que la durée d'exécution des traitements s'approche le
plus possible du temps réel.

- La performance: un logiciel doit être avant tout performant c'est à-dire à travers ses
fonctionnalités, répond à toutes les exigences des utilisateurs d'une manière optimale.

3.2.2 Le cas d’utilisation

[Link] Définition

Les cas d'utilisation représentent un élément essentiel de la modélisation orientée objet : ils
doivent en principe permettre de concevoir et de construire un système adapté aux besoins de
l'utilisateur.
Les cas d'utilisation se déterminent en observant et en précisant, acteur par acteur, les séquences
d'interaction -les scénarios- du point de vue de l'utilisateur.

[Link] Identification des acteurs du système

Un acteur représente un rôle joué par une personne ou une chose qui interagit avec un système.
En réponse à l'action d'un acteur, le système fournit un service qui correspond à son besoin.

21
L’acteur défini pour notre système est l’utilisateur. Il gère :

- La gestion des médicaments : Il a pour rôle d'effectuer le traitement qui touche


directement au stock : demandes des produits, suivi des mouvements et l'état du
stock.
- La gestion d'achat : pour déterminer la quantité de médicament, un bon de
Commande est préparé.
- La partie statistique : suivre les statistiques des médicaments qui se trouvent dans le
stock.
- Le client (secondaire): Il peut être soit un employé (identifié par son matricule), soit
un dispensaire appartenant au service médical.

3.3 Choix de logiciel pour la conception de la base de données

Il existe plusieurs logiciels pour effectuer la conception de la base de données tels que :
Win ‘design, jmerise, powerAMC,…
Durant la réalisation du projet, on a choisi powerAMC 15 pour la conception de la base de
données.

3.3.1 PowerAMC 15

[Link] Généralité sur powerAMC 15

PowerAMC est un environnement graphique de modélisation d’entreprise très simple d’emploi


qui permet d’effectuer les tâches suivantes :

- modélisation intégrée via l’utilisation de méthodologies et de notation standard :


données (E/R, Merise), métiers (BPMN, BPEL, ebXML), application (UML)
- génération automatique de code via des templates personnalisables : SQL (avec plus de
50 SGBD) Java .NET
- fonctionnalités de reverse engineering pour documenter et mettre à jour des systèmes
existants
- une solution de référentiel d’entreprise avec des fonctionnalités de sécurité et de gestion
des versions très complètes pour permettre un développement multiutilisateur.

22
[Link] Modélisation à l’aide de powerAMC 15

PowerAMC fournit un jeu unique d’outils de modélisation professionnels qui associent les
techniques et notations standard de la modélisation de processus métiers, de la modélisation des
données et de la modélisation d’applications UML et d’autres fonctionnalités puissantes afin de
vous aider à analyser, concevoir, construire et maintenir vos applications, en utilisant les
techniques les plus élaborées d’ingénierie logicielle.
La solution de modélisation PowerAMC permet d’intégrer étroitement la conception et la
maintenance des couches de données centrales de votre application et exigences de projet,
processus métiers, code orienté objet, vocabulaires XML et informations de réplication de base
de données. En mettant à votre disposition une série complète de modèles à tous les niveaux
d’abstraction, PowerAMC vous permet d’élargir la portée de votre processus de conception
itérative à tous les aspects de l’architecture de votre système, de la conception au déploiement,
et même au-delà.
PowerAMC n’impose aucune méthodologie ou aucun processus d’ingénierie logicielle.
Chaque société peut mettre en oeuvre sa propre organisation, en définissant les responsabilités
et les rôles, en indiquant quels outils utiliser et quelles sont les validations requises, et en
spécifiant les documents à produire à chaque stade du processus.
Une équipe de développement va comprendre plusieurs rôles d’utilisateurs, incluant les
analystes métier, les analystes et concepteurs, les administrateurs de base de données, les
développeurs et des testeurs, chacun utilisant une combinaison différente de composants de
PowerAMC.

[Link] Documentation de powerAMC 15

Ce manuel décrit les fonctions de base de PowerAMC.


La première partie de ce guide de fonctionnalités explique comment utiliser et personnaliser la
fenêtre principale de PowerAMC.
Vous apprendrez à :

- Personnaliser votre environnement de travail


- Utiliser les feuilles de propriétés des objets
- Utiliser les listes d’objets du modèle
- Utiliser l’Explorateur d’objets

23
[Link] Schéma d’un power AMC 15

Cette figure ci-dessous nous montre une fenêtre de powerAMC 15 :

Figure 3.01 : schéma d’un power AMC 15

[Link] Utilisation de powerAMC 15

PowerAMC propose beaucoup de fonctionnalité pour la conception et modélisation d’une base


de données. Premièrement, il faut créer le modèle conceptuel de données avec les tables et leurs
attributs. Ensuite, on peut générer manuellement le modèle logique de données. [13]

Il existe aussi plusieurs serveurs de base de données mais pour notre réalisation, on a
choisi MySQL.

3.3.2 MySQL

MySQL est un serveur de base de données relationnelles SQL qui fonctionne sur de nombreux
systèmes d’exploitation différents, incluant AIX, BSDi, FreeBDS, HP-UX, Lunix, Mac OS X,
NetWare, NetBSD, OpenBSD, OS/2, Warp, SDIIRIX, Solaris, Windows…Il est surtout
développé dans un souci de performances élevées en lecture, ce qui signifie qu’il est davantage
orienté vers le service de données déjà en place que vers celui de mises à jour fréquent et
fortement sécurisées. Cette fonctionnalité s’observe sur phpMyAdmin qui permet de créer, de
24
remplir et d’utiliser des bases MySQL avec presque la facilité d’un tableur. Et le plus
intéressant s’est que MySQL supporte deux langages informatiques, le langage de requête SQL
et le SQL/PSM (Persistent Stored Modules), Une extension procédurale standardisée au SQL
incluse dans la norme SQL : 2003. SQL/PSM, introduit dans la version 5 de MySQL, permet
de combiner des requêtes SQL et des instructions procédurales (boucles, conditions…), dans le
but de créer des traitements complexes destiné à être stocker sur le serveur de base de données
(objets serveur), par exemple des procédures stockées ou des déclencheurs (rudimentaires). [14]

3.4 Choix de logiciel pour la conception des pages

Pour la conception des interfaces de l’application, on a utilisé les logiciels artisteer version 4.1
et Macromedia Dreamweaver 8.

3.4.1 Artisteer

Artisteer est une marque déposée d’Extensoft [Link], utilisé pour créer des interfaces ou
des templates dans une application.

[Link] Les interfaces d’Artisteer

L'interface d’Artisteer est assez simple. Il y a plusieurs items principaux: Menu principal, Accès
Rapide au Menu, la barre de navigation par onglets et la visualisation.
Le Menu principal contient les commandes de fichiers de base, documents récents et d'autres
articles standards du menu Fichier. Le Menu Accès Rapide est une barre d'outils personnalisable
qui offre la possibilité de créer un raccourci aux commandes fréquemment utilisées et de
rapidement effectuer les tâches les plus courantes. Le Menu Accès Rapide contient annuler,
refaire, enregistrer et raccourcis d’ouverture. La Barre de navigation contient tous les outils
d'édition disponibles. La Visualisation vous permet de voir votre conception. Tous les liens et les
boutons dans la conception sont non cliquables.

25
[Link] Schéma d’Artisteer

Cette figure nous montre une fenêtre d’Artisteer :

Figure 3.02 : schéma d’Artisteer

3.4.2 Macromedia Dreamweaver 8

Dreamweaver est un logiciel d’édition de page web.


Dreamweaver attribue une extension particulière (.dwt) à ses fichiers de modèles et crée un lien
entre le modèle et les pages web reposant sur ce modèle. Les parties liées au modèle sont
verrouillées de sorte à empêcher toute modification accidentelle des éléments censés être
cohérents dans tout le site. Lorsque vous avez besoin de changer l’un de ces éléments communs,
vous modifiez le fichier du modèle Dreamweaver; le programme mettra alors automatiquement
à jour toutes les pages basées sur ce modèle pour qu’elles reflètent le changement.
Dreamweaver fut l'un des premiers éditeurs HTML de type tel écrit tel écran, mais également
l'un des premiers à intégrer un gestionnaire de site Ces innovations le propulsèrent rapidement
comme l'un des principaux éditeurs de site web, aussi bien utilisable par le néophyte que par le
professionnel.
Lorsque vous démarrez le logiciel Dreamweaver, vous avez le choix de créer différents objets
ou fichiers. La création d’un site web se fait par le choix Site Dreamweaver (voir la figure). La
création d’un site Web vous permet de créer un dossier de même nom que votre site dans lequel

26
se trouveront tous les objets manipulés par votre site Web (page HTML, images, feuilles de
styles…). [15]
En effet il :

- rédige un code HTML économique (pas de codes inutiles, ce qui allège la page);
- utilise le HTML à 100 % (ce qui n'est pas le cas de FrontPage qui possède ses propres
composants).

[Link] Les interfaces de Dreamweaver

L’interface de Dreamweaver propose trois grandes parties :

 le gestionnaire de fichiers : qui a plusieurs avantages et fonctionnalités:


• Modifie les liens pour nous lorsque l'on modifie des noms de fichiers ou lorsque l'on
change des fichiers de place.
• Permet la synchronisation facile avec le serveur Web sur lequel notre site est
hébergé.
• Vérifie les liens entre nos pages internes et affiche les liens brisés.
• Génère et affiche un plan du site sous forme hiérarchique.
• Permet l'utilisation de modèles.

Le gestionnaire de fichiers de Dreamweaver est donc un outil puissant que l'on a tout avantage
à utiliser. Le gestionnaire de fichiers se trouve dans son propre panneau, le panneau "Fichiers",
normalement dans la section de droite de la fenêtre. Il est séparé en trois onglets Fichiers,
Actifs, Fragments de code et possède sa propre barre d'outils et ses propres menus déroulants.

 l’interface de conception/programmation : l'utilisateur peut choisir entre un mode


création permettant d'effectuer la mise en page directement à l'aide d'outils simples,
comparables à un logiciel de traitement de texte (insertion de tableau, d'image, …). Il
est également possible d'afficher et d'éditer directement le code (HTML ou autre) qui
compose la page. On peut passer très facilement d'un mode d'affichage à l'autre ou opter
pour un affichage mixte. Cette dernière option est particulièrement intéressante pour les
débutants, qui à terme, souhaitent se familiariser avec le langage HTML.
 le panneau de propriétés : permet de définir les propriétés des objets manipulés (liens,
images, frames, tableaux…)

27
[Link] Utilisation de Dreamweaver

Dreamweaver offre deux modes de conception par son menu affichage. L'utilisateur peut choisir
entre un mode création permettant d'effectuer la mise en page directement à l'aide d'outils
simples, comparables à un logiciel de traitement de texte (insertion de tableau, d'image, etc.). Il
est également possible d'afficher et de modifier directement le code (HTML ou autre) qui
compose la page. On peut passer très facilement d'un mode d'affichage à l'autre, ou opter pour
un affichage mixte. Cette dernière option est particulièrement intéressante pour les débutants
qui, à terme, souhaitent se familiariser avec le langage HTML.

[Link] Schéma de Dreamweaver

La figure ci-dessous nous montre une fenêtre de Dreamweaver :

Figure 3.03 : Schéma de Macromedia Dreamweaver 8

3.5 Choix de langages

Durant la réalisation de ce projet, on a utilisé quelques langages pour pouvoir atteindre les buts
du projet.

28
3.5.1 Le langage PHP

PHP n'est pas le seul langage de programmation « web », parmi les concurrents de PHP citons :
Ruby, Python, ASP, ColdFusion,…
Avant PHP veut dire « Personal Home Page», puis HypertextPreprocessor. Il a été créé par
Rasmus Lerdof en 1994, pour ses besoins personnels. Comme dans beaucoup d’autres cas, la
mise à disposition du langage sur internet est à l’origine de son développement par d’autres
utilisateurs qui y ont vu un outil propre à satisfaire leurs besoins. Après plusieurs évolutions
importantes, PHP en est à sa version 5.2, celle que nous utilisons. PHP est le plus souvent
associé à MySQL, ce qui fait le succès du web aujourd’hui.
La syntaxe de PHP est proche de celle du C, (et donc du C++) : C'est ce qui a permis à de
nombreux développeurs de venir au PHP, et qui a en partie, contribué à son sucés. Il y a donc
des chances que son successeur reprenne tout ou partie de sa syntaxe.

[Link] Historiques

Aujourd'hui, 2 millions de serveurs utilisent PHP pour abriter 50 millions de sites web. Il doit
y avoir une raison ... L'histoire commence en 1994 : Un étudiant danois, Rasmis Lerdorf, qui
venait de mettre son CV en ligne sur son site, s'est demandé comment compter le nombre de
visites ... Il a écrit une série de scripts CGI mis sur le serveur de son hébergeur, qui
incrémentaient une base SQL. Comme de nombreux internautes lui demandèrent ce
programme, Rasmus Lerdorf mit en ligne en 1995 la première version de ce programme qu'il
baptisa Personal Home Page v1.0. Devant le succès de PHP 1.0, Rasmus Lerdorf décida
d'améliorer ce langage en y intégrant des structures plus avancées telles que des boucles, des
structures conditionnelles, et y intégra un package permettant d'interpréter les formulaires qu'il
avait développé (FI, Form Interpreter) ainsi que le support de mySQL.
C'est de cette façon que la version 2 du langage, baptisée pour l'occasion PHP/FI v 2, vit le jour
en 1995. Le projet s'internationalisa et de nombreux développeurs prirent part au projet. PHP
fut rapidement utilisé sur de nombreux sites (15.000 fin 1996, puis 50.000 en mi 1997).
En 1997, le projet passa sous la direction de deux étudiants Israéliens : Zeev Suraski et Andi
Gurmans, qui décidèrent, pour mettre au point PHP 3, de tout réécrire. C'est PHP 3.0 en 1998.
Le sens de l'acronyme PHP a d'ailleurs changé à cette date. Il signifie maintenant PHP Hypertext
Processor. Suraski et Gurmans choisirent d'accélérer encore PHP pour la V4 en changeant le

29
moteur du système : plutôt que d'interpréter chaque instruction une à une, il fut décidé de «
compiler » l'ensemble du script. [16]
C'est le Zend Engine, cœur de la version PHP 4 sortie en 2000.
La version 5 (2004) met l'accent sur la programmation objet et les services Web.
Une version 6 est, bien sûr, en développement.

[Link] Open source

L'open source est un mouvement planétaire qui regroupe ceux qui veulent y participer. Il a pour
principe fondateur la mise à disposition des sources de logiciels. Ainsi, alors que l'ASP n'est
développé que par Microsoft, PHP est un projet sur lequel travail des centaines d'étudiants, de
chercheurs, d'ingénieurs et de passionnés à travers le monde. En disposant des sources, tout un
chacun peut étudier la manière avec laquelle le langage est conçu et peut ainsi corriger
d'éventuels bugs. Cela explique directement que PHP soit extrêmement stable et ne souffre que
de très rares bugs ou failles. Appartenant à tout le monde en même temps, les logiciels Open
Source ont un énorme avantage sur les logiciels propriétaires : Ils ne peuvent pas disparaître.
Un autre avantage à travailler avec des logiciels Open Source tel que PHP est d'avoir à sa
disposition une énorme bibliothèque de scripts dont les sources peuvent être récupérés
gratuitement sur le Web. Il est quand même très rare de ne pas trouver sur le web un morceau
de code qui répond exactement à votre besoin ...

[Link] Extrait

On va voir ensuite un extrait de code PHP :


<? php
require_once 'include/[Link]';
$title = 'Administration';
if(!Utilisateur::utilisateurConnecte()):
Application::alert('vous devez connecter pour consulter cette page');
Application::redir('login/');
endif;
if(!Utilisateur::getUtilisateurConnecte()->estAdmin()):
Application::alert('vous devez être administrateur pour consulter cette page');
Application::redir('[Link]');
endif;
?>
[Link] Avantages du PHP

Les avantages du langage PHP sont :


30
-applicatif centralisé : maintenance facilitée (Installation, mise à jour, sauvegardes, sécurité)
installation aisée : un navigateur suffit
-données centralisées : travail collaboratif

3.5.2 HTML

Lorsque nous créons un site web, on est amené à manipuler non pas un mais plusieurs langages.
En tant que webmaster, il faut impérativement les connaître.
De nombreux langages ont été créés pour produire des sites web. Deux d'entre eux constituent
une base incontournable pour tous les webmasters.
HTML est le langage universel utilisé pour communiquer sur le Web. Votre information sera
ainsi transportée sur cette gigantesque toile de réseaux interconnectés qu'est Internet, pour
aboutir sur l'ordinateur de votre lecteur grâce à un programme appelé navigateur ou browser.
Le logiciel que l'on appelle un browser vous permet de surfer sur le Net et d'afficher sur votre
écran les "pages" qu'il a interceptées. Il y a, hélas, beaucoup de marques et de types de browsers
différents. Des simples, des archaïques ou des sophistiqués... Les plus connus sont Netscape
Navigator et Internet Explorer de Microsoft mais il en existe beaucoup d'autres. Chaque browser
a sa propre façon de travailler. [17]
A la différence de votre traitement de texte qui restitue exactement votre document sur une
feuille de papier avec votre police de caractères et votre mise en page, vous ne saurez jamais
exactement ce que le browser de votre lecteur du bout du monde affichera sur l'écran de celui-
ci.

[Link] Les fichiers HTML

En fait, rien ne différencie à première vue les fichiers HTML pour un site avec des frames des
autres fichiers HTML. La seule différence s'observe dans les liens hypertextes : il faut préciser
le frame de destination pour l'affichage du fichier à charger. Par défaut, si rien n'est indiqué, le
fichier se charge dans le cadre où se trouvait le lien hypertexte.

[Link] Un extrait de code HTML

On va voir ensuite un extrait de code HTML :


<HTML>
<HEAD><TITLE></TITLE></HEAD>
31
<BODY>texte simple<BR>
<B>texte en gras</B><BR>
<STRONG>texte en gras</STRONG><BR>
<I>texte en italique</I><BR>
<EM>texte en italique</EM><BR>
<B><I>texte en gras et en italique</I></B><BR>
<FONT SIZE=5>texte</FONT>
<FONT COLOR="#0000FF">en bleu</FONT>
<!--C'est fini-->
</BODY>
</HTML>

3.5.3 CSS

CSS est un langage de mise en forme des sites web. Alors que le HTML permet d'écrire le
contenu des pages web et de les structurer, le langage CSS s'occupe de la mise en forme et de
la mise en page. C'est en CSS que l'on choisit notamment la couleur, la taille des menus et bien
d'autres choses encore.
CSS est un langage spécifique au Web, fréquemment employé comme complément du langage
HTML, et dont la fonction est de former des feuilles de styles chargées de la mise en forme des
documents web. Il gère l’esthétique (couleurs, typographie) et diverses fonctionnalités. Son
champ d’action ne se limite pas au média screen (écran), mais s’étend également aux médias
print (imprimante), projection (présentations projetées), braille (tablettes à l’usage des
aveugles), embossed (impression en braille), aural/speech (propriétés auditives), handheld
(assistants numériques) et tv (Web-TV).

[Link] Présentation de CSS

La version actuelle de CSS (CSS 2) complète la version précédente, CSS 1, avec laquelle elle
est entièrement compatible. Les feuilles de styles sont apparues dans les années 1990, période
pendant laquelle les deux principaux navigateurs, Netscape Navigator et Microsoft Internet
Explorer, créaient leurs extensions mutuellement incompatibles et truffées de balises
propriétaires. Chacun refusant les éléments de l’autre, il fallait concevoir ses pages en détectant
le navigateur utilisé et en adaptant le code au besoin. CSS s’est peu à peu imposé comme

32
standard universel palliant ces problèmes de compatibilité. Après son acceptation par le W3C
qui l’associa au langage HTML, la version 1.0 des feuilles de styles CSS fit son entrée dans les
différents navigateurs (il s’agissait alors de Netscape 4 et d’Internet Explorer 4, qui
incorporèrent peu à peu ces nouvelles propriétés). CSS version 2.0, apparu plus tard, offrait de
nouvelles possibilités bien plus vastes : positionnements divers et précis, fonctionnalités
d’accessibilité (notamment pour les lecteurs vocaux), etc. À présent, la quasi-totalité des
navigateurs proposent tout CSS1 et presque tout CSS 2. Mais les standards continuent leur
évolution, et CSS 3 attend désormais son adoubement officiel par le W3C (recommandation).
Il prendra alors la suite des versions précédentes sur les navigateurs les plus réactifs (comme
Mozilla et Opera). Rappelons que les normes du Web incitent désormais webmasters et
concepteurs de sites web à séparer clairement leurs contenus (HTML) de la mise en forme
(CSS). Cette distinction a d’autres intérêts que la simple satisfaction de théoriciens chagrins :
la conception des pages web s’en trouve vraiment facilitée. Cette dissociation des fonctions
évite encore de pénaliser les anciens navigateurs (les documents y demeurant lisibles), les
navigateurs en mode texte (ciblant les aveugles ou les utilisateurs en mode texte), et les
programmes utilisant d’autres médias (assistants personnels, WAP, ordinateurs avec
synthétiseur vocal, navigateurs braille, etc.). Pourtant, nous n’avons pas encore abordé leur
intérêt principal. Quel webmaster n’a jamais dû modifier tout son site, page après page, pour
répéter fastidieusement la même manipulation élémentaire (par exemple, changer la couleur
des titres) ? CSS simplifie cette opération : avec cette nouvelle technique, une seule feuille de
styles, stockée dans un fichier, assure la gestion graphique de l’intégralité d’un site, qu’il
compte trois pages ou plusieurs centaines. Toute intervention dans ce fichier sera
immédiatement répercutée partout. En outre, cette feuille CSS étant conservée dans la mémoire
cache de l’ordinateur du navigateur après la première connexion, toutes les pages du site
s’afficheront plus rapidement que si les indications de présentation étaient répétées sur chacune
d’entre elles. Cette première mise en bouche vous a sans doute motivé pour aller plus loin.
Mettons-nous donc en situation et appliquons nos premiers styles CSS.

[Link] La syntaxe de base des CSS

Quelle que soit la version de CSS retenue, une feuille de styles CSS prend toujours la forme
d’une liste de déclarations, écrites dans un langage spécifique et distinct de HTML.

33
Les accolades sont précédées d’un sélecteur, qui s’applique ici à la balise <h1>. Cette règle
colorera donc toutes les balises <h1> contenues dans la page. Le bloc de déclaration, situé dans
les accolades, contient une ou plusieurs déclarations, ces dernières étant constituées de couples
« propriété – valeurs ». Cet exemple ne contient qu’une seule déclaration, associant la valeur
blue à la propriété color. C’est toujours le caractère deux points (:) qui sépare une propriété de
sa valeur.
Pour compléter ce bloc par d’autres déclarations, il suffit de les ajouter à la suite, sans oublier
le séparateur d’instruction : le point-virgule (;). Souvent oublié, ce dernier est pourtant
nécessaire. On assurera la lisibilité du code en réservant une ligne à chaque déclaration. Au
final, l’ensemble formé par le sélecteur et le bloc de déclaration sera nommé « règle ».

[Link] Un extrait de code CSS

On va voir ensuite un exemple de code CSS :


[Link]
{
Text-align: center;
Font-weight: bold;
font-size: 120%;
}
Ces langages sont la base de tous les sites ou application web. Lorsque le serveur envoie la
page web au client, il envoie en fait du code en langage HTML et CSS. Le problème, c'est que
lorsque nous connaissons seulement HTML et CSS, nous ne pouvons produire que des sites
statiques… et non des sites dynamiques ! Pour ces derniers, il est nécessaire de manipuler
d'autres langages en plus de HTML et CSS. [18]

3.5.4 JavaScript

Le JavaScript a été développé par Netscape pour le côté client (dans le navigateur) et pour les
scripts côté serveur. À l'origine le langage s’appelait Live Script, mais alors qu'il était sur le
point de devenir connu Java était devenu immensément populaire. Au dernier moment Netscape
a changé le nom de son langage de Script en "JavaScript". Ceci a été fait purement pour des
raisons commerciales.

34
La conception de documents interactifs doit aussi intégrer une couche de programmation
absente des technologies précédentes. Le langage JavaScript offre cette possibilité. Le
JavaScript est souvent utilisé comme un langage de script côté client. Quand un navigateur fait
une requête sur une page XHTML avec du JavaScript, le script est envoyé au navigateur qui
interprète le code à la différence d'un code PHP, par ex, qui est interprété par le serveur.
JavaScript comme Java descendent du C et du C++. Tous les deux sont orientés objet (bien que
ce soit moins important pour le JavaScript que pour beaucoup d'autres langages) et ils partagent
une syntaxe similaire. [19]
On va voir un exemple de JavaScript inséré dans du code HTML :
<?xml version="1.0" encoding="utf8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-
[Link]">
<html xmlns="[Link]
<head>
<title>Exemple de page XHTML contenant du Javascript</title>
<script type="text/javascript">
<![CDATA[
function fenetre() { alert(’Message d’alerte dans une fonction.’);} ]]>
</script>
</head>
<body onload="alert(’Message d’alerte g´en´ere´ `a la fin du chargement.’)">
<script type="text/javascript">
<![CDATA[
alert(’Message d’alerte dans le corps du document.’); ]]>
</script>
<p> Ceci est le corps du document.
<a href="javascript:fenetre()">Message d’alerte
</a>.
</p>
</body>
</html>
3.6 Choix de service local

On a choisi le logiciel WampServer pour le développement de la plateforme.

3.6.1 Présentation de WampServer

WAMP est une plateforme de développement web. Nous avons affaire sur une abréviation qui
veut dire Windows, Apache, MySQL et PHP. WAMP désigne une plateforme et avec une
présentation en hiérarchie selon son domaine de définition vue de la formation de son
abréviation. Alors il s’agit un système Windows, un interpréteur PHP.

35
3.6.2 Utilisation de WampServer

Par la présence d’un double serveur de bases de données MySQL et un interpréteur PHP. Par
la présence d’un double serveur (Apache et MySQL) au sein de cette plateforme, WAMP est
connue sous le nom de wampserver, nous avons choisi d’utiliser la version 2.1 qui permet de
faire fonctionner localement les scripts PHP c'est-à-dire on n’a pas besoin de se connecter à un
autre serveur externe. Il dispose aussi une interface d’administration permettant d’organiser et
de gérer ses serveurs à travers l’icône placé près de l’horloge de Windows. Et sans dévaloriser
le présent de phpMyAdmin pour l’administration web des bases MySQL. En plus les
développeurs ont une potentielle de reproduire fidèlement son serveur de production sur sa
machine local par la possibilité d’installer et d’utiliser n’importe quelle version de PHP, apache
ou MySQL juste en un clic. En notant que le 26 juin 2013 qu’est sortie la version 2.4 qui intégré
Apache 2.4.4, MySQL 5.6.12.
3.6.3 Schéma de WampServer
On va voir ensuite un schéma de WampServer :

Figure 3.04 : schéma de WampServer

3.7 Conclusion

Dans ce chapitre, on a présenté les technologies et les outils qu’on a utilisés pour la réalisation
de notre application. On a vu que la construction d’une page web nécessite l’intervention des
technologies côté serveur permettant la gestion, la mise en jour et la requête d’une base de
données. Ces technologies permettent aussi la transformation de la page constituée par

36
plusieurs langages en une page html pour qu’elle puisse être publiée par le navigateur. Dans ce
qui suit, nous présentons en détails les étapes de réalisation.

CHAPITRE 4
CONCEPTION ET REALISATION DE GESTPHARMA

4.1 Introduction

Dans cette phase, on va représenter une vue dynamique du système à travers les différents
diagrammes de séquences relatifs aux cas d'utilisations.
Ensuite, je dégagerai les différentes tables de la base de données via le diagramme de classe.
La réalisation du projet concerne la création des pages de l’application et des éléments
graphiques. La création des pages consiste à créer des fichiers en utilisant les différents langages
de développement : Html et CSS, PHP, JavaScript.

4.2 Conception du logiciel

Logiciel qui sera mis en œuvre par nos soins aura pour nom GestPharma :
L’application de gestion de stock GestPharma a pour but de :

- Gérer la vente de produits destinés aux clients.


- Gérer le stock des produits

4.2.1 Recueille des besoins fonctionnels

[Link] Gestion de la vente des produits

Lorsqu'un client veut acheter un produit, l’utilisateur doit vérifier la disponibilité de chaque
produit dans le stock, le logiciel doit être capable d'indiquer à l’utilisateur la quantité de stock
restante dans le stock pour chaque produit demandé par le client ainsi que leur date de
péremption. Ce n'est qu'après cette étape de vérification que l’utilisateur peut effectuer la vente
en saisissant dans le logiciel le nom et la quantité de produit vendu, ce dernier doit lui retrouver
le prix de chaque médicament ainsi que le montent total qui sera encaissé par l’utilisateur.

37
[Link] Gestion de stock
Lorsqu'un fournisseur lui livre les produits commandés, l’utilisateur doit implémenter la base
de données du logiciel par le nombre de produits livrés, leur nom, leur type et leur date de
péremption.
4.2.2 Identifications des messages

GestPharma émet:
- La disponibilité d'un produit ainsi que leur date de péremption.
- Le montant total à encaisser à la fin de vente.
- La caractéristique de chaque produit.
GestPharma reçoit:
- Les caractéristiques de chaque médicament.
- Création, modification, annulation d'une vente.
4.2.3 Modélisation du contexte

On va voir un schéma de diagramme de contexte pour GestPharma :

Utilisateurs

Création, modification, Caractéristiques des produits

Annulation de commande

GestPharma
GestPharma

Commande des produits Montant total des produits

Client

Figure 4.01 : Schéma de diagramme de contexte pour GestPharma


38
4.2.4 Raffinement des cas d’utilisations

[Link] Raffinement du cas d’utilisation de l’authentification

- Description du cas d'utilisation de l’authentification :

L’acteur initiateur du cas de l’authentification est l’utilisateur.


Le but du cas est que l’utilisateur entre son nom et son mot de passe pour accéder à l’application.

- Description des scénarios :

Le cas d'utilisation commence lorsque l'utilisateur cherche à accéder au système et qu'en


contrepartie le système lui demande de saisir son login et son mot de passe.
L'utilisateur saisit ainsi son login et son mot de passe et valide.
Le système affiche le menu principal.

[Link] Raffinement du cas d’utilisation de gestion de produit

 Description du cas d'utilisation de l’ajout

L’acteur initiateur du cas d’utilisation de l’ajout est aussi l’utilisateur.


Le système permet de créer un nouveau produit.
La description des scénarios est la suivante :

• il commence lorsque l'utilisateur demande à ajouter un nouveau produit.


• le système affiche l'interface appropriée.
• l'utilisateur effectue les opérations de création.
• le système enregistre l'opération effectuée.

 Description du cas d'utilisation de modification

L’acteur initiateur du cas d’utilisation de modification est aussi l’utilisateur.


Le système permet de modifier un produit.
La description des scénarios est la suivante :

- il commence lorsque l'utilisateur demande de modifier les données d'un médicament.


39
- Le système affiche l'interface appropriée
- L'utilisateur sélectionne le produit à modifier.
- L'utilisateur saisit ensuite les nouveaux paramètres et valide.
- Le système enregistre les modifications
- Description du cas d'utilisation de consultation

L’acteur initiateur du cas d’utilisation de consultation est aussi l’utilisateur.


Le système permet de consulter les produits
La description des scénarios est la suivante :

• Le cas d'utilisation commence lorsque l'utilisateur demande d'afficher la liste des


produits.
• Le système affiche l'interface appropriée
• L'utilisateur demande la recherche d'un produit en cas de besoin.
• Le système affiche les données concernant le produit.
- Description du cas d'utilisation de suppression

L’acteur initiateur du cas d’utilisation de suppression est aussi l’utilisateur.


Le système permettra à l'utilisateur de supprimer un médicament de la liste.
La description des scénarios est la suivante :

• Le cas d'utilisation commence lorsque l'utilisateur demande La suppression d'un


médicament.
• Le système affiche l'interface appropriée.
• L'utilisateur sélectionne le médicament à supprimer et valide.
• Le système supprime le médicament sélectionné.

[Link] Raffinement du cas d’utilisation d’exécution de commande

L’acteur initiateur du cas d’utilisation d’exécution de commande est toujours l’utilisateur.


Le but du système est de permettre à l'utilisateur d’exécuter une commande.
La description des scénarios est la suivante :

• Le cas d'utilisation commence lorsque l'utilisateur demande d’exécuter une commande.


• Le système affiche l'interface appropriée.
40
• L'utilisateur saisit les données nécessaire et valide.
• Le système enregistre l'opération effectuée.

4.2.5 Conception de la base de données

Pour la conception du projet nous avons décidé de choisir les concepts suivants :

- Le MCD pour le niveau conceptuel afin de définir les domaines et les entités a utilisé,
ainsi que la façon dont ils sont reliés entre eux. La création du MCD implique la
désignation de toutes les entités, ainsi que les cardinalités, il est donc important de
précisé la règle de gestion qui relie les entités.
- Le MLD pour le niveau logique afin de savoir toutes les tables à créer pour l’application
et tous les attributs de ce dernier.
- Le MPD pour le niveau physique afin d’obtenir les tables des relations entités-
associations.

[Link] Modèle conceptuel de données

D’après le chapitre précédant, un MCD est un modèle Entité / Association, il est souvent
nommé Entité-Relation.
Il repose sur les concepts des : entités, associations, propriétés
Il permet de décrire un ensemble de données relatives à un domaine défini afin de les intégrer

ensuite dans une base de données.

a)-Les entités et les attributs du projet

Une entité est un objet, une chose concrète ou abstraite qui peut être reconnue distinctement.

Un attribut ou une propriété est une caractéristique associée à une entité type.
Pour faire court le MCD du système se résume à la relation entre six entités qui sont :
- L’entité Utilisateurs qui possède les attributs suivants : id_utilisateurs, nom_utilisateurs,
password
- L’entité Catégories qui possède les attributs suivants : id_catégories, nom_catégories
- L’entité Articles qui possède les attributs suivants : id_articles, nom_articles, prix_articles
- L’entité Dépôts qui possède les attributs suivants : id_dépots, date
- L’entité Clients qui possède les attributs suivants : id_clients, nom_clients
41
- L’entité Commande qui possède les attributs suivants : id_commande, date_commande
Avant de pouvoir représenter le MCD il faut tout d’abord connaitre la relation entre chaque

entité. Pour cela nous donnerons ci-après la règle de gestion qui gère tous les entités.

b)-Règle de gestion

La règle de gestion consiste à exposer les relations entre deux ou plusieurs entités.

. Règle 1 : - un utilisateur entre un ou plusieurs dépôts


- un dépôt peut-être entré par un ou plusieurs utilisateurs
. Règle 2 : - un utilisateur vend 0 ou plusieurs articles
- un article peut-être vendu par un ou plusieurs utilisateurs
. Règle 3 : - un article peut appartenir par un et une seule catégorie
- une catégorie comprend un ou plusieurs articles
. Règle 4 : - une commande est composée d’un ou plusieurs articles
- un article peut-être trouvé dans 0 ou plusieurs commandes
. Règle 5 : - un client peut effectuer un ou plusieurs commandes
- un commande peut-être effectué par un et un seul client

42
c)-MCD du projet
On va voir ensuite le modèle MCD de l’application :

Figure 4.02 :

Schéma du modèle MCD de GestPharma

[Link] Modèle logique de données

Comme il a été expliqué dans le chapitre précédent, ce Modèle Logique des Données indique
l’organisation des données dans la base de données. Le MLD est la représentation des
différentes tables qui seront implémentées dans la base de données. Ce modèle est la
transcription du MCD en tenant compte des cardinalités. Cette représentation ne peut pas
directement manipuler et accepter par un système informatique que par l’intermédiaire du
MCD. Ce niveau consiste d’abord à transformer toute entité en table, avec l’identifiant comme
clé primaire, puis à observer les valeurs prises par les cardinalités maximum de chaque

43
association pour représenter celle-ci soit par l’ajout d’une table dont la clé primaire est obtenu
par concaténation de clés étrangères correspondant aux entités liées.
En appliquant la règle expliquée précédemment le MLD du projet doit être comme suit :
- Toutes les entités deviennent des tables
- L’association doit devenir lui aussi une table car les cardinalités maximal des deux coté
sont n-n.
On va voir ensuite le modèle MLD de notre application :

Figure 4.03 : Schéma du modèle MLD de GestPharma

[Link] Modèle physique de données

Le modèle MPD est la transformation en tables des :


- Entités et associations si on produit le MPD directement à partir du MCD
- Schémas relationnels si on produit un MLD
Un MPD dépend de la base de données cible c’est-à-dire les types de données et les domaines
des propriétés.
44
Les attributs qui permettent d’indexer les tables sont des clés primaires dans un MPD.
On va voir le MPD de l’application :

Figure 4.04 : Schéma du modèle MLD de GestPharma

[Link] Extraits des requêtes pour la création de la base de données


Voici quelque extrait du code pour la création des tables:
/*==============================================================*/
/* Nom de SGBD : MySQL 4.0 */
/* Date de création : 06/05/2019 [Link] */
/*==============================================================*/
drop table if exists ARTICLES;

drop table if exists CATEGORIES;

45
drop table if exists CLIENTS;

drop table if exists COMMANDE;

drop table if exists COMPOSER;

drop table if exists DEPOTS;

drop table if exists ENTRER;

drop table if exists UTILISATEURS;

drop table if exists VENDRE;


/*==============================================================*/

4.3 Réalisation de l’application

Dans cette phase, je vais représenter une vue dynamique du système à travers les différents
diagrammes de séquences relatifs aux cas d'utilisations.
Enfin, je dégagerai les différentes tables de la base de données via le diagramme de classe.
La réalisation du projet concerne la création des pages de l’application et des éléments
graphiques. La création des pages consiste à créer des fichiers en utilisant les différents langages
de développement : Html et CSS, PHP, JavaScript.
4.3.1 Le squelette et template de l’application
[Link] Le squelette de l’application
Le squelette de l’application sera comme le schéma ci-dessous :

Slider
Barre de menu

Contenu
Figure 4.05 : Schéma du squelette de GestPharma

46
Notre page est constitué de trois sections :
- le slider : pour les images défilantes et le titre de l’application
- la Barre de menu : constitué de plusieurs boutons pour chaque menu
- le contenu : pour le contenu de chaque page dans la barre de menu

[Link] La création du Template

Pour la création du Template on a choisi le logiciel Artisteer version 4.1.


Comme il a été dit dans le chapitre précédent, Aristeer est un logiciel de création de template,
il propose beaucoup de paramètre et parfois des suggestions dans la création.
On va voir un exemple de template créer par le logiciel Artisteer :

Figure 4.06: Schéma d’un template

4.3.2 Les interfaces de l’application

Dans ce qui suit, nous allons présenter quelques interfaces de notre application.
Ces interfaces sont créées par le même logiciel Artisteer.

47
[Link] L’interface de l’authentification

Cette page offre un aperçu de l'application locale. On retrouve l'interface d'authentification


permettant à l’utilisateur d'accéder à leur session.
Pour accéder à la page d’accueil, tout d’abord, l’utilisateur doit saisir :

- Son nom
- Son mot de passe

On va voir cette interface de l’authentification pour l’utilisateur :

Figure 4.07 : Schéma de l’interface de l’authentification

[Link] L’interface de la page d’accueil

La page d’accueil souhaite la bienvenue de l’utilisateur et affiche quelques boutons sur la barre
de menu comme : produits (médicaments, autres), dépôts, commande.

48
Voici l’interface de la page d’accueil :

Figure 4.08 : Schéma de l’interface de page d’accueil GestPharma

[Link] L’interface des médicaments

Cette interface nous montre les opérations qu’on peut exécuter. Elle affiche aussi quelques
boutons tels que : ajouter, afficher,…
On voir un extrait de l’interface de la page médicament :

Figure 4.09 : Schéma de l’interface des médicaments de GestPharma


49
[Link] L’interface des outils

Cette interface nous montre les opérations qu’on peut exécuter. Elle affiche aussi quelques
boutons tels que : ajouter, afficher,…
On va voir un extrait de l’interface de la page outil :

Figure 4.10 : Schéma de l’interface de page outils GestPharma

4.4 Conclusion

Dans ce chapitre, nous avons décrit brièvement le processus de réalisation de notre application
GestPharma en spécifiant l'environnement de développement, l'implémentation de la base des
données et la démarche suivie pour la réalisation. En effet, nous avons achevé l'implémentation
et les tests de tous les cas d'utilisation, tout en respectant la conception élaborée. En d'autres
termes, nous détenons la version finale du logiciel, installée dans notre environnement de
développement. Ainsi que nous avons prévenu la plateforme sous laquelle le système sera
installé dans l'environnement des utilisateurs. A titre personnel, le bénéfice qu'on en a tiré est
l'apprentissage de concepts à la pointe de la technologie et des tendances actuelles dans le
monde professionnel. Ce projet nous a permis d'enrichir nos connaissances dans des domaines
très variés.

50
CONCLUSION GENERALE

Nous avons réussi à dégager les lacunes du système actuel et suggérer des solutions afin d'y
remédier. Nous avons essayé de structurer et définir les besoins attendus du futur système.
Il faut noter que le dégagement des grandes fonctionnalités du système n'a pas suffi pour
aborder la phase de conception, il fallait dégager plus de besoins. Il nous a fallu interroger
l’acteur du système d'information de pharmacie pour enrichir notre diagramme de cas
d'utilisation. Et là nous étions confrontés à un problème délicat : la dissimulation de
l'information. Il fallait donc construire des interfaces prototypes et les présenter à l’acteur.
Les éléments à livrer au terme de la phase d'analyse (acteurs, besoins fonctionnels, besoins non
fonctionnels) étant déterminés, nous pouvions passer à la phase suivante.
Ensuite nous avons entamé la phase de conception. Dans cette phase, nous avions déjà un
modèle final des cas d'utilisation. Il s'agissait alors d'étendre la représentation effectuée au
niveau de l'analyse en y intégrant les aspects techniques les plus proches des préoccupations
physiques. L'élément principal à livrer au terme de cette phase est le schéma relationnel.
Enfin, nous étions arrivés à la dernière phase, où il s'agissait de réaliser l’application et de voir
les différentes interfaces de l’application.
Ce travail nous a permis d’aborder les problèmes, et de les situer dans le conteste de réalité.
A travers cette étude que nous venons d’achever, nous pouvons conclure que : résoudre les
problèmes que vit la gestion est l’un des missions de l’informatique.
L’informatique devient une carrière très importante dans les pays plus ou moins développés,
son importance croissante peut s’expliquer en outre par une augmentation du degré
d’automatisation dans tous les systèmes d’informations…, et nous pouvons conclure que la
finalité première de la fonction de l’informatique consiste à faciliter le travail pour l’utilisateur
tout ce qui concerne la recherche, la mise à jour des informations.
L’évolution de l’information et ça nombreuse exigent et obligent l’utilisation de l’outil
informatique avec une bonne gestion, car l’informatique joue un très grand rôle dans la survie
et le développement de l’entreprise et les administrations, nous pouvons dire qu’il n’y aura pas
d’accélération dans l’information sans l’outil informatique et la bonne gestion.

51
ANNEXES 1

EXTRAIT DE CODE SOURCES

A1.1 Extrait de code de la page d’authentification

<?php
$title = 'login';
require_once '../include/[Link]';
if(Utilisateur::utilisateurConnecte()) {
Application::redir((Utilisateur::getUtilisateurConnecte()->estAdmin())?
Application::$PAGE_ADMIN : Application::$PAGE_USER);
}
$error = Utilisateur::pasDelements();
$afficheMsgErr = false;
if(isset($_POST['submit'])): //bouton cliqué
$login = $_POST['login']; //le login est unique
$pw = $_POST['password'];
$u = new Utilisateur(null, null, $login, $pw, null, null);
if(Utilisateur::peutConnecter($u)): //utilisateur existe
$u = Utilisateur::connecter($u);
Application::redir(($u->estAdmin())? Application::$PAGE_ADMIN :
Application::$PAGE_USER);
else:
$afficheMsgErr = true;
endif;
endif;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Login V15</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!--
===================================================================
============================-->
<link rel="icon" type="image/png" href="images/icons/[Link]"/>
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css"
href="public/vendor/bootstrap/css/[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css" href="public/fonts/font-awesome-4.7.0/css/font-
[Link]">
52
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css" href="public/fonts/Linearicons-Free-v1.0.0/icon-
[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css" href="public/vendor/animate/[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css" href="public/vendor/css-
hamburgers/[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css"
href="public/vendor/animsition/css/[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css" href="public/vendor/select2/[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css"
href="public/vendor/daterangepicker/[Link]">
<!--
===================================================================
============================-->
<link rel="stylesheet" type="text/css" href="public/css/[Link]">
<link rel="stylesheet" type="text/css" href="public/css/[Link]">
<!--
===================================================================
============================-->
</head>
<body>
A1.2 Extrait de code de la page d’accueil

<div id="login_info">
<span id="nom">
<?php echo $_SESSION['prenom'] ?>
</span>,

<span id="prenom">
<?php echo $_SESSION['nom'] ?>
</span>
53
<span id="deconnexion">
<a href='[Link]'>Déconnecter</a>
</span>
</div>
<div id="main">
<div id="header">
<div id="logo">
<div id="logo_text">
<h1>
<a href="#">
<span class="logo_colour">GestPharma</span>
</a>
</h1>
<h2>Mai 2019</h2>
</div>
</div>
<?php require 'include/cssmenu_admin.php'; ?>
<div id="site_content">
<div id="content">
<h1>Présentation</h1>
<p>Bienvenue sur l'application web pour l'administration d'une
pharmacie</p>
</div>
</div>
<div id="footer">
<p>Author Minax</p>
</div>
</div>
</div>

54
ANNEXES 2

APPLICATION WEB

A2.1 Structure d’une application web

On va voir la description fonctionnelle d’une application web : un utilisateur se connecte au


système (page [Link]) en donnant un nom et un mot de passe. La soumission se connecte sur
la page [Link] qui vérifie l’identité. En cas d’erreur, un forward est effectué sur la page
[Link]. En cas de réussite, le Bean est chargé depuis la base et un forward est effectué vers la
page [Link]. Cette dernière se charge d’afficher un formulaire de modification. La validation
se connecte sur la page [Link]. Cette dernière enregistre les données du formulaire dans le
bean est valide ce dernier en vérifiant la conformité des données entrées par l’utilisateur. Si les
données sont valides, la page [Link] sauvegarde le bean et affiche un message indiquant la
réussite. Si les données ne sont pas valides, la page [Link] effectue un forward vers la page
[Link] afin que l’utilisateur corrige les erreurs.

A2.2 Architecture MVC (Modèle, Vue, Contrôleur)

Dans une architecture MVC, le modèle gère les données d l’application.

Le contrôleur charge de traiter les requêtes du client et la vue construit le résultat d’une requête.

A2.2.1 Les vues

Les vues sont basées sur des technologies de production de contenu (JSP, PDF,…).
Les vues ne modifient pas les données (problème avec JSP).
Une vue peut être interprétée comme un processus de fabrication à partir de données fournies
en entrée (pas de logique applicative).

A2.2.2 Le modèle

Le modèle a la charge de représenter les données du domaine et de fournir les méthodes


permettant l’accès et la modification.

Le modèle est indépendant de la logique applicative. • Si une couche métier existe, elle
représente le modèle. • Dans une architecture orientée service, le modèle est l’ensemble des
services du système d’information.
55
A2.2.3 Le contrôleur

Le contrôleur est basé sur des technologies de traitement de requêtes (Servlet, C#, C++, Ruby,
Python). • Le contrôleur peut être unique ou multiple. • Le contrôleur est responsable de la
logique applicative. • Il transforme les requêtes utilisateur en requêtes métier (vérification des
données entrantes).

A2.2.4 Démarche M.V.C

Il existe quatre étapes dans la démarche MVC :

- Dresser la liste des vues (maquette HTML) : nom de la vue, type de données générés
(XHTML/XML/PDF), paramètres (nom, type, obligatoire/facultatif), requêtes engendrées par
la vue,

- Implantation et test des vues.

- Dresser la liste des requêtes : nom de la requête (URL), paramètres (nom, type,
obligatoire/facultatif), contexte d’utilisation, vues utilisées.

- Implantation et test des requêtes

A2.2.4.1 Représentation d’un utilisateur

Chaque utilisateur de l’application va ˆêtre représente par une instance d’un java Bean de portée
session :

package [Link];

public class User // properties

private String id = "";

private String name = "";

private String password = "";

private Boolean auth = false; // important !

public User() { }

56
// getters and setters ...

A2.2.4.2 Configurer les pages JSP

Nous ajoutons dans le fichier [Link] :

<jsp-config>

<jsp-property-group>

<description>Toutes les pages</description>

<url-pattern>*.jsp</url-pattern>

<page-encoding>UTF-8</page-encoding>

<include-prelude>/[Link]</include-prelude>

<include-prelude>/[Link]</include-prelude>

<include-coda>/[Link]</include-coda>

</jsp-property-group>

</jsp-config>

A2.3 Quelques conseils

A2.3.1 Validation des données

– Les données en provenance d’un client doivent toujours être vérifiées (présence des
paramètres, typage du contenu).

– Ne pas utiliser les champs cachés HTML pour transmettre des données entre deux requêtes :
utiliser la session.

A2.3.2 Traitement des formulaires :

– Un formulaire doit toujours être présent à partir de données et d’éventuels messages d’erreur
associés à ces données.

57
– Une validation JavaScript et/ou AJAX est envisageable, mais elle ne doit pas remplacer une
validation côte serveur.

A2.3.3 Les liens utilisés

– des liens relatifs (difficile sur les applications importantes),

– des liens absolus générés automatiquement par les balises <c:url .../>

– Le contexte utilisé dans le cadre du développement (/mon appli) ne doit pas apparaitre.

– Si vous devez exporter des URL (par exemple dans un courriel), prenez-soin de les construire
à partir de la requête.

A2.3.4 Charte graphique :

– La charte graphique doit être implantée par des feuilles CSS.

– La charte graphique doit être implantée en dernier mais vous devez prendre soin de prévoir
les classes CSS.

– Les ressources statiques (images...) doivent être référencées par la feuille CSS grâce à des
URL relatives à la position de la feuille CSS.

– Si la technologie des CSS ne suffit pas, utilisez les balises personnalisées (.tag).

58
BIBLIOGRAPHIE

[1] O. Glück 1/Département Informatique Olivier. Université LYON, 2014, consulté à

l’adresse : Gluck@[Link] [Link]

[2] C. Duchateau, Peut-on définir une «culture informatique». Journal de Réflexion sur

l’Informatique, consulté à l’adresse : [Link]

[3] C. Dubacq, IUTdeVilletaneus, initiation à l’informatique, Paris, 2014

[4] M. Reichert, Enseigner l’informatique. Collection IRIS, SPRINGER, 2012

[5] N.M.V Ravonimanantsoa, « Base de données », ESPA, 2017

[6] B. Aymen, Isikef, Cours SGBD1, IUT de Nice, 2014

[7] C. Clercin, cours MERISE au département informatique de l'ENSUT, 2010

[8] P. Gerard, DUT Informatique deuxième année, France, 2004/2005

[9] M. Louvain, WFARM2507, DESCRIPTIF DE COURS, Paris, 2014-2015

[10] C. Bruneton C « Optimiser les activités de la gestion de stock : Guide dans les pays en

développement », La Documentation Française, Novembre 2005,

[11] [Link], « Gestion de projet », MSF, 4e édition, janvier 2006.

[12] F. Vezin, conception et réalisation de logiciel pharmacie, sur DSIH, 16 septembre

2013 (consulté le 27 avril 2014)

[13] P. Gerard, IUT de Villetaneuse/didacticiel, consulté à l’adresse :

[Link]

[14] [Link], guide MySQL, consulté à l’adresse : [Link]/~antoine

[Link]@[Link]

[15] M. Foti, Macromedia Dreamweaver MX 2004

[16] J.-M. Culot, PHP 5. N°11487, 2003, 390 pages.

[17] M. Nebra, (M@teo21) [Link], 2011 consulté à l’adresse [Link]

59
[18] J.P. Leboeuf, Les Cahiers du Programmeur HTML/CSS, 2002, 228 pages.

[19] P.Y Gibello, consulté l’adresse : [Link]@[Link] (Mise à jour :

Septembre 2011)

60
FICHE DE RENSEIGNEMENTS

Nom : ANDRIAMANJAKA

Prénom(s) : Ny Aina Manoa

Adresse de l’auteur : IAC 08B ANDRAMAHAVOLA

Téléphone : 0340422720
Email : manoaandria98@[Link]

Titre de Mémoire : CREATION D’UNE APPLICATION DE GESTION


DE STOCK PHARMACEUTIQUE : GESTPHARMA

Nombres de pages : 62

Nombres de tableaux : 02

Nombre de figures : 15

Directeur de mémoire :

Nom : RANDRIAMIHAJARISON

Prénom : Jimmy

Grade : Assistant d’Enseignement de Recherche

Tél : 034 76 457 75

Email : jimam2511@[Link]

61
RESUME

La mise en place d’un système informatique de gestion de données et de mise en page


automatique nécessite une étude détaille des produits pour lesquels il est conçu. Une fois réalisé,
le système fera l'objet d'une présentation technique et donnera lieu la rédaction d'un manuel
destiné aux utilisateurs, éléments indispensables pour sa compréhension aussi bien que pour
son développement ultérieur. Le projet de la création d’une application de gestion de stock
d’une pharmacie a pour objectif l’automatisation de plusieurs tâches réalisées manuellement au
sein d’une pharmacie c’est-à-dire faciliter les travails d’un pharmacien.

Mots Clés : gestion de stock, pharmacie, application, informatique, base de données.

ABSTRACT

The creation of a database system and of an automatic lay-out needs a very meticulous study of
the data you are working on, including the general context of their use and of the potential
partners and users. A technical booklet and a user manual will help the users in their exploration
of the system and its possible development. The project objective is the design and
implementation of a pharmacy management software and to facilitate the work of pharmacists
by ensuring better interactivity.

62

Vous aimerez peut-être aussi