Vous êtes sur la page 1sur 35

REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON

Paix-Travail-Patrie Peace-Work-Fatherland
****** ******
ECOLE NATIONALE NATIONAL ADVANCED SCHOOL
SUPERIEURE DES POSTE ET OF POST AND
TELECOMMUNICATION ET DES TELECOMMUNICATION AND
TICs ICTs
******* *******

PROJET TUTORE DE PROGRAMMATION


ORIENTE OBJET ET PRATIQUES JAVA

THEME : Conception de l’application de gestion des


patients, leurs médecins traitants et des médecins
spécialistes pour un organisme de sécurité social

Groupe3
Noms des membres Note
EFEMBA JOHANNA XAVIERA
MADIA MAKOMRA MODESTE
MENGUE BOMBA AUDREY
ONDOUA AYONG LUDOVIC
TAKAM TCHEUTCHOUA JUNIOR
TIKELA DAOU CHRISTIAN AYMAR
YAYA MAHAMAT IMAR II
YUMO BERNARD DZEKEM

Supervisé par:

IT1 2022-2023
Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour
un organisme de sécurité social 1
Sommaire

Liste des figures ____________________________________________________________ 3


Liste des tableaux ___________________________________________________________ 4
Résumé ___________________________________________________________________ 5
Abstract ___________________________________________________________________ 6
Introduction _______________________________________________________________ 7
Partie 1 : Présentation du projet _______________________________________________ 8
Partie 2 : Spécification des besoins _____________________________________________ 9
Partie 3 : Implémentation de la solution ________________________________________ 12
Partie 3 : Implémentation de la solution ________________________________________ 12
Bibliographie ______________________________________________________________ 34
Bibliographie ______________________________________________________________ 34
Webographie _____________________________________________________________ 35
Webographie _____________________________________________________________ 35

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 2
organisme de sécurité social
Liste des figures
Figure 1: diagramme de contexte ______________________________________________ 8
Figure 2: structure d'une application javafx _____________________________________ 14
Figure 3: implementation de la BD dans MySQL __________________________________ 16
Figure 4: structure MVC de l'application 1 ______________________________________ 19
Figure 5: structure MVC de l'application 2 ______________________________________ 19
Figure 6: prise en main de scène Builder ________________________________________ 20
Figure 7: classe PatientData__________________________________________________ 22
Figure 8: classe Info ________________________________________________________ 22
Figure 9: classe DataBase ____________________________________________________ 23
Figure 10: prototype vue message de conformation ______________________________ 23
Figure 11: prototype vu message d'erreur _______________________________________ 23
Figure 12: classe SuccessController ____________________________________________ 24
Figure 13: Classe ErrorController ______________________________________________ 24
Figure 14: interface ajouter patient ____________________________________________ 25
Figure 15: code Enregistrer patient ____________________________________________ 25
Figure 16: fonction enregistrer patient du modèle patient _________________________ 26
Figure 17: interface dashboard _______________________________________________ 26
Figure 18: interface ajouter patient ____________________________________________ 27
Figure 19: message d'alerte __________________________________________________ 27
Figure 20: interface consulter liste des patients __________________________________ 28
Figure 21: interface modifier les informations d'un patient _________________________ 28
Figure 22: interface suppression d'un patient ____________________________________ 29
Figure 23: interface impression feuille de maladie ________________________________ 29
Figure 24: dossier document _________________________________________________ 30
Figure 25: feuille de maladie du patient SONNA BOREL ____________________________ 30
Figure 26: interface enregistrement du médecin _________________________________ 31
Figure 27: Interface de la liste des médecins _____________________________________ 31
Figure 28: Interface de mise à jour des informations d'un médecin___________________ 32

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 3
organisme de sécurité social
Liste des tableaux

Tableau 1: Equipe Scrum pour le développement _________________________________ 12


Tableau 2: Bibliotheque du projet _____________________________________________ 15

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 4
organisme de sécurité social
Résumé

