WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Conception et développement d'une application web.


par Hatem Slimi
Ecole supérieure d'économie numérique Manouba Tunisie  - Mastère en Modélisation Base de données et Intégration des Systèmes  2017
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Résumé

Dans ce projet de fin d'études, nous nous sommes intéressées au développement d'une application web de gestion des patients et de prise des rendez-vous en ligne dédiée pour les médecins baptisé Allodoc.tn. À présent, la prise des rendez-vous en ligne dans le secteur médical est une piste qui n'a pas bien été exploré. Nous avons réalisé une application web qui facilite la prise d'un rendez-vous chez les patients sans besoin de se déplacer. Notre système est un service clé en main destiné aux professionnels de la santé, qui offre des services pratiques de prise de rendez-vous et gestion des patients, un agenda consultable et modifiable facilement ainsi que les coordonnées de tous les spécialistes de santé en Tunisie et des emails de rappel et de notifications des rendez-vous envoyés automatiquement aux médecins et patients.

Mots clés : Allodoc, Rendez-vous, UML, PHP, Symfony, médecin, patients.

ÉÕ?ÎáÇ

Çä ?

Allodoc.tn ãÓÇ åá ?ÎÇ íÐáÇ È?æ ÞíÈØÊ ÉÌã??È äæãÊåã äÍä ÇÐ? ÇäÌÑÎÊ Úæ??ã ???

ÏÚ?æ .ÞíÈØÊáÇ ÇÐ? äæáãÚÊÓ? äíÐáÇ ÁÇ?Ø?Ç Úã Êä ? ?ä?Ç ??Ú

Ï?ÚÇæã ÐÎ?æ ??ÑãáÇ ÉÚ?ÇÊã ÊÇäÇ?È á?ÌÓ?á

áÇãæ ÏåÌ äã åá?? Çãæ ÁÇ?Ø?Ç Úã Ï?ÚÇæãáÇ ÐÎ ??? á?ÇÔã äã æßÔ? ÓÇÓÍáÇ ÚÇØÞáÇ ÇÐ? ä Çäá ? ??ÈÊ ä

íÐáÇ

ÞíÈØÊáÇ ÇÐ?

ÉÌã??È

ÇäãÞ . ??ÑãáÇ ÑÇÙÊäÇ ÊÇÚÇÞ áÎÇÏ ãÇÍÏÒÇ äã å??Ó?

 
 
 

.áÞäÊáÇ ÁÇäÚ Ö??ãáÇ ?á?Ê ?Å ÉÌÇÍáÇ äæÏ ÏÚæã

Ñæ?æ

å? ? ??áãÇÚáÇæ

ÉÍÕáÇ

ÚÇØÞ ?Ú ä???ÇÓáÇæ ? ?ÑãáÇæ ÁÇ?Ø?Ç? ÕÇÎ ìÏÊäã

Çã ßáÐßæ Ö??ãáá É?Ó?áÇ?

?Ú áæÕÍáÇ É?áãÚ áåÓ?

äÚ ÉÑÇ?Ú æ? ÞíÈØÊáÇ ÇÐ ?

ÏäÚ ÑÇÚÔ?Ç ÊÇãÏÎß É??íÍáÇ ÆÇÙæáÇ äã áÆÇ? ã? ?Ú ÑæÊí ÞíÈØÊáÇ ÇÐ? ä Çã? ÉáãÇ?Êã ÊÇãÏÎ ãåá

...

ãÏÎÊÓãáÇæ

È?ÈØáÇ ã?ÍÊ ÉÍæá ??? ?? ??ÙæáÇ ãÎÒáÇ äÚ ß??Çä Ï?ÚÇæãáÇÏ??ÊÈ ??ßÐÊáÇæ Ï?ÚÇæãáÇ ÐÎ

ESEN 2016-2017

...

ßæÏæá ?ÑãáÇ ÁÇ?Ø?Ç ? ?? Ô?Å ? ?? ???æã?Ó á ã íÅ ÏÚæã ?

:ÍíÊÇãáÇ ÊÇãá?áÇ
?

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Table des matières

Introduction Générale 1

Chapitre 1 : Etude préalable 3

Introduction 4

1. Présentation de l'organisme 4

1.1 Organigramme d'organisme 5

1.2 Compétences 6

1.3 Domaine d'expertise 6

1.4 Services supplémentaires 7

1.5 Références 8

2. Présentation du projet 9

2.1 Problématique 9

2.2 Solution proposée 10

2.3 Description du projet 10

2.4 Étude de l'existant 11

2.4.1 DabaDoc 11

2.4.2 DocRendezvous 12

2.4.3 ZocDoc 12

2.4.4 Med.tn 13

2.5 Critique de l'existant 14

3. Langage et méthodologie de conception 15

Conclusion 15

Chapitre 2 : Analyse et spécification des besoins 17

Introduction 18

1. Contexte général du projet 18

1.1 Côté internaute 18

1.2 Côté patient 19

1.3 Côté médecin 19

1.4 Côté assistant(e) 20

1.5 Côté administrateur 20

2. Spécification des besoins 20

2.1 Les besoins fonctionnels 20

2.2 Les besoins non fonctionnels 23

3. Identification des acteurs 24

4. Processus de développement 25

ESEN 2016-2017

4.1 Le Processus Unifié 25

4.2 Présentation d'UML 28

4.2.1 Historique [10] 28

4.2.2 Présentation générale des diagrammes [10] 29

4.3 Démarche de développement 30

Conclusion 32

Chapitre 3 : Modélisation métier & Exigences fonctionnelles 33

Introduction 34

1. Activité 1 : Modélisation métier 34

Élaboration du schéma de contexte du domaine d'étude 34

2. Activité 2 : Exigences Fonctionnelles 35

2.1 Élaboration du diagramme des cas d'utilisation système 35

2.2 Élaboration du diagramme de séquence système 36

2.2.1 Administrateur 36

2.2.2 Médecin (Docteur) 40

2.2.3 Patient 54

Conclusion 57

Chapitre 4 : Analyse des cas d'utilisation 58

Introduction 59

Activités 3 : Analyse des cas d'utilisation 59

1. L'internaute 59

1.1 Cas d'utilisation détaillés : S'inscrire à la plateforme allodoc.tn 59

1.2 Cas d'utilisation détaillés : S'authentifier 60

2. Le médecin (Docteur) 61

2.1 Cas d'utilisation détaillés : Gérer profil 61

2.2 Cas d'utilisation détaillés : Gérer planning 63

2.3 Cas d'utilisation détaillés : Gérer rendez-vous 64

2.4 Cas d'utilisation détaillés : Gérer patients 66

2.5 Cas d'utilisation détaillés : Gérer assistants 67

3. Assistant(e) 68

Cas d'utilisation détaillés : Gérer rendez-vous 68

4. Patient 70

4.1 Cas d'utilisation détaillés : Gérer rendez-vous 70

4.2 Cas d'utilisation détaillés : Créer avis 71

5. Administrateur 73

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

5.1 Cas d'utilisation détaillés : Gérer les comptes 73

5.2 Cas d'utilisation détaillés : Gérer les avis 74

6. Diagramme de séquences détailles 76

6.1 Diagramme de séquence « d'inscription » 76

6.2 Diagramme de séquence « d'authentification » 77

6.3 Diagramme de séquence « ajouter assistant » 78

6.4 Diagramme de séquence « supprimer assistant » 79

6.5 Diagramme de séquence « consulter médecin » 80

6.6 Diagramme de séquence « vérifier compte » 81

7. Diagramme de classe 82

Conclusion 86

Chapitre 5 : Réalisation de l'application 87

1. Environnement de développement 88

1.1 Environnement matériel 88

1.2 Environnements logiciels 89

1.3 Langages utilisés, moteur de templates, Framework Interface de

programmation(API) 89

1.3.1 Langages 89

1.3.2 Moteur de templates 90

1.3.3 Framework 90

1.3.4 Interface de programmation 91

2. Architecture MVC Modèle-vue-contrôleur 91

3. Présentation des interfaces principales 93

3.1 Page d'authentification et inscription 93

3.2 Page d'accueil public 95

3.3 Espace de médecin (Tableau de bord) 97

3.4 Gérer planning (Médecin) 97

3.5 Ajouter assistant(e) (Médecin) 98

3.6 Ajouter patient (Médecin) 98

3.7 Liste des patients (Médecin) 99

3.8 Espace du patient 100

3.9 Les étapes d'une prise de rendez-vous 100

3.10 Résultat de la recherche 101

Conclusion 103

Conclusion Générale et perspectives 104

Annexe : Règles de transformation du modèle conceptuel au modèle logique 105

1. Règle 1 : Transformation des entités/classes [28] 105

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

2. Règle 2 : transformation des associations [28] 105

2.1 Association un à plusieurs 105

2.2 Associations plusieurs-à-plusieurs 106

2.3 Associations un-à-un 106

Bibliographie & Webographie 108

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

Liste des figures

Figure 1: Logo de l'organisme 5

Figure 2: Organigramme d'organisme 6

Figure 3: Compétences 6

Figure 4: Domaine d'expertise 7

Figure 5: Services supplémentaires 8

Figure 6: Référence 1 8

Figure 7: Référence 2 9

Figure 8: Dabadoc 12

Figure 9: Docrendezvous 12

Figure 10: ZocDoc 13

Figure 11: Med.tn 14

Figure 12: Caractéristique d'un processus unifié 26

Figure 13: Les relations de dépendance entre les concepts en vue de développement d'un

produit 27
Figure 14: Schéma de l'hiérarchie des diagrammes UML 2.0 sous forme d'un diagramme

de classes 29

Figure 15: Caractéristiques de l'approche itérative 30

Figure 16: Cycle de la vie du processus UP 30

Figure 17: les phases d'un cycle du processus unifié 31

Figure 18: Schéma détaillé de la démarche 32

Figure 19: schéma de contexte du domaine d'étude 35

Figure 20: diagramme de cas d'utilisation générale du système 36

Figure 21: Diagramme de séquence système du cas d'utilisation "Gestion des comptes-

authentification" 37
Figure 22: Diagramme de séquence système du cas d'utilisation "Gestion des comptes-

Ajouter" 38
Figure 23:Diagramme de séquence système du cas d'utilisation "Gérer compte- Modifier"

39
Figure 24: Diagramme de séquence système du cas d'utilisation "Gestion des comptes-

Supprimer" 40
Figure 25: Diagramme de séquence système du cas d'utilisation " Authentification du

médecin " 41

Figure 26: Diagramme de séquence système du cas d'utilisation " Gérer profile " 42

Figure 27: Diagramme de séquence système du cas d'utilisation " Ajouter assistant " 43

Figure 28: Diagramme de séquence système du cas d'utilisation " Rechercher dans la liste

des assistant " 44
Figure 29: Diagramme de séquence système du cas d'utilisation " Modifier privilèges de

l'assistant " 45
Figure 30: Diagramme de séquence système du cas d'utilisation " Supprimer assistant " 46 Figure 31: Diagramme de séquence système du cas d'utilisation " Confirmer/Annuler

