ce rapport porte sur la conception d'un site web pour prendre des rendez-vous chez des professionnels de la santé. La méthode d'analyse utilisée est l' UML et le langage de programmation J2EE précisément le framework spring et une base de données MySQL. source github https://github.com/yvanoberthol/gestcabinet
1. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD i
Nous avons effectué, dans le cadre de notre master1 GPI, un site de web pour
la prise des rendez-vous en ligne par des clients demandé par SANTIS. Ce rapport
synthétise le travail que nous avons fourni tout au long de la durée du projet.
Pour notre projet nous avons opté pour le thème Gestion des rendez-vous de
SANTIS. L’objectif de celui-ci est de permettre aux patients de pouvoir réserver une
consultation (rendez-vous) chez un médecin pour un jour donné. Ce site aura pour but
de rassurer le client de la disponibilité du médecin à consulter, de réserver sa place
pour son besoin de santé et ainsi éviter des déplacements inutiles. Pour cela, nous
avons utilisé la méthode d’Unified Modeling Language(UML) qui nous propose une
étude détaillée par le renseignement des données collectées sur le support
d’information ensuite, la critique de cet existant en vue d’une proposition nouvelle
dans la partie de la conception du système futur qui apporte une solution pour mettre
sur pied le projet.
La tâche que l’on nous a confiée durant cette période a été d’implémenter une
application permettant de gérer l’administration du cabinet médical où on pourra
retrouver des modules tels que le traitement des médecins, des différents domaines
médicaux et une autre application où le patient pourra s’inscrire et prendre son rendez-
vous. Ce logiciel est basé sur une architecture N/2 avec une base de données de type
MySQL, le système en format web J2EE basé sur Spring Framework.
Ce choix a été influé aussi par les outils informatiques que nous allions mettre
en œuvre pour ce logiciel à savoir la conception d'une base de données, une interface
utilisateur graphique(GUI) et de toute la programmation qu'il y a derrière afin de
satisfaire le cahier de charge du client et aboutir à une application web simple, utile,
performante, ergonomique et fiable. Ce projet est le prototype fourni en qualité de
d’étude de faisabilité.
RESUME
2. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD ii
We carried out, as part of our master1 GPI, a web site for taking appointments
online by customers requested by SANTIS. This report summarizes the work we have
provided throughout the duration of the project.
For our project we opted for the SANTIS Appointment Management theme.
The purpose of this is to allow patients to be able to book a consultation (appointment)
with a doctor for a given day. This site will aim to reassure the client of the availability
of the doctor to consult, to reserve his place for his health needs and thus avoid
unnecessary travel. For this, we used the method of Unified Modeling Language
(UML) which offers us a detailed study by the intelligence of the data collected on the
support of information then the criticism of this existing for a new proposal in the part
of the future system design that provides a solution to put together the project
The task entrusted to us during this period was to implement an application to
manage the administration of the medical office where we can find modules such as
the treatment of doctors, different medical fields and another application where the
patient will be able to register and make an appointment. This software is based on an
N/2 architecture with a MySQL database, the J2EE web-based system based on Spring
Framework.
This choice was also influenced by the computer tools that we would
implement for this software namely the design of a database, a graphical user interface
(GUI) and all the programming that is behind it in order to meet the customer's
specifications and result in a simple, useful, powerful, ergonomic and reliable web
application. This project is the prototype provided as a feasibility study.
ABSTRACT
3. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD iii
Au terme de ce projet, il m’est particulièrement agréable de remercier tous ceux qui de
près ou de loin, ont contribué à mon épanouissement intellectuel. Ainsi mes
remerciements vont à l’ endroit de :
DIEU TOUT PUISSANT pour toutes les grâces qu’il m’a toujours accordées ;
Mon encadreur académique Mr DJOMKOUE JOEL ;
Tous les professeurs qui m’ont permis l’accès à d’autres connaissances ;
Mr DONGMO GUY pour son soutien moral;
Tous mes camarades de promotion et en particulier ceux de la filière Gestion
des projets informatiques pour la fraternité et la solidarité qui ont régné entre
nous tout le long de notre formation.
Tous ceux qui ont participé à la réalisation de ce projet de près ou de loin.
Pour terminer un grand merci à mes parents et à ma famille pour tous les
encouragements et les espoirs qu’ils ont placés en moi.
REMERCIEMENTS
4. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD iv
A MA FAMILLE
DEDICACE
5. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD v
RESUME .........................................................................................................................i
ABSTRACT....................................................................................................................ii
REMERCIEMENTS......................................................................................................iii
DEDICACE ...................................................................................................................iv
TABLE DES MATIERES.............................................................................................. v
LISTE DES TABLEAUX.............................................................................................vii
LISTE DES FIGURES ................................................................................................viii
LISTE DES ABBREVATIONS ....................................................................................ix
INTRODUCTION GENERALE .................................................................................. 10
PREMIERE PARTIE : Etude de l’environnement....................................................... 11
Chapitre 1 : Etude préalable ...................................................................................... 12
I. Présentation Générale de l’entreprise SOFTECH........................................... 12
II. Etude d’opportunité......................................................................................... 12
III. Etude de faisabilité....................................................................................... 12
Chapitre 2 : Etude de l’existant ................................................................................. 13
IV. DESCRIPTION DE L’EXISTANT............................................................. 13
V. REDACTION DU CAHIER DE CHARGES DU LOGICIEL....................... 13
1) Objectifs....................................................................................................... 13
2) Présentation générale du projet.................................................................... 13
VI. CRITIQUE DE L’EXISTANT .................................................................... 14
1) Critiques négatives....................................................................................... 14
2) Critiques positives........................................................................................ 14
VII. PROJET D’AUTOMATISATION ET PLANNING DU PROJET............. 15
1) Introduction à UML (Unified Modeling Language).................................... 15
2) Projet d’automatisation ................................................................................ 15
3) Planification du projet.................................................................................. 16
TABLE DES MATIERES
6. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD vi
a) Edition des tâches pour le projet .............................................................. 16
b) Diagramme de Gantt................................................................................. 17
c) Estimation financière................................................................................ 17
CONCLUSION...................................................................................................... 18
DEUXIEME PARTIE : Analyse fonctionnelle et conception...................................... 19
Chapitre 3 : Analyse fonctionnelle............................................................................ 20
I. Diagramme de cas d’utilisation....................................................................... 20
II. Diagramme de séquence.................................................................................. 21
Chapitre 4 : Analyse détaillée.................................................................................... 23
III. Diagramme de classe ................................................................................... 23
IV. Diagramme d’objets..................................................................................... 24
Chapitre 5 : Implémentation...................................................................................... 25
I. Outils technologiques utilisés.......................................................................... 25
II. Modèle logique de données relationnelles ...................................................... 25
III. Quelques codes de l’application web........................................................... 25
IV. Illustrations de quelques interfaces.............................................................. 28
CONCLUSION...................................................................................................... 32
CONCLUSION GENERALE....................................................................................... 33
REFERENCES BIBLIOGRAPHIQUES...................................................................... 33
7. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD vii
Tableau1 : Identification de l’entreprise -- P12
Tableau2 : Tableau des tâches -- P16
Tableau3 : Tableau d’estimation des couts -- P17
LISTE DES TABLEAUX
8. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD viii
Figure1 : Diagramme de Gantt -- P17
Figure2 : Diagramme de cas d’utilisation de gestion de rendez-
vous --P20
Figure3 : Diagramme de cas d’utilisation de l’administration
SANTIS -- P21
Figure4 : Diagramme de séquence (prendre rendez-vous, consulter
médecin) -- P22
Figure5 : Diagramme de séquence (Traiter médecin, Traiter
spécialité) -- P22
Figure6 : Diagramme de classes -- P23
Figure7 : Diagramme d’objets -- P24
LISTE DES FIGURES
9. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD ix
UML (Unified Modeling Language)
MLDR (modèle logique de données relationnelles)
OMT (Object Modeling Technique)
OOD (Object Oriented Dynamic)
OOSE (Object Oriented Software Engineering)
SD (Diagramme de séquence)
LISTE DES ABBREVATIONS
10. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 10
De nos jours, les technologies occupent une place importante dans les
activités professionnelles. Ceci a permis aux entreprises d’optimiser les performances
à travers l’utilisation de l’outil informatique. Dès lors, l’ordinateur est considéré
comme étant un matériel indispensable pour le bon de fonctionnement de l’entreprise.
L’objectif de l’entreprise est de minimiser le temps de travail et d’accroitre le profit,
c’est dans ce sens que le projet d’informatisation est le bienvenue pour participer au
bon fonctionnement de l’entreprise. L’étude détaillée d’un système d’information
nécessite une analyse orientée par la méthode d’UML. C’est dans ce cadre que
s’inscrit notre projet de stage au sein de SANTIS qui consiste à réaliser une
application web pour l’automatisation des réservations effectuées par les patients
pour les différents médecins du cabinet médical. Notre choix a été motivé par
plusieurs points et spécialement le fait d'avoir un client pour notre logiciel ce qui nous
permet de nous initier à l'approche client développeur et au cycle de vie du logiciel, et
nous engage à concevoir un produit fiable, robuste et répondant complètement aux
besoins du client. La conception et la mise en œuvre des bases de données constituent
un volet très important de l'informatique car elles sont aujourd'hui au cœur des
applications quotidiennes et du système d'information des entreprises. Pour aboutir à
notre ambition, le travail sera organisé en deux parties : la première qui consistera à
définir une étude préalable de l’entreprise et une analyse de l’existant pour mieux
définir les besoins et les fonctions de notre application, ensuite la seconde sera
destinée à la conception du système futur et son implémentation.
INTRODUCTION GENERALE
11. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 11
Cette première partie qui est l’étude de l’environnement nous renvoie à
présenter l’entreprise, d’étudier l’opportunité et la faisabilité du projet
d’automatisation du paiement des professeurs. Ensuite, de présenter le fonctionnement
du système actuel et d’en ressortir les insuffisances et ses manques.
PREMIERE PARTIE :
Etude de l’environnement
12. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 12
I. Présentation Générale de l’entreprise SOFTECH
SOFTECH est une jeune société créée en début d’année 2013, c’est une
entreprise informatique dont la principale activité est le développement d’applications
Web, qui entend apporter à travers des technologies modernes, des solutions
professionnelles et compétitives aux besoins du numérique au Cameroun.
Fichier d’identification de l’entreprise
RAISON SOCIALE : ETS SOFTECH
ADRESSE : Tel : (+237) 654213987
Site internet : www.softech.com
FORME JURIDIQUE : Entreprise individuelle
CAPITAL SOCIAL : 8.000.000 FCFA
N° CONTRIBUABLE : P114526967843J
ACTIVITES : Informatique
SIEGE SOCIAL : Akwa – Face la poste D’Akwa
Tableau1 : Identification de l’entreprise.
II. Etude d’opportunité
L’étude d’opportunité est une étude qui est menée par l’analyste afin de juger
l’opportunité ou la nécessité de changer le système. C’est-à-dire le passage du système
manuel actuel au système futur automatisé. Est-il nécessaire de changer la manière de
faire ?
Dans le cas d’espèce, que SANTIS a fait recours à SOFTECH pour leur proposer une
solution informatique pour gérer les rendez-vous pris par les patients en ligne.
III. Etude de faisabilité
Ici, l’analyste établit les coûts estimatifs du système futur qui sont comparés à celui du
système actuel. Des questions sont aussi posées à ce niveau notamment :
L’entreprise est-elle capable de supporter les coûts dégagés ?
Y’a-t-il un avantage vu les différents coûts de changer le système ?
Chapitre 1 : Etude préalable
13. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 13
Dans ce chapitre, nous allons étudier le système d’information actuel mise en
place par l’entreprise. Par la suite, suivi d’une critique, nous allons dévisager les
différents problèmes à résoudre.
IV. DESCRIPTION DE L’EXISTANT
Lorsqu’un patient arrive au cabinet médical, il se dirige chez la secrétaire pour
vérifier la disponibilité d’un des médecins spécialisés pour résoudre son problème. La
secrétaire ensuite vérifie la disponibilité du médecin, si oui elle lui attribue un numéro
et lui demande de suivre une file d’attente ou de s’asseoir en attendant son tour. Le
patient en attente d’être reçu par le médecin se voit dans une position où il devra
reporter son rendez-vous et sinon il devra rentrer chez lui et se revoir revenir le jour
d’après.
V. REDACTION DU CAHIER DE CHARGES DU LOGICIEL
Le cahier de charge est l’expression de l’idée ou du besoin sur un document.
C’est l’outil de dialogue entre l’utilisateur et le concepteur.
1) Objectifs
Mettre sur pieds une application et un site web avec une interface utilisateur
simple et qui permet une fluidité dans l’exécution des actions. Cette application doit
être connectée à une base de données où nous pourrons manipuler les informations.
Elle devra aussi être ergonome, fiable, sécurisé, maintenable et intuitif.
2) Présentation générale du projet
Enjeu et vision du projet
Comme de nombreuses autres entreprises, les cabinets médicaux doivent
proposer des services (de santé) pour pouvoir satisfaire au mieux le besoin de son
environnement. De ce fait, afin de satisfaire au mieux la clientèle en qualité de service,
le cabinet propose de mettre sur pied un site web qui permettra au client de prendre
son rendez-vous en ligne. En effet, ce site aura pour but de rassurer le patient de la
disponibilité du médecin à consulter, de réserver sa place pour son besoin de santé et
ainsi éviter des déplacements inutiles.
Description des exigences
Le site web qui sera mis sur pieds permettra à SANTIS et aux patients de mieux
collaborer en évitant une détérioration de la relation qui existe entre eux.
Chapitre 2 : Etude de l’existant
14. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 14
Les principaux objectifs de l’application sont :
Permettre aux patients de s’inscrire ou d’enregistrer ses informations sur
la plateforme.
Assurer l’authentification du patient avant de prendre un rendez-vous.
Enregistrer les différents rendez-vous pris par le patient.
Consulter la liste des différents médecins du cabinet médical.
Consulter la liste des domaines médicaux traités par le cabinet médical.
Permettre au patient de prendre des rendez-vous.
Mais pour que cette application soit fonctionnelle, il nous a été demandé un
espace d’administration qui aura pour objectifs :
Traiter les médecins,
Traiter les domaines médicaux
Traiter les créneaux horaires des médecins.
Consulter la liste des patients et ses rendez-vous déjà pris.
Traiter les utilisateurs de l’application web.
VI. CRITIQUE DE L’EXISTANT
1) Critiques négatives
L’étude de l’existant nous a permis de desceller des limites sur le plan
organisationnel que fonctionnel :
Sur le plan fonctionnel :
Insécurité des données.
Enregistrement du patient manuellement.
Perte de temps répétitive.
Risque de perte d’information.
Stockage limité.
Sur le plan organisationnel :
Décentralisation des postes de travail.
Communication lente.
Insatisfaction du personnel médical
2) Critiques positives
Malgré les différents inconvénients rencontrés, il n’en demeure pas que ce
dernier présente des avantages.
Le faible coût sur le matériel utilisé.
Faible consommation de l’électricité.
15. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 15
VII. PROJET D’AUTOMATISATION ET PLANNING DU
PROJET
1) Introduction à UML (Unified Modeling Language)
Il existe des méthodes de conception orientées objet autre qu’UML : comme
OMT (Object Modeling Technique), OOD (Object Oriented Dynamic), OOSE (Object
Oriented Software Engineering), qui sont développées indépendamment l’une de
l’autre et ayant bénéficiées d’une reconnaissance mondiale sur une importante période
comme les principales méthodes orientées objet. GradyBooch (le concepteur de la
méthode qui a porté son nom) et James Rumbaugh (l’inventeur de l’OMT) et d’Ivar
Jacobson (inventeur de OOSE) se sont joints pour réaliser une unification complète de
leurs méthodes.
UML n’est pas un éloignement radical des méthodes OMT, OOD ou encore OOSE,
mais plutôt le successeur légitime de celles-ci. UML est plus expressive, plus propre et
plus uniforme que toutes les autres méthodes. Cela signifie qu’il y’a un bénéfice à
modéliser avec UML, parce que cette méthode permettra de mieux modéliser les
éléments qui n’auraient pas pu l’être auparavant dans des projets informatiques.
2) Projet d’automatisation
Le projet d’automatisation est une proposition des solutions du système futur.
Il sert de transition entre le système actuel et le système futur. C’est ici que nous
prévoyons le plan de réalisation du système futur. Il est encore appelé projet
d’informatisation ou orientation du système futur. Il tient compte de :
La partie HARDWARE
La partie SOFTWARE
La ressource humaine
A partir des résultats obtenus après notre étude critique du système actuel, nous avons
pu envisager un nouveau système plus adapté au bon fonctionnement de l’entreprise. Il
est basé sur les solutions suivantes :
Spécification d’un personnel chargé des saisies et des enregistrements des
médecins.
Installation des machines pouvant stocker et restaurer les informations à temps
réel.
Création d’une base de données permettant d’assurer la gestion des médecins,
des domaines médicaux, des créneaux horaires, des rendez-vous, des patients, des
utilisateurs.
Sécurisation des informations.
Installation d’un système plus rapide pour la communication par l’intermédiaire
d’un réseau local client-serveur.
16. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 16
Elaboration et délivrance des mails aux différents patients.
Pour pallier aux difficultés actuelles, une base de données distribuée doit être
implémentée afin d’atteindre les objectifs des demandeurs à savoir :
Gestion des médecins.
Gestion des patients.
Gestion des rendez-vous.
Gestion des créneaux horaires.
Gestion des domaines médicaux.
3) Planification du projet
C’est l’activité qui consiste à déterminer et à ordonnancer les tâches du projet, à
estimer leurs charges et à déterminer les profils nécessaires à leur réalisation.
Utilisé pour l’ordonnancement des tâches, estimer leurs charges et définir les
profils et ressources nécessaires, le planning va être utilisé tout au long du déroulement
du projet. Il va permettre de surveiller la réalisation des objectifs, l’avancement du
projet et de gérer l’affectation des ressources aux différentes tâches. Il est donc
essentiel de savoir bien planifier un projet.
a) Edition des tâches pour le projet
Une tâche est une action à mener pour aboutir à un résultat. ... en nombre de
journées-homme; Une durée ainsi qu'une date de début et une date de fin.
Tableau2 : Tableau des tâches.
17. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 17
b) Diagramme de Gantt
Le diagramme de Gantt est un outil utilisé (souvent en complément d'un réseau
PERT) en ordonnancement et en gestion de projet et permettant de visualiser dans le
temps les diverses tâches composant un projet.
Figure1 : Diagramme de Gantt
c) Estimation financière
L’évaluation financière nous permet d’avoir une idée sur le budget de réalisation
du projet.
Tableau3 : Tableau d’estimation des coûts
18. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 18
CONCLUSION
Dans cette partie, nous avons présenté une étude de l’existant, ainsi nous
pourrons palier à ce problème en développant une application web multifonctionnelle.
Mais pour ce faire, Nous devrions d’abord faire face à l’étude conceptuelle de notre
système futur.
19. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 19
Cette partie traite l’étude détaillée qui est la conception du système futur
automatisé. Elle permet de déterminer les spécificités fonctionnelles dans le respect
des solutions retenues au terme de l’étude préalable. Pour bien réussir la modélisation,
on va garder la méthode d’UML qui consiste à faire une approche par niveau et une
séparation des données et des traitements. Cette partie sera subdivisée en deux
chapitres qui sont : L’analyse fonctionnelle et la conception du système futur.
DEUXIEME PARTIE :
Analyse fonctionnelle et
conception
20. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 20
Dans ce chapitre, nous présenterons le diagramme de cas
d’utilisation ainsi que le diagramme de séquence qui nous permettra de cerner le
fonctionnement de notre application.
I. Diagramme de cas d’utilisation
Les diagrammes de cas d'utilisation sont des diagrammes UML utilisés pour
donner une vision globale du comportement fonctionnel d'un système logiciel. Ils sont
utiles pour des présentations auprès de la direction ou des acteurs d'un projet, mais
pour le développement, les cas d'utilisation sont plus appropriés. Un cas d'utilisation
représente une unité discrète d'interaction entre un utilisateur (humain ou machine) et
un système. Il est une unité significative de travail. Dans un diagramme de cas
d'utilisation, les utilisateurs sont appelés acteurs (actors), ils interagissent avec les cas
d'utilisation (use cases).
Figure2 : Description du diagramme de cas d’utilisation de gestion de rendez-vous.
Chapitre 3 : Analyse fonctionnelle
21. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 21
Figure3 : Description du diagramme de cas d’utilisation de l’administration SANTIS.
II. Diagramme de séquence
Le diagramme de séquence permet de montrer les interactions d'objets dans le cadre
d'un scénario d’un diagramme de cas d'utilisation. Dans un souci de simplification, on
représente l'acteur principal à gauche du diagramme, et les acteurs secondaires éventuels à
droite du système. Le but étant de décrire comment se déroulent les actions entre les acteurs
ou objets.
La dimension verticale du diagramme représente le temps, permettant de visualiser
l'enchaînement des actions dans le temps, et de spécifier la naissance et la mort d'objets. Les
périodes d'activité des objets sont symbolisées par des rectangles, et ces objets dialoguent à
l'aide de messages.
22. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 22
Figure4 : Description du diagramme de séquence (prendre rendez-vous, consulter médecin).
Figure5 : Description du diagramme de séquence (Traiter médecin, Traiter spécialité).
23. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 23
Dans ce chapitre, nous présenterons le diagramme de classe ainsi que le
diagramme d’objet qui nous permettra de détailler chaque point et partie de notre
application.
III. Diagramme de classe
Le diagramme de classes est un schéma utilisé en génie logiciel pour présenter
les classes et les interfaces des systèmes ainsi que les différentes relations entre
celles-ci. Ce diagramme fait partie de la partie statique d'UML car il fait abstraction
des aspects temporels et dynamiques.
Figure6 : Description du diagramme de classes.
Chapitre 4 : Analyse détaillée
24. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 24
IV. Diagramme d’objets
Le diagramme d'objets, dans le langage de modélisation de donnée UML,
permet de représenter les instances des classes, c'est-à-dire des objets. Comme
le diagramme de classes, il exprime les relations qui existent entre les objets, mais
aussi l'état des objets, ce qui permet d'exprimer des contextes d'exécution. En ce sens,
ce diagramme est moins général que le diagramme de classes.
Les diagrammes d'objets s'utilisent pour montrer l'état des instances d'objet avant et
après une interaction, autrement dit c'est une photographie à un instant précis des
attributs et objet existant. Il est utilisé en phase exploratoire.
Figure7 : Description du diagramme d’objets.
25. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 25
I. Outils technologiques utilisés
Pour la réalisation de notre application, nous avons utilisé les outils de
développement suivants :
Intellij IDEA pour le développement des pages web.
GitHub pour la gestion du code source.
Google Chrome pour l’aperçu et le control des différentes pages web.
II. Modèle logique de données relationnelles
Le Model Logique des Données Relationnelles a pour objet de décrire les
enregistrements logiques et permet d’entrevoir la structure physique des données.
PATIENT (id, email, nom, prénom, téléphone)
MEDECIN (id, email, matricule, nom, prénom, téléphone, ville)
CRENEAU (id, heure_debut, heure_fin, #id_medecin)
SPECIALITE (id, libelle, description)
Medecin_Specialite (#medecin_id, #specialite_id)
RV (id, annule, jour, #patient_id, #specialite_id, #creneau_id)
III. Quelques codes de l’application web
Configuration pour l’accès à la base de données
server.port=9000
# Connection url for the database "gestcabinet"
spring.datasource.url=jdbc:mysql://localhost:3308/gestcabinet?createDatabas
eIfNotExist=true&autoReconnect=true&useSSL=false&serverTimezone=UTC
# driver class name
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# Username and password
spring.datasource.username=root
spring.datasource.password=yvano1105
# Keep the connection alive if idle for a long time (needed in production)
spring.datasource.testWhileIdle=true
spring.datasource.validationQuery=SELECT 1
# Use spring.jpa.properties.* for Hibernate native properties (the prefix
is
# stripped before adding them to the entity manager).
Chapitre 5 : Implémentation
26. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 26
# Show or not log for each sql query
spring.jpa.show-sql=true
# Hibernate ddl auto (create, create-drop, update): with "update" the
database
spring.jpa.hibernate.ddl-auto=update
# Naming strategy
spring.jpa.hibernate.naming-
strategy=org.hibernate.cfg.ImprovedNamingStrategy
# Allows Hibernate to generate SQL optimized for a particular DBMS
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
Procédure de création la classe "SPECIALITE"
package com.yvanscoop.gestcabinet.entities;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;
import javax.persistence.*;
import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.util.List;
@Entity
@Getter
@Setter
public class Specialite implements Serializable {
@Id
@GeneratedValue
private Long id;
@NotEmpty(message = "le nom de la spécialité ne doit pas être vide.")
@Length (min = 6, message = "le nom de la spécialité doit être au
minimum 6 caractères.")
private String nom;
@Column (length = 3000)
@Length (min = 14, message = "entrez une description pour ce domaine.")
private String description;
@OneToMany(mappedBy = "specialite", cascade = CascadeType.ALL, fetch =
FetchType.EAGER)
@JsonIgnore
private List<MedecinSpecialite> medecinSpecialites;
@OneToMany(mappedBy = "specialite", cascade = CascadeType.ALL, fetch =
FetchType.LAZY)
@JsonIgnore
private List<Rv> rvs;
@OneToMany(mappedBy = "specialite", cascade = CascadeType.ALL, fetch =
FetchType.LAZY)
@JsonIgnore
private List<CartRv> cartRvs;
27. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 27
public Specialite() {
super();
}
}
Procédure de création de la classe "AgendaMedecinJour" pour récupérer
l’emploi du temps du médecin pour un jour donné.
package com.yvanscoop.gestmedecins.domains;
import com.yvanscoop.gestmedecins.entities.Medecin;
import java.util.Date;
public class AgendaMedecinJour {
// champs
private Medecin medecin;
private Date jour;
private CreneauMedecinJour[] creneauxMedecinJour;
// constructeurs
public AgendaMedecinJour() {
}
public AgendaMedecinJour(Medecin medecin, Date jour,
CreneauMedecinJour[] creneauxMedecinJour) {
this.medecin = medecin;
this.jour = jour;
this.creneauxMedecinJour = creneauxMedecinJour;
}
// getters et setters
public CreneauMedecinJour[] getCreneauxMedecinJour() {
return creneauxMedecinJour;
}
public void setCreneauxMedecinJour(CreneauMedecinJour[]
creneauxMedecinJour) {
this.creneauxMedecinJour = creneauxMedecinJour;
}
public Date getJour() {
return jour;
}
public void setJour(Date jour) {
this.jour = jour;
}
public Medecin getMedecin() {
return medecin;
}
public void setMedecin(Medecin medecin) {
this.medecin = medecin;
}
28. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 28
}
Procédure de la persistance des données de la classe "Medecin".
package com.yvanscoop.gestcabinet.repositories;
import com.yvanscoop.gestcabinet.entities.Medecin;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import java.util.List;
public interface MedecinRepository extends JpaRepository<Medecin, Long> {
@Query("select m from Medecin m where m.nom like :medecinname or
m.prenom like :medecinname and m.compteMedecin.enabled = 1")
List<Medecin> findByMedecin(@Param("medecinname") String medecinname);
@Query("select m from Medecin m where m.nom = :medecinname")
Medecin getByMedecinname(@Param("medecinname") String name);
Medecin findByMatricule(String matricule);
}
IV. Illustrations de quelques interfaces
Page de sécurité de l’administration de SANTIS
29. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 29
Page affichant la liste des médecins
Page pour les statistiques sur les domaines médicaux
30. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 30
Page permettant au patient de prendre un rendez-vous
Page permettant au patient de consulter la liste des rendez-vous pris
31. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 31
Page permettant au patient de sélectionner le médecin à consulter en fonction
du domaine souhaité
Le site permet aussi la traduction en anglais
32. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 32
CONCLUSION
Dans cette partie, nous avons défini une analyse fonctionnelle et détaillée de
notre projet en passant par l’UML afin de pouvoir d’être mieux s’organiser et ainsi
faciliter l’implémentation de notre application Web. Après l’analyse, nous avons défini
les différentes interfaces qui feront partie de notre application.
33. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 33
Nous avons effectué une étude complète du système d’information de
l’entreprise SANTIS qui nous a permis d’implémenter ce site et cette application Web.
Pour ce faire, nous avons procédé par le biais de la méthode UML. C’est ainsi que
nous avons mis sur pied ce projet avec la concours de l’administration de ladite
entreprise qui a pour but principal de permettre la prise d’un ou des rendez-vous en
ligne par les différents patients.
Au terme de cette expérience, nous avons acquis des connaissances sur le
développement web précisément avec les technologies JavaEE et ainsi nous
familiariser avec la programmation orientée objet avec Java. Nous pouvons dire par la
suite que les nouvelles technologies de l’informatique et de la communication ont
vraiment apporté un changement dans la gestion des tâches quotidiennes. En outre, ce
projet réalisé permettra à l’entreprise d’améliorer leur système d’information qui
présentait d’énormes limites à un système plus efficace. Quant à nous, nous avons
apporté un plus positif à notre bagage et ainsi avons acquis des aptitudes à affronter le
monde professionnel.
CONCLUSION GENERALE
34. Système d’automatisation des rendez-vous de SANTIS
Rédigé et présenté par NGUEDJEM DONGMO YVAN BERTHOLD 34
Sites de contenus éducatifs
OpenClassRoom
StackOverflow
Baeldung
Developpez.com
Udemy
Hal
Traducteurs de textes
Google translator
ImTranslator
Chaines YouTube
Mohamed Youssfi
Code Affection
Free Bootcamp
Grafikart
Cours académiques
Cours de POO Java ,2018-2019
Cours d’UML, 2018-2019
Cours de méthodologie de recherche, 2018-2019
REFERENCES BIBLIOGRAPHIQUES