Le présent rapport constitue le résultat de notre travail accompli dans le cadre de notre
cours de programmation orienté objet et pratiques JAVA portant sur le thème : «
Implémentation de l’application de gestion des patients, leurs médecins traitants et des
médecins spécialistes pour un organisme de sécurité social ». L’objectif de ce travail est de
coder ce projet grâce au langage de programmation JAVA. C’est dans cet optique que nous
avons décidé de mettre sur pied ce document qui propose une présentation étape après
étapes en partant de la description du projet et de ses fonctionnalités jusqu’à
l’implémentation dans l’optique de mieux éclaircir les contours du problème. Il s’agit d’une
application de gestion des patients, des médecins, des consultations, des enregistrements de
feuilles de soins, et des remboursements. Pour y parvenir, Nous utiliserons les logiciels Intellij,
Scenebuilder et MySQL qui nous permettront de réaliser l’ensemble de nos interfaces, le
backend de l’application et l’implémentation de la base de données. Ce document est donc le
résultat d’une étude préalable effectué au cours d’UML.

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 5
organisme de sécurité social
Abstract

This report is the result of our work accomplished within the framework of our course in
object-oriented programming and JAVA practices on the theme: "Implementation of the
application for the management of patients, their treating physicians and specialist
physicians for a social Security ". The objective of this work is to code this project using the
JAVA programming language. It is with this in mind that we have decided to set up this
document which offers a step-by-step presentation starting from the description of the
project and its functionalities up to the implementation with a view to better clarifying the
contours of the issue. It is an application for managing patients, doctors, consultations, care
sheet recordings, and reimbursements. To achieve this, we will use Intellij, Scene builder and
MySQL software, which will allow us to create all of our interfaces, the backend of the
application and the implementation of the database. This document is therefore the result of
a preliminary study carried out during UML.

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 6
organisme de sécurité social
Introduction

De nos jours, nous remarquons que les TIC apportent de plus en plus des solutions aux
problèmes que nous rencontrons dans notre vie quotidienne. Ceci principalement sur le plan
économique. Ainsi La demande en logiciel d’automatisation et de gestion des entreprises
s’accentue de nos jours. De plus en plus des entreprises, des particuliers et bien d’autres font
appel à un informaticien pour la mise en place d’un bon logiciel de gestion de ses ressources.
Toutes fois, la production d’un tel logiciel passe par plusieurs étapes que l’on appelle le cycle
de développement d’un logiciel (l’analyse, la conception, l’implémentation, les tests et le
déploiement). Afin de maitriser la création d’un logiciel, nous nous sommes pour le moins
focaliser la phase d’implémentation du cycle de développement pour le projet tutoré qui est tiré
d’un problème réel consistant à mettre en place une application de gestion des assurés.

Pour cela, nous nous sommes servis du Framework JAVAFX afin de réaliser une logiciel
intégrant qualité et qui est adapté aux exigences du client bonne analyse et compréhension par
le client. Ainsi notre travail consistera d’abord à présenter le projet, ensuite les fonctionnalités
à développées et les étapes de l’implémentation.

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 7
organisme de sécurité social
Partie 1 : Présentation du projet

Un organisme de sécurité sociale souhaite développer une application gérant des


patients, leur médecin traitant et des médecins spécialistes. Une personne est soit un assuré, soit
un médecin, un médecin pouvant être malade et être assuré. Un médecin est soit généraliste,
soit spécialiste, un généraliste ne pouvant pas être spécialiste et inversement. Un patient a choisi
ou non son médecin traitant. Un patient consulte, à une date donnée, un généraliste. Lors des
consultations, le généraliste peut ou non prescrire une ou plusieurs consultations chez un
spécialiste. Cette application peut être utilisée par l'organisme de sécurité sociale pour inscrire
un assuré, enregistrer un médecin traitant pour un assuré, enregistrer des feuilles de maladie et
effectuer des remboursements. Tout remboursement suit un processus et 100% et 80% pour le
généraliste et le spécialiste respectivement ; ce remboursement peut se faire par virement ou
cash à la convenance du malade. Tout médecin peut également, via l'application, enregistrer
une feuille de maladie, prescrire des médicaments et prescrire une consultation chez un
spécialiste.

Question : réaliser l’application qui pourra gérer :

• Le CRUD pour un médecin et pour un patient


• L’impression au format PDF et EXCEL de la feuille de maladie et la des listes

FIGURE 1: DIAGRAMME DE CONTEXTE

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 8
organisme de sécurité social
Partie 2 : Spécification des besoins

2.1. BESOINS FONCTIONNELS