rendez-vous " 47
Figure 32: Diagramme de séquence système du cas d'utilisation " Rechercher rendez-vous

"

 

48

 
 

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

Figure 33: Diagramme de séquence système du cas d'utilisation " Ajouter patient " 49

Figure 34: Diagramme de séquence système du cas d'utilisation " Modifier les informations

du patient " 50
Figure 35: Diagramme de séquence système du cas d'utilisation " Rechercher un patient "

51

Figure 36: Diagramme de séquence système du cas d'utilisation "Ajouter planning" 52

Figure 37: Diagramme de séquence système du cas d'utilisation "Modifier planning" 53

Figure 38: Diagramme de séquence système du cas d'utilisation "Supprimer planning" 54

Figure 39: Diagramme de séquence système du cas d'utilisation "Authentification " 55

Figure 40: Diagramme de séquence système du cas d'utilisation " Prise d'un rendez-vous "

56

Figure 41: Diagramme de séquence système du cas d'utilisation " Ajouter avis " 57

Figure 42: Diagramme du cas d'utilisation « S'inscrire à la plateforme » 59

Figure 43: Diagramme de cas d'utilisation détaillés « S'authentifier » 60

Figure 44: Diagramme de cas d'utilisation détaillés « Gérer profile » 62

Figure 45: Diagramme de cas d'utilisation détaillés « Gérer planning » 63

Figure 46: Diagramme de cas d'utilisation détaillés « Gérer rendez-vous » 65

Figure 47: Diagramme de cas d'utilisation détaillés « Gérer patients » 66

Figure 48: Diagramme de cas d'utilisation détaillés « Gérer assistants » 67

Figure 49: Diagramme de cas d'utilisation détaillés « Gérer rendez-vous » 69

Figure 50: Diagramme de cas d'utilisation détaillés « Gérer rendez-vous » 70

Figure 51: Diagramme de cas d'utilisation détaillés « Créer avis » 72

Figure 52: Diagramme de cas d'utilisation détaillés « Gérer les comptes » 73

Figure 53: Diagramme de cas d'utilisation détaillés « Gérer les avis » 75

Figure 54: Diagramme de séquence « d'inscription » 77

Figure 55: Diagramme de séquence « d'authentification » 78

Figure 56: Diagramme de séquence « ajouter assistant » 79

Figure 57: Diagramme de séquence « supprimer assistant » 80

Figure 58: Diagramme de séquence « consulter médecin » 81

Figure 59: Diagramme de séquence « vérifier compte » 82

Figure 60: Diagramme de classes 85

Figure 61: L'architecture « MVC » 93

Figure 62: Interface page connexion et inscription 94

Figure 63: Interface page connexion 95

Figure 64: Page d'accueil 96

Figure 65: Tableau de bord du médecin 97

Figure 66: Gérer planning 98

Figure 67: Ajouter assistant(e) 98

Figure 68: Ajouter patient 99

Figure 69: Liste des patients 99

Figure 70: Interface de l'espace du patient 100

Figure 71: Les étapes d'une prise de rendez-vous 101

Figure 72: L'interface du résultat de recherche 102

Figure 73: L'interface du résultat de recherche 105

Figure 74 : Transformation d'une association un-à-plusieurs 106

Figure 75 : Transformation d'une association plusieurs-à-plusieurs 106

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

Figure 76 : Transformation d'une association un-à-un 107

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017

Liste des tableaux

Tableau 1: Les services développés par Webmaster Media 5

Tableau 2 : Critique de l'existant 15

Tableau 3: Description textuelle du cas d'utilisation « S'inscrire à la plateforme » 59

Tableau 4: Description textuelle du cas d'utilisation « S'authentifier à la plateforme » 60

Tableau 5: Description textuelle du cas d'utilisation « Gérer profil » 62

Tableau 6: Description textuelle du cas d'utilisation « Gérer planning » 63

Tableau 7: Description textuelle du cas d'utilisation « Gérer rendez-vous » 65

Tableau 8: Description textuelle du cas d'utilisation « Gérer patients » 66

Tableau 9: Description textuelle du cas d'utilisation « Gérer assistants » 68

Tableau 10: Description textuelle du cas d'utilisation « Gérer rendez-vous » 69

Tableau 11 : Description textuelle du cas d'utilisation « Gérer rendez-vous » 70

Tableau 12: Description textuelle du cas d'utilisation « Créer avis » 72

Tableau 13: Description textuelle du cas d'utilisation « Gérer les comptes » 73

Tableau 14: Description textuelle du cas d'utilisation « Gérer les avis » 75

Tableau 15: Description des différentes méthodes de diagramme de classes 83

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 1

Introduction générale

Il ne fait désormais plus aucun doute que l'informatique est l'innovation la plus influente et la plus récente qui a marqué la vie de l'être humain moderne et révolutionnaire.

Le développement des applications qui simplifient le travail manuel dans les cabinets des médecins tels que l'organisation des fiches techniques des patients et les problèmes de prise des rendez-vous. Ces travaux prennent beaucoup de temps et d'argent pour le médecin et pour le patient. C'est pour cela, la création d'une plateforme est un choix stratégique qui facilite le travail.

Ainsi, l'objectif de notre projet est de réaliser une application web interactive, fiable, conviviale et facile à s'intégrer dans l'environnement du travail du secteur médical. Cette application vise essentiellement à diminuer la charge quotidienne des gens en réduisant le temps d'attente des patients pour la prise d'un rendez-vous et la perte ou bien la désorganisation des documents du médecin.

Dans le présent rapport, nous présentons en détail les étapes que nous avons suivies pour réaliser notre application web. Ce rapport comporte cinq chapitres visant à définir et à exposer les concepts et les outils de travail utilisés. En effet, dans le premier chapitre, nous décrivons l'étude préalable pour démontrer les nouvelles solutions que nous proposons. Ensuite, nous présentons l'analyse et les spécifications des besoins ainsi que la méthodologie de développement dans une deuxième chapitre. En plus, le troisième chapitre se consacre à une explication détaillée du premier et deuxième activité du méthodologie UP7(Processus unifie) en présentant le schéma de contexte d'étude, le diagramme de cas d'utilisation système et les diagrammes de séquences systèmes. En outre, dans le quatrième chapitre, nous détaillerons l'analyse des cas d'utilisations en présentant les diagrammes des cas d'utilisation détaillées, les diagrammes de séquences détaillées et le diagramme des

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 2

classes détaillées. En fin, dans le dernier chapitre nous décrivons l'environnement de développement et les différentes interfaces graphiques de notre application web.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Chapitre 1 : Etude préalable

ESEN 2016-2017 Page 3

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 4

Introduction

Avant de traiter le sujet du présent projet, il convient de présenter tous l`environnement dans lequel il a été mené. Nous donnons ensuite une vue globale sur le sujet, sur la méthodologie et le formalisme adopté, puis, nous présentons l`ordonnancement des différentes étapes de création de notre application web.

Cette partie a pour objectif de situer le projet dans son cadre général à savoir l'entreprise accueillante, son organisation et ses principales fonctionnalités.

1. Présentation de l'organisme

Webmaster Media est une agence web en Tunisie. Dynamique dans le secteur de développement web et mobile, sa mission est de mettre à la disposition de ces clients et ces partenaires le savoir-faire et les compétences pour les guider dans la mettre en oeuvre de leurs projets.

Les services développés par Webmaster Media sont :

Services

Détails

?

Développement des sites et portails Web

Développement des sites web statiques et dynamiques

?

Solutions Intranet et Extranet

Une équipe dynamique et jeune pour trouver les solutions dans un court temps

?

Applications Mobiles

Développement des applications mobile

?

Webmarketing

- Référencement

- Marketing communautaire
Web

- Gestion des réseaux sociaux

?

Photographie et vidéo

- Montage

- Vidéo 360 °

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 5

 
 

- Image

 
 

?

Infographie et impression

- Affiche

- Brochure

- Catalogue

 
 

?

Hébergements

- Hébergement web

 
 

?

Maintenance et le Webmastering

- Maintenance des sites et

applications web

- Formation pour les Webmaster

Tableau 1: Les services développés par Webmaster Media La figure 1 illustre le logo de la société

Figure 1 : logo de l'organisme [1]

1.1 Organigramme d'organisme

La figure 2 illustre l'organigramme de l'organisme

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

GÉRANT

 
 
 
 
 
 
 
 
 
 
 

Département
Développement

Département
Commercial

Département
Marketing

Département
Administratif

 
 
 
 
 
 
 
 

Chef de Projet

Responsable IT

Responsable
Marketing

Responsable
Commercial

Secrétaire

Figure 2 : Organigramme d'organisme I1] 1.2 Compétences

Webmaster Media est un partenaire idéal qui accompagne dans l'intégralité de la chaîne de valeur des services web.

Figure 3 : Compétences I1] 1.3 Domaine d'expertise

Webmaster Media est une agence qui dispose un ensemble des compétences techniques vise à fournir les meilleures solutions digitales.

ESEN 2016-2017 Page 6

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 4 : Domaine d'expertise I1]

ESEN 2016-2017 Page 7

1.4 Services supplémentaires

Plus qu'une simple agence web, Webmaster Media offre des services de photographie 360 ° et de production de vidéos.

La figure 5 illustre le service de photographie 360 ° et de production de vidéos.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 8

Figure 5 : Services supplémentaires [1]

1.5 Références

Les figures 6 et 7 illustrent quelque référence de Webmaster Media.

Figure 6 : Référence 1 [1]

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 9

Figure 7 : Référence 2 [1]

2. Présentation du projet

2.1 Problématique

Pour gérer son cabinet, chaque médecin rencontre plusieurs difficultés tel que : la perte d'information ainsi que le manque d'organisation en travail et l'endommagement des fiches après l'utilisation fréquente.

Pour prendre un rendez-vous avec un médecin, le patient a besoin de se déplacer parfois de longues distances ce qui entraine la perte de temps et de l'argent sans garantie de prendre un rendez-vous parfois, à cause de l'inexistence du médecin dans son cabinet...

Cependant, afin de surmonter ces problèmes de coordination, des nouvelles technologies de l'information ont été introduites pour faciliter le stockage des données des patients via Internet et d'offrir à l'internaute le service de prise des rendez-vous en ligne.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 10

2.2 Solution proposée

Pour résoudre les problèmes dus à la mauvaise gestion des fiches techniques et des prises des rendez-vous au secteur médical. Nous proposons comme solutions efficaces, le développement d'une application web de prise des rendez-vous et de gestion des patients en ligne.

2.3 Description du projet

Dans cette section, nous allons présenter le cadre général de notre projet ; qui consiste à concevoir et à développer une application web destinée aux médecins et patients.

Notre application se présente sous la forme d'un ensemble des pages web accessibles pour l'utilisateur qui lui permette de bénéficier des différents services proposés. C'est un projet bien planifié et évolué au sein de l'organisation qui fournit un confort supplémentaire aux patients au niveau de recherche du médecin pour prendre un rendez-vous à distance, en plus cette application permet aux médecins de mieux gérer ses rendez-vous et ses fiches techniques des patients contrôlés par un système d'informations qui soutient la gestion électronique avancé des documents (fiches techniques).

