Sunteți pe pagina 1din 53

Stage de 8 semaines Alam Technologies, agence de communication web

Thme : Cration d'une application web pour la gestion des dossiers


sanitaires des patients

Ralis par :
Marouane TOUZANI
Tuteur professionnel : M. Abdellah LAMNOUAR

2014

Sommaire
SOMMAIRE ......................................................................................................................................... 2
REMERCIEMENT ..................................................................................... ERREUR ! SIGNET NON DEFINI.
TABLE DABREVIATION .......................................................................................................................4
INTRODUCTION .................................................................................................................................. 5
CHAPITRE 1 : CADRE ET CONTEXTE DU PROJET ..................................................................................6
1.1.
1.2.
1.3.

INTRODUCTION ................................................................................................................................... 6
ENJEUX ET CONTEXTE DU PROJET........................................................................................................... 6
PRESENTATION DE LORGANISME DACCUEIL............................................................................................ 6

CHAPITRE 2 : PRESENTATION ET CAHIER DES CHARGES .....................................................................8


2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.

INTRODUCTION ................................................................................................................................... 8
PRESENTATION DU PROJET ................................................................................................................... 8
OBJECTIFS ET PERIMETRES DU PROJET .................................................................................................... 9
PUBLIC CIBLE .................................................................................................................................... 10
CONTENU DE LAPPLICATION .............................................................................................................. 10
CHARTE GRAPHIQUE : EXIGENCES ET LIMITES ..........................................................................................11
ARBORESCENCE DE LAPPLICATION ...................................................................................................... 12
PLANIFICATION DU PROJET ..................................................................................................................13

CHAPITRE 3 : TECHNOLOGIES ET OUTILS UTILISES ........................................................................... 14


3.1.
3.2.
3.3.

INTRODUCTION ................................................................................................................................. 14
TECHNOLOGIE IMPLEMENTEES ............................................................................................................ 14
OUTILS DIMPLEMENTATION ............................................................................................................... 20

CHAPITRE 4 : ARCHITECTURE ET CONCEPTION ................................................................................. 22


4.1.
4.2.
4.3.

INTRODUCTION ................................................................................................................................. 22
ARCHITECTURE DE LAPPLICATION ....................................................................................................... 22
CONCEPTION DE LAPPLICATION .......................................................................................................... 25

CHAPITRE 5 : PRESENTATION DE LAPPLICATION ............................................................................. 33


5.1.
5.2.
5.3.
5.4.
5.5.
5.6.
5.7.

INTRODUCTION ..................................................................................................................................33
LACCUEIL DE LAPPLICATION ...............................................................................................................33
ETAPE DINSCRIPTION ........................................................................................................................ 34
ETAPE DAUTHENTIFICATION .............................................................................................................. 35
ESPACE MEDECIN .............................................................................................................................. 36
ESPACE PATIENT ............................................................................................................................... 44
ESPACE ADMINISTRATEUR .................................................................................................................. 45

CONCLUSION ................................................................................................................................... 47
BIBLIOGRAPHIE ................................................................................................................................ 48
TABLE DE FIGURES ........................................................................................................................... 49
TABLE DE MATIERES ......................................................................................................................... 50
ANNEXE ........................................................................................................................................... 52

Ddicaces

Aux parents
Aux proches
Il est peu et de russites faciles, Et
Dchecs dfinitifs.
Proust (Marcel)

Marouane TOUZANI