Le système à réaliser doit offrir un ensemble de fonctionnalités qui doivent être mises
en relation avec un ensemble de besoins utilisateur. Ces dernières définissent les services
auxquels les utilisateurs s’attendent et se caractérisent par les catégories suivantes :

• Les processus : qui décrivent l’exécution de diverses instructions ;

• Les actions de saisie, d’ajustements et d’annulation ;

• Authentification et accès : le système doit s'assurer de la légitimité de la demande


d'accès faite par une entité afin d'autoriser son accès à des ressources du système
conformément au paramétrage du contrôle d’accès ;

• Les interactions avec des outils et interfaces externes ;

• La collecte et utilisation des données ;

• Le respect des obligations légales : l’utilisateur doit donner son consentement avant la
collecte de données, être informé sur les données collectées. Il doit pouvoir accéder aux
données collectées et les modifier. Enfin, il doit être tenu au courant en cas de brèche
de sécurité.

2.2. BESOINS FONCTIONNELS

2.2.1. Gestion Patients


L’application doit être à mesure de gérer les patients, dans le sens où l’on effectue l’enregistrement
d’un patient, il est possible de consulter la liste des patients, de supprimer un patient ou de modifier
les informations d’un patient.

Il doit être par ailleurs possible d’imprimer la feuille de maladie d’un patient au format PDF et EXCEL

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 9
organisme de sécurité social
2.2.2. Gestion des médecins
L’application doit être à mesure de gérer les médecins que ce soit généraliste ou spécialiste,
il doit être possible d’effectuer l’enregistrement d’un médecin, de consulter la liste des médecins, de
supprimer un médecin de la base de données ou de modifier les informations d’un médecin.

Il doit être par ailleurs possible d’imprimer les informations d’un médecin via la plateforme toujours
au format PDF et EXCEL

2.2.3. Gestion du BackOffice


Le BackOffice est la partie où est assuré le paramétrage de notre application. Cette
partie intégrera :

• La gestion des administrateurs : gérer les administrateurs de la plateforme ;


• La gestion des services.

2.3. BESOINS NON FONCTIONNELS

Un besoin non fonctionnel est une restriction ou une contrainte qui pèse sur un service du
système, telles que les contraintes liées à l’environnement et à l’implémentation et les exigences en
matière de performances, les dépendances du projet, de facilité de maintenance, d’extensibilité et
de fiabilité.

La norme ISO/CEI 25000, relative à la qualité du logiciel, liste un certain nombre de


qualités qui peuvent être approchées comme autant de catégories de besoins non
fonctionnels.

Dans le cadre de ce travail, l'application devra répondre à ces besoins :

2.3.1. Les contraintes techniques


• La sécurité : Tous les accès des utilisateurs doivent être protégés par un login et un mot
de passe pour parvenir à la sécurité de la plateforme;

• Efficacité : L'application doit être fonctionnelle indépendamment de toutes


circonstances pouvant entourer l'utilisateur (une solution efficace);

• Validité : (correction, justesse, conformité), réaliser exactement les tâches définies


dans la spécification;

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 10
organisme de sécurité social
• La performance : Temps de réponse court.

• La fiabilité : Les données fournies par l'application doivent êtres fiables et la solution
doit rendre des résultats corrects.

2.3.2. Les contraintes ergonomiques


Pour notre application, nous devons obéir aux critères ergonomiques de Scapin et
Bastien suivantes :

• Guidage : L'ensemble des moyens mis en œuvre pour conseiller, orienter, informer et
conduire l'utilisateur lors de ses interactions avec l'ordinateur;

• Groupement/Distinction entre Items : Groupement des différents éléments visuels de


façon cohérente et ordonnée;

• Feedback immédiat : Dans tous les cas, l'ordinateur doit répondre à l’utilisateur en
fonction des actions et des requêtes de ce dernier;

• Brièveté : Limiter le travail de lecture, d'entrée et les étapes par lesquelles doivent passer
les usagers;

• Adaptabilité : Capacité à réagir selon le contexte et selon les besoins et les préférences
des utilisateurs;

• Prise en compte de l'expérience de l'utilisateur : Le système doit respecter le niveau


d'expérience de l'utilisateur; donc il doit être simple, compréhensible et facile à utiliser;