Notre projet, c'est une plateforme moderne de gestion et de prise de rendez-vous médical en ligne. C'est aussi un annuaire des médecins en Tunisie le plus complet.

Cette application englobera les fonctionnalités suivantes :

? L'internaute peut consulter, s'inscrire, se connecter et avoir un profil où il peut modifier leurs données.

? Chaque patient peut connecter même avec son compte Facebook ou son compte Gmail et avoir un profil sur notre plate-forme.

? Chaque patient peut prendre des rendez-vous à distance grâce à notre application.

? Le patient peut évaluer le travail du médecin et même évaluer la plate-forme

? Chaque médecin confirmé à un profil qui existe sur notre base des données, il peut contacter l'agence web (Webmaster média) et avoir

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 11

son accès (Login et mot de passe), puis il peut accéder à son profil et modifier ses données.

? Le médecin peut gérer son profil, son planning, son agenda, sa galerie, ses honoraires, ses rendez-vous, sa spécialité, et ses patients.

? Back-end ou bien le tableau de bord de l'administrateur de l'application : Les administrateurs auront le droit de créer/modifier/supprimer les patients et les médecins.

? Les spécialités les plus recherchées toujours en premier niveau dans la zone de la recherche.

? Recherche avancée avec nom du médecin, spécialité, localisation, ville, délégation, sexe et aussi avec la langue parlée.

2.4 Étude de l'existant

Nous présentons notre étude, analyse et attitude des projets existantes associées à la gestion de prise des rendez-vous en ligne. Cette étude nous a permis de préciser les buts de notre projet que nous annonçons dans la section précédente de ce chapitre.

Dans ce contexte, quelques applications web existent actuellement pour répondre à cette problématique, nous citons dans cette section les avantages et les inconvénients des applications ci-dessous.

2.4.1 DabaDoc

La figure 9 illustre la page d'accueil du Dabadoc.

Dabadoc est une application web développée par une équipe du Maroc, gère les prises de rendez-vous au grand Maghreb.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 8 : Dabadoc [2]

2.4.2 DocRendezvous

La figure 10 illustre la page d'accueil du DocRendezvous.

DocRendezvous est une application web française qui manage les prises des rendez-vous en ligne.

Figure 9 : Docrendezvous [3]

2.4.3 ZocDoc

La figure 11 illustre la page d'accueil du ZocDoc.

ESEN 2016-2017 Page 12

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ZocDoc est la version anglaise des applications web de prise des rendez-vous en

ligne.

Figure 10 : ZocDoc [4]

2.4.4 Med.tn

La figure 12 illustre la page d'accueil du Med.tn.

Enfin, la version tunisienne med.tn. Une application web de prises des rendez-vous en ligne.

ESEN 2016-2017 Page 13

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 11 : Med.tn [5]

2.5 Critique de l'existant

Toutes les applications citées précédemment, se diffèrent au niveau de design, mais garde les mêmes fonctionnalités globales.

Avantages

Inconvenants

Recherche avancée avec le nom, spécialité, et géolocalisation du médecin

La majorité de ces applications ne donne pas la possibilité de se connecter avec un compte d'un réseau social

Possibilité de s'inscrire

Manque de gestion des patients, leurs fiches techniques

L'utilisateur peut prendre un rendez-vous en ligne facilement

Le patient ne peut pas céder son avis sur le service du médecin ou sur l'application

Le médecin peut mettre son planning en ligne pour donner l'occasion au patient de bien choisir le temps du rendez-vous

Manque des statistiques

La possibilité de confirmer ou annuler les rendez-vous des patients avec un seul clic

Manque de la recherche avec les langues maitrisées par le médecin

ESEN 2016-2017 Page 14

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 15

 

La détection automatique de la langue du navigateur

 

Absence des honoraires

 

-Gestion des patients par le docteur -Gestion des fiches techniques des patients

Tableau 2 : Critique de l'existant

3. Langage et méthodologie de conception

La méthodologie est une organisée exclusive d'une manière rationnelle pour obtenir un résultat.

Parmi les différentes méthodologies actuelles, nous allons citer les modèles suivants :

Le modèle en cascade et le modèle en Y sont deux modèles incompatibles avec notre projet car leurs utilisations se limitent au simple projet et au développement mobile. C'est pour cela nous allons retenir le processus unifié car il présente une grande souplesse et une meilleure utilisation dans les énormes projets.

Après le choix de la méthodologie, nous avons besoin d'un langage de modélisation unifiée pour la modélisation de notre projet. Pour réaliser ce système nous nous choisissons le langage de modélisation le plus fréquent UML.

UML représente le mieux outil pour schématiser les complexes systèmes sous un format textuel et graphique normalisé et très simplifié.

En effet, UML ne représente pas une démarche ni un processus, d'où il a besoin de choisir une méthode de développement et de conception que nous allons utiliser.

Conclusion

Ce premier chapitre, étude préalable, nous a permis de présenter le cadre général du projet en fixant les différentes tâches à effectuer.

Après avoir terminé la présentation de notre projet et avant de commencer la phase de conception et développement, il nous semble important d'entamer la phase d'analyse du

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 16

projet, c'est l'objet du chapitre suivant. Dans le deuxième chapitre, nous essayerons de détailler l'analyse des différentes taches de notre projet guidé par notre solution déjà proposée dans la section précédente, du premier chapitre.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Chapitre 2 : Analyse et spécification

des besoins

ESEN 2016-2017 Page 17

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 18

Introduction

Durant le premier chapitre, nous avons précisé les différentes difficultés rencontrées dans la gestion des patients et les prises des rendez-vous, à cause du manque d'une angle de gestion des patients chez les versions des autres applications citées au premier chapitre.

Nous allons traiter et résoudre ces difficultés en spécifiant les besoins de notre application et présenté la méthodologie, dans ce second chapitre.

1. Contexte général du projet

Notre objectif est de créer une plateforme riche basée sur la prise des rendez-vous et la gestion des patients en ligne, efficace, facile et flexible à utiliser par les internautes.

Le système mis en oeuvre est une application web qui se charge de la prise des rendez-vous à distance et la gestion des fiches techniques effectuées par les individus qui veulent prise des rendez-vous chez un médecin.

Ce système sera capable d'effectuer les fonctions suivantes : 1.1 Côté internaute

? Nom de domaine de l'application et fonctionnalités par défaut

Allodoc.tn c'est-à-dire allo docteur.

Un logo de type GIF pour donner de la vie à notre application.

Détection automatique de la langue du navigateur de l'internaute pour que l'application s'afficher à la même langue du navigateur, mais si l'internaute utilise une langue différente du français, anglais ou arabe l'affichage devient par défaut en français

? S'inscrire a allo-doc

L'internaute peut s'inscrire chez allo-doc et avoir un profil au sein de notre application web, prendre un rendez-vous et gérer son espace.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 19

? Recherche et consultation

L'internaute peut consulter les profils des médecins, pour vérifier leurs planning et agenda.

L'internaute peut bénéficier de plusieurs filtres de recherche très avancés, tels que la recherche par sexe et par langues maitrisées (c'est une option pour les étrangers).

AlloDoc offre la localisation des cabinets par l'utilisation du GPS.

1.2 Côté patient

? Prise des rendez vous

Pour prendre un rendez-vous notre système impose l'internaute de s'inscrire ou s'authentifier.

A la fin de la consultation, le patient peut exprimer son avis et juger le service rendu par le cabinet ainsi que l'application web allodoc.tn. Notre système affiche toujours les quatre derniers avis sur la page d'accueil.

1.3 Côté médecin

? Inscription et authentification

Chaque médecin n'a pas le privilège de s'inscrire mais il peut accéder avec son compte déjà présent sur allodoc où chaque médecin confirmé par le ministère de santé nous l'inspirons à la base des données. Mais, il peut se connecter à son espace et modifier ses informations.

? Composants du tableau de bord

o Profil

o Planning

o Rendez-vous

o Agenda

o Assistant(e)

o Liste des patients

o Galerie

o Spécialité

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 20

o Honoraires

On va bien préciser d'une façon détaillée toutes les fonctionnalités de l'espace du médecin à la suite de notre chapitre.

1.4 Côté assistant(e)

? Profil

L'assistant(e) peut avoir un profil modifiable

? Privilèges

Le médecin donne le privilège à l'assistant(e) pour consulter, modifier, ajouter et supprimer les données des patients ou bien pour confirmer ou annuler les rendez-vous.

1.5 Côté administrateur

L'administrateur sera l'acteur ayant le contrôle global de la plateforme afin de contrôler, gérer le système et d'assurer son bon fonctionnement.

2. Spécification des besoins

La création de toute application web est réalisée sur mesure selon les besoins des utilisateurs et les traitements envisagés afin d'assurer sa réussite et son avenir utilité. En effet, il est nécessaire d'identifier clairement les différents besoins escomptés de notre projet.

On distingue deux types de besoins : les besoins fonctionnels et les besoins non-fonctionnels.

2.1 Les besoins fonctionnels

Les besoins fonctionnels déterminent les fonctionnalités principales de l'application ainsi que les comportements des actants :

L'administrateur peut garantir la manipulation totale de notre plateforme de manière simple et facile. En effet, après l'authentification, il pourra gérer la plateforme.

L'application permettre à l'administrateur de :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 21

'I' Gérer les patients et les médecins :

> Controller le bon fonctionnement de l'application et la discipline des
patients à travers les remarques de chaque médecin

> Ajouter ou supprimer les médecins et les patients
'I' La maintenance

L'application doit permettre à l'internaute de :

'I' S'inscrire et avoir un profil

'I' Consultation de la page d'accueil et profil des médecins L'application permet aux patients de :

'I' Se connecter avec login et mot de passe :

> Connexion en tant qu'inscrit sur allodoc.tn

> Connexion avec son compte Facebook ou Gmail

'I' Après l'authentification il peut modifier ces informations personnelles

'I' Après l'authentification il peut prendre des rendez-vous et consulter sa liste

des rendez-vous

'I' En tant qu'il est inscrit sur allodoc il peut évaluer le service rendu par le

cabinet médical et aussi la plateforme.

'I' Recherche des médecins et consultations de leurs profils

L'application doit permettre aux médecins de :

'I' Se connecter avec login et mot de passe

'I' Gérer son profil :

> Modifier

> Consulter

'I' Gérer son planning :

> Ajouter un nouveau planning

> Ajouter les horaires spéciaux

> Modifier son planning

> Consulter son planning

'I' Gérer les rendez-vous :

> Confirmer

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 22

> Annuler

'I' Consultation de l'agenda

'I' Gérer la liste des assistant(e)s :

> Ajouter

> Modifier

> Consulter

> Supprimer

'I' Gérer sa galerie :

> Ajouter des images

> Supprimer

> Mettre une image comme photo de profil

'I' Gérer la liste des patients :

> Ajouter des patients