Table dabrviation
JEE : Java Enterprise Edition (ou Java EE, anciennement J2EE).
JSP : JavaServer Pages.
JDK : Java Development Kit.
JRE : Java Runtime Environment, ( environnement d'excution Java ).
JDBC : Java DataBase Connectivity.
ORM : object-relational mapping, ( mapping objet-relationnel ).
HQL : Hibernate Query Language.
SWT : Standard Widget Toolkit.
IDE : Integrated Development Environment.
MVC : Modle-Vue-Contrleur, (de langlais Model-View-Controller).
UML : Unified Modeling Language ( langage de modlisation unifi ).
HTML : Hypertext Markup Language.
CSS : Cascading Style Sheets, ( feuilles de style en cascade ).
DOM : Document Object Model.
SGBD : Systme de Gestion de Base de Donnes.
SQL : Structured Query Language.
XML : Extensible Markup Language, ( langage de balisage extensible ).
CSV : Comma-separated values.
PDF : Portable Document Format.
RTF : Rich Text Format, ( format de texte enrichi ).

Introduction
Afin dappliquer les mthodologies et les notions enseignes la filire IRISI,
nous devons passer un stage de perfectionnement pour bien comprendre le
monde de travail et en mme temps raliser un travail d'tude et de recherche
durant la priode de stage. Celui-ci nous permet nous, tudiants, de nous
initier la recherche, dappliquer les connaissances acquises durant notre
scolarit en relation avec le march. Le perfectionnement dtude permet
galement de placer les tudiants dans une situation se rapprochant le plus
possible du monde de travail et desprit technique.
Le stage que jai effectu est un stage de 8 semaines au sein de lentreprise
Alam Technologies Fs, thme Cration d'une application web pour la
gestion des dossiers sanitaires des patients .
Afin de comprendre la dmarche que jai utilise pour mener ce projet son
terme, mon rapport se structure de la faon suivante :
Tout d'abord, dans une premire partie je vais prsent le contexte gnral de
lentreprise qui a parrain mon stage, une bref prsentation de
fonctionnement gnral et des services. Aprs, on passera la dfinition
gnrale de laspect de mon projet, c'est--dire ce qui existe et ce que mon
projet va apporter. Puis dans une seconde partie, je vais prsent les outils et
les technologies avec lesquels jai travaill. Ensuite dans une troisime partie,
on va aborder la tache technique, avant une dmonstration du
fonctionnement du projet.

Chapitre 1 :
Cadre et contexte du projet
1.1. Introduction
Comme tout premier chapitre celui-ci, sintressera la prsentation du cadre
du projet en tant que projet ralis lors du stage de perfectionnement, toute
en prsentant lorganisme daccueil qui ma encadr le long de cette
exprience, savoir les services que Alam Technologies fournie en prsentant
certains projets dont cette dernire a ralis le long de son existence.

1.2. Enjeux et contexte du projet


Ce projet entre dans le cadre dun stage de perfectionnement ralis au sein
de lentreprise Alam Technologies, dont le sujet est la cration dune
application web permettant chaque mdecin inscrit au niveau de
lapplication web, la possibilit de grer ses patients.

1.3. Prsentation de lorganisme daccueil


Alam Technologies, a t cr en 2009, SARL enregistre selon les lois en
vigueur au Maroc. Par M. Lamnouar Abdellah, directeur artistique et chef de
projet internet. Alam Technologies est une agence de communication globale
(web agency) situe Fs.
Services
Alam Technologies couvre le domaine de la communication et de
l'informatique savoir : cration et conception de sites web, infographie,
design, logiciel, rfrencement, dveloppement, ainsi que l'impression
travers un partenariat noue avec la socit SERINORD.
Crations des sites web : Sites vitrines, sites statiques, sites dynamiques,
portails, intranet et extranet, e-commerce, CMS, ... etc.
6

Logiciels et CRM : Logiciels de gestion de centre dappels, logiciels de


gestion de parcs vhicules, logiciels sur mesures, etc.
Rfrencement sites web : Etude des mots cls, analyse des connexions,
soumissions aux moteurs de recherche, et la surveillance du
positionnement.
Rseaux : Installations et mises en place de tous types de rseaux
Infographie / Impression : Identit visuelle, logo, photo-reportages,
photographie studio, portrait, architecture, pack-shot, panoramiques
interactifs 360 & visites virtuelles,...impression.
Offshoring / sous-traitance : Dlocalisation, sous-traitance, mise en
relation client, outsourcing.

Chapitre 2 :
Prsentation et cahier des charges
2.1. Introduction
Ce chapitre sera rserv ltude fonctionnelle de lapplication savoir les
diffrents aspects fonctionnels de mon projet.
On commencera mon chapitre par rvler les diffrentes motivations de la
cration de lapplication puis on prsentera les aspects fonctionnels de
lapplication, cest--dire le but du projet. Ensuite on passera la population
intresse par lapplication et en terminera par dclarer lensemble des aspects
fonctionnels de lapplication et les exigences du choix de la charte graphique.

2.2. Prsentation du projet


De plus en plus linformatisation des processus de gestion prouve son utilit,
fiabilit et rapidit. Do lide dinformatiser le processus mdical pour quun
mdecin peut mieux grer ses patients. Il est aussi trs important de prendre
en considration le temps quun patient peut attendre dans un cabinet
mdical juste pour avoir droit un conseil mdical, ou bien pour voir les
rsultats de ses analyses, alors quon peut le faire si on opte pour un systme
dinformation publiant ce genre dinformations consommer par des patients
ayant des droits daccs pour le faire.
Comme cest dj mentionner en bref en haut, mon sujet consiste la cration
dune application web donnant la main pour chaque mdecin, aprs avoir
recevoir les droits daccs auprs dun administrateur, de mieux grer ses
patients via des dossiers mdicaux qui peuvent tre consults par ses
patients. Lapplication doit crer un canal de communication entre le patient
et le client via un systme de correspondance.

2.3. Objectifs et primtres du projet


Le projet opte linformatisation du processus mdical, au bien plus
exactement des services mdicaux, via une application web rserve aux
mdecins ayant des autorisations daccs dlivrs auprs un administrateur.
Tout mdecin approuv par ladministrateur peut :
Enregistres des patients et les grer librement savoir les dfrentes
transactions de modification, suppression et visualisation des
informations.
Crer un dossier mdical propre chaque patient enregistr, ce dossier
doit contenir lensemble de visites mdicales, les maladies attaquant le
patient, les analyses effectues, les traitements conseills par le
mdecin, et toute autre information qui peut qualifier dtre pertinent
pour un mdecin.
Le mdecin doit aussi tre capable de communiquer avec ses patients
via un systme de correspondance ou bien de notification.
Le dossier mdical doit contenir la gestion des documents mdicaux,
lensemble des ordonnances mdicales, et les traitements conseills par
le mdecin doivent tre bien journalis dans ce dossier mdical, ainsi il
trace ltat mdicale du patient.
Le patient na pas le droit de sinscrire lui-mme, cest le mdecin qui lajoute,
et tout patient inscrit par un mdecin, doit profiter des services mdicaux en
ayant un dossier mdical propre, dont il peut le consulter, visualiser ses
analyses, et consommer les traitements fournit par le mdecin. Le patient de
sa part doit avoir un canal de communication avec son mdecin via le mme
systme de notification embarqu cot mdecin.
Tout mdecin a le droit de sinscrire au niveau de lapplication en fournissant
ces informations personnelles et ne sera oprationnel que aprs tre approuv
par ladministrateur, ce dernier a le droit aussi dajouter des mdecins qui vont
tre oprationnels une fois la saisie des informations est termine.
Ladministrateur a le droit total pour grer les mdecins, savoir les
diffrentes oprations de modification et suppression.

2.4. Public cibl


Lapplication concerne le domaine mdical, donc la population concerne de
cette gestion reste limite aux agents mdicaux savoir les mdecins, et la
population consommatrice des services savoir les patients.

Mdecin

Lapplication
web

Patient
consomme

offre

Services
mdicaux
Figure 1 : Public cibl par l'application

2.5. Contenu de lapplication


Lapplication doit offrir un espace propre aux mdecins pour grer ses
patients, ces derniers eux aussi doivent avoir un espace de consultation et bien
sur un autre espace de haut niveau permettant la gestion administrative de
lapplication. Lespace dauthentification pour les mdecins, et les patients
doivent aussi tre pris en charge par lapplication en donnant la possibilit
dinscription aux nouveaux mdecins.
2.5.1 Etape dinscription
Tout mdecin voulant profiter de lapplication doit passer par ltape
dinscription en fournissant certaines informations personnelles et en
rcuprant un identifiant pour utiliser lapplication.

10

2.5.2 Etape dauthentification


Tout utilisateur de lapplication (mdecin, patient, ou administrateur) doit
sidentifier via un identifiant (adresse mail) et un mot de passe, do la
ncessit dune tape dauthentification.
2.5.3 Espace mdecin
Le mdecin doit tre capable de grer les dossiers mdicaux de ses
clients via un espace propre appel dossier mdical.
Grer les ordonnance de ses client fait partie aussi de lespace mdecin.
Un systme de correspondance via des messages de notification entre le
mdecin et le patient.
La gestion des documents des analyses effectues par le mdecin au
profit de son patient doit fait partie de lespace mdecin.
2.5.4 Espace patient
Le patient doit tre capable de lire et envoyer des messages son
mdecin via un systme de notification.
Le patient doit aussi tre capable de consulter son dossier mdical.
2.5.5 Espace administrateur
Ladministrateur est capable de manipuler lensemble des mdecins inscrits au
niveau de lapplication, que les nouveaux inscrits dans un espace qui lui est
propre.

2.6. Charte graphique : exigences et limites


Les utilisateurs de lapplication sont des personnes non informatiss, do la
ncessit dune charte interactive, flexible et simple lutilisation, lutilisateur
doit tre capable de se rfrencier dans le site, sans plonger dans des
navigations de plus de 3 cliques, pas de sous menus, des mots cl significatifs.
Lapplication doit opter 2 couleurs savoir le vert et le blanc, et on peut
saider par des couleurs plus au moins noire, ou rouge pour les notifications.

11

2.7. Arborescence de lapplication


Parmi les tapes de la conception dune application web, il y a larborescence
de lapplication, qui est une tape trs importante, car elle conditionne les
modes daccs linformation et la navigation sur lapplication, elle est donc
importante pour lergonomie dune application web.
Larborescence de mon application part de la page daccueil, puis elle est
structure en trois rubriques : Espace mdecin , Espace patient , et
Espace administrateur , et chacune de ces rubriques contient des sous
rbriques et des pages.
Le schma suivant illustre larborescence de mon application :

Figure 2 : Arborescence de l'application

12

2.8. Planification du projet


La planification du projet est lactivit qui consiste dterminer et
ordonnancer les tches du projet, estimer leurs charges et dterminer les
profils ncessaires leur ralisation . Lobjectif pricipale de la planification (le
planning) est suivre et communiquer lavancement du projet, et dterminer si
les objectifs des tches sont raliss ou dpasss .
2.8.1 Diagramme de GANTT
Le diagramme de GANTT est la technique et reprsentation graphique
permettant de renseigner et situer dans le temps les tches et ressources du
projet .Voici le diagramme de GANTT que jai suivi :

Figure 3 : Diagramme de Gantt

Comme vous pouvez le constater sur le diagramme ci-dessus, jai choisi de


dcomposer mon projet en 5 tapes de dveloppement.
2.8.2 Mthode de PERT
La mthode PERT (Program Evaluation and Review Technique) utilise une
reprsentation en graphe pour dterminer la dure minimum dun projet,
connaissant la dure de chaque tche et les contraintes denchanement.

13

Figure 4 : Diagramme de Pert

Chapitre 3 :
Technologies et outils utiliss
3.1. Introduction
Dans ce chapitre on abordera plutt laspect technique implment par mon
application, linverse du deuximes chapitre consacr laspect fonctionnel;
on commencera par prsenter mon choix de technologies, pourquoi ? Et pour
quel but ? Puis on prsentera lensemble des technologies et outils utiliss
depuis la conception jusqu la ralisation.
Du fait de la puissance de la technologie java, on a opt pour les mmes
raisons dimplmenter mon application selon larchitecture JEE, en offrant une
abstraction et sparation des diffrentes couches de lapplication.

3.2. Technologie implmentes


3.2.1. Struts 2
Struts 2 est bas sur une structuration de la couche prsentation en servlet et
JSP, tout en respectant le modle MVC 2 (Model-Vue Contrleur 2). Le
contrleur frontal Struts est facilement configurable (la description de la
configuration tant dclarative dcrite en XML (fichiers strutsconfig.xml et
cham-config.xml). Il ralise des traitements communs, par exemple la gestion
des exceptions ou la gestion des messages, et dlgue la partie variable des
sous-contrleurs, les actions.
Struts2 nest pas une simple volution de Struts 1. Il tire ses origines de deux
framework JEE, Struts 1 et WebWork.
14

Le projet WebWork, linitiative de la socit OpenSymphony, a vu le


jour en mars 2002. Cr partir du noyau Struts, le framework a volu
introduisant de nouveaux concepts et fonctionnalits, sans se soucier de
la compatibilit avec Struts. Contrairement leurs attentes, cette
solution alternative Struts na pas rencontr un engouement trs
important au sein de la communaut JEE.
Struts 1 est un framework solide, largement prouv par le temps et
plbiscit par un grand nombre. De ce fait, la compatibilit ascendante
le freine dans ses volutions. De nombreuses critiques se sont
accumules sans pouvoir tre solutionnes dans ltat actuel des choses.
Face ce constat, en dcembre 2005 les quipes de Struts 1 et de WebWork
ont mis en commun leurs comptences pour dvelopper un nouveau
framework baptis WebWork2, renomm par la suite Struts 2, dont la premire
version stable est sortie le 22 fvrier 2007, sous le label 2.0.6. Pour sa part,
Struts 1 continue son volution et est actuellement dans sa huitime version
officielle (1.3.8) depuis le 10 Mars 2007.

Figure 5 : Architecture de Struts 2

Pourquoi Struts 2 :
Il respecte le model MVC 2 ;
Il vite davoir insrer du code Java au sein de la page JSP, (utilisation
des tags de Struts 2 ;
15

il inclut le traitement derreurs, (utilisation des tags <html:errors>) ;


il permet lutilisation des intercepteurs pour effectuer des pr/post
traitements sur les requtes, etc.
3.2.2. Hibernate 3
Hibernate est un framework de mapping objet-relationnel (ORM) open-source
hautes performances trs rpandu, visant proposer un outil de mapping
entre les objets et des donnes stockes dans une base de donnes
relationnelle. Il prend en charge la plupart des bases de donnes compatibles
JDBC, et permet dutiliser des dialectes spcifiques pour accder certaines
bases.
Les bases de donnes supportes sont les principales du march : DB2, Oracle,
MySQL, PostgreSQL, Sybase, SQL-Server, Sap DB, Interbase, ...etc.
Outre ses fonctions ORM de base, Hibernate dispose de fonctionnalits
labores, comme la mise en cache, les oprations en cascade et le
chargement paresseux. Il dfinit galement un langage dinterrogation
nomm HQL (Hibernate Query Language) pour que nous puissions crire des
requtes dobjets simples mais puissantes.
Il permet la gestion de la persistance des objets en base de donnes
relationnelle. En dautres termes, il nous laisse manipuler des objets qui sont
lis aux tables de mon base de donnes, facilitant ainsi laccs (lecture,
criture, modification, traitement) de celles-ci. Il est facile et rapide mettre
en place et acclre toutes les tches lies la rcupration et au traitement
des donnes.

16

Figure 6 : Architecture d'Hibernate 3

3.2.3. JavaMail
JavaMail est une API qui permet d'utiliser le courrier lectronique (e-mail) dans
une application crite en java (application cliente, applet, servlet, ... ). Son but
est d'tre facile utiliser, de fournir une souplesse qui permette de la faire
voluer et de rester le plus indpendant possible des protocoles utiliss.
JavaMail est une extension standard de Java, c'est dire que les spcifications
de l'API sont dfinies, mais elle n'est pas fournie avec le JRE, ce qui offre la
possibilit pour de tierces parties de fournir leur propre implmentation.

17

Figure 7 : Architecture de JavaMail

3.2.4. DisplayTag
Dans toutes les applications web, on a systmatiquement besoin d'afficher des
sries d'enregistrements ou des listes d'objets via des tableaux en HTML
(balise TABLE). Il faut alors itrer sur la liste, grer la ligne d'entte du tableau
et assurer la pagination. Cela devient vite lourd et rptitif.
En JEE, la librairie DisplayTag offre une solution rapide, pratique et efficace
ce problme. Cette Taglib offre un mcanisme trs simple d'itration sur une
collection, celui-ci s'excutant directement depuis le code d'une JSP. Le
rsultat donne l'affichage d'un tableau HTML avec une quantit d'options
telles que les tris sur les colonnes, la pagination, le regroupement de donnes
ou encore l'export du tableau aux formats csv, excel, xml, pdf ou rtf.
Les principales fonctionnalits apportes par cette librairie sont
impressionnantes :
Rapidit et facilit d'utilisation,
tri sur les colonnes,
gestion de la pagination,
export aux formats csv, excel, xml, pdf ou rtf.
Cette librairie nous offre aujourd'hui un gain majeur en rapidit de
dveloppement et en maintenance, cest la librairie utilise dans mon projet

18

pour faciliter ldition, la pagination, et lexportation des fichiers en diffrents


formats.
3.2.5. JQuery
Le framework jQuery est une bibliothque logicielle, rapide et concise, conue
pour les programmeurs JavaScript. Elle facilite le dveloppement rapide
d'applications web, et simplifie de nombreuses tches en rduisant la quantit
de code que jai besoin d'crire.
JQuery fournit un socle prouv de proprits et de mthodes (parcours et
modification du DOM, gestion des vnements, effets et animations,
transactions asynchrones de plusieurs types avec un serveur) qui procure le
mme rsultat sur tous les navigateurs.
Mais elle ne dispense pas le programmeur de l'apprentissage des bases : CSS,
HTML, DOM, JavaScript. Le programmeur trouvera sur le web de nombreux
modules d'extension, que l'on appelle plugins, qui lui apporteront des solutions
dans de nombreux domaines. L'criture d'un plugin n'est pas une tche
anodine, mais c'est la porte d'un dbutant expriment.
Avant de rinventer la roue, le programmeur n'oubliera pas l'existence de
l'interface graphique, jQuery UI, et de ses composants, que l'on appelle
widgets. Cette interface graphique possde des composants labors et
flexibles qui rpondent la quasi-totalit des besoins du concepteur de site
web.
3.2.6. MySQL 5.5
MySQL est un systme de gestion de base de donnes (SGBD). Selon le type
d'application, sa licence est libre ou propritaire. Il fait partie des logiciels de
gestion de base de donnes les plus utiliss au monde, autant par le grand
public (applications web principalement) que par des professionnels, en
concurrence avec Oracle, Informix et Microsoft SQL Server.
L'une des spcificits de MySQL est de pouvoir grer plusieurs moteurs au sein
d'une seule base. Chaque table peut utiliser un moteur diffrent au sein d'une
base. Ceci afin d'optimiser l'utilisation de chaque table. Parmi les moteurs les
plus utiliss, il y a :

19

MyISAM : moteur par dfaut de MySQL. Il est le plus simple utiliser et


mettre en uvre. Il utilise plusieurs fichiers qui grandissent au fur et
mesure que la base grossit. Il ne supporte pas les transactions, ni les
clefs trangres ;
InnoDB : moteur cr et maintenu par InnoBase (rachet par Oracle le 7
octobre 2005). Il gre les transactions et les clefs trangres (et donc
l'intgrit de ses tables). En contrepartie, les bases qui l'utilisent
occupent bien plus d'espace sur le disque ;
BerkeleyDB (BDB) : moteur fourni par Sleepycat Software qui gre les
transactions.
Dans la base de donnes de mon application, on a utilis le moteur InnoDB,
puisque cette base gre des fonctions avances et les donnes plus sensibles.

3.3. Outils dimplmentation


3.3.1. Eclipse
Eclipse est un environnement de dveloppement intgr (IDE), dont le but est
de fournir une plate-forme modulaire pour permettre de raliser des
dveloppements informatiques. En utilisant le concept de modules nomms
"plug-ins" dans son architecture. Lorigine du dveloppement d'Eclipse est la
communaut I.B.M.
Les points forts d'Eclipse :
Eclipse possde de nombreux points forts qui sont l'origine de son :
Une plate-forme ouverte pour le dveloppement d'applications et
extensible grce un mcanisme de plug-ins,
un support multi langage grce des plug-ins ddis : Cobol, C, C++,
PHP, C#, ...
malgr son criture en Java, Eclipse est trs rapide l'excution grce
l'utilisation de la bibliothque SWT,
une ergonomie entirement configurable qui propose selon les activits
raliser diffrentes perspectives ,
propose le ncessaire pour dvelopper de nouveaux plug-ins,
20

possibilit d'utiliser des outils open source : SVN, Maven, Junit,


...etc.
3.3.2. Tomcat 7
Tomcat tant quun serveur web diffus en open sous la licence Apache,
prsente un conteneur dapplication web indispensable dans lenvironnement
de dveloppement. Sa publication tant une implmentation de rfrence des
spcifications Servlet et JSP lui rendre le plus utiliser dans le monde de
dveloppement. Dans cette prsentation on sintressera la version Tomcat
7 utilis dans mon projet.
Tomcat 7 prsente une particularit entre autre Tomcat de dautres versions,
parmi ses caractristiques :
Publi sous forme de plusieurs modules intgrer,
utilise le compilateur dEclipse pour compiler les JSP : il nest plus
ncessaire dinstaller un JDK, un JRE est suffisante.
Implmente les spcifications Servlet 2.4 et JSP 2.0.

21

Chapitre 4 :
Architecture et conception
4.1.

Introduction

Dans ce chapitre, on discutera de la conception, on parlera d'abord de


larchitecture de lapplication (larchitecture trois tiers puis du modle MVC 2);
ensuite de l'UML qui a t la base essentielle de mon travail puisquil ma
donn la chance de se servir de deux diagrammes : diagramme de cas
d'utilisation et diagrammes de classes.

4.2.

Architecture de lapplication

4.2.1. Architecture 3-tiers (architecture applicative de lapplication)


L'architecture 3-tiers (de l'anglais tiers signifiant tages ou niveaux) est un
modle logique d'architecture applicative qui vise sparer trs nettement
trois couches logicielles au sein d'une mme application ou systme,
modliser et prsenter cette application comme un empilement de trois
couches, tages, niveaux ou strates dont le rle est clairement dfini :
La prsentation des donnes : correspondant l'affichage, la restitution
sur le poste de travail, le dialogue avec l'utilisateur ;
le traitement mtier des donnes : correspondant la mise en uvre de
l'ensemble des rgles de gestion et de la logique applicative ;
l'accs aux donnes persistantes : correspondant aux donnes qui sont
destines tre conserves sur la dure, voire de manire dfinitive.
Les trois couches de larchitecture 3-tiers sont :

Couche prsentation (premier niveau) :

Elle correspond la partie de l'application visible et interactive avec les


utilisateurs. On parle d'Interface Homme Machine.
22

En informatique, elle peut tre ralise par une application graphique ou


textuelle. Elle peut aussi tre reprsente en HTML pour tre exploite par
un navigateur web ou en WML pour tre utilise par un tlphone portable.
Couche mtier / business (deuxime niveau) :

Elle correspond la partie fonctionnelle de l'application, celle qui implmente


la logique , et qui dcrit les oprations que l'application opre sur les
donnes en fonction des requtes des utilisateurs, effectues au travers de la
couche prsentation. Les diffrentes rgles de gestion et de contrle du
systme sont mises en uvre dans cette couche.
La couche mtier offre des services applicatifs et mtier la couche
prsentation. Pour fournir ces services, elle s'appuie, le cas chant, sur les
donnes du systme, accessibles au travers des services de la couche
infrieure. En retour, elle renvoie la couche prsentation les rsultats qu'elle
a calculs.
Couche accs aux donnes (troisime niveau) :

Elle consiste en la partie grant l'accs aux gisements de donnes du systme.


Ces donnes peuvent tre propres au systme, ou gres par un autre
systme. La couche mtier n'a pas s'adapter ces deux cas, ils sont
transparents pour elle, et elle accde aux donnes de manire uniforme.

Figure 8 : Architecture 3-tiers

Dans mon projet, pour la couche prsentation, on a utilis le framework Struts


2, et pour la couche accs aux donnes, on utilis le framework Hibernate.

23

4.2.2. MVC 2 (Modle-Vue-Contrleur 2)


Une architecture MVC cherche sparer trois choses : le Modle, les Vues et
les Contrleurs. Les contrleurs permettent de rpondre aux actions de
l'utilisateur. Chaque contrle est associ une vue : cette dernire permet de
prsenter l'information retourne l'utilisateur. Bien entendu, l'information
renvoye est dpendante des actions d'entres de l'utilisateur (captures par
les contrleurs, nous venons de le dire). Les liens (les traitements) sont raliss
par le modle (la logique mtier).
Dans le but d'amliorer ce point, certains prfrent implmenter une
architecture MVC 2. Dans une telle architecture, il n'existe plus qu'un seul et
unique contrleur rceptionnant toutes les requtes clientes.
Le contrleur unique devient le point dentre exclusif de lapplication. Il
devient alors trs ais de centraliser la gestion des accs, des droits, des
statistiques ou de toute autre fonctionnalit transverse.

Figure 9 : Schma dtaill du model MVC 2

24

4.3.

Conception de lapplication

Afin de concevoir mon jeu, jai opt pour UML comme langage de conception
et de modlisation.
4.3.1 Pourquoi UML ?
UML est apparu au cours des annes 90 et tient sa force de la fusion des
mthodes de BOOCH, de la mthode OMT et OOSE qui prexistaient et dont
il a su tirer le meilleur. En pratique, il sagit, comme pour tout formalisme, dun
ensemble de diagrammes permettant ds lors que lon en comprend la
signification, de dcrire simplement un ensemble de donnes, dactions ou de
traitements, permettant ainsi la cration dune analyse complte pour raliser
un projet informatique (une application web dans mon cas).
UML :
Un langage de Modlisation (standard) ;
bas sur une approche solide Objectory ;
un support important de stratgies et dheuristiques ;
adapt au dveloppement Objet ;
adapt au dveloppement Itratif ;
adaptable au processus dune quipe ;
support par des outils.
UML & POO :
UML utilise une approche objet des logiciels ;
les entits mtier sont identifies comme des objets ;
les modules oprationnels sont aussi vus comme des objets ;
la construction ce fait avec une approche Yoyo (Top-down, Botton-Up).
Adaptable :
UML nimpose pas de mthode de dveloppement. Cest un standard de
communication contenant un certain nombre dartefacts utiles ;
il est donc possible dintgrer lutilisation dUML un processus de
dveloppement existant.
25

Pour toutes ces raisons jai choisi UML comme langage de conception lors de
la ralisation de mon projet de fin dtude.
La norme UML actuelle comporte 13 diagrammes. Cependant seuls
2diagrammes nous seront rellement utiles : Le diagramme des cas
dUtilisation, et le diagramme de classes.
Le diagramme de classes est le plus utile, cest un formalisme pour reprsenter
les concepts usuels de lorient objet. Le diagramme des cas dutilisation
permet de dcrire les besoins de lutilisateur final de lapplication.
4.3.2 Rgles de gestion
Les mdecins peuvent envoyer des demandes d'inscription.
Seul l'administrateur peut confirmer l'inscription d'un mdecin (ou bien
la rejeter).
l'administrateur peut galement ajouter et supprimer un mdecin.
Aprs la confirmation et l'identification, le mdecin peut ajouter des
patients.
Chaque patient peut avoir un mdecin et seulement un.
Chaque patient un seul dossier mdical.
Seul le mdecin peut remplir ce dossier, ainsi de le modifier (ajout,
suppression) au besoin.
Seul la consultation du dossier est permise pour le patient.
Le patient peut envoyer des messages uniquement son mdecin.
Le mdecin peut envoyer des messages uniquement ses patients.
Le mdecin peut dlivrer une ou plusieurs ordonnances, ainsi que la
suppression d'une ordonnance est permise.
Une ordonnance concerne un seul patient, ce dernier n'a pas le droit de
la consulter qu'aprs son envoi par son mdecin.
Une ordonnance contient un ou plusieurs traitements (mdicaments).
Chaque traitement correspond une seule ordonnance.
Seul le mdecin peut envoyer des documents ses patients.
Les documents peuvent tre filtrs selon des catgories.
26

Les patients et leur mdecin peuvent tout temps modifier leurs


donnes personnelles ainsi que leur mot de passes.
4.3.3 Diagrammes des cas dutilisation
Les cas dutilisation (use cases) dcrivent sous forme dactions et de ractions,
le comportement dun systme du point de vue dun utilisateur. Ils sont utiles
lors de llaboration du cahier des charges ou du document de spcifications
des besoins du logiciel. Ce diagramme comprend les acteurs, le systme et les
cas dutilisation.
Gestion globale de lapplication:

Figure 10 : Diagramme de cas d'utilisation de la gestion globale de l'application

27

Le diagramme ci-dessus montre la totalit des tches principales quon doit


accomplir : Le patient a le droit d'envoyer un message, afficher ses
ordonnances et consulter son dossier mdical ; et puisque le mdecin a aussi
ces droits, alors il hrite de patient , de plus il a le droit de modifier le dossier
mdical et de dlivrer des ordonnances. Il existe des tches qui sexcutent en
arrire plan, comme l'envoie demail qui est en relation include avec
ajouter un patient. Et enfin les tches de l'administrateur sont bien cites
dans le diagramme.
Gestion des dossiers mdicaux :

Figure 11 : Diagramme des cas d'utilisation de la gestion des dossiers mdicaux

Ce diagramme rsume toutes les fonctionnalits disponibles dans mon


application concernant la gestion du dossier mdical. Et comme vous l'auriez
remarqu la consultation du dossier rassemble plusieurs consultations
partielles (allergies, traitements, ...etc). C'est pour qu'on a dfinit chacune
part de plus elle hrite du dossier mdical.Le reste du diagramme est assez
clair.
28

Gestion des ordonnances :

Figure 12 : Diagramme des cas d'utilisation de la gestion des ordonnances

Concernant la gestion des ordonnances, jai adopt la mme logique, seul le


mdecin peut dlivrer ou changer leur contenu, et le patient se contente de
visualiser. Certaines tches sont facultatives, c'est pour cela qu'on les a mis
dans la relation extend.
Gestion des messages :

Figure 13 : Diagramme des cas d'utilisation de la gestion des messages

29

Les mdecins et les patients peuvent schanger des messages qui doivent
doit tre suivi dune notification. Et vu que chaque mdecin plusieurs
patients on a ajout une liste des courriers. Tout a est bien visible dans le
diagramme.
Gestion des documents :

Figure 14 : Diagramme des cas d'utilisation de la gestion des documents

Seul le mdecin a le droit dajouter et de supprimer des documents, or le


patient peut seulement les consulter, et pour faciliter la consultation on les a
groups en catgories, chaque ajout dun document par le mdecin, est suivi
dune notification.
4.3.4 Diagramme de classes
Le diagramme de classes dUML saisit la structure statique d'un systme en
montrant les objets dans le systme, les relations entre les objets, les attributs
et les oprations qui caractrisent chaque classe d'objets. C'est le plus
important des modles dUML.
Il est totalement indispensable quel que soit la mthode utilise,
gnralement le diagramme de classes dfini la structure interne et les liens
entre les diffrentes classes du systme mis en uvre.
Nous examinerons plus en dtails ce diagramme dans le schma suivant :
30

Figure 15 : Diagramme de classe

En ce qui concerne mon projet, jai cr 13 classes, listes si suit :


Classe Personne : il sagit de la classe mre des classes Patient et
Medecin . O les informations communes entre ces 2 classes sont
rassembles (nom, prnom, CIN ). On la dfinie en tant que classe
abstraite pour quelle ne soit pas instanciable.
Classe Medecin : Cest une classe fille de la classe Personne , donc elle
hrite ses attributs et ses mthodes, et puisque chaque mdecin peut
avoir plusieurs patients et pour respecter la navigabilit on a mis un
attribut de type liste des objets de type Patient .
Classe Patient : Elle hrite de la classe mre Personne , on lui a
attribu un attribut de type Medecin pour respecter la navigabilit
pour un sens comme pour lautre, et comme un patient peut avoir
31

plusieurs visites, allergies, documents, messageson a mis des attributs


de type liste pour chaque objet des classes concernes.
Classe Document : Qui contient le chemin du document, sa taille, sa
description et un tat qui prend soit true ou false selon sil a t
consult par le patient ou non. On sest restreint une unique relation
avec la classe Patient , vu que cette dernire suffit pour remonter au
mdecin concern.
Classe Message : O il y a le corps du message, sa date denvoie, et son
tat (lu ou non lu) ainsi quun attribut indiquant lmetteur, et pour les
mmes raisons cites pour la classe Document , il nexiste quune
seule relation celle avec la classe Patient , on trouve cette
caractristique aussi pour les classes : VisiteMedicale, Allergie, Vaccin,
Traitement, Risque, Pathologie, et Ordonnance.
Classe UtilisationMedicament : Elle est en relation de composition avec
la classe Ordonnance , car elle dpend uniquement dun seul
traitement qui est indiqu sur lordonnance, donc il ny a aucun sens
garder lutilisation dun mdicament aprs suppression dune
ordonnance.

32

Chapitre 5 :
Prsentation de lapplication
5.1. Introduction
Ce chapitre vise l'tude et la description dtaille de mon application, celui l
est divis en cinq espaces: inscription, connexion, mdecin, patient, et
administrateur. Pour mieux claircir les choses, cette prsentation sera
accompagne avec une suite de captures d'cran. Nous essayerons de donner
le maximum important tandis que le reste sera disponible dans l'annexe.

5.2. Laccueil de lapplication


Ce projet, sous forme dune application web, a pour but de faciliter la gestion
des donnes des patients y compris : les dossiers mdicaux (visites,
pathologie, risques, vaccins, ), les ordonnances, les documents etc.
Une fois lapplication est excute, se montre (lance) une interface contenant
le logo de lapplication, une zone de recherche, et deux boutons au centre
droite : Le premier pour accder la page de connexion des patients, le
deuxime permet la connexion des mdecins et de ladministrateur.

33

Figure 16 : Page d'acceuil de l'application

5.3. Etape dinscription


Seul le mdecin peut bnficier de cette fonctionnalit partir de lespace
mdecin laide du lien en bas de la page.
Elle comporte certains champs obligatoires, et stale sur trois tapes :
1. Informations gnrales : lunicit de certains champs est ncessaire,
comme le CIN qui, toute inscription, on teste sa compatibilit et
unicit, au cas contraire, il est inacceptable.
2. Informations sur le travail : celles-ci concernent le ct professionnel.
3. Identification : mme traitement du CIN est refait pour ladresse e-mail,
le mot de passe doit tre soigneusement confirm en le ressaisissant
une deuxime fois.
Aprs avoir termin linscription, on redirige lutilisateur vers la page de
connexion tout en affichant un message de validation sur cette page ainsi
quun message de bienvenue vers sa boite mail. Cest aprs confirmation de
ladministrateur que le mdecin pourra se connecter.

34

Figure 17 : Nouveau mdecin - tape 1

5.4. Etape dauthentification


Le champ ddi lauthentification est le mme pour ladministrateur et le
mdecin, a dpend des informations saisies dans le champ de connexion
quon pourrait orienter lutilisateur vers lun des deux espaces : administrateur
ou mdecin.
Lors de lidentification dun mdecin, plusieurs traitements sont pris en
compte : Si le mot de passe ou lmail sont invalides, on affichera un message
derreur qui le prvient ; et si les informations sont correctes mais la
confirmation de linscription nest pas encore faite par ladministrateur, on
affiche un autre message qui lindique ; sinon, le mdecin aura accs son
compte.
En cas doubli de mot de passe de la part du mdecin, il pourrait le rcuprer
en cliquant sur le lien mot de passe oubli et il sera envoy son adresse
mail.
Pour le patient il ne peut crer lui-mme un compte, cest le mdecin qui se
charge de cette opration, il reoit son mot de passe dans sa boite mail, qui
sera gnr alatoirement par le serveur.
35

Pour linterface de connexion du patient, les traitements des sections :


mail/mot de passe, mot de passe oubli, et informations incorrectes sont
identiques ceux de mdecin part les options : nouveau patient et connexion
administrateur qui ne sont pas disponibles.

Figure 18 : Page d'authentification du mdecin

5.5. Espace mdecin


5.5.1 Liste des patients (page daccueil)
Deux menus apparaissent en haut de la page : un menu horizontal variable,
contenant par dfaut la liste des patients, nouveau patient, et mes courriers,
Ou dossier mdical, ordonnance, rendez-vous, message et document si le
mdecin choisit de grer un patient. Le second comprend le bouton
dconnexion en plus dun menu contextuel qui comporte mes courriers et
rglages de compte.
Le corps de la page contient :
La liste des patients sous forme dun tableau avec quatre colonnes : nom,
prnom, CIN et options. Celui-l renferme cinq patients au maximum, en cas
de plus, on passe la pagination. Le tableau peut tre tri par colonne
souhaite (tri croissant ou dcroissant par nom, prnom, ou CIN du patient).
La colonne doptions, pour chaque patient, comprend deux boutons : un pour
36

la visualisation qui conduit au dossier mdical du patient, et lautre pour la


suppression qui ne se fait quaprs une confirmation. Cette liste peut tre
exporte sous format PDF, excel, fichier texte, ou fichier xml.
La zone des notifications qui sera aussi prsente tout le temps, permet au
mdecin daccder ses courriers en cas de rception de nouveaux messages.

Figure 19 : Page d'accueil de l'espace mdecin (liste des patients)

5.5.2 Nouveau patient


Identiquement linterface d'avant sauf qu'avec un corps peu diffrent. Un
formulaire d'inscription remplace le tableau prcdant, qui permet la saisie des
informations du nouveau patient en tenant compte de celles qui sont
obligatoires entrer, et de bien expliciter celles qui proviennent de l'unicit
comme l'mail et le CIN, car, si elles sont t entres auparavant, c'est dire
qu'il existe dj un patient avec ces coordonnes, il est inacceptable de
l'inscrire puisqu'il est dj.
Afin de russir la connexion des patients, on envoie chacun son mot de passe
par voie mail, non pas par les mdecins, mais il est gnr par le serveur
alatoirement. Il se peut qu'un problme de connexion perturbe l'opration
d'envoi du mot de passe, alors on affiche un message d'erreur confirmant
l'inscription du patient mais l'envoi dmail contenant le mot de passe n'est pas
encore russit; et dans ce cas on permet au mdecin d'envoyer au patient son
37

mot de passe via son logiciel de courriers lectroniques prfr, et on le


redirige vers la liste des patients dans la page d'accueil.

Figure 20 : Page pour ajouter un nouveau patient

5.5.3 Mes courriers


On reste toujours dans la mme interface en remplaant le tableau d'avant par
la liste des derniers messages reus par les patients, sous forme d'un tableau
form des colonnes des noms complets des patients, le dernier message, et la
date de son envoi/rception, tri, par dfaut, par ordre de date
denvoi/rception, mais on peut galement trier la liste des courriers par le
nom du patient, et par les message.
Les messages sont organis et marqus d'une mme couleur part les non lus
qui sont marqus en rouge et qui peuvent tre affichs seuls l'aide d'une
option au dessus du tableau en cas de besoin. Ainsi, par augmentation du
nombre des messages, on abouti la pagination. Dautre part, quand le
mdecin clique sur l'un des messages il est automatiquement redirig vers la
conversation complte en lui donnant la permission d'envoyer un nouveau
message. Une fois le mdecin clique sur un message non lu, celui-ci se
transforme en lu. Et tout ceci est poursuivi par la zone de notification.
38

Figure 21 : Page "Mes courriers"

5.5.4 Gestion des dossiers mdicaux


Elle contient 7 lments : visites mdicales, traitements, pathologies, vaccins,
allergies, risques et note mdicale ; qui seront aussi lists dans un sous menu
contextuel au dessous du principal, ainsi quune barre o sont inscrites les
informations personnelles du patient concern.
Ces lments sont sous forme de tableaux qui diffrent selon llment, seul
leurs trois premires lignes seront affiches, et pour consulter lun deux
entirement ou le modifier il suffit de cliquer sur (ajouter/modifier) dans
llment souhait.
Si un lment est vide, on indique que cest une zone non renseigne.
Pour chaque lment, on trouve des colonnes spcifiques qui peuvent tre des
champs de saisie ou de type date, en plus dune colonne option commune pour
les sept lments qui permet grce deux boutons de modifier ou supprimer
le contenu de la ligne correspondante.

39

Figure 22 : Page d'accueil du dossier mdical

5.5.5 Gestion des ordonnances


On y trouve deux onglets, le premier affichant la liste des ordonnances
dlivres par le mdecin vers ce patient et le second permet de crer une
nouvelle ordonnance.
Pour la liste des ordonnances on y trouve leur nombre total, puis un tableau o
sont listes toutes les ordonnances dlivres avec leurs dates et les
mdicaments quelles contiennent avec la possibilit dafficher que les
ordonnances non encore consultes par le patient, on peut aussi visualiser
lune deux en dtail ou la supprimer grce deux boutons dans la colonne
options.
Enfin on peut exporter les ordonnances sous lun des quatre formats
disponibles : CSV (fichier texte), PDF, XML, ou excel.
En ce qui concerne la cration des ordonnances elle permet la gestion de
chaque mdicament en prcisant bien sur son nom, la manire et la dure du
traitement, ainsi quune ventuelle description, on ajoute progressivement
chaque mdicament quon peut tout moment modifier ou supprimer, et
enfin on confirme le tout en envoyant lordonnance entire au patient.
40

Figure 23 : Page pour dlivrer une ordonnance

5.5.6 Gestion des messages


Il sagit dune interface permettant lchange des messages entre le mdecin
et le patient sous forme dune discussion, o pour chaque message envoy on
indique la date et lheure dtaille, ainsi que le nom accompagn dune image
pour distinguer facilement lmetteur.

41

Figure 24 : Page des messages

5.5.7 Gestion des documents


Cest une interface qui permet lenvoie des documents images (tif, tiff, bmp,
jpg, jpeg, png, ou gif) ne dpassant pas 5 Mo de taille vers le patient, avec la
possibilit de les accompagner avec une description pour plus de dtails.
Ces images sont classes selon des catgories selon leur contenu (radio, IRM,
chographie)
Le mdecin peut toujours les consulter et selon la catgorie quil dsire, ainsi
les images sont affiches en miniature juste au dessus du champ consacr
lupload, et en pointant dessus leur description saffiche, et puis un clique
permet de les agrandir, de plus il peut les supprimer, ainsi le patient ne les
verra plus son tour.
Si jamais le mdecin choisit un fichier non support, ou dpassant la taille
limite, un message derreur en rouge sera affich indiquant que le transfert est
impossible.

42

Figure 25 : Page de la gestion des documents

5.5.8 Rglages
Disponible partir du bouton Mon compte dans le deuxime menu
contextuel en haut droite de la page.
Dans cette page le mdecin peut modifier ses informations personnelles
saisies linscription, sauf son nom, prnom, CIN et son adresse mail qui
dterminent son identit.
Il a aussi la possibilit de changer son mot de passe, partir dun lien en bas de
la page, il doit alors saisir son ancien mot de passe puis entrer le nouveau quil
dsire et le confirmer, si lopration saccomplie avec succs il sera redirig
vers la page prcdente, avec un message indiquant le succs de lopration.

43

Figure 26 : Page de rglage

5.6. Espace patient


Aprs lidentification, le patient accde directement la partie dossier mdical
puisquil nest concern que par un seul mdecin, comme a les informations
de ce dernier sont affiches en permanence en haut.
Le patient a le droit alors de consulter les dtails concernant son dossier
mdical, ses ordonnances, rendez vous, messages et documents, sans nul droit
de modifier quoique ce soit exception faite des messages, puisquil a le droit
den envoyer aussi son mdecin.

44

Un dernier champ est disponible pour le patient ddi aux notifications et qui
est affich en permanence aussi, et qui donne les informations en temps rel
propos des nouveaux messages, ordonnances ou documents.
Pour la fentre rglages, elle permet au patient de complter ses informations
manquantes, car son mdecin navait saisit que les informations obligatoires
linscription, avec toujours la possibilit du changement du mot de passe.

Figure 27 : Dossier mdical du patient (espace patient)

5.7. Espace administrateur


5.7.1 Mdecins non confirms
Aprs sa connexion, ladministrateur est dirig vers la page des mdecins non
confirms, classs dans un tableau avec quatre colonnes (noms, prnom, CIN
et options). Pour voir toutes les autres informations on peut cliquer sur lune
des trois premires colonnes du tableau. La colonne des options permet de
confirmer ou de rejeter les demandes dinscription des mdecins. Lopration
du rejet ne se fait quaprs une confirmation par le biais dune boite de
dialogue.

45

5.7.2 Mdecins confirms


Un nouveau tableau lieu au centre de la page, similaire celui qui prcde
sauf quil ne contient que les mdecins confirms et longlet option sert
supprimer aprs confirmation ou visualiser un mdecin (voir la totalit des
informations).
5.7.3 Nouveau mdecin
Le mdecin naura pas besoin dattendre la confirmation dinscription sil est
ajout par ladministrateur. La procdure dinscription est la mme (rpartie
en trois, .).
Nb : pour simplifier la navigation entre ces pages, on a cr un menu
horizontal qui poursuit ladministrateur.

Figure 28 : Espace administrateur (mdecins non confirms)

46

Conclusion
Ainsi, jai effectu mon stage de perfectionnement au sein de lentreprise Alam
Technologies. Lors de ce stage de 8 semaines, jai pu mettre en pratique nos
connaissances thoriques acquises durant ma formation, de plus, je me suis
confronts aux difficults relles du monde du travail.
Cette exprience en entreprise, ma offert une bonne prparation mon
insertion professionnelle, car elle fut pour moi une exprience enrichissante et
complte qui conforte mon dsir dtre la tte de plusieurs projets dans le
futur.
De plus, cela ma pouss amliorer mon propre style concernant le
dveloppement web en JEE, et ce projet nest encore que dans son tat
prmatur, puisque je tien lamliorer davantage pour quil tient compte
dun corps mdical plus largit, et pourquoi pas ladapter pour dautres
secteurs, pour enfin donner lieu un produit innovant et comptitif sur le
march sans avoir de difficults le commercialiser.
Jai gardais du stage un excellent souvenir, il constitue dsormais une
exprience professionnelle valorisante et encourageante pour mon avenir.
Enfin, je tien exprimer mon satisfaction davoir pu travaill dans de bonnes
conditions et un environnement agrable.

47

Bibliographie
Tutoriel officiel de JEE (en anglais), [en ligne]. Adresse URL :
http://docs.oracle.com/javaee/1.4/tutorial/doc/
Mistra.com, formation en informatique, Tutoriel Hibernate, [en ligne]. Adresse
URL : http://www.mistra.fr/tutoriels-java/tutoriel-hibernate.html
developpez.com, club des professionnels de linformatique, Tutoriel Jakarta
Struts, [en ligne]. Adresse URL : http://tahe.developpez.com/java/struts/
Display tag library 1.2, documentation officielle, [en ligne]. Adresse URL :
http://www.displaytag.org/1.2/
jmdoudoux.fr, dveloppons en java, chapitre 50 : JavaMail, [en ligne]. Adresse
URL : http://www.jmdoudoux.fr/java/dej/chap-javamail.htm
Wikipdia, Lencyclopdie libre, [en ligne]. Adresse URL : http://fr.wikipedia.org
La gestion de projet informatique, mthodes, conseils et expriences . . .
[en ligne]. Adresse URL :
http://www.gestion-projet-informatique.vivre-aujourdhui.fr/
apprendre-en-ligne.net, conception dun site web, [en ligne]. Adresse URL :
http://www.apprendre-en-ligne.net/web/conception/index.html

48

Table de figures
Figure 1 : Public cibl par l'application .............................................................................................. 10
Figure 2 : Arborescence de l'application ........................................................................................... 12
Figure 3 : Diagramme de Gantt......................................................................................................... 13
Figure 4 : Diagramme de Pert ........................................................................................................... 14
Figure 5 : Architecture de Struts 2 .................................................................................................... 15
Figure 6 : Architecture d'Hibernate 3 ................................................................................................ 17
Figure 7 : Architecture de JavaMail ................................................................................................... 18
Figure 8 : Architecture 3-tiers ........................................................................................................... 23
Figure 9 : Schma dtaill du model MVC 2......................................................................................24
Figure 10 : Diagramme de cas d'utilisation de la gestion globale de l'application .............................. 27
Figure 11 : Diagramme des cas d'utilisation de la gestion des dossiers mdicaux ..............................28
Figure 12 : Diagramme des cas d'utilisation de la gestion des ordonnances ..................................... 29
Figure 13 : Diagramme des cas d'utilisation de la gestion des messages .......................................... 29
Figure 14 : Diagramme des cas d'utilisation de la gestion des documents ........................................ 30
Figure 15 : Diagramme de classe ...................................................................................................... 31
Figure 16 : Page d'acceuil de l'application ......................................................................................... 34
Figure 17 : Nouveau mdecin - tape 1 ............................................................................................. 35
Figure 18 : Page d'authentification du mdecin ................................................................................ 36
Figure 19 : Page d'accueil de l'espace mdecin (liste des patients).................................................... 37
Figure 20 : Page pour ajouter un nouveau patient ............................................................................ 38
Figure 21 : Page "Mes courriers" ....................................................................................................... 39
Figure 22 : Page d'accueil du dossier mdical ...................................................................................40
Figure 23 : Page pour dlivrer une ordonnance ................................................................................. 41
Figure 24 : Page des messages .........................................................................................................42
Figure 25 : Page de la gestion des documents .................................................................................. 43
Figure 26 : Page de rglage ............................................................................................................. 44
Figure 27 : Dossier mdical du patient (espace patient) ....................................................................45
Figure 28 : Espace administrateur (mdecins non confirms) .......................................................... 46
Figure 29 : Exemple d'une ordonnance .............................................................................................52
Figure 30 : Page d'erreur 404 (page non trouve) ............................................................................. 53

49

Table de matires
SOMMAIRE ......................................................................................................................................... 2
REMERCIEMENT ..................................................................................... ERREUR ! SIGNET NON DEFINI.
TABLE DABREVIATION .......................................................................................................................4
INTRODUCTION .................................................................................................................................. 5
CHAPITRE 1 : CADRE ET CONTEXTE DU PROJET ..................................................................................6
1.1.
INTRODUCTION ................................................................................................................................... 6
1.2.
ENJEUX ET CONTEXTE DU PROJET........................................................................................................... 6
1.3.
PRESENTATION DE LORGANISME DACCUEIL............................................................................................ 6
Services .................................................................................................................................................... 6
CHAPITRE 2 : PRESENTATION ET CAHIER DES CHARGES .....................................................................8
2.1.
INTRODUCTION ................................................................................................................................... 8
2.2.
PRESENTATION DU PROJET ................................................................................................................... 8
2.3.
OBJECTIFS ET PERIMETRES DU PROJET .................................................................................................... 9
2.4.
PUBLIC CIBLE .................................................................................................................................... 10
2.5.
CONTENU DE LAPPLICATION .............................................................................................................. 10
2.5.1 Etape dinscription ...................................................................................................................... 10
2.5.2 Etape dauthentification ..............................................................................................................11
2.5.3 Espace mdecin ...........................................................................................................................11
2.5.4 Espace patient .............................................................................................................................11
2.5.5 Espace administrateur .................................................................................................................11
2.6.
CHARTE GRAPHIQUE : EXIGENCES ET LIMITES ..........................................................................................11
2.7.
ARBORESCENCE DE LAPPLICATION ...................................................................................................... 12
2.8.
PLANIFICATION DU PROJET ..................................................................................................................13
2.8.1 Diagramme de GANTT.................................................................................................................13
2.8.2 Mthode de PERT ........................................................................................................................13
CHAPITRE 3 : TECHNOLOGIES ET OUTILS UTILISES ........................................................................... 14
3.1.
INTRODUCTION ................................................................................................................................. 14
3.2.
TECHNOLOGIE IMPLEMENTEES ............................................................................................................ 14
3.2.1.
Struts 2 .................................................................................................................................. 14
3.2.2.
Hibernate 3 ............................................................................................................................ 16
3.2.3.
JavaMail ................................................................................................................................. 17
3.2.4.
DisplayTag ............................................................................................................................. 18
3.2.5.
JQuery ................................................................................................................................... 19
3.2.6.
MySQL 5.5 ............................................................................................................................. 19
3.3.
OUTILS DIMPLEMENTATION ............................................................................................................... 20
3.3.1.
Eclipse ................................................................................................................................... 20
3.3.2.
Tomcat 7 ................................................................................................................................ 21
CHAPITRE 4 : ARCHITECTURE ET CONCEPTION ................................................................................. 22
4.1.
INTRODUCTION ................................................................................................................................. 22
4.2.
ARCHITECTURE DE LAPPLICATION ....................................................................................................... 22
4.2.1.
Architecture 3-tiers (architecture applicative de lapplication) ................................................... 22

50

4.2.2.
MVC 2 (Modle-Vue-Contrleur 2) ........................................................................................... 24
4.3.
CONCEPTION DE LAPPLICATION .......................................................................................................... 25
4.3.1 Pourquoi UML ? .......................................................................................................................... 25
4.3.2 Rgles de gestion ........................................................................................................................ 26
4.3.3 Diagrammes des cas dutilisation ................................................................................................ 27
4.3.4 Diagramme de classes ................................................................................................................ 30
CHAPITRE 5 : PRESENTATION DE LAPPLICATION ............................................................................. 33
5.1.
INTRODUCTION ..................................................................................................................................33
5.2.
LACCUEIL DE LAPPLICATION ...............................................................................................................33
5.3.
ETAPE DINSCRIPTION ........................................................................................................................ 34
5.4.
ETAPE DAUTHENTIFICATION .............................................................................................................. 35
5.5.
ESPACE MEDECIN .............................................................................................................................. 36
5.5.1 Liste des patients (page daccueil) ............................................................................................... 36
5.5.2 Nouveau patient .......................................................................................................................... 37
5.5.3 Mes courriers .............................................................................................................................. 38
5.5.4 Gestion des dossiers mdicaux .................................................................................................... 39
5.5.5 Gestion des ordonnances ............................................................................................................ 40
5.5.6 Gestion des messages ................................................................................................................. 41
5.5.7 Gestion des documents ............................................................................................................... 42
5.5.8 Rglages .................................................................................................................................... 43
5.6.
ESPACE PATIENT ............................................................................................................................... 44
5.7.
ESPACE ADMINISTRATEUR .................................................................................................................. 45
5.7.1 Mdecins non confirms .............................................................................................................. 45
5.7.2 Mdecins confirms .................................................................................................................... 46
5.7.3 Nouveau mdecin ....................................................................................................................... 46
CONCLUSION ................................................................................................................................... 47
BIBLIOGRAPHIE ................................................................................................................................ 48
TABLE DE FIGURES ........................................................................................................................... 49
TABLE DE MATIERES ......................................................................................................................... 50
ANNEXE ........................................................................................................................................... 52
Exemple dune ordonnance : .................................................................................................................... 52
Page 404 (page non trouve) : ................................................................................................................. 53

51

Annexe
Exemple dune ordonnance :

Figure 29 : Exemple d'une ordonnance

Dans la liste des ordonnances dlivres par le mdecin, on peut cliquer sur le
bouton Visualiser lordonnance pour lafficher dans une nouvelle page
ressemble la page ci-dessus.

52

Page 404 (page non trouve) :

Figure 30 : Page d'erreur 404 (page non trouve)

Lerreur 404 est un code derreur dans le protocole HTTP. Ce code est renvoy
par un serveur HTTP pour indiquer que la ressource demande (gnralement
une page web) nexiste pas. Certains navigateurs web affichent alors le
message 404 File Not Found .
Il y a cependant certains hbergeurs qui personnalisent cette page d'erreur.
Mais l'idal reste de personnaliser soi-mme l'erreur 404.
L'intrt de personnaliser cette page est multiple. Pour toutes ces raisons jai
personnalis la page derreur 404 L'intrt premier consiste ne pas perdre les
visiteurs qui s'garent sur le site (involontairement ou non) et de ne pas perdre
leur confiance. Car malheureusement, lorsqu'un visiteur rencontre une telle
page cela n'est gure un attribut de confiance. Dans certains cas a ressemble
de l'amateurisme. Il faut prouver au visiteur que le problme qu'il a rencontr
est pris trs cur par l'quipe qui s'occupe du site. Pour toutes ces raisons,
jai choisi de personaliser la page derreur 404 (capture ci-dessus).

53

S-ar putea să vă placă și