• Correction des erreurs : Mettre à la disposition des utilisateurs des moyens pour
corriger leurs erreurs. Par exemple, fournir la possibilité de modifier les commandes lors
de leur saisie;

• Comptabilité : Il faut qu'il y ait accord entre les caractéristiques des utilisateurs et des
tâches, d'une part, et l'organisation des sorties, des entrées et du dialogue d'une
application donnée, d'autre part. Par exemple, les termes employés doivent être
familiers aux utilisateurs, et relatifs à la tâche à réaliser.

Implémentation de l’application de gestion des patients, leurs médecins et des médecins spécialistes pour un 11
organisme de sécurité social
Partie 3 : Implémentation de la solution

Partie 3partie,
Dans cette nous ferons l’implémentation
: Implémentation de delanotre
solution
application

3.1. Atelier de production


Un atelier est un espace de travail, de réunion ou de rencontre entre une équipe pour la
réalisation d’un projet.

TABLEAU 1: EQUIPE SCRUM POUR LE DEVELOPPEMENT

Rôle Personne affectée


Scrum Master TAKAM TCHEUTCHOUA JUNIOR
Product Owner EFEMBA JOHANNA XAVIERA
Scrum Team MADIA MAKOMRA MODESTE
Scrum Team MENGUE BOMBA AUDREY
Scrum Team ONDOUA AYONG LUDOVIC
Scrum Team NGOTA BLANDINE NGEREH
Scrum Team TIKELA DAOU CHRISTIAN AYMAR
Scrum Team YAYA MAHAMAT IMAR II
Scrum Team YUMO BERNARD DZEKEM
Source: Nous-mêmes

Pour la mise sur pieds de notre solution, nous avons eu besoin des langages de
programmation, des technologies et des outils de développements, de déploiement et de
référencement.

3.1.1. Langages de programmation, technologies et bibliothèque


3.1.1.1. Langages de programmation et technologies

Nous pouvons citer les langages utilisés en trois groupes :

• Back end : il s’agit de la partie du code qui va faire les requêtes pour la base de données
• Front end : il s’agit des interfaces que l’on voit à l’écran et avec lesquelles on interagit.
Ainsi, dans le cadre de notre projet, les langages et technologies choisis sont les suivants :

12
TABLEAU 65: LANGAGES DE PROGRAMMATION ET TECHNOLOGIES PLATEFORME WEB
Domaines Langages et technologies Justification
• Open source ;
• Orienté objet ;
Backend JAVAFX/JAVA • S’adapte parfaitement à l’architecture MVC ;
• Permet de faire des requêtes pour la base de
données
• C’est un format de données textuelles, dérivé du
format XML, qui permet de décrire une interface
Frontend utilisateur pour des applications conçus
FXML avec JavaFX.
• Facile d’utilisation ;
• Peut-être générer à partir de scenebuilder
SOURCE : NOUS-MEMES

Présentation de javaFX
JavaFX est une technologie créée par Sun Microsystems qui appartient désormais à Oracle.

Avec l'apparition de Java 8 en mars 2014, JavaFX devient la bibliothèque de création d'interface
graphique officielle du langage Java, pour toutes les sortes d'application (applications mobiles,
applications sur poste de travail, applications Web), le développement de son prédécesseur Swing étant
abandonné (sauf pour les corrections de bogues).

JavaFX contient des outils très divers, notamment pour les médias audio et vidéo, le graphisme 2D et 3D,
la programmation Web, la programmation multi-fils etc.

Le SDK de JavaFX étant désormais intégré au JDK standard Java SE,

Main Le point d'entrée pour les applications JavaFX est la classe Application. JavaFX exécute dans l'ordre,
chaque fois qu'une application est lancée, les actions suivantes :

➢ Construit une instance de la classe Application spécifiée


➢ Appelle la méthode init ()
➢ Appelle la méthode start (javafx.stage.Stage)
➢ Attend l'achèvement de l'application,
➢ Appelle la méthode stop ()

Il est à noter que la méthode de démarrage (start) est abstraite et doit être surchargée. Les méthodes
d'initialisation (init) et d'arrêt (stop) ont des implémentations concrètes qui ne font rien.

L’exécution du code suivant montre que l’exécution de la méthode init n’est pas faite par le même fil
d’exécution (thread) que l’appel au constructeur par défaut et l’exécution de la méthode start.