> Consulter liste des patients

> Ajouter fiches techniques des patients

> Consulter le suivi des patients

'I' Ajouter spécialités

'I' Gérer les honoraires :

> Ajouter

> Modifier

> Supprimer

> Afficher

> Masquer

L'application doit permettre aux assistant(e)s de :

Il y a une relation d'héritage entre le médecin et l'assistant, où le médecin donne les privilèges à l'assistant(e) pour :

'I' Confirmer ou annuler les rendez-vous 'I' Gérer les patients

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 23

2.2 Les besoins non fonctionnels

Pour assurer le bon fonctionnement, il est indispensable de vérifier les contraintes et les caractéristiques techniques imposés par le système.

Nous dégageons les besoins non fonctionnels suivants :

'I' Logo :

Simple et présente le produit (l'application)

'I' Interface :

Les interfaces doivent être conviviales, faciles à comprendre et à

manipuler.

'I' Sécurité :

L'application doive opter d'une haute sécurité, les informations ne

devront pas être accessibles à tout le monde. La phase d`authentification

permet à chaque utilisateur d`accéder seulement aux fonctionnalités

attribuées à son domaine.

'I' Fiabilité :

Le système doit prendre en charge le traitement des erreurs qui

peuvent survenir et informe l'utilisateur au type d'erreur et lui demande de

recommencer son opération.

'I' Disponibilité :

Le produit devra être disponible pour l'internaute 24/24h.

'I' Extensibilité :

L'architecture utilisée pour réaliser cette application favorisera la

réutilisabilité de ces modules pour pouvoir subvenir aux modifications

futures.

'I' Temps de réponse :

Le temps de réponse doit être le plus rapide.

'I' Performance :

Le système doit être capable de répondre dans des délais réduits et

gérer les interruptions causées par les erreurs de manipulation.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 24

3. Identification des acteurs

Un acteur est une personne ou un autre système externe qui réagit avec notre système [6].

Les différents acteurs qui interviennent dans le fonctionnement de notre plateforme sont les suivants :

'I' Acteur 1 : Administrateur

C'est le super administrateur de l'application. Cet acteur suit des opérations réalisées sur la base des données de l'application telle que (l'ajout, la modification et la suppression des informations). C'est la personne qui fait le paramétrage, l'élaboration des statistiques, la gestion de toutes les fonctionnalités de notre application.

'I' Acteur 2 : Internaute

C'est un utilisateur qui ne possède pas un compte. Il peut chercher et localiser un docteur.

'I' Acteur 3 : Patient

C'est un utilisateur qui possède un compte. Il y accède grâce à un login et un mot de passe ou à travers son compte Gmail ou Facebook.

Après l'authentification, il accède à son espace personnelle : c'est l'espace à partir du quelle il peut mettre à jour son profil et visualiser l'historique des rendez-vous.

'I' Acteur 4 : Médecin

C'est un utilisateur qui possède un compte. Il s'accède grâce à un login et un mot de passe. Après l'authentification il accède à son espace personnelle : c'est l'espace qui contient son tableau de bord dont il dispose toutes les fonctionnalités.

'I' Acteur 5 : Assistant(e)

C'est la personne responsable du cabinet de docteur qui gère les rendez-vous et la liste des patients.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 25

4. Processus de développement

UML est un langage qui a marqué un succès important dans la modélisation des systèmes.

Cette réussite ne doit pas faire oublier qu'il ne s'agit que d'un langage de modélisation dont la mission n'est pas de couvrir tous les aspects du génie logiciel. Les auteurs d'UML sont intéressés par l'importance du processus de développement, mais il est indispensable que cela passe d'abord par l'existence d'un langage de modélisation objet efficace et stable. Ce langage de modélisation, UML ne définit pas un processus de développement particulier. Mais, il sert d'appui les différentes approches méthodologiques basées sur les objets. Donc UML doit être utilisé dans le cadre d'un processus de développement pour qu'on en tire le meilleur profit.

Grace à la complexité importante des systèmes informatiques, les besoins de plus en plus précis des utilisateurs, tant au niveau des fonctionnalités que des délais de livraison, l'industrie logicielle a besoin d'un processus capable de diriger les développeurs. Le processus a pour objectif de spécifier les différentes étapes d'un projet, de la préparation du cahier de charge au déploiement de l'application.

Un processus définit qui fait quoi, à quel moment et de quelle façon pour atteindre un certain objectif.

4.1 Le Processus Unifié

Le processus unifié (UP : Unified Process) est un processus général qui s'approprie à une large classe de systèmes logiciels, « à différents domaines d'application », « à différents types d'entreprises », « à différents niveaux de compétences » et « à différentes tailles de projets ». Il est fondé de composants et utilise le langage UML pour la concevoir du système logiciel. Aujourd'hui, UP est un processus standard de développement et de plusieurs variétés de processus y découlent :

? RUP : Rational Unified Process, instanciation par Rational des préceptes UP [7] .

? EUP : Enterprise Unified Process, instanciation intégrant les phases de post-implantation [7] .

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 26

? XUP : Extreme Unified Process, instanciation hybride intégrant UP avec Extreme Programming [7] .

? AUP : Agile Unified Process, partie des préceptes UP permettant l'agilité du développement [7] .

? 2TUP : Two Tracks Unified Process, instanciation de UP proposé par Valtech prenant en compte les aléas et contraintes liées aux changements perpétuels et rapides des SI des entreprises [7] .

? EssUP : Essential Unified Process, instanciation de UP proposé par Ivar Jacobson Consulting propose une mouture du processus unifié qui intègre certains concepts des méthodes Agile [7] .

« Le « Processus Unifié » est piloté par les cas d'utilisation, centré sur l'architecture et déroulé de manière itérative et incrémentale.

La figure ci-dessous résume les caractéristiques d'UP.

Figure 12 : caractéristique d'un processus unifié [8]

· Piloté par les cas d'utilisation : toutes les activités, de l'analyse des besoins jusqu'aux tests sont élevés par les cas d'utilisation.

· Centré sur l'architecture : tous les intervenants au projet de développement, du chef projet au programmeur doivent s'accorder sur la vision commune du système à produire : l'architecture. Elle offre une perspective claire de tout le système.

· Au déroulement itératif et incrémental : l'ensemble du travail est partagé en petites parties, qui sont autant de mini-projets. Chacun d'entre eux représente une itération qui

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

donne lieu à un incrément. Les itérations désignent des étapes de l'enchainement des activités tandis que les incréments correspondent à des stades de développement du produit.

Les auteurs d'UP précisent ce qui suit : Les concepts de « développement piloté par les cas d'utilisation », « centré sur l'architecture » et « itératif et incrémental » sont d'égale importance. L'architecture fournit la structure qui servira de cadre au travail effectué au cours des itérations, tandis que les cas d'utilisation définissent les objectifs et orientent le travail de chaque itération.

La figure ci-dessous matérialise les relations de dépendance entre ces concepts en vue de développer un produit satisfaisant.

Figure 13 : les relations de dépendance entre les concepts en vue de développement

d'un produit [8]

Processus itératif et incrémental ?

Un projet logiciel s'étend sur plusieurs mois, voire sur une année ou plus. Pour être efficace, le processus logiciel doit oeuvrer pour une stratégie de développement par petite étapes facile à gérer :

? On planifie un peu ;

ESEN 2016-2017 Page 27

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 28

? On spécifie, on conçoit et on implémente un peu ;

? On intègre, on teste et on exécute le peu implémenté.

L'ensemble de ces points constituent une itération destinée à réaliser une partie du projet (mini-projet). Le processus de développement parcourt alors chaque phase par une série d'itérations, chacune donnant lieu à un incrément. L'ensemble des itérations d'une phase concourent à atteindre les objectifs de cette phase. Pour cela, il est indispensable de contrôler les itérations. Une itération s'achève par un jalon qui se définit par un ensemble d'artefacts.» [9]

4.2 Présentation d'UML

4.2.1 Historique [10] « pages 6 & 7 »

Regardons tout d'abord ce qui s'est passé au début des années 90. Par rapport à la cinquantaine de méthodes d'analyse et de conception objet qui existaient au début des années 90, seulement trois d'entre elles se sont détachées nettement au bout de quelques années. En effet, la volonté de converger vers une méthode unifiée était déjà bien réelle et c'est pour cette raison que les méthodes OMT, BOOCH et OOSE se sont démarquées des autres.

OMT (Object Modeling Technique) de James Rumbaugh et BOOCH de Grady Booch ont été les deux méthodes les plus diffusées en France durant les années 90. Par ailleurs, OOSE de Ivar Jacobson s'est aussi imposée dans le monde objet pour la partie formalisation des besoins.

Pour aller plus loin dans le rapprochement, James Rumbaugh et Grady Booch se sont retrouvés au sein de la société Rational Software et ont été ensuite rejoints par Ivar Jacobson en se donnant comme objectif de fusionner leur méthode et créer UML (Unified Methode Language).

Il est important de noter que contrairement à ce qui avait été envisagé au départ, le processus de développement a été sorti du champ couvert par le projet de norme.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

UML est donc une norme du langage de modélisation objet qui a été publiée, dans sa première version, en novembre 1997 par l'OMG (Object Management Group), instance de normalisation internationale du domaine de l'objet.

En quelques années, UML s'est imposée comme standard à utiliser en tant que langage de modélisation objet.

4.2.2 Présentation générale des diagrammes [10] « page 11 »

UML définit deux grandes familles de diagrammes :

· Les diagrammes de structure spécifient les aspects statiques d'un système.

· Les diagrammes de comportement s'intéressent aux aspects dynamiques.

? Les diagrammes structurels : Ces diagrammes, au nombre de six, ont vocation à représenter l'aspect statique d'un système (classes, objets, composants...).

? Les diagrammes de comportement : Ces diagrammes représentent la partie dynamique d'un système réagissant aux événements et permettant de produire les résultats attendus par les utilisateurs.

Figure 14 : Schéma de l'hiérarchie des diagrammes UML 2.0 sous forme d'un diagramme de classes [11]

ESEN 2016-2017 Page 29

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 30

4.3 Démarche de développement

Nous proposons ici une démarche d'application d'UML qui prend appui sur UP. La démarche que nous proposons est articulée suivant deux axes : les quatre phases qui correspondent à celles d'UP et sept activités.

Figure 15 : Caractéristiques de l'approche itérative [12] Le figure 17 ci-dessous illustre le cycle de vie du processus UP

Figure 16 : Cycle de la vie du processus UP [12]

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 17 : les phases d'un cycle du processus unifié [13]

Les activités :

Activité 1 : Modélisation métier Activité 2 : Exigences fonctionnelles Activité 3 : Analyse des cas d'utilisation Activité 4 : Synthèse de l'analyse Activité 5 : Conception

Activité 6 : Implémentation

Activité 7 : Test

Schéma globale de la démarche :

ESEN 2016-2017 Page 31

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 32

Figure 18 : Schéma détaillé de la démarche [10] « page 127 »

Conclusion