13
FIGURE 2: STRUCTURE D'UNE APPLICATION JAVAFX

14
3.1.1.2. Bibliothèque

Une bibliothèque désigne un une collection de routines, qui peuvent être déjà compilées
et prêtes à être utilisées par des programmes. De ce fait, il permet de faciliter le développement
d’un certain type d’application pour lequel il est conçu, et rend aussi facile la gestion ou la
conception de certaines parties du logiciel.

Ainsi, nous avons choisi d’utiliser les bibliothèques suivantes :

TABLEAU 2: BIBLIOTHEQUE DU PROJET


Domaines Bibliothèque Description
FontAwesome Bibliothèque qui gère les icones.

Front-end
ITextPDF Bibliothèque qui permet de faire les impressions

Back-end MySQL- Pour se connecter et faire des requêtes pour la base de


connector-java données

SOURCE : NOUS-MEMES

3.1.2. Base de données : choix du SGBD


De nos jours, presque tous les logiciels nécessitent une base de données en backend.
L’augmentation du nombre de transactions par seconde et les téraoctets de données stockées
exigent un Framework stable et flexible pour héberger et servir ces données.

Un système de gestion de base de données, en abrégé SGBD, est un logiciel système


servant à stocker, à manipuler ou gérer, et à partager des données dans une base de données, en
garantissant la qualité, la pérennité et la confidentialité des informations, tout en cachant la
complexité des opérations.

Le SGBD permet d'inscrire, de retrouver, de modifier, de trier, de transformer ou


d'imprimer les informations de la base de données. Il permet d'effectuer des comptes rendus des
informations enregistrées et comporte des mécanismes pour assurer la cohérence des
informations, éviter des pertes d'informations dues à des pannes, assurer la confidentialité et
permettre son utilisation par d'autres logiciels. Selon le modèle, le SGBD peut comporter une
simple interface graphique jusqu'à des langages de programmation sophistiqués.

15
MySQL

MySQL est un serveur de bases de données relationnelles Open Source. Il est le deuxième
SGBD le plus utilisé et le plus populaire. Celui-ci stocke les données dans des tables séparées
plutôt que de tout rassembler dans une seule table. Cela améliore la rapidité et la souplesse de
l'ensemble. Les tables sont reliées par des relations définies, qui rendent possible la combinaison
de données entre plusieurs tables durant une requête.

Dans le cadre de notre projet, nous avons choisir d’utiliser MySQL comme SGBD de par
ses nombreux avantages :

• Multi-utilisateur;
• Gère différents types de données ;
• Simple d’utilisation ;
• Open source, c'est-à-dire que tout programmeur peut modifier son code ;
• Prise en charge de la programmation dans des langages comme C, Perl, C++, Java, Python et
PHP ;

FIGURE 3: IMPLEMENTATION DE LA BD DANS MYSQL

16
3.1.3. Logiciels et matériels utilisés

TABLEAU 67: LOGICIELS ET MATERIELS UTILISES PLATEFORME WEB


Logiciel Description Rôle dans l’implémentation

Paint 3D est une version perfectionnée de Microsoft


Paint, faisant partie des applications de modélisation et
d'impression 3D apportées par Windows 10

Paint 3D
Réalisation du logo et
retouche des images du la
Photoshop est un logiciel de retouche, de traitement et de Plateforme
dessin assisté par ordinateur, lancé en 1990 sur MacOs
puis en 1992 sur Windows.

Photoshop
XAMPP est une distribution Apache entièrement gratuite Il nous a servir à mettre sur
et facile à installer contenant MySQL, PHP et Perl. pied la base de données en
local

XAMPP
Est un environnement de développement intégré destiné
au développement de logiciels informatiques reposant
sur la technologie Java

Intellij

Source : Nous-mêmes

17
3.2. Processus de réalisation

3.2.1. Sécurité

Les révolutions du numérique n’ont pas apporté que des bonnes choses, car elles ont aussi
emmené avec elles de nombreux pirates informatiques. En effet, à l’ère du tout connecté, de
nombreuses informations sensibles circulent sur internet, et il convient donc aux startups et
entreprises qui manipulent ces données, de garantir à leurs clients la sécurisation de ces données.

Il s’agira dans cette partie de démontrer comment nous allons assurer à la fois la sécurité des
informations des utilisateurs et celle de nos propres infrastructure matérielle et logicielle.

• Sécurité coté utilisateurs:


Celle-ci sera garantie par un système de compte utilisateur : chaque utilisateur aura un
compte qui sera sécurisé par un mot de passe qu’il aura lui-même choisi. Nous ne stockerons que
les données suivantes sur nos bases de données :

• Nom;
• Hash du mot de passe ;
• Les activités qu’il a réalisées.

Ainsi, chaque utilisateur aura uniquement accès à ses propres données uniquement s’il dispose
en effet d’un compte et d’un mot de passe.

3.2.2. Implémentation proprement dite

3.2.2.1. Structure du projet

Notre projet s’organise autour d’une architecture MVC enrichie.


Nous avons :
4. La vue : Qui comprend les diffèrent fichiers fxml regroupé par affinité (les vues de la partie
patient, la partie médecin, la partie alerte, la partie login …)
5. Le contrôleur : il est l’intermédiaire entre la vue et le modèle. Il permet de récupérer les
données de la vue et de les envoyer vers le modèle notamment en faisant des contrôle
(contrôle d’erreur, control de saisie…)
6. Le modèle : c’est la partie qui interagie avec la base de données. Il permet de faire les
requêtes d’insertion, de sélection , de mise à jour et de suppression
En autre, nous avons une partie Data : Comme son nom l’indique, il s’agit des classes qui
permettent de structurer les données récupérées dans la base de données ou de stocker les
données utiles au bon fonctionnement de l’application (communication entre contrôleurs par
exemple)

18
FIGURE 4: STRUCTURE MVC DE L'APPLICATION 1

FIGURE 5: STRUCTURE MVC DE L'APPLICATION 2

19
Pour le design des interfaces, nous utilisons le logiciel Scène Builder. Qui est un outil très performant qui
facilite la conception des vues notamment grâce à son concept de glisser déposer.

FIGURE 6: PRISE EN MAIN DE SCENE BUILDER

6.1.1.1. Quelques classes

6.1.1.1.1. Classe principale

Apres la phase de connexion à l’application, il s’agit du code qui sera en cours d’exécution tout au long
de l’exécution de l’application

20
Elle contient la méthode StartVue qui permet de lancer n’importe quelle vue. Elle est notamment
utilisée pour créer des fenêtres modales

21
6.1.1.1.2. La classe PatientData
Il s’agit de la classe qui va faire le mappage avec l’entité patient de la base de données

FIGURE 7: CLASSE PATIENTDATA

6.1.1.1.3. La classe Info


Cette classe permet de stocker les informations utiles de l’application notamment pour gérer le
dialogue entre les contrôleurs

FIGURE 8: CLASSE INFO

22
6.1.1.1.4. Classe DataBase
Cette classe permet de gérer la connexion à la base de données MySQL

FIGURE 9: CLASSE DATABASE

6.1.1.1.5. Gestion des notifications

Il s’agit des messages de confirmation (confirmer l’enregistrement, la modification la suppression,


l’impression) et d’erreur (erreur d’insertion, champ non rempli …)

6.1.1.1.5.1. Vues

FIGURE 10: PROTOTYPE VUE MESSAGE DE CONFORMATION

FIGURE 11: PROTOTYPE VU MESSAGE D'ERREUR

23
6.1.1.1.5.2. Contrôleur

FIGURE 12: CLASSE SUCCESSCONTROLLER

FIGURE 13: CLASSE ERRORCONTROLLER

24
6.1.1.2. Exemple du processus d’enregistrement d’un
patient
• La vue présente l’IHM qui permettre à l’utilisateur d’entrer les informations du patient

FIGURE 14: INTERFACE AJOUTER PATIENT

• Le contrôleur va récupérer les valeurs de tous les champs lorsque l’utilisateur clique sur le
bouton d’enregistrement pour les passer au modèle

FIGURE 15: CODE ENREGISTRER PATIENT


25
• Le modèle lui il va préparer la requête SQL pour enregistrer un patient

FIGURE 16: FONCTION ENREGISTRER PATIENT DU MODELE PATIENT

6.1.1.3. Autres interfaces