Dans ce chapitre, nous arrivons à présenter le contexte général de notre projet, les besoins fonctionnels et non-fonctionnels. Ainsi que, nous avons identifié les acteurs et précisons, les processus de développement et la manière de démarche de développement.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Chapitre 3 : Modélisation métier &

Exigences fonctionnelles

ESEN 2016-2017 Page 33

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 34

Introduction

La phase de la conception est la phase initiale de la création et de la mise en oeuvre de notre projet. En effet, elle représente une étape importante de réflexion dans le cycle de développement logiciel après la phase de l'analyse et de spécification.

Dans ce chapitre, nous allons garder l'ordre de schéma global de la démarche qu'on a vu dans la dernière partie du chapitre précèdent. Nous allons présenter la première et la deuxième activité (Modélisation métier & Exigences fonctionnelles) en détails à travers le schéma de contexte du domaine d'étude et les diagrammes UML suivants : le diagramme de cas d'utilisation générale et les diagrammes de séquence système.

1. Activité 1 : Modélisation métier

Élaboration du schéma de contexte du domaine d'étude

Conformément à notre démarche UP7, nous recommandons d'établir en premier un schéma de contexte permettant de situer le domaine d'étude par rapport aux autres processus d'un cabinet médical.

Ainsi, nous observons dans la figure suivante que le domaine d'étude est en étroite relation avec cinq importants tiers traitants respectivement la gestion des assistant(e)s, la gestion de planning, la gestion des rendez-vous, la gestion des patients et l'archivage des documents.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 19 : schéma de contexte du domaine d'étude

2. Activité 2 : Exigences Fonctionnelles

Dans cette section on va citer le « digramme de cas d'utilisation globale » et les différents diagrammes de séquence système.

2.1 Élaboration du diagramme des cas d'utilisation système

La figure 20 illustre une vision globale du cas d'utilisation du futur système en concevoir le diagramme de cas « d'utilisation générale » de la plate-forme.

ESEN 2016-2017 Page 35

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 20 : diagramme de cas d'utilisation générale du système

2.2 Élaboration du diagramme de séquence système

Dans cette section on va concevoir les digrammes de séquence système des acteurs

2.2.1 Administrateur

La figure 21 présente le diagramme de séquence système du cas d'utilisation : « Gérer les comptes »

? « Diagramme de séquence système » d'authentification de l'administrateur

ESEN 2016-2017 Page 36

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 21 : Diagramme de séquence système du cas d'utilisation "Gestion des
comptes- authentification"

La figure 22 illustre le diagramme de séquence système du cas d'utilisation : « Gérer les comptes »

? « Diagramme de séquence système » d'ajout d'un compte

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 37

Figure 22 : Diagramme de séquence système du cas d'utilisation "Gestion des
comptes- Ajouter"

La figure suivante illustre le diagramme de séquence système du cas d'utilisation : « Gérer les comptes »

? « Diagramme de séquence système » de modification des informations d'un compte

ESEN 2016-2017 Page 38

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 23 : Diagramme de séquence système du cas d'utilisation "Gérer compte-

Modifier"

La figure 24 représente le diagramme de séquence système du cas d'utilisation : « Gérer les comptes »

? « Diagramme de séquence système » de suppression du compte »

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 39

Figure 24 : Diagramme de séquence système du cas d'utilisation "Gestion des
comptes- Supprimer"

2.2.2 Médecin (Docteur)

Dans cette partie on va élaborer les diagrammes de séquence système du deuxième acteur, c'est un acteur principal dans notre projet.

La figure 25 présente le diagramme de séquence système du cas d'utilisation : « d'authentification du médecin »

? « Diagramme de séquence système » d'authentification du médecin

ESEN 2016-2017 Page 40

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 25 : Diagramme de séquence système du cas d'utilisation " Authentification

du médecin "

La figure 26 illustre le diagramme de séquence système du cas d'utilisation : « Gérer profil »

? « Diagramme de séquence système » gérer profil

ESEN 2016-2017 Page 41

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 26 : Diagramme de séquence système du cas d'utilisation " Gérer profil "

La figure 27 illustre le diagramme de séquence système du cas d'utilisation : « Gérer assistant »

? « Diagramme de séquence système » ajouter assistant

ESEN 2016-2017 Page 42

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 27 : Diagramme de séquence système du cas d'utilisation " Ajouter assistant

"

La figure 28 illustre le diagramme de séquence système du cas d'utilisation : « Gérer assistant »

? « Diagramme de séquence système » rechercher dans la liste des assistant

ESEN 2016-2017 Page 43

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 28 : Diagramme de séquence système du cas d'utilisation " Rechercher dans
la liste des assistant "

La figure 29 illustre le diagramme de séquence système du cas d'utilisation : « Gérer assistant »

? « Diagramme de séquence système » modifier privilèges de l'assistant

ESEN 2016-2017 Page 44

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 29 : Diagramme de séquence système du cas d'utilisation " Modifier
privilèges de l'assistant "

La figure 30 illustre le diagramme de séquence système du cas d'utilisation : « Gérer assistant »

? « Diagramme de séquence système » supprimer assistant

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 45

Figure 30 : Diagramme de séquence système du cas d'utilisation " Supprimer

assistant "

La figure 31 illustre le diagramme de séquence système du cas d'utilisation : « Gérer rendez-vous »

? « Diagramme de séquence système » confirmer/annuler rendez-vous

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 46

Figure 31 : Diagramme de séquence système du cas d'utilisation "
Confirmer/Annuler rendez-vous "

La figure 32 illustre le diagramme de séquence système du cas d'utilisation : « Gérer rendez-vous »

? « Diagramme de séquence système » rechercher un rendez-vous

ESEN 2016-2017 Page 47

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 32 : Diagramme de séquence système du cas d'utilisation " Rechercher

rendez-vous "

La figure 33 illustre le diagramme de séquence système du cas d'utilisation : « Gérer les patients »

? « Diagramme de séquence système » ajouter patient

ESEN 2016-2017 Page 48

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 33 : Diagramme de séquence système du cas d'utilisation " Ajouter patient "

La figure 34 illustre le diagramme de séquence système du cas d'utilisation : « Gérer les patients »

? « Diagramme de séquence système » modifier les informations du patient

ESEN 2016-2017 Page 49

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 34 : Diagramme de séquence système du cas d'utilisation " Modifier les
informations du patient "

La figure 35 illustre le diagramme de séquence système du cas d'utilisation : « Gérer les patients »

? « Diagramme de séquence système » rechercher un patient

ESEN 2016-2017 Page 50

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 35 : Diagramme de séquence système du cas d'utilisation " Rechercher un

patient "

La figure 36 illustre le diagramme de séquence système du cas d'utilisation : « Gérer planning »

? « Diagramme de séquence système » ajouter planning

ESEN 2016-2017 Page 51

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 36 : Diagramme de séquence système du cas d'utilisation "Ajouter planning"

La figure 37 illustre le diagramme de séquence système du cas d'utilisation : « Gérer planning »

? « Diagramme de séquence système » modifier planning

ESEN 2016-2017 Page 52

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 37 : Diagramme de séquence système du cas d'utilisation "Modifier

planning"

La figure 38 illustre le diagramme de séquence système du cas d'utilisation : « Gérer planning »

? « Diagramme de séquence système » supprimer planning

ESEN 2016-2017 Page 53

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 54

Figure 38 : Diagramme de séquence système du cas d'utilisation "Supprimer

planning"

2.2.3 Patient

Dans cette partie on va élaborer les diagrammes de séquence système liée à l'acteur

patient.

La figure 39 illustre le diagramme de séquence système du cas d'utilisation : « Authentification »

? « Diagramme de séquence système » authentification avec rôle patient

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 39 : Diagramme de séquence système du cas d'utilisation "Authentification "

La figure 40 illustre le diagramme de séquence système du cas d'utilisation : « Gérer rendez-vous »

? « Diagramme de séquence système » prise d'un rendez-vous

ESEN 2016-2017 Page 55

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 40 : Diagramme de séquence système du cas d'utilisation " Prise d'un

rendez-vous "

La figure 41 illustre le diagramme de séquence système du cas d'utilisation : « Créer avis »

? « Diagramme de séquence système » ajouter avis

ESEN 2016-2017 Page 56

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 41 : Diagramme de séquence système du cas d'utilisation " Ajouter avis "

Conclusion

Dans cette partie, nous avons montrés une solution conceptuelle générale pour le système telle que le schéma de contexte du domaine d'étude, le diagramme de cas d'utilisation générale, et des séquences système. Le résultat de cette section sera exploité dans la phase d'analyse des cas d'utilisation où nous allons élaborer les diagrammes de cas d'utilisation détaillés, de séquences détaillées, et de classe.

ESEN 2016-2017 Page 57

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Chapitre 4 : Analyse des cas

d'utilisation

ESEN 2016-2017 Page 58

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Introduction

Dans ce chapitre, nous allons garder l'ordre de schéma globale de la démarche qu'on a vu dans la dernière partie du deuxième chapitre et de présenter la troisième activité (Analyse des cas d'utilisation).

Nous allons présenter en détails la conception du projet à travers les diagrammes UML suivants : les diagrammes des cas d'utilisation détaillés, les diagrammes de séquence détaillés et le diagramme de classe.

Activités 3 : Analyse des cas d'utilisation

? Elaboration des diagrammes de cas d'utilisation détaillés

1. L'internaute

1.1 Cas d'utilisation détaillés : S'inscrire à la plateforme allodoc.tn Raffinement du cas d'utilisation « S'inscrire à la plateforme allodoc.tn »

La figure 42 présente le diagramme de cas d'utilisation relatif à « s'inscrire à la plateforme » :

Figure 42 : Diagramme du cas d'utilisation « S'inscrire à la plateforme » Tableau 3: Description textuelle du cas d'utilisation « S'inscrire à la plateforme »

Cas d'utilisation

S'inscrire à la plateforme

Acteur

L'internaute

Pré condition

L'internaute doit être connecté au site

Post condition

Inscrire au site

ESEN 2016-2017 Page 59

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 60

Description du scénario principal

1. L'internaute choisit le menu «
inscription ».

2. Le système affiche l'interface
appropriée à l'inscription.

3. Le visiteur rempli le formulaire puis
clique sur créer un compte.

4. Le système ajoute le visiteur dans la
base de données et ouvre son profil.

Exception

2. Problème de réseau

3. le système affiche un message d'erreur et demande à l'internaute de rétablir la saisie des données ; reste à l'étape 3.

1.2 Cas d'utilisation détaillés : S'authentifier

Raffinement du cas d'utilisation « S'authentifier à la plateforme allodoc.tn »

La figure 43 présente le diagramme de cas d'utilisation relatif à « s'inscrire à la plateforme » :

Figure 43 : Diagramme de cas d'utilisation détaillés « s'authentifier » Tableau 4: Description textuelle du cas d'utilisation « S'authentifier à la plateforme

»

Cas d'utilisation :

- S'authentifier

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 61

Acteur :

- L'internaute (Administrateur, patient, docteur et assistant)

Pré condition

- L'utilisateur doit être authentifié.

Post condition

- Authentification réussie

Scénario nominal :

1 - Le système affiche l'interface d'authentification.

2 - L'internaute saisie le login et le mot de passe, ou
la connexion avec Facebook ou Gmail.

3 - Le système vérifie s'ils sont corrects et valider
l'authentification.

4 - Le système autorise l'accès à l'internaute avec
son rôle.

Scénario alternatif :

2- Si le login ou le mot de passe sont erronés,
problème réseau.

3- Un message d'erreur apparait impliquant la
ressaisie ; retour à l'étape 2.

2. Le médecin (Docteur)

2.1 Cas d'utilisation détaillés : Gérer profil

Raffinement du cas d'utilisation « Gérer profil »

La figure 44 présente le diagramme de cas d'utilisation relatif à « Gérer profil » :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 44 : Diagramme de cas d'utilisation détaillés « Gérer profil » Tableau 5: Description textuelle du cas d'utilisation « Gérer profil »

Cas d'utilisation

Gérer profil

Acteur

Médecin

Pré condition

Le médecin doit être authentifié

Post condition

Informations Modifiées, Supprimées, ou Ajoutées

Description du scénario principal

1. Le médecin ouvre son profil.

2. Le système affiche l'interface
appropriée au profil du médecin.

3. Le membre effectue l'opération
souhaitée.

4. Le système enregistre les
modifications effectuées dans la base des données

Exception

2. Problème réseau

ESEN 2016-2017 Page 62

3. le système affiche un message d'erreur et demande de rétablir la saisie des données ; retour à l'étape 2.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

2.2 Cas d'utilisation détaillés : Gérer planning

Raffinement du cas d'utilisation « Gérer planning »

La figure 45 présente le diagramme de cas d'utilisation relatif à « Gérer planning » :

Figure 45 : Diagramme de cas d'utilisation détaillés « Gérer planning » Tableau 6: Description textuelle du cas d'utilisation « Gérer planning »

Cas d'utilisation

Gérer planning

Acteur

Médecin

Pré condition

Le médecin doit être authentifié

ESEN 2016-2017 Page 63

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 64

Post condition

Informations Modifiées, Supprimées, ou Ajoutées

Description du scénario principal

1. Le médecin ouvre son interface de planning.

 

2. Le système affiche l'interface
appropriée au planning du médecin.

 

3. Le médecin effectue l'opération
souhaitée.

 

4. Le système enregistre les
modifications effectuées dans la base de données

 

Exception

2. Problème réseau

 

3. le système affiche un message d'erreur et demande de rétablir l'opération ; retour à l'étape 2.

 

2.3 Cas d'utilisation détaillés : Gérer rendez-vous

Raffinement du cas d'utilisation « Gérer rendez-vous »

La figure 46 présente le diagramme de cas d'utilisation relatif à « Gérer rendez-vous » :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 46 : Diagramme de cas d'utilisation détaillés « Gérer rendez-vous » Tableau 7: Description textuelle du cas d'utilisation « Gérer rendez-vous »

Cas d'utilisation

Gérer rendez-vous

Acteur

Médecin

Pré condition

Le médecin doit être authentifié

Post condition

Informations à Confirmer, Annuler, ou Consulter

Description du scénario principal

1. Le médecin ouvre son l'interface des
rendez-vous.

2. Le système affiche l'interface
appropriée au rendez-vous.

3. Le médecin effectue l'opération
souhaitée.

ESEN 2016-2017 Page 65

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

 

4. Le système enregistre les
modifications effectuées dans la base des données

Exception

2. Problème réseau

3. le système affiche un message d'erreur et demande de rétablir l'opération ;

Retour à l'étape 2.

2.4 Cas d'utilisation détaillés : Gérer patients

Raffinement du cas d'utilisation « Gérer patients »

La figure 47 présente le diagramme de cas d'utilisation relatif à « Gérer patients » :

Figure 47 : Diagramme de cas d'utilisation détaillés « Gérer patients » Tableau 8: Description textuelle du cas d'utilisation « Gérer patients »

Cas d'utilisation

Gérer patients

Acteur

Médecin

Pré condition

Le médecin doit être authentifié

Post condition

Assistant ajouté, modifier ou supprimé

Description du scénario principal

1. Le médecin se connecte à son compte.

ESEN 2016-2017 Page 66

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 67

 

2. Le médecin consulte l'espace approprié
à l'opération souhaitée, gérer patients.

 

3. Le système affiche la page demandée.

 

4. Le médecin rempli le formulaire puis clique sur « enregistrer » ou clique sur le bouton supprimer pour supprimer un patient.

 

5. Le système traduit l'opération réalisée
dans la base de données.

 

Exception

2. Problème de réseau

 

4. le système affiche un message d'erreur et demande de rétablir la saisie des données ; reste à l'étape 4.

2.5 Cas d'utilisation détaillés : Gérer assistants

Raffinement du cas d'utilisation « Gérer assistants »

La figure 48 présente le diagramme de cas d'utilisation relatif à « Gérer assistants » :

Figure 48 : Diagramme de cas d'utilisation détaillés « Gérer assistants »

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 68

Tableau 9: Description textuelle du cas d'utilisation « Gérer assistants »

Cas d'utilisation

Gérer assistants

Acteur

Médecin

Pré condition

Le médecin doit être authentifié

Post condition

Assistant ajouté, modifier ou supprimé

Description du scénario principal

1. Le médecin se connecte à son compte.

2. Le médecin consulte l'espace approprié à l'opération souhaitée, gérer assistant.

3. Le système affiche la page demandée.

4. Le médecin rempli le formulaire puis clique sur « enregistrer » ou clique sur le

bouton supprimer pour supprimer un
assistant(e).

5. Le système traduit l'opération réalisée dans la base de données.

Exception

2. Problème de réseau

4. le système affiche un message d'erreur et demande de rétablir la saisie des données ; reste à l'étape 4.

3. Assistant(e)

Cas d'utilisation détaillés : Gérer rendez-vous

Raffinement du cas d'utilisation « Gérer rendez-vous »

La figure 49 présente le diagramme de cas d'utilisation relatif à « Gérer rendez-vous » :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 49 : Diagramme de cas d'utilisation détaillés « Gérer rendez-vous » Tableau 10: Description textuelle du cas d'utilisation « Gérer rendez-vous »

Cas d'utilisation

Gérer rendez-vous

Acteur

Assistant(e)

Pré condition

L'assistant doit être authentifié

Post condition

Rendez-vous Confirmer, Annuler ou

Consulter

Description du scénario principal

1. L'assistant se connecte à son compte.

2. L'assistant consulte l'espace approprié à l'opération souhaitée, gérer rendez-vous.

3. Le système affiche la page demandée.

4. L'assistant clique sur « Confirmer » ou clique sur le bouton « Annuler » pour confirmer ou annuler un rendez-vous.

5. Le système traduit l'opération réalisée dans la base des données.

Exception

2. Problème de réseau

ESEN 2016-2017 Page 69

4. le système affiche un message d'erreur et demande de rétablir l'opération ; reste à l'étape 4.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

4. Patient

4.1 Cas d'utilisation détaillés : Gérer rendez-vous

Raffinement du cas d'utilisation « Gérer rendez-vous »

La figure 50 présente le diagramme de cas d'utilisation relatif à « Gérer rendez-vous » :

Figure 50 : Diagramme de cas d'utilisation détaillés « Gérer rendez-vous » Tableau 11 : Description textuelle du cas d'utilisation « Gérer rendez-vous »

Cas d'utilisation

Gérer rendez-vous

 

Acteur

Patient

 

Pré condition

Le patient doit être authentifié

 

Post condition

Rendez-vous ; prendre

confirmer ou annuler

rendez-vous,

ESEN 2016-2017 Page 70

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Description du scénario principal

1. Le patient se connecte à son compte.

 

2. Le patient consulte l'espace approprié à l'opération souhaitée, gérer rendez-vous ou prise d'un rendez-vous.

 

3. Le système affiche la page demandée, -Profile du médecin pur choisir la date de

rendez-vous et les interfaces pour le
processus de prise d'un rendez-vous ;

 

-La page contient la liste des rendez-vous pour confirmer ou annuler

 

4. Le patient clique sur « Confirmer » ou clique sur le bouton « Annuler » pour confirmer ou annuler un rendez-vous après la prise d'un rendez-vous.

 

5. Le système traduit l'opération réalisée dans la base des données.

 

Exception

2. Problème de réseau

 

4. le système affiche un message d'erreur et demande de rétablir l'opération ; reste à l'étape 4.

4.2 Cas d'utilisation détaillés : Créer avis

Raffinement du cas d'utilisation « Créer avis »

La figure 51 présente le diagramme de cas d'utilisation relatif à « Créer avis » :

ESEN 2016-2017 Page 71

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 51 : Diagramme de cas d'utilisation détaillés « Créer avis » Tableau 12: Description textuelle du cas d'utilisation « Créer avis »

Cas d'utilisation

Gérer Créer avis

Acteur

Patient

Pré condition

Le patient doit être authentifié

Post condition

Créer avis

Description du scénario principal

1. Le patient se connecte à son compte.

2. Le patient consulte l'espace approprié à l'opération souhaitée, gérer rendez-vous.

3. Le système affiche la page demandée, -S'il y'a un rendez-vous passé le système affiche un bouton et envoyer un mail de rappel de création d'un avis au médecin

4. Le patient clique sur « Créer avis » et saisie son avis.

5. Le système traduit l'opération réalisée dans la base de données.

Exception

2. Problème de réseau

ESEN 2016-2017 Page 72

5. le système affiche un message d'erreur et demande de rétablir l'opération ; reste à l'étape 4.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

5. Administrateur

5.1 Cas d'utilisation détaillés : Gérer les comptes

Raffinement du cas d'utilisation « Gérer les comptes »

La figure 52 présente le diagramme de cas d'utilisation relatif à « Gérer les comptes » :

Figure 52 : Diagramme de cas d'utilisation détaillés « Gérer les comptes » Tableau 13: Description textuelle du cas d'utilisation « Gérer les comptes »

Cas d'utilisation

Gérer les comptes

Acteur

Administrateur

Pré condition

L'administrateur doit être authentifié

ESEN 2016-2017 Page 73

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Post condition

L'administrateur ajouté, modifier ou

supprimé Les comptes

Description du scénario principal

1. L'administrateur se connecte à son
compte.

 

2. L'administrateur consulte l'espace
approprié à l'opération souhaitée, gérer les comptes.

 

3. Le système affiche la page demandée.

 

4. L'administrateur rempli le formulaire puis clique sur « enregistrer » ou clique sur le bouton supprimer pour supprimer un compte.

 

5. Le système traduit l'opération réalisée dans la base des données.

 

Exception

2. Problème de réseau

 

4. le système affiche un message d'erreur et demande de rétablir la saisie des données ; reste à l'étape 4.

5.2 Cas d'utilisation détaillés : Gérer les avis

Raffinement du cas d'utilisation « Gérer les avis »

La figure 53 présente le diagramme de cas d'utilisation relatif à « Gérer les avis » :

ESEN 2016-2017 Page 74

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 53 : Diagramme de cas d'utilisation détaillés « Gérer les avis » Tableau 14: Description textuelle du cas d'utilisation « Gérer les avis »

Cas d'utilisation

Gérer les comptes

Acteur

Administrateur

Pré condition

L'administrateur doit être authentifié

Post condition

L'administrateur afficher ou supprimer les avis

Description du scénario principal

1. L'administrateur se connecte à son
compte.

2. L'administrateur consulte l'espace
approprié à l'opération souhaitée, gérer les avis.

3. Le système affiche la page demandée.

ESEN 2016-2017 Page 75

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

 

4. L'administrateur clique sur « Afficher » ou clique sur le bouton supprimer pour supprimer un avis.

 

5. Le système traduit l'opération réalisée dans la base des données.

 

Exception

2. Problème de réseau

 

4. le système affiche un message d'erreur et demande de rétablir la saisie des données ; reste à l'étape 4.

? Elaboration des diagrammes de séquence détaillées

A cette étape nous allons définir quelques diagrammes de séquence détailles présents dans le système.

6. Diagramme de séquences détailles

6.1 Diagramme de séquence « d'inscription »

Le diagramme de séquence illustré par la Figure 54 met en relief la séquence entre les 4 objets : Utilisateur, interface, contrôleur, liste des utilisateurs, d'inscription.

ESEN 2016-2017 Page 76

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 54 : Diagramme de séquence « d'inscription »

6.2 Diagramme de séquence « d'authentification »

Le diagramme de séquence illustré par la Figure 55 met en relief la séquence entre les 4 objets : Utilisateur, interface, contrôleur, liste des utilisateurs, d'authentification.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 77

Figure 55 : Diagramme de séquence « d'authentification »

6.3 Diagramme de séquence « ajouter assistant »

Le diagramme de séquence illustré par la Figure 56 met en relief la séquence entre les 4 objets : Médecin, interface, contrôleur, liste des assistants, d'ajout assistant.

ESEN 2016-2017 Page 78

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 56 : Diagramme de séquence « ajouter assistant »

6.4 Diagramme de séquence « supprimer assistant »

Le diagramme de séquence illustré par la Figure 57 met en relief la séquence entre les 5 objets : Médecin, interface, contrôleur, liste des assistants, de supprimer assistant.

ESEN 2016-2017 Page 79

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 57 : Diagramme de séquence « supprimer assistant »

6.5 Diagramme de séquence « consulter médecin »

Le diagramme de séquence illustré par la Figure 58 met en relief la séquence entre les 4 objets : Internaute, interface, contrôleur, liste des médecins.

ESEN 2016-2017 Page 80

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 58 : Diagramme de séquence « consulter médecin »

6.6 Diagramme de séquence « vérifier compte »

Le diagramme de séquence illustré par la Figure 59 met en relief la séquence entre les 5 objets : Administrateur, interface, contrôleur, liste des comptes, médecin.

ESEN 2016-2017 Page 81

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 59 : Diagramme de séquence « vérifier compte »

? Elaboration de diagramme de classe détailles

A cette étape nous allons définir le diagramme de classe détailles présents dans le système.

7. Diagramme de classe

Le diagramme de classe est généralement considéré comme le diagramme le plus important dans le développement orienté objet, car il représente l'architecture conceptuelle

ESEN 2016-2017 Page 82

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 83

du système par son mission de décrire les classes que le système utilise, ainsi que les liens qui représentent un emboitage conceptuel (héritage) ou une relation (agrégation).

Il s'agit donc de réaliser un diagramme de classe comportant les concepts suivants : Entité : modélisation d'un objet d'intérêt pour l'utilisateur.

Relation : modélisation d'une association entre deux ou plusieurs entités.

Cardinalités : modélisation des participations minimales et maximales d'une entité à une

relation.

Propriétés : modélisation des informations descriptives rattachées à une entité ou une relation.

Identifiant : modélisation des propriétés contribuant à la détermination unique d'une occurrence d'une entité.

? Dictionnaires de classes :

Tableau 15: Description des différentes méthodes de diagramme de classes

Classes

Méthodes

Description

1

Docteur

Ajouter () Modifier () Supprimer () Consulter ()

C'est une classe qui permet d'ajouter, modifier, consulter et supprimer un docteur

2

Patient

Ajouter () Supprimer () Modifier ()

C'est une classe qui permet d'ajouter ou Supprimer un patient

3

Rendez-vous

Confirmer () Annuler ()

Prise rendez-vous ()

C'est une classe qui permet de confirmer ou Annuler ou prendre un rendez-vous

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 84

4

Assistant

Ajouter () Modifier () Supprimer ()

C'est une classe qui permet

d'ajouter, Supprimer, ou
modifier un assistant

5

PatientSuivi

Ajouter () Modifier () Supprimer () Consulter ()

C'est une classe qui permet d'ajouter, consulter, modifier ou supprimer l'un des suivis d'un patient

6

Procedures

Ajouter () Consulter () Modifier () Supprimer ()

C'est une classe qui permet d'ajouter, consulter, modifier

ou Supprimer un motif
(procédure).

7

Planning

Ajouter () Modifier () Supprimer ()

C'est une classe qui permet

de d'ajouter, modifier,
consulter et supprimer un planning.

9

Fos_user

Gérer Compte () Connexion ()

C'est une classe qui permet à l'utilisateur de se connecter et gérer son compte.

La figure 60 présente le diagramme de classes

ESEN 2016-2017 Page 85

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 60 : Diagramme de classes

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 86

Conclusion

Dans cette partie, nous avons montrés une solution conceptuelle adoptée par le système telle que les diagrammes des cas d'utilisation, des séquences et des classes. Le résultat de cette section sera exploité directement dans la phase de réalisation en se basant sur des technologies et des outils déterminés qui vont faire l'objet du chapitre suivant.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Chapitre 5 : Réalisation de

l'application

ESEN 2016-2017 Page 87

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 88

Introduction

La réalisation sera la dernière phase du développement de notre application Allodoc.tn. Nous exposons en premier lieu les outils matériels et logiciels utilisés pour le développement. Ainsi que les interfaces générales suivies d'une description du fonctionnement du système.

1. Environnement de développement

L'environnement de réalisation inclut les outils de développement décrivant les différents outils matériels requis pour notre travail, ainsi que les logiciels utilisés au cours de l'élaboration de notre application (AlloDoc).

1.1 Environnement matériel

Pour réaliser notre projet nous avons utilisés une machine dont les caractéristiques sont les suivantes :

? Une machine HP

> Processeur : I7

> Mémoire vive : 16GO

> Disque Dure : 2 TO

> Système : Windows 10

> Ecran : 24 pouces

? 2éme machine : HP

> Processeur : I7

> Mémoire vive : 8GO

> Disque Dure : 1 TO

> Système : Windows 10

> Ecran : 15 pouces

? 3éme machine : Tablette

> Processeur : 1.3GHZ

> Mémoire vive : 2GO

> Ecran : 10.1 pouces

> Système : Android

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 89

1.2 Environnements logiciels

· Système d'exploitation : Windows 10

· SGBD (Système de gestion de base de données) : MySQL

· Outil de développement (Web) : Netbeans.

· Serveur : Linux(Debian).

· Outil pour la conception : Visual paradigm.

· Navigateur Web: Mozilla Firefox, Google Chrome.

· HeidiSQL

1.3 Langages utilisés, moteur de templates, Framework Interface de programmation(API)

1.3.1 Langages

 

[14]

HTML 5(HyperText Markup Language 5) : est la dernière version majeure d'HTML (format de données conçu pour représenter des pages web) [15] .

CSS 3 (Cascading Style Sheets) : Les feuilles de styles en cascade forment un langage informatique qui décrit la présentation des documents HTML et XML [16] .

JavaScript : est un langage de programmation de scripts principalement employé dans les pages web interactives mais aussi pour les serveurs [17] .

 

[18]

PHP (HyperText Preprocessor) : est un langage de programmation libre principalement utilisé pour produire des pages dynamiques via un serveur http, mais pouvant également fonctionner comme n'importe quel langage interprété de façon locale. PHP est un langage impératif orienté objet [18] .

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 90

1.3.2 Moteur de templates

 

[19]

Twig est un moteur de modèle moderne pour PHP

Rapide : Twig compile les modèles en code PHP optimisé. Les frais généraux par rapport au code PHP régulier ont été réduits au minimum.

Sécurisé : Twig a un mode sandbox pour évaluer le code de modèle non approuvé. Cela permet à Twig d'être utilisé comme langue de modèle pour les applications où les utilisateurs peuvent modifier la conception du modèle.

Flexible : Twig est alimenté par un lexer flexible et un analyseur. Cela permet au développeur de définir ses propres balises et filtres personnalisés et de créer sa propre DSL

1.3.3 Framework

[20]

Bootstrap :

Twitter Bootstrap est une collection d'outils utiles à la création de sites web et applications web. C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de navigation et autre éléments interactifs, ainsi que des extensions JavaScript en option. [21] .

 

[22]

JQuery :

JQuery est un Framework Javascript sous licence libre qui permet de faciliter des fonctionnalités communes de Javascript [23]

.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 91

[24]

Symfony : Symfony est un Framework codé en PHP qui va nous permettre de développer une immensité d'applications web de la plus simple à la plus complexe imaginable [25] .

Car en effet, Symfony définit un squelette de base à respecter, mais dans lequel on peut y mettre tout le code que l'on souhaite.

1.3.4 Interface de programmation ? Google Maps

? Full calendar

2. Architecture MVC Modèle-vue-contrôleur

Pour la réalisation de notre application web Allodoc.tn, nous avons optés pour une architecture MVC afin de garantir une assurance de la maintenabilité, la modularité de l'application et la rapidité de développement.

MVC littéralement Modèle Vue Contrôleur est une architecture qui organise l'interface Homme-Machine d'une manière à ce que le développement puisse se faire en couches indépendantes.

? Couche Modèle [26] « page 40 »

La couche Model représente la partie de l'application qui exécute le logique métier. Cela signifie qu'elle est responsable de récupérer les données, de les convertir selon des concepts chargés de sens pour votre application, tels que le traitement, la validation, l'association et beaucoup d'autres tâches concernant la manipulation des données.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 92

A première vue, l'objet Model peut être vu comme la première couche d'interaction avec n'importe quelle base de données que vous pourriez utiliser pour votre application. Mais plus globalement, il fait partie des concepts majeurs autour desquels vous allez exécuter votre application.

? Couche Vue [26] « page 41 »

La Vue retourne une présentation des données venant du model. Etant séparée par les Objets Model, elle est responsable de l'utilisation des informations dont elle dispose pour produire une interface de présentation de votre application.

Par exemple, de la même manière que la couche Model retourne un ensemble des données, la Vue utilise ces données pour fournir une page HTML les contenant. Ou un résultat XML formaté pour que d'autres l'utilisent.

? Couche Contrôleur [26] « page 40 »

La couche Controller gère les requêtes des utilisateurs. Elle est responsable de retourner une réponse avec l'aide mutuelle des couches Model et Vue.

Les contrôleurs peuvent être imaginés comme des managers qui ont pour mission que toutes les ressources souhaitées pour accomplir une tâche soient déléguées aux travailleurs corrects. Il attend des requêtes des clients, vérifie leur validité selon l'authentification et les règles d'autorisation, délèguent les données récupérées et traitées par le Model, et sélectionne les types de présentation correctes que le client accepte, pour finalement déléguer le processus d'affichage à la couche Vue.

La figure suivante représente l'architecture de notre application :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 93

Figure 61 : L'architecture « MVC » [27]

3. Présentation des interfaces principales

Nous allons présenter dans cette section les différentes interfaces constituant notre application web et nous allons décrire le fonctionnement de chacune d'elles.

Notre application web est responsive : l'affichage des interfaces est compatible avec tous les appareils utilisés (tablette, smart phone, ordinateur...).

3.1 Page d'authentification et inscription

Pour s'authentifier ou s'inscrire il suffit de cliquer sur le bouton (s'inscrire/s'authentifier) qui s'ouvre pour l'internaute. Tout d'abord l'utilisateur assure le remplissage de formulaire pour s'inscrire ou s'authentifier. En cas d'authentification le serveur consulte la base des données et si les paramètres sont corrects alors l'accès à la page index et si les paramètres sont incorrects il reste sur la même page.

? Affichage sur un ordinateur :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 94

Figure 62 : Interface page connexion et inscription

? Présentation de la page d'authentification/d'inscription sur une tablette ou un smart phone :

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 95

Figure 63 : Interface page connexion

3.2 Page d'accueil public

La page d'accueil de l'application web allodoc.tn contient le menu où se trouve l'espace d'authentification, une zone de recherche avancée, les derniers avis des patients et au-dessous une zone des informations générales.

? Page d'accueil :

La figure 65 illustre la page d'accueil d'AlloDoc.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 96

Figure 64 : Page d'accueil

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

3.3 Espace de médecin (Tableau de bord)

Le menu change selon le droit d'accès. Dans notre cas on présente l'interface du médecin.

? Tableau de bord :

Figure 65 : Tableau de bord du médecin

3.4 Gérer planning (Médecin)

Pour créer son planning le médecin besoin à cette interface.

? Gérer planning :

ESEN 2016-2017 Page 97

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 66 : Gérer planning

3.5 Ajouter assistant(e) (Médecin)

L'ajout d'un assistant(e) nécessite le remplissage de formulaire suivant :

? Ajouter assistant(e) :

Figure 67 : Ajouter assistant(e)

3.6 Ajouter patient (Médecin)

L'ajout d'un patient nécessite le remplissage de formulaire suivant :

ESEN 2016-2017 Page 98

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

? Ajouter patient :

ESEN 2016-2017 Page 99

Figure 68 : Ajouter patient

3.7 Liste des patients (Médecin)

Après l'ajout d'un patient le médecin attend la vérification de l'insertion dans la base des données. En effet, si l'insertion bien terminer et sans aucun problème le patient alors s'affiche l'interface de la liste des patients.

? Ajouter patient :

Figure 69 : Liste des patients

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

3.8 Espace du patient

Comme présente la figure suivante l'espace du patient contient deux parties, la première contient les informations du patient c'est-a-dire son profil et l'autre son espace des rendez-vous.

? Espace du patient :

Figure 70 : interface de l'espace du patient

3.9 Les étapes d'une prise de rendez-vous

Pour prendre un rendez-vous l'internaute a besoin de passer par les cinq étapes qu'elles sont présentes dans la figure suivante, puis il reste en attend de la confirmation ou l'annulation du médecin.

? Les étapes d'une prise de rendez-vous :

ESEN 2016-2017 Page 100

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

Figure 71 : Les étapes d'une prise de rendez-vous

3.10 Résultat de la recherche

? L'interface du résultat de recherche :

ESEN 2016-2017 Page 101

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 102

Figure 72 : L'interface du résultat de recherche

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 103

Conclusion

Dans ce chapitre, nous avons présentés l'environnement et le processus de développement.

Ainsi, nous avons cités l'architecture employée pour la réalisation de notre projet tout en finissant par des captures d'écran des principales interfaces de la plateforme allodoc.tn.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 104

Conclusion générale et perspectives

Notre projet a permis de concevoir et de réaliser une application web constituant une plateforme médicale qui gère la prise des rendez-vous et la gestion des patients en ligne.

Nous avons commencé notre projet par une présentation générale du problème à aborder en passant à l'étape de l'analyse et de spécification pour finir par la fixation des besoins de l'application tout en montrant les différents cas d'utilisation.

Ensuite, nous avons entamé la conception de l'application en donnant un aperçu sur les principaux diagrammes UML en première lieu les diagrammes généraux ou bien les diagramme système et en deuxième lieu les diagrammes détaillées (Chapitre 3, chapitre 4). Dans la réalisation, nous avons sélectionné les technologies adaptées à notre choix technique, pour finir par une illustration des différentes interfaces graphiques de notre application par des captures d'écran.

Dans le cadre de ce projet, nous avons eu l'opportunité de nous familiariser avec des technologies évoluées telles que PHP5, Symfony 3, Twig, Yml et le modèle MVC.

Finalement, notre travail ne s'arrête pas à ce niveau, en effet plusieurs fonctionnalités vont être ajoutées à notre application Allodoc.tn tels que la communication par vidéo conférence entre le médecin et les délégués médicaux et la consultation à distance avec la même technique entre le médecin et les patients.

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 105

Annexe : Règles de transformation du modèle

conceptuel au modèle logique

Les règles utilisées dans notre rapport au niveau du schéma de la base des données sont les suivantes :

1. Règle 1 : Transformation des entités/classes [28] « page 128 »

Chaque classe du diagramme UML devient une relation. Il faut choisir un attribut de la classe pouvant jouer le rôle d'identifiant.

Si aucun attribut ne convient en tant qu'identifiant, il faut en ajouter un de telle sorte que la relation dispose d'une clé primaire (les outils proposent l'ajout de tels attributs).

Figure 73 : Transformation d'entités/classes

2. Règle 2 : transformation des associations [28] « page 129, 130 et 131 »

Les règles de transformation des associations dépendent de leurs cardinalités maximales.

2.1 Association un à plusieurs

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 106

Il faut ajouter un attribut de type clé étrangère dans la relation fils de l'association. L'attribut porte le nom de la clé primaire de la relation père de l'association.

Figure 74 : Transformation d'une association un-à-plusieurs 2.2 Associations plusieurs-à-plusieurs

L'association (classe-association) devient une relation dont la clé primaire est composée par la concaténation des identifiants des entités (classes) connectés à l'association. Chaque attribut devient clé étrangère si l'entité (classe) connectée dont il provient devient une relation en vertu de la règle R1.

Les attributs de l'association (classe-association) doivent être ajoutés à la nouvelle relation. Ces attributs ne sont ni clé primaire, ni clé étrangère.

Figure 75 : Transformation d'une association plusieurs-à-plusieurs 2.3 Associations un-à-un

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 107

La règle est la suivante, elle permet d'éviter les valeurs NULL dans la base de données.

Il faut ajouter un attribut clé étrangère dans la relation dérivée de l'entité ayant la cardinalité minimale égale à zéro. Dans le cas de UML, il faut ajouter un attribut clé étrangère dans la relation dérivée de la classe ayant la multiplicité minimale égale à un. L'attribut porte le nom de la clé primaire de la relation dérivée de l'entité (classe) connectée à l'association.

Si les deux cardinalités (multiplicités) minimales sont à zéro, le choix est donné entre les deux relations dérivées de la règle R1. Si les deux cardinalités minimales sont à un, il est sans doute préférable de fusionner les deux entités (classes) en une seule.

Figure 76 : Transformation d'une association un-à-un

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 108

Bibliographie & Webographie

[1] https://webmaster-media.tn

[2] https://www.dabadoc.com/

[3] https://www.docrendezvous.fr/

[4] https://www.zocdoc.com/

[5] http://med.tn/

[6] https://drive.google.com/file/d/0B1nwI7T4UjF4V3d0SVBDUkpEYWs/view

[7] https://fr.wikipedia.org/wiki/Unified_process

[8] http://docshare04.docshare.tips/files/1729/17295745.pdf

[9] https://fr.scribd.com/doc/112710442/Le-processus-unifie-de-developpement-logiciel & Livre de Ivar Jacobson, Grady Booch & James Rumbaugh « Le processus unifié de développement logiciel, EAN13: 9782212091427, Editeur(s): Eyrolles »

[10] https://fr.scribd.com/doc/91978630/Uml-2-Analyse-Et-Conception-Dunod & Livre de Joseph Gabay & David Gabay « UML 2 ANALYSE ET CONCEPTION (c) Dunod, Paris, 2008 ISBN 978-2-10-053567-5 » « pages 6 ,7 ,11 et 127 »

[11] https://upload.wikimedia.org/wikipedia/commons/thumb/9/90/Uml_diagram-fr.png/580px-Uml diagram-fr.png

[12] http://sabricole.developpez.com/uml/tutoriel/unifiedProcess/

[13] http://www.aubryconseil.com/blog/public/images/.rup m.jpg

[14] https://blog.isao.co.jp/assets/frontendMap-base.jpg

[15] http://www.conseil-webmaster.com/formation/html5/

[16] https://www.lacouleurduzebre.com/formation-css-les-feuilles-de-styles-en-cascade-html-programmation-integration.html

[17] https://fr.wikipedia.org/wiki/JavaScript

[18] https://fr.wikipedia.org/wiki/PHP

[19] https://ez.no/var/ezflow site/storage/images/media/images/twig2/411219-1-fre-FR/Twig_small.png

[20] http://www.conseil-webmaster.com/images/logiciels/bootstrap.png

[21] http://www.atlantismultimedia.fr/bootstrap/

[22] https://www.awelty.fr/medias/images/jquery-logo.png

[23]

Création d'une application web en ligne Allodoc.tn Hatem SLIMI

ESEN 2016-2017 Page 109

http://glossaire.infowebmaster.fr/jquery/

[24] https://www.a2hosting.com/images/software_images/symphony-icon.png

[25] https://openclassrooms.com/courses/developpez-vos-applications-web-avec-symfony2/presentation-generale-5

[26] https://book.cakephp.org/2.0/fr/cakephp-overview/understanding-model-view-controller.html & Livre de Software Foundation « CakePHP Cookbook Documentation Version 2.x Cake» « pages 40 et 41 »

[27] https://static.wareziens.net/wp-content/image.php?url=https://user.oc-static.com/files/386001_387000/386515.png

[28] http://www.essai.rnu.tn/Ebook/Informatique/uml2pourlesbasesdedonnees.pdf & Livre de C. Soutou, «UML2 pour les bases de données, Edition Eyrolles »






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Nous voulons explorer la bonté contrée énorme où tout se tait"   Appolinaire