Dans cette partie il sera question de faire une brève présentation de notre plateforme, à
travers la présentation de quelques interfaces clés

6.1.1.3.1. La page d’accueil (Dashboard)

FIGURE 17: INTERFACE DASHBOARD

26
6.1.1.3.2. Patient
Nous allons présenter les interfaces relatives au patient :
6.1.1.3.2.1. Enregistrement d’un patient

FIGURE 18: INTERFACE AJOUTER PATIENT

FIGURE 19: MESSAGE D'ALERTE

27
6.1.1.3.2.2. Consulter liste des patients

FIGURE 20: INTERFACE CONSULTER LISTE DES PATIENTS

6.1.1.3.2.3. Modifier les informations d’un patient

FIGURE 21: INTERFACE MODIFIER LES INFORMATIONS D'UN PATIENT

28
6.1.1.3.2.4. Suppression d’un patient

FIGURE 22: INTERFACE SUPPRESSION D'UN PATIENT

6.1.1.3.2.5. Imprimer la feuille de maladie d’un patient

FIGURE 23: INTERFACE IMPRESSION FEUILLE DE MALADIE


Lors de l’impression, un dossier document est créer dans le projet. Ce dossier contiendra toutes les
feuilles de maladies des patients

29
FIGURE 24: DOSSIER DOCUMENT

FIGURE 25: FEUILLE DE MALADIE DU PATIENT SONNA BOREL

30
6.1.1.3.3. MEDECIN

6.1.1.3.3.1. Enregistrement d’un médecin

FIGURE 26: INTERFACE ENREGISTREMENT DU MEDECIN

6.1.1.3.3.2. Liste des médecins

FIGURE 27: INTERFACE DE LA LISTE DES MEDECINS

31
6.1.1.3.3.3. Mettre à jour les informations d’un médecin

FIGURE 28: INTERFACE DE MISE A JOUR DES INFORMATIONS D'UN MEDECIN

32
Conclusion

Conclusion
Parvenu au terme de notre travail faisant suite à une modélisation réalisée lors du cours
d’UML, nous avons pu implémenter l’application qui nous incombait en utilisant le Framework
JAVAFX. Grace à cette technologie, nous avons pu réaliser toutes les interfaces et la logique
métier de notre application. Il apparait que javafx est une technologie qui se démarque de par sa
simplicité, son architecture de base qui est MVC et par son évolutivité. Nous avons également vu
un logiciel très puissant à savoir Scène Builder qui permet de faire du glisser déposer pour créer
nos vues et par la suite, il génère un fichier fxml qui s’intègre parfaitement avec javafx. Le
nouveau défi qui s’offre à nous est celui du déploiement

33
Bibliographie

Bibliographie
➢ Cours de modélisation UML 2022 de Pr. BATCHAKUI
➢ Cours de POO 2022 de Pr. BATCHAKUI
➢ PFE Groupe 19 2021-2022
➢ Cours javafx-fr.pdf créé à partir des contributeurs de Stack Overflow
➢ GUI avec JavaFX 8+
➢ Cours sur l’Introduction à JavaFX

34
Webographie

[1]
Webographie
https://www.google.com/search?q=le+FXML+en+javaFX+c%27est+quoi%3F&source=lnms&tbm
=isch&sa=X&ved=2ahUKEwjml5-J657-
AhVWTKQEHQlSDwcQ_AUoAXoECAEQAw&biw=1536&bih=688&dpr=1.25#imgrc=_w3zXLbBof4abM
[2] https://www.youtube.com/watch?v=ZfaPMLdgJxQ
[3] https://gluonhq.com/products/scene-
builder/thanks/?dl=https://download2.gluonhq.com/scenebuilder/19.0.0/install/win/SceneBuilder-
19.0.0.msi
[4] https://gluonhq.com/products/javafx/
[5] https://openjfx.io/openjfx-docs/
[6] https://code.makery.ch/fr/library/javafx-tutorial/part4/
[7] https://jdk.java.net/javafx20/
[8] https://www.oracle.com/java/technologies/javase/javafx-overview.html
[9] https://fr.wikibooks.org/wiki/Programmation_JavaFX/Introduction#:~:text=JavaFX%20est%20un
%20framework%20et,applications%20smartphones%20et%20tablettes%20tactiles.

35

Vous aimerez peut-être aussi