rapport de sprint finale (all project part)

83
Sommaire Chapitre 1 I. Etude de contexte ................................................................................. 1 1. Identification des acteurs .............................................................................................. 1 2. Identification des besoins fonctionnels : ........................................................................ 2 3. Identification des besoins non fonctionnels : ................................................................. 3 II. Analyse globale ......................................................................................... 4 1. Diagramme de cas d’utilisation globale : ....................................................................... 4 2. Diagramme de classe d’analyse globale : ...................................................................... 5 III. Modélisation de l’architecture logique et physique de l’application... 6 1. Modélisation de l’architecture logique : ........................................................................ 6 2. Modélisation de l’architecture physique : ...................................................................... 6 IV. Elaboration du product backlog ............................................................. 7 V. Elaboration des maquettes .................................................................... 11 VIII. Conclusion.............................................................................................. 13 Chapitre 2 I. Objectif ................................................................................................... 15 II. Backlog de sprint.................................................................................... 16 1. Répartition en tache avec estimation ........................................................................... 16 2. Scénario de test ............................................................................................................ 21 3. Burndown chart ............................................................................................................ 22 III. Analyse .................................................................................................... 23 1. Diagramme de cas d’utilisation détaillé ....................................................................... 23 2. Diagrammes d’activités................................................................................................ 24 IV. Conception ............................................................................................. 26

Upload: ghodhbane-hani

Post on 10-Aug-2015

287 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Rapport de sprint finale (All Project part)

Sommaire

Chapitre 1

I. Etude de contexte ................................................................................. 1

1. Identification des acteurs .............................................................................................. 1

2. Identification des besoins fonctionnels : ........................................................................ 2

3. Identification des besoins non fonctionnels : ................................................................. 3

II. Analyse globale ......................................................................................... 4

1. Diagramme de cas d’utilisation globale : ....................................................................... 4

2. Diagramme de classe d’analyse globale : ...................................................................... 5

III. Modélisation de l’architecture logique et physique de l’application ... 6

1. Modélisation de l’architecture logique : ........................................................................ 6

2. Modélisation de l’architecture physique : ...................................................................... 6

IV. Elaboration du product backlog ............................................................. 7

V. Elaboration des maquettes .................................................................... 11

VIII. Conclusion.............................................................................................. 13

Chapitre 2

I. Objectif ................................................................................................... 15

II. Backlog de sprint .................................................................................... 16

1. Répartition en tache avec estimation ........................................................................... 16

2. Scénario de test ............................................................................................................ 21

3. Burndown chart ............................................................................................................ 22

III. Analyse .................................................................................................... 23

1. Diagramme de cas d’utilisation détaillé ....................................................................... 23

2. Diagrammes d’activités................................................................................................ 24

IV. Conception ............................................................................................. 26

Page 2: Rapport de sprint finale (All Project part)

2

1. Diagramme de séquence objet ..................................................................................... 26

2. Diagramme de classe conception ................................................................................. 29

V . Réalisation.............................................................................................. 30

1. Outils, bibliothèques et technologies utilisés ............................................................... 30

2. Captures d’écran de l’application ................................................................................ 31

VIII. Conclusion.............................................................................................. 34

Chapitre 3

I. Objectif .................................................................................................... 36

II. Backlog sprint ......................................................................................... 37

1. Répartition des taches avec estimation : ...................................................................... 37

2. Scénarios de test ........................................................................................................... 39

3. Burndown chart ........................................................................................................... 41

III. Analyse .................................................................................................... 42

1. Diagramme de cas d’utilisation détaillé ....................................................................... 42

2. Diagramme de séquence système : .............................................................................. 43

IV. Conception .............................................................................................. 44

V. Réalisation............................................................................................... 46

2. Captures d’écran de l’application réalisée: .................................................................. 48

VI. Conclusion............................................................................................... 52

Chapitre 4

I. Objectif ................................................................................................... 54

II. Backlog de sprint .................................................................................... 55

1. Répartition en tache avec estimation ........................................................................... 55

2. Scénario de test ............................................................................................................ 59

3. Burndown chart ............................................................................................................ 60

4. Procès verbale des réunions : ....................................................................................... 61

IV. Analyse .................................................................................................... 62

Page 3: Rapport de sprint finale (All Project part)

3

1. Diagramme de cas d’utilisation raffiné ........................................................................ 62

2. Diagrammes d’activités................................................................................................ 63

IV. Conception ............................................................................................. 64

1. Diagramme de séquence objet ..................................................................................... 64

2. Diagramme de classe ................................................................................................... 68

3. Diagramme de classe conception ................................................................................. 69

4. Diagramme de composants .......................................................................................... 70

V. Réalisation............................................................................................... 71

1. Outils, bibliothèques et technologies utilisés ............................................................... 71

2. Captures d’écran de l’application ................................................................................ 72

VIII. Conclusion.............................................................................................. 75

Page 4: Rapport de sprint finale (All Project part)

4

Table de figures

figure 1: Acteur « Visiteur » ............................................................................................................. 1

figure 2: Acteur « Client » ................................................................................................................ 1

figure 3: Acteur « Administrateur » ................................................................................................. 1

figure 4: Acteur « Restaurateur » ..................................................................................................... 1

figure 5: Diagramme de cas d’utilisation générale ........................................................................... 4

figure 6: Diagramme de classe d’analyse globale ............................................................................ 5

figure 7: Architecture logique .......................................................................................................... 6

figure 8: Architecture physique ........................................................................................................ 6

figure 9: Product backlog ............................................................................................................... 10

figure 10: Maquette de l’authentification ..................................................................................... 11

figure 11: Maquette de l’espace de gestion des commentaires ..................................................... 11

figure 12: Maquette de l’espace de gestion des comptes .............................................................. 12

figure 13: Maquette de la section pour la modification des informations du compte admin ....... 12

figure 14: Backlog sprint_Java ..................................................................................................... 20

figure 15: Burn Down chart 3D .................................................................................................... 22

figure 16: Left To do chart ............................................................................................................ 22

figure 17: Diagramme de cas d’utilisation détaillé ....................................................................... 23

figure 18: Diagramme d’activité « effectuer une réservation » .................................................... 24

figure 19: Diagramme d’activité « authentification» .................................................................... 25

figure 20: Diagramme de séquence objet «authentification» ....................................................... 26

figure 21: Diagramme de séquence objet «réservation» ............................................................... 27

figure 22: Diagramme de séquence objet «authentification restaurateur» ................................... 27

figure 23: Diagramme de séquence objet «authentification administrateur» ............................... 28

figure 24: Diagramme de classe conception ................................................................................. 29

figure 25: Interface « inscription » .............................................................................................. 31

figure 26: Interface « authentification » ....................................................................................... 31

figure 27: Interface restaurateur « contacter un restaurateur » ..................................................... 32

figure 28: Interface restaurateur « gérer restaurant» ..................................................................... 32

figure 29: Interface restaurateur « ajout d’une offre» ................................................................... 33

figure 30: Interface restaurateur « gérer les réservations» ............................................................ 33

figure 31: Backlog sprint_Mobile ................................................................................................. 39

Page 5: Rapport de sprint finale (All Project part)

5

figure 32: Burndown chart ............................................................................................................ 41

figure 33: Cas d'utilisation ............................................................................................................ 42

figure 34: Diagramme de séquence d’Authentification ................................................................ 43

figure 35: Diagramme de séquence objet de consulter les offres ................................................. 44

figure 36: Diagramme séquence objet Inscription ........................................................................ 45

figure 37: La bibliothèque de J2ME ............................................................................................. 46

figure 38: Transfert et récupération des données entre le serveur et l'émulateur ......................... 47

figure 39: Authentification ........................................................................................................... 48

figure 40: Inscription Client.......................................................................................................... 48

figure 41: Inscription Restaurateur ............................................................................................... 49

figure 42: Consulter Bons plans, Consulter offre, Envoyer SMS, Consulter Restaurant ............. 49

figure 43: Interface « Modifier Compte Client » .......................................................................... 50

figure 44: Interface « Accueil, Réserver, Noter un restaurant, Maps » ........................................ 50

figure 45: Interfaces « Accueil, statistique, modification de compte restaurateur, réclamation » 51

figure 46: Consulter informations d’un restaurant et afficher les informations ........................... 51

figure 47: Backlog sprint_Web ..................................................................................................... 58

figure 48: Burn Down chart .......................................................................................................... 60

figure 49: Diagramme de cas d’utilisation détaillé ....................................................................... 63

figure 50: Diagramme d’activité « s’authentifier» ....................................................................... 63

figure 51: Diagramme de séquence objet «authentification» ....................................................... 64

figure 52: Diagramme de séquence objet «réservation» ............................................................... 65

figure 53: Diagramme de séquence objet «Consulter offre» ........................................................ 66

figure 54: Diagramme de séquence objet «Chercher offre» ......................................................... 67

figure 55: Diagramme de classe ................................................................................................... 68

figure 56: Diagramme de classe conception ................................................................................. 69

figure 57: Interface « vue globale_gestion restaurateur » ........................................................... 72

figure 58: Interface « acceuil_gestion restaurateur » .................................................................... 73

figure 59: Interface « consulter fiche restaurateur» ..................................................................... 73

figure 60: Interface « Consulter les restaurants_frontOffice» ..................................................... 74

figure 61: Interface « Consulter une offre_backOffice» .............................................................. 74

Page 6: Rapport de sprint finale (All Project part)

6

Introduction générale

Réserver en quelques clics dans le restaurant de votre choix ! En effet, en indiquant les informations

concernant la date à laquelle vous souhaitez réserver, le nombre de personnes et l’heure.

C’est dans ce cadre s’inscrit ce présent travail ayant pour but de développer une application java,

mobile et web permettant de Retrouvez grâce à notre guide une sélection des

meilleurs restaurants de Tunisie.

Page 7: Rapport de sprint finale (All Project part)

7

Chapitre 1

Page 8: Rapport de sprint finale (All Project part)

1

I. Etude de contexte

1. Identification des acteurs :

figure 1: Acteur « Visiteur »

L’acteur « visiteur » est un utilisateur simple qui pourra simplement consulter la liste des

restaurants et des bons plans

figure 2: Acteur « Client »

L’acteur « client » après l’inscription et l’authentification il bénéficiera des droits liés à cet

acteur

figure 3: Acteur « Administrateur »

L’acteur « administrateur » bénéficiera des droits de la gestion des comptes des clients et des

commentaires

figure 4: Acteur « Restaurateur »

L’acteur « restaurateur » bénéficiera de la gestion d’un ou plusieurs restaurants, de leur menu

et des réservations

Page 9: Rapport de sprint finale (All Project part)

2

2. Identification des besoins fonctionnels

L’application doit assurer les fonctionnalités suivantes aux visiteurs

● Consulter la liste des restaurants

● Consulter les menus des différents restaurants

● Rechercher un restaurant selon des critères personnalisés

● Simuler le coût (en fonction du nombre de personnes, nature des mets, …)

● Trouver les bons plans

L’application doit assurer à l’utilisateur de visualiser les bon plan ajouté par les

restaurateur

● Accéder aux services de Restaurant Tunisie via une application mobile

L’application doit assurer les fonctionnalités suivantes aux clients

● Commenter et noter un restaurant

● Effectuer une réservation

● Modifier les informations du compte

L’application doit assurer les fonctionnalités suivantes aux administrateurs

● Gérer les comptes des clients

L’application doit assurer la gestion des comptes des clients (l’ajout, suppression,

consultation, recherche).

● Gérer les commentaires

L’application doit assurer la gestion des commentaires des clients (la suppression,

consultation).

L’application doit assurer les fonctionnalités suivantes aux restaurateurs :

● Gérer la réservation

Page 10: Rapport de sprint finale (All Project part)

3

L’application doit assurer au restaurateur la gestion des réservations des clients (la

validation et l’annulation).

● Gérer restaurants

L’application doit assurer au restaurateur la gestion d’un ou plusieurs restaurants

(l’ajout, la suppression, la consultation et la modification).

● Gérer les bons plans

● L’application doit assurer au restaurateur la gestion de ses bons plans (l’ajout, la

suppression et la consultation).

3. Identification des besoins non fonctionnels :

La compatibilité : L’application doit être compatible avec la majorité des navigateurs

(Web), des systèmes d’exploitation (mobile et Desktop).

L’ergonomie des interfaces homme-machine (IHM) :

Il s’agit d’une application (Web, Mobile, Desktop), elle doit présenter des interfaces

utilisateurs conviviales bien structurées du point de vue contenu informationnel.

La sécurité :

Les droits d’accès au système doivent être bien attribués aux différents partenaires, afin

d’assurer la sécurité des données. De plus, le système doit disposer d’un mécanisme

d’authentification limitant l’accès aux utilisateurs.

Les contraintes techniques :

Le système doit être développé en Open Source. En outre, il doit être portable et fonctionnel

sur plusieurs systèmes d’exploitation.

Page 11: Rapport de sprint finale (All Project part)

4

II. Analyse globale

1. Diagramme de cas d’utilisation globale :

figure 5: Diagramme de cas d’utilisation générale

Page 12: Rapport de sprint finale (All Project part)

5

2. Diagramme de classe d’analyse globale :

figure 6: Diagramme de classe d’analyse globale

1..1

Gérer

1..*

1..1

Gérer

0..*

1..1

Gérer

0..*

0..*

1..*

effectuer

0..*

1..*

Gérer

1..*

Attribuer

0..*

1..*

Attribuer

0..*

1..1

Avoir

0..*

1..*

Gérer

0..*

1..1

Gérer

0..*

1..1

Gérer

0..*

1..1

0..*

1..1

Appartient

1..1Client

-

-

-

-

-

-

-

-

id_client

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

Restaurant

-

-

-

-

-

-

-

-

-

-

id

nom

adresse

email

description

tel

site

heure_ouverture

heure_fermeture

image

: int

: String

: String

: String

: String

: int

: int

: int

: int

: blob

Menu

-

-

-

-

-

-

id

titre

info

prix

photo

etat

: int

: String

: String

: double

: String

: StringRestaurateur

-

-

-

-

-

-

-

-

id

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

Commentaire

-

-

-

id

text

etat

: int

: String

: String

Note

-

-

id

note

: int

: int

Reservation

-

-

-

-

-

id

date_res

nbr_perso

commentaire

etat

: int

: Date

: int

: String

: String

Administrateur

-

-

-

-

-

-

id

nom

prenom

email

login

pass

: int

: String

: String

: String

: String

: String

Offre

-

-

-

-

-

id

description

prix

date_debut

date_fin

: int

: String

: double

: Date

: Date

Page 13: Rapport de sprint finale (All Project part)

6

III – Modélisation de l’architecture

logique et physique de l’application :

1. Modélisation de l’architecture logique :

figure 7: Architecture logique

2. Modélisation de l’architecture physique :

figure 8: Architecture physique

Page 14: Rapport de sprint finale (All Project part)

7

IV – Elaboration du product backlog

Page 15: Rapport de sprint finale (All Project part)

8

ID

Feature

User story

Priorité

V1

V1.1 consulter

restaurant

V1.1.1 En tant que visiteur je veux consulter

la liste des restaurants

40

V1.1.2 En tant que visiteur je veux consulter

les menus des restaurants

45

1.2.1 S’inscrire En tant que visiteur je veux m’inscrire afin

de passer des réservations

HOW : sur une plateforme web

70

V1.2.2

S’inscrire

En tant que visiteur je veux m’inscrire afin

de passer des réservations

HOW : sur une plateforme mobile

72

V1.3

Rechercher un

restaurant

En tant que visiteur je veux rechercher un

restaurant

50

V1.4 Simuler le

cout de la réservation

En tant que visiteur je veux Simuler le cout

de la réservation

32

V1.5 Trouver

les bons plans

En tant que visiteur je veux consulter les

bons plans

30

C1

C1.1 Noter un

restaurant

En tant que client je veux noter un restaurant

25

C1.2

Commenter un

restaurant

En tant que client je veux commenter un

restaurant

25

C1.3 Effectuer

une réservation

En tant que client je veux effectuer une

réservation

60

C1.4 Modifier En tant que client je veux modifier les

Page 16: Rapport de sprint finale (All Project part)

9

info compte informations de mon compte 55

A1

A1.1 Gérer les

comptes des clients

A1.1.1 En tant qu’administrateur je veux

consulter un compte

90

A1.1.2 En tant qu’administrateur je veux

supprimer un compte

85

A1.2 Gérer les

commentaires

A1.2.1 En tant qu’administrateur je veux

consulter les commentaires

80

A1.2.2 En tant qu’administrateur je veux

supprimer les commentaires

85

A1.2.3 En tant qu’administrateur je veux

valider des commentaires

75

R1

R1.1 S’inscrire En tant que restaurateur je veux m’inscrire

10

R1.2 Gérer

restaurent

R1.2.1 En tant que restaurateur je veux

ajouter un restaurant

25

R1.2.2 En tant que restaurateur je veux

supprimer un restaurant

13

R1.2.3 En tant que restaurateur je veux

modifier un restaurant

16

R1.3 Gérer les

réservations

R1.3.1 En tant que restaurateur je veux

valider les réservations

12

R1.3.2 En tant que restaurateur je veux

annuler les réservations

8

R1.4 Gérer les

bons plans

R1.4.1 En tant que restaurateur je veux

ajouter de bons plans

Page 17: Rapport de sprint finale (All Project part)

10

figure 9: Product backlog

7

R1.4.1 En tant que restaurateur je veux

modifier les bons plans

9

R1.4.1 En tant que restaurateur je veux

supprimer les bons plans

5

Page 18: Rapport de sprint finale (All Project part)

11

V – Elaboration des maquettes

A traves cette interface l’administrateur pourra s’authentifier

figure 10: Maquette de l’authentification

A travers cette interface l’administrateur aura accès à touts les commentaires non

confirmés

figure 11: Maquette de l’espace de gestion des commentaires

Page 19: Rapport de sprint finale (All Project part)

12

A travers cette interface l’administrateur pour gérer les comptes des clients, les

consulter ou les supprimer

figure 12: Maquette de l’espace de gestion des comptes

A travers cette interface l’utilisateur gère les informations de son propre compte

figure 13: Maquette de la section pour la modification des informations du compte admin

Page 20: Rapport de sprint finale (All Project part)

13

VIII - Conclusion CON

Bon

On espère que notre projet facilitera la tache pour ceux qui n’ont pas une bonne

visualisation sur touts les restaurants de la Tunisie

Après ce sprint (0) on va aborder le sprint (1) qui consiste à réaliser le module de

l’administration avec la technologie Java.

En procédant par étape et en y mettant la détermination, la persévérance et l’effort, le

parcours du succès est possible.

Page 21: Rapport de sprint finale (All Project part)

14

Chapitre 2

Page 22: Rapport de sprint finale (All Project part)

15

I. Objectif

L’objectif de ce sprint et de concevoir et réaliser une application desktop du projet « Resto

Tunisie » en utilisant le langage de programmation Java, on trouvera sur cette plateforme toutes les

fonctionnalités de ce projet.

Ce sprint est mis en œuvre surtout pour faciliter l’administration.

Page 23: Rapport de sprint finale (All Project part)

16

II. Backlog de sprint

1. Répartition en tache avec estimation

Page 24: Rapport de sprint finale (All Project part)

17

ID

Feature

User story

Tache Technique

Estimation

Affectation

V1

S’inscrire En tant que visiteur je veux m’inscrire

Elaborer interface d’inscription 12 LINA

Méthode Insert dans la table client

Méthode Insert dans la table restaurateur

codage

Test unitaire et test de sécurité

C1

C1.1 consulter restaurant

C1.1.1 En tant que client je veux consulter la liste des restaurants

Elaborer interface pour la consultation

2

FEDI

Méthode de consultation de la liste des restaurants (DAO)

2

codage 5

Test

C1.2 Trouver un restaurant

C1.2.1 En tant que client je veux rechercher un restaurant

Codage et création de la méthode de recherche d’un

restaurant par son nom

4

FEDI

Elaborer interface pour la recherche

test

C1.2.2 En tant que client je veux consulter les bons plans

Elaboration de l’interface pour la consultation des bons plans

3

codage

test

C1.3 Noter un restaurant

En tant que client je veux noter un restaurant

Elaborer l’interface pour noter un restaurant (noter avec les

étoiles)

2

FEDI

Méthode «insert » de la note dans la base de donnée

test

C1.4 Commenter un restaurant

En tant que client je veux commenter un restaurant

Elaborer l’interface pour l’insertion des commentaires

4

FEDI

Méthode insert des commentaires dans la base

Codage

Test

C1.5 Effectuer une réservation

En tant que client je veux effectuer une réservation

Elaborer l’interface pour l’insertion des réservations

3

FEDI

Méthode insert des réservations dans la base

Codage

Test

C1.6 Modifier info compte

En tant que client je veux modifier les informations de mon compte

Elaborer l’interface pour la modification des informations

3

FEDI

Méthode update des informations du client

Codage (contrôle saisie, programmer les boutons)

Test

Page 25: Rapport de sprint finale (All Project part)

18

A1

A1.1 Gérer les comptes des clients

A1.1.1 En tant qu’administrateur je veux consulter un compte

Elaborer l’interface pour la consultation d’un compte client

4

AHMED

codage

test

A1.1.2 En tant qu’administrateur je veux supprimer un compte

Elaborer l’interface pour la suppression d’un compte client

4 AHMED

codage

Méthode delete du compte client

test

A1.1.2 En tant qu’administrateur je veux rechercher un compte

Elaborer l’interface pour la recherche d’un client

4 AHMED

Méthode select du compte client

codage

test

A1.2 Gérer les commentaires

A1.2.1 En tant qu’administrateur je veux consulter les commentaires

Elaborer l’interface pour la consultation des commentaires

3

MILKA

Codage

Méthode select des commentaires

test

A1.2.2 En tant qu’administrateur je veux supprimer les commentaires

Elaborer l’interface pour la suppression des commentaires

4

MILKA

Méthode delete des commentaires

codage

test

A1.2.3 En tant qu’administrateur je veux valider des commentaires envoyer mail lors de la validation

Elaborer l’interface pour la validation des commentaires

9

MILKA

Méthode delete des commentaires non validés

Codage et intégration du mail

test

A1.3 Gérer les restaurateurs

A1.3.1 En tant qu’administrateur je veux consulter la liste des restaurateurs

Elaborer l’interface pour la consultation des restaurateurs

4 AYMEN

Méthode select de touts les restaurateurs

codage

test

A1.3.2 En tant qu’administrateur je veux supprimer un restaurateur

Elaborer l’interface pour la suppression des restaurateurs

5 AYMEN

Méthode delete d’un restaurateur

codage

test

A1.3.3 En tant qu’administrateur je veux modifier les informations d’un

Elaborer l’interface pour la modification des restaurateurs

4 AYMEN

Méthode update d’un restaurateur

Page 26: Rapport de sprint finale (All Project part)

19

restaurateur codage

test

A1.3.4 En tant qu’administrateur je veux contacter un restaurateur

Elaborer l’interface pour l’envoi d’un mail

3 AYMEN

Intégration des librairies mail

Codage et contrôle saisie

test

A1.4 Gérer les administrateurs

A1.4.1 En tant qu’administrateur je veux ajouter un administrateur

Elaborer l’interface de l’ajout d’un administrateur

7 MLIKA

Méthode insert d’un administrateur

codage

test

A1.4.1 En tant qu’administrateur je veux modifier le mot de passe du compte

Elaborer l’interface pour la modification du mot de passe

codage

Contrôle saisie et intégration du système « code de vérification »

R1

R1.2 Gérer restaurant

R1.2.1 En tant que restaurateur je visualiser les statistiques

Elaborer l’interface pour les statistiques

3

WAJDI

Intégration du code

test

R1.2.2 En tant que restaurateur je veux ajouter un restaurant

Elaborer l’interface pour l’ajout d’un restaurant

4

HENI

Méthode insert d’un restaurant

codage

test

R1.2.3 En tant que restaurateur je veux supprimer un restaurant

Elaborer l’interface pour la suppression d’un restaurant

3

HENI

Méthode delete d’un restaurant

codage

test

R1.2.4 En tant que restaurateur je veux modifier un restaurant

Elaborer l’interface pour la modification d’un restaurant

3

HENI

Méthode update d’un restaurant

codage

test

R1.2.5 En tant que restaurateur je veux consulter la liste des restaurants

Elaborer l’interface pour la consultation des restaurants

3 HENI

Méthode select des restaurants restaurant

codage

test

R1.2.6 En tant que restaurateur je veux contacter un administrateur

Elaborer l’interface pour l’envoi d’un mail

HENI

Intégration des librairies mail

Codage et contrôle saisie

R1.2.7 En tant que restaurateur je veux rechercher un restaurant

Elaborer l’interface pour la recherche des restaurants

4 HENI

Méthode SelectByNom des restaurants

Page 27: Rapport de sprint finale (All Project part)

20

figure 14: Backlog sprint_Java

codage

test

R1.3 Gérer les réservations

R1.3.1 En tant que restaurateur je veux valider les réservations

Elaborer l’interface pour la validation des réservations

5

WAJDI

codage

Test

R1.3.2 En tant que restaurateur je veux annuler les réservations

Interface pour l’annulation 3

WAJDI

codage

test

R1.4 Gérer les bons plans (offres)

R1.4.1 En tant que restaurateur je veux ajouter de bons plans

Elaborer l’interface pour l’ajout des offres

4

WAJDI

Méthode insert des offres

codage

test

R1.4.1 En tant que restaurateur je veux modifier les bons plans

Elaborer l’interface pour la modification des offres

4 WAJDI

Méthode update des offres

codage

test

R1.4.1 En tant que restaurateur je veux supprimer les bons plans

Elaborer l’interface pour la suppression des offres

3 WAJDI

Méthode delete des offres

codage

test

Stoty Less

Création de la base de données 1 MLIKA

Authentification Interface authentification 13 LINA

Codage

test

Diagramme de séquence objets 2 LINA

Intégration du jasper report pour l’export de la liste des restaurants 1 HENI

Intégration du jasper report pour l’export de la liste des restaurateurs 1 AYMEN

Intégration du jasper report pour l’export de la liste des clients qui ont réservé 2 WAJDI

Diagramme de classe de conception 2 HENI

Burndownchart 2 HENI

Diagramme d’activité 2 FEDI

Elaboration backlog sprint1 (Répartition +estimation) 5 AYMEN

Elaboration Rapport sprint 1 2 AYMEN

Documentation 14 Tous les membres du

groupe

Page 28: Rapport de sprint finale (All Project part)

21

2. Scénario de test

Scénario 1 :

Étant donné un client BBB qui possède un login et un mot de passe

Quand il saisie de fausses informations lors de l’authentification

Alors l’authentification est refusé et le message « login ou mot de passe incorrect » est envoyé

Scénario 2 :

Étant donné un administrateur A et un administrateur B

Quand l’administrateur A veut ajouter un administrateur avec le même login que B

Alors l’ajout est refusé et le message « login déjà utilisé »

Scénario 3 :

Pour le user story « en tant qu’administrateur je veux modifier mon mot de passe» des critères de test que j'ai identifiés sont :

-On ne peut modifier le mot de passe que si on introduit le code de vérification qui a été envoyé à la boite mail de l’administrateur

Scénario 4 :

Pour le user story « en tant que client je veux effectuer une réservation» des critères de test que j'ai identifiés sont :

-On ne peut réserver que si un restaurant est sélectionné

Page 29: Rapport de sprint finale (All Project part)

22

3. Burndown chart

figure 15: Burn Down chart 3D

Le graphe ci-dessus représente le burndown chart, qui représente le pourcentage du travail effectué

par rapport au nombre de jour du travail.

figure 16: Left To do chart

Le graphe ci-dessus représente les taches qui nous restent à réaliser en termes d’heures par rapport

aux jours totaux.

Page 30: Rapport de sprint finale (All Project part)

23

III. Analyse

1. Diagramme de cas d’utilisation détaillé

figure 17: Diagramme de cas d’utilisation détaillé

Page 31: Rapport de sprint finale (All Project part)

24

Nous présentant ci-dessus le diagramme de cas d’utilisation détaillé avec les nouvelles

fonctionnalités ajoutés au niveau du sprint 1, pour ce sprint on a 3 acteurs : client, restaurateur,

administrateur. Pour ce sprint on a pris la décision d’éliminer le visiteur puisque chaque

fonctionnalité nécessite une authentification

2. Diagrammes d’activités

figure 18: Diagramme d’activité « effectuer une réservation »

Nous présentant ci-dessus le diagramme d’activité pour la fonctionnalité « «réserver » qui est

lié à l’acteur « client » qui après avoir sélectionné un restaurant et le remplissage du formulaire il

pourra effectuer une réservation.

Page 32: Rapport de sprint finale (All Project part)

25

figure 19: Diagramme d’activité « authentification»

Nous présentant ci-dessus le diagramme d’activité pour la fonctionnalité «s’authentifier», à

premier temps l’acteur choisis le type d’authentification et on saisie le login et le mot de passe et

après une vérification il accède à l’application.

Page 33: Rapport de sprint finale (All Project part)

26

IV – Conception

1. Diagramme de séquence objet

figure 20: Diagramme de séquence objet «authentification»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de l’authentification client

-Après le remplissage des données (login et mot de passe)

-Les données seront traitées et interroger la base de donnée

-Si les données saisies sont similaires dans la base de données il le redirige vers l’interface

client

Page 34: Rapport de sprint finale (All Project part)

27

figure 21: Diagramme de séquence objet «réservation»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de la réservation.

-Après avoir sélectionné un restaurant

-On rempli le formulaire de la réservation et on insère dans la base de données

figure 22: Diagramme de séquence objet «authentification restaurateur»

Page 35: Rapport de sprint finale (All Project part)

28

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de l’authentification du restaurateur

-Après le remplissage des données (login et mot de passe)

-Les données seront traitées et interroger la base de donnée

-Si les données saisies sont similaires dans la base de données il le redirige vers l’interface du

restaurateur

figure 23: Diagramme de séquence objet «authentification administrateur»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de l’authentification administrateur

-Après le remplissage des données (login et mot de passe)

-Les données seront traitées et interroger la base de donnée

-Si les données saisies sont similaires dans la base de données il le redirige vers l’interface

administrateur

Page 36: Rapport de sprint finale (All Project part)

29

2. Diagramme de classe conception

figure 24: Diagramme de classe conception

Nous présentons ci-dessous le diagramme de classe de conception qui contient tout les entités

de notre projet

1..1

Gérer

1..*

1..1

Gérer

0..*

1..1

Gérer

0..*

0..*

1..*

effectuer

0..*

1..*

Gérer

1..*

Attribuer

0..*

1..*

Attribuer

0..*

1..1

Avoir

0..*

1..*

Gérer

0..*

1..1

Gérer

0..*

1..1

Gérer

0..*

1..1

0..*

1..1

Appartient

1..1Client

-

-

-

-

-

-

-

-

id_client

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

Restaurant

-

-

-

-

-

-

-

-

-

-

id

nom

adresse

email

description

tel

site

heure_ouverture

heure_fermeture

image

: int

: String

: String

: String

: String

: int

: int

: int

: int

: blob

Menu

-

-

-

-

-

-

id

titre

info

prix

photo

etat

: int

: String

: String

: double

: String

: StringRestaurateur

-

-

-

-

-

-

-

-

id

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

Commentaire

-

-

-

id

text

etat

: int

: String

: String

Note

-

-

id

note

: int

: int

Reservation

-

-

-

-

-

id

date_res

nbr_perso

commentaire

etat

: int

: Date

: int

: String

: String

Administrateur

-

-

-

-

-

-

id

nom

prenom

email

login

pass

: int

: String

: String

: String

: String

: String

Offre

-

-

-

-

-

id

description

prix

date_debut

date_fin

: int

: String

: double

: Date

: Date

Page 37: Rapport de sprint finale (All Project part)

30

V – Réalisation

1. Outils, bibliothèques et technologies utilisés

La mis en œuvre de ce projet nécessite l’utilisation de différentes outils et technologies parmi

les quels on cite :

Outils :

PowerAMC : pour la création des différents diagrammes

Netbeans 7.4

WAMPSERVER : pour la création de la base de données

Balsamiq Mockups : pour la création des maquettes

Sprinttometer : pour la réalisation du burndownchart

Technologies :

JAVA

SQL

Bibliothèques :

Java SWING : pour la création des interfaces graphiques

Jfreechart : pour la réalisation des statistiques

Les librairies pour l’envoi des mails

Page 38: Rapport de sprint finale (All Project part)

31

2. Captures d’écran de l’application

Nous présenterons ci-dessous quelques captures écran de notre application

figure 25: Interface « inscription »

figure 26: Interface « authentification »

Page 39: Rapport de sprint finale (All Project part)

32

figure 27: Interface restaurateur « contacter un restaurateur »

figure 28: Interface restaurateur « gérer restaurant»

Page 40: Rapport de sprint finale (All Project part)

33

figure 29: Interface restaurateur « ajout d’une offre»

figure 30: Interface restaurateur « gérer les réservations»

Page 41: Rapport de sprint finale (All Project part)

34

VIII - Conclusion CON

Bon

On espère que notre projet facilitera la tache pour l’administration du projet et avoir une

bonne visibilité pour chaque acteur sur toutes ces fonctionnalités.

Ce sprint nous a permis de découvrir de nouveaux outils et d’acquérir de nouvelles

connaissances.

Après ce sprint (1) on va aborder le sprint (2) qui consiste à réaliser une application mobile de

notre projet.

En procédant par étape et en y mettant la détermination, la persévérance et l’effort, le

parcours du succès est possible.

Page 42: Rapport de sprint finale (All Project part)

35

Chapitre 3

Page 43: Rapport de sprint finale (All Project part)

36

I. Objectif

Le nombre de terminaux ‘légers’ (PDA, téléphone…) dépasse largement celui des ordinateurs

personnels (400 millions d’ordinateurs personnels dans le monde en 2002, un milliard de terminaux

‘légers’ en 2003). 30 à 50 % de ces terminaux ont une connectivité possible à l’Internet.

Les Smartphones par conséquence ont devenu un outil de communication incontournable. Sprint 2

consiste à il à élaborer une application mobile en J2Me. A base de cahier des charges qui vise à

implémenter des divers services au visiteur tels que : Consulter la liste des restaurants , consulter

les menus des différents restaurants, commenter et noter un restaurant, rechercher un restaurant

selon des critères personnalisés, effectuer une réservation, réserver et simuler le coût d’une

réservation, trouver les bons plans…

Cette applications mobile est applicable dans le cadre de permettre au visiteur de réservez dans les

meilleurs restaurants aux meilleurs prix.

Nous ne permettons pas seulement aux restaurateurs d’être visibles sur notre site… Nous leur

fournissons aussi des outils experts pour les aider dans la gestion de leur établissement : cahier de

réservation électronique, optimisation du taux de remplissage, gestion de la relation client…

Page 44: Rapport de sprint finale (All Project part)

37

II. Backlog sprint

1. Répartition des taches avec estimation :

Id

story

Story Tache Estimation rôle

1.1 En Tant que

Client je

souhaite

consulter les

restaurants via

mobile

Codage « consulter un restaurant » 2H Aymen

création de la base de données 1H Mlika

Tester le travail du Fedi 1H Aymen

1.2 En Tant que

Client je

souhaite

consulter le

Mapp de

restaurant via

mobile

Intégration de la localisation map 2H Fedi,Aymen

implémenter l’interface

correspondante

1H Fedi

Tester le travail d’Aymen et Wajdi 1H Fedi

2.1 En Tant que

client je

souhaite

m’inscrire via

mobile

Méthode ajout client(inscription) 2H Lina

Tester le travail du Heni 1H 30 min Lina

2.2 En tant que

restaurateur je

souhaite

m’inscrire via

mobile

Méthode ajout

restaurateur(inscription)

1H Lina

Tester le travail de Heni 1H Lina

Page 45: Rapport de sprint finale (All Project part)

38

3.1 En Tant que

restaurateur je

souhaite gérer

mon compte

via mobile

création de package restaurateur 20 min Mlika

création de midlet pour la gestion

des comptes

4H Mlika

Tester le travail d’Ahmed et Wajdi 50 min Mlika

3.2

En tant que

client je

souhaite écrire

un

commentaire

via mobile

Crud pour la consultation des

commentaires

2H

Aymen

3.3

En tant que

restaurateur je

souhaite

envoyer et

modifier

compte

restaurateur

via mobile

Crud Réclamation 2H Ahmed

codage 2H 30 min Ahmed

Intégrer la visualisation d’une vidéo 1H Ahmed

Intégrer l’appel d’un numéro 1H 30 MIN

Ahmed

tester le travail de Mlika 1H

Ahmed

3.4

En tant que

client je

souhaite noter

un restaurant

via mobile

codage 30 min Heni

Crud « noter restaurant » 3H Heni

Crud « réservation » 2H Heni

tester le travail de Lina 50 min Heni

création package statistique 30 min Fedi

Page 46: Rapport de sprint finale (All Project part)

39

3.5 En tant que

restaurateur je

souhaite

consulter les

statistiques

concernant

mon restaurant

via mobile

Codage et intégration du module

statistique

2H Fedi

Tester le travail du Aymen et Wajdi 1H Fedi

3.6 En tant que

Client je

souhaite

consulter les

offres,

attribuer note

et ajouter

commentaire

via mobile

Codage « consultation des offres » 1H 30 min Wajdi

Intégration du module d’envoi

d’un sms au restaurateur

1H Wajdi

Ajouter commentaire à l’offre 2H Wajdi

chercher les offres 2H Wajdi

Tester le travail d’Ahmed et Heni 1H Wajdi

figure 31: Backlog sprint_Mobile

2. Scénarios de test

Le story ‘S'authentifier ‘

Authentification acceptée

Étant donné 2 champs "login" et "password», Quand le client Mohamed s'authentifie en donnant

son login ="****" et mot de passe="****" Alors il peut accéder à l'accueil du site de Resto Tunisie

via mobile.

Authentification refusée

Page 47: Rapport de sprint finale (All Project part)

40

Étant donné 2 champs "login" et "password", Quand un client ‘foulen’ introduit un login ="*** " et

password ="***" différent à celui qui existe dans la base il sera averti via mobile Alors l'accès est

refusé et le message "Login et Mot de passe incorrect" est lui retourner à l’interface de

authentification.

La Story :'Modification des informations du client'

Modification acceptée

Étant donné les champs "login" et "passwd" du formulaire,un client ‘foulen’ Quand il introduit via

mobile son login="" et son passwd="", Alors les nouvelles modifications qui l’à introduit dans le

formulaire seront enregistrés et un message de confirmation de modification des informations

personnelles sera affiché.

Modification refusée

Étant donné les champs "login" et "password" du formulaire, un client ‘foulen’ Quand il introduit

via mobile login="",password="", Alors les nouvelles modifications seront refusés et un message

d'erreur de modification des informations personnelles sera affiché "Vous devez remplir tous les

champs".

La Story :'Effectuer une réservation via mobile'

Réservation effectuée

Étant donné les champs "login" et "password" du formulaire, un client ‘foulen’ Quand il introduit

via mobile le jour de la réservation après avoir désigné le restaurant Alors la réservation sera

enregistré.

Réservation refusée

Étant donné les champs "login" et "password" du formulaire, Quand un client ‘foulen’ ne

sélectionne pas un restaurant.

Page 48: Rapport de sprint finale (All Project part)

41

3. Burndown chart

figure 32: Burndown chart

Le graphe ci-dessus représente le burndown chart, qui représente le pourcentage du travail effectué

par rapport au nombre de jour du travail.

Page 49: Rapport de sprint finale (All Project part)

42

III. Analyse

1. Diagramme de cas d’utilisation détaillé

figure 33: Cas d'utilisation

Client

Consulter les

restaurants

Consulter les offres

Commenter un

Restauarant

Commenter les offres

Noter un Restaurant

Effectuer une

Reservation

envoyer un SMS

envoyer une

Reclamation

Consulter les rapports

des Statistiques

Modifier Compte Client

S'inscrire

Authentification

Localiser les

Restaurants

gérer restaurant

Restaurateur

supprimer

restaurant

modifier restaurantConsulter restaurant

Ajouter restauarnt

Modifier Compte restaurateur

Page 50: Rapport de sprint finale (All Project part)

43

Nous présentant ci-dessus le diagramme de cas d’utilisation détaillé avec les fonctionnalités du

sprint 2, au niveau de ce sprint on a 2 acteurs : client, restaurateur.

2. Diagramme de séquence système :

figure 34: Diagramme de séquence d’Authentification

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de l’authentification du restaurateur

-Après le remplissage des données (login et mot de passe)

-Les données seront traitées et interroger la base de donnée

-Si les données saisies sont similaires dans la base de données il le redirige vers l’interface

restaurateur

sd:Authentification

4:Afficher un message d'erreur

3 : Afficher l 'interface

2: vérification

1:saisir(login , mdp)()

restaurateur

<<systeme>>

Restaurant

[ login et mdp correcte ]

[login ou mdp incorrecte ]

alt

4:Afficher un message d'erreur

3 : Afficher l 'interface

2: vérification

1:saisir(login , mdp)()

Page 51: Rapport de sprint finale (All Project part)

44

IV. Conception

1. Diagramme de Séquence Objet

figure 35: Diagramme de séquence objet de consulter les offres

DS_Consulter offre

10: Afficher(Msg)

9: AfficherOffre()

8: ReponseSelect()

6: ReponseSelect()

7: Select()

5: Select()

4: Chercher()

3: Cliquer"Suivant"

2: Formulaire afficher()

1: Demande formulaire()

Client

<<boundary>>

:UI_interface offre

<<entity>>

:offre

<<control>>

:consulter_offre

<<entity>>

:Restaurant

[offre=true]

else

alt

10: Afficher(Msg)

9: AfficherOffre()

8: ReponseSelect()

6: ReponseSelect()

7: Select()

5: Select()

4: Chercher()

3: Cliquer"Suivant"

2: Formulaire afficher()

1: Demande formulaire()

Page 52: Rapport de sprint finale (All Project part)

45

figure 36: Diagramme séquence objet Inscription

sd:Ajouter Restaurant

verification

message d'erreur

ajouter à la liste des restaurateur

saisir code

envoyer un SMS pour confirmer

Remplire formulaire

formulaire afficher

Demande d'afficher formulaire Ajouter

Restaurateur()

Restaurateur

Systeme

[code=correcte]

[code=incorrecte]

alt

ref

sd:Authentification()

verification

message d'erreur

ajouter à la liste des restaurateur

saisir code

envoyer un SMS pour confirmer

Remplire formulaire

formulaire afficher

Demande d'afficher formulaire Ajouter

Restaurateur()

Page 53: Rapport de sprint finale (All Project part)

46

V. Réalisation

1. Outils, bibliothèques et technologies utilisés:

La mis en œuvre de ce projet nécessite l’utilisation de différentes outils et technologies parmi les

quels on cite :

Outils :

PowerAMC : pour la création des différents diagrammes

Netbeans 7.4

Wamp : pour la création de la base de données

BalsamiqMockups : pour la création des maquettes

Sprinttometer : pour la réalisation du burndownchart

Technologies :

J2ME

MySQL

Bibliothèques :

figure 37: La bibliothèque de J2ME

Page 54: Rapport de sprint finale (All Project part)

47

L’API lcdui est chargée de gérer l’ensemble des contrôles graphiques proposés par ce profile.

Quant à la gestion des événements, elle suit le modèle des listeners du J2SE avec un

CommandListener appelé en cas d’activation d’un contrôle. Donc io et rms, eux, fournissent les

routines nécessaires aux entrées/s orties réseau et à la prise en charge d’une zone physique de

stockage.

Les Midlets

Les Midlets sont l'élément principal d'une application Java embarquée. Pour bien saisir leur mode

de fonctionnement, il suffit de prendre comme analogie les Applets ou les Servlets. Le cycle de vie

d’une Applet est géré par un conteneur, en l’occurrence le Navigateur Web, dont le rôle est

d’interagir avec celle-ci sous la forme de méthodes de notifications prédéfinies

Une servlet possè de les mêmes caractéristiques qu’une Applet excepté le fait que le contenu r est

un moteur de servlet (Tomcat, WebSphere, WebLogic, …).

Quant aux Midlets, ils représentent le pendant des Applets et des Servlets pour J2ME avec comme

conteneur votre téléphone mobile ou votre assistant personnel. Ainsi, en cas de mise à jour d’une

application embarquée, un simple téléchargement de code Midlet est nécessaire à partir d’un

quelconque serveur. De cette manière, un programme développé pour un profile donné est en

mesure de s’exécuter sur tous les périphériques correspondant à cette famille.

C’est aussi une manière de découpler le socle technique des applicatifs puisque le seul lien

Existant entre les logiciels embarqués et le terminal est l’API J2ME.

wireless toolkit 2.5:

figure 38: Transfert et récupération des données entre le serveur et l'émulateur

Page 55: Rapport de sprint finale (All Project part)

48

2. Captures d’écran de l’application réalisée:

figure 39: Authentification

figure 40: Inscription Client

Page 56: Rapport de sprint finale (All Project part)

49

figure 41: Inscription Restaurateur

figure 42: Consulter Bons plans, Consulter offre, Envoyer SMS, Consulter Restaurant

Page 57: Rapport de sprint finale (All Project part)

50

figure 43: Interface « Modifier Compte Client »

figure 44: Interface « Accueil, Réserver, Noter un restaurant, Maps »

Page 58: Rapport de sprint finale (All Project part)

51

figure 45: Interfaces « Accueil, statistique, modification de compte restaurateur, réclamation »

figure 46: Consulter informations d’un restaurant et afficher les informations

Page 59: Rapport de sprint finale (All Project part)

52

VI. Conclusion

On a développé une application mobile qui permettra au client de choisir son restaurant, consulter

les offres et les bons plans et réserver et d'avoir plusieurs autres services reliés à notre application

« Resto Tunisie », J2ME est une bonne sélection parmi plusieurs technologies pour les applications

mobiles. Après ce sprint (2) on va aborder par la suite le sprint (3) qui consiste à réaliser une

application web de notre projet.

Page 60: Rapport de sprint finale (All Project part)

53

Chapitre 4

Page 61: Rapport de sprint finale (All Project part)

54

I. Objectif

L’objectif de ce sprint et de concevoir et réaliser une application Web du projet « Resto

Tunisie » en utilisant plusieurs technologies comme le langage PHP et un framework PHP, Html,

javascript.

Pour cela on doit concevoir deux plateformes : Le front-Office (l’interface d’interaction pour

les visiteurs et les clients) et le Back-Office (Pour la gestion et l’administration)

Page 62: Rapport de sprint finale (All Project part)

55

II. Backlog de sprint

1. Répartition en tache avec estimation

Page 63: Rapport de sprint finale (All Project part)

56

ID

Feature

User story

Tache Technique

Estimation

Affectation

V1

S’inscrire En tant que visiteur je veux m’inscrire et m’authentifier Via Web

Intégration du FOS user Bundle 40 LINA

Test de sécurité 30

C1

C1.1 consulter restaurant

C1.1.1 En tant que Visiteur je veux consulter la liste des restaurants Via Web

Elaborer interface pour la consultation

20

FEDI

Méthode de consultation de la liste des restaurants

20

Test 20

C1.3 Noter un restaurant

En tant que client je veux noter un restaurant via Web

Elaborer l’interface pour noter un restaurant

20

Ahmed

Méthode «insert » de la note dans la base de donnée

20

Test 20

C1.4 Commenter un restaurant

En tant que client je veux commenter un restaurant via Web

Elaborer l’interface pour l’insertion des commentaires

40

FEDI

Méthode insert des commentaires dans la base

30

Test 20

C1.5 Effectuer une réservation

En tant que client je veux effectuer une réservation via Web

Elaborer l’interface pour l’insertion des réservations

30

FEDI

Méthode insert des réservations dans la base

20

Test 30

A1

A1.1 Gérer les comptes des clients

A1.1.1 En tant qu’administrateur je veux consulter un compte via Web

Elaborer l’interface pour la consultation d’un compte client

40

AHMED

Test 30

A1.1.2 En tant qu’administrateur je veux supprimer un compte via Web

Elaborer l’interface pour la suppression d’un compte client

40 AHMED

Méthode delete du compte client

30

Test 20

A1.1.2 En tant qu’administrateur je veux rechercher un compte via Web

Elaborer l’interface pour la recherche d’un client

40 AHMED

Méthode select du compte client

40

Test 20

A1.2 Gérer les commentaires

A1.2.1 En tant qu’administrateur je veux consulter les commentaires Via Web

Elaborer l’interface pour la consultation des commentaires

30

MILKA

Méthode select des commentaires

40

Test 20

Page 64: Rapport de sprint finale (All Project part)

57

A1.2.2 En tant qu’administrateur je veux supprimer les commentaires via Web

Elaborer l’interface pour la suppression des commentaires

MILKA

Méthode delete des commentaires

40

Test 20

A1.2.3 En tant qu’administrateur je veux valider des commentaires envoyer mail lors de la validation via Web

Elaborer l’interface pour la validation des commentaires

50

MILKA

Méthode delete des commentaires non validés

30

Codage et intégration du mail 30

Test 20

A1.3 Gérer les restaurateurs

A1.3.1 En tant qu’administrateur je veux consulter la liste des restaurateurs Via Web

Elaborer l’interface pour la consultation des restaurateurs

40 AYMEN

Méthode select de touts les restaurateurs

40

Test 30

A1.3.2 En tant qu’administrateur je veux supprimer un restaurateur Via web

Elaborer l’interface pour la suppression des restaurateurs

40 AYMEN

Méthode delete d’un restaurateur

30

Test 20

A1.3.3 En tant qu’administrateur je veux modifier les informations d’un restaurateur Via Web

Elaborer l’interface pour la modification des restaurateurs

40 AYMEN

Méthode update d’un restaurateur

20

Test 20

A1.3.4 En tant qu’administrateur je veux ajouter un restaurateur Via web

Elaborer l’interface pour l’ajout des restaurateurs

30 AYMEN

Méthode insert d’un restaurateur

30

Codage et contrôle saisie 20

Test 20

R1

R1.2 Gérer restaurant

R1.2.2 En tant que restaurateur je veux ajouter un restaurant Via web

Elaborer l’interface pour l’ajout d’un restaurant

40

HENI

Méthode insert d’un restaurant 30

Test de travaille 20

R1.2.3 En tant que restaurateur je veux supprimer un restaurant Via web

Elaborer l’interface pour la suppression d’un restaurant

30

HENI

Méthode delete d’un restaurant 20

Test 20

R1.2.4 En tant que restaurateur je veux modifier un restaurant

Elaborer l’interface pour la modification d’un restaurant

30

HENI

Méthode update d’un restaurant

20

Page 65: Rapport de sprint finale (All Project part)

58

figure 47: Backlog sprint_Web

Via web Test 20

R1.2.5 En tant que restaurateur je veux consulter la liste des restaurants Via web

Elaborer l’interface pour la consultation des restaurants

30 HENI

Méthode select des restaurants restaurant

30

Test 20

R1.2.6 En tant que restaurateur je veux contacter un administrateur Via web

Elaborer l’interface pour l’envoi d’un mail

20 HENI

Intégration des librairies mail 20

Codage et contrôle saisie 20

R1.2.7 En tant que restaurateur je veux rechercher un restaurant Via web

Elaborer l’interface pour la recherche des restaurants

40 HENI

Méthode Select ByNom des restaurants

30

Test 20

R1.3 Gérer les réservations

R1.3.1 En tant que restaurateur je veux valider les réservations Via web

Elaborer l’interface pour la validation des réservations

30

WAJDI

Test 30

R1.3.2 En tant que restaurateur je veux annuler les réservations Via web

Interface pour annuler les résérvations

20 WAJDI

Test 20

R1.4 Gérer les bons plans (offres)

R1.4.1 En tant que restaurateur je veux ajouter de bons plans Via web

Elaborer l’interface pour l’ajout des offres

30

WAJDI

Méthode insert des offres 30

Test 2

R1.4.1 En tant que restaurateur je veux modifier les bons plans Via web

Elaborer l’interface pour la modification des offres

30 WAJDI

Méthode update des offres 30

Test 20

R1.4.1 En tant que restaurateur je veux supprimer les bons plans Via web

Elaborer l’interface pour la suppression des offres

30 WAJDI

Méthode delete des offres 20

Test 20

Page 66: Rapport de sprint finale (All Project part)

59

2. Scénario de test

Scénario 1 :

Étant donné un client Amin qui possède un login et un mot de passe amin56

Quand il saisie de fausses informations lors de l’authentification

Alors l’authentification est refusé et le message « login ou mot de passe incorrect » est envoyé

Sinon il sera redirigé vers la page d’accueil.

Scénario 2 :

Étant donné un administrateur Ahmed et un administrateur Samir

Quand l’administrateur Ahmed veut ajouter un administrateur avec le même login que B

Alors l’ajout est refusé et le message « login déjà utilisé »

Sinon l’administrateur sera ajouté et un message de confirmation sera ajouté

Scénario 3 :

Pour le user story « en tant qu’administrateur je veux modifier mon mot de passe» des critères de test que j'ai identifiés sont :

-On ne peut modifier le mot de passe que si on introduit le code de vérification qui a été envoyé à la boite mail de l’administrateur

Scénario 4 :

Pour le user story « en tant que client je veux effectuer une réservation» des critères de test que j'ai identifiés sont :

-On ne peut réserver que si un restaurant est sélectionné

Page 67: Rapport de sprint finale (All Project part)

60

3. Burndown chart

figure 48: Burn Down chart

Le graphe ci-dessus représente le burndown chart, qui représente les taches qui reste à faire en

termes de temps.

Page 68: Rapport de sprint finale (All Project part)

61

4. Procès verbale des réunions :

PV 1

Date du jour : 21/04/2014 à 18h à Esprit Salle C35

Participants : toute l’équipe

Discussion :

- La répartition des taches entre les membres de groupe

-Créer un plan pour améliorer les processus de travail

-Les difficultés rencontrées : Le manque de communication et de l’esprit d'assistance

mutuelle entre les membres d'équipe.

-Qu'aurions-nous pu changer ? Mieux communiquer.

PV 2

Date du jour : 25/04/2014 à 18h à Esprit Salle C35

Participants : toute l’équipe

Discussion :

- Choisir un template front-office et un template back-office

-Résoudre quelques difficultés rencontrées au niveau de l’intégration du template

Page 69: Rapport de sprint finale (All Project part)

62

IV. Analyse

1. Diagramme de cas d’utilisation raffiné

Page 70: Rapport de sprint finale (All Project part)

63

figure 49: Diagramme de cas d’utilisation détaillé

Nous présentant ci-dessus le diagramme de cas d’utilisation détaillé, pour ce sprint on a 4

acteurs : visiteur, client, restaurateur, administrateur.

2. Diagrammes d’activités

figure 50: Diagramme d’activité « s’authentifier»

Nous présentant ci-dessus le diagramme d’activité pour la fonctionnalité « s’authentifier » qui

est lié à tout les acteurs qui après avoir saisi le login et le pass il sera redirigé vers l’interface

demandé selon les privilèges.

Page 71: Rapport de sprint finale (All Project part)

64

IV – Conception

1. Diagramme de séquence objet

figure 51: Diagramme de séquence objet «authentification»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de l’authentification client

-Après le remplissage des données (login et mot de passe)

-Les données seront traitées et interroger la base de donnée

-Si les données saisies sont similaires dans la base de données il le redirige vers l’interface

client

Page 72: Rapport de sprint finale (All Project part)

65

figure 52: Diagramme de séquence objet «réservation»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité de la réservation.

-Après avoir sélectionné un restaurant

-On rempli le formulaire de la réservation et on insère dans la base de données

Page 73: Rapport de sprint finale (All Project part)

66

figure 53: Diagramme de séquence objet «Consulter offre»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité « «consultation d’une offre »

-Le client demande la liste de toutes les offres

-Après il choisie une offre d’un restaurant bien données

-Si la requête est aboutie la fiche de l’offre concernée sera affichée

DS_Consulter offre

10: Afficher(Msg)

9: AfficherOffre()

8: ReponseSelect()

6: ReponseSelect()

7: Select()

5: Select()

4: Chercher()

3: Cliquer"Suivant"

2: Formulaire afficher()

1: Demande formulaire()

Client

<<boundary>>

:UI_interface offre

<<entity>>

:offre

<<control>>

:consulter_offre

<<entity>>

:Restaurant

[offre=true]

else

alt

10: Afficher(Msg)

9: AfficherOffre()

8: ReponseSelect()

6: ReponseSelect()

7: Select()

5: Select()

4: Chercher()

3: Cliquer"Suivant"

2: Formulaire afficher()

1: Demande formulaire()

Page 74: Rapport de sprint finale (All Project part)

67

figure 54: Diagramme de séquence objet «Chercher offre»

Le diagramme ci-dessus présente l’enchainement des actions et l’interaction avec les objets de

la fonctionnalité pour la recherche d’une offre

-Au niveau de l’interface pour la consultation des offres, le client recherche le restaurant

-Après l’interaction avec les entités la liste des offres du restaurant concerné sera affichée

DS_Chercher offre

2: Cliquer"Chercher" 3: Chercher()

7: Afficher(Msg)

6: AfficherOffre()

5: Select()

4: Select()

1: SaiasieNomRestau()

Client

<<boundary>>

:UI_interface offre

<<entity>>

:offre

<<control>>

:consulter_offre

<<entity>>

:Restaurant

[offre=true]

else

alt

2: Cliquer"Chercher" 3: Chercher()

7: Afficher(Msg)

6: AfficherOffre()

5: Select()

4: Select()

1: SaiasieNomRestau()

Page 75: Rapport de sprint finale (All Project part)

68

2. Diagramme de classe

figure 55: Diagramme de classe

Nous présentons ci-dessous le diagramme de classe qui contient toutes les entités de notre

projet

1..1

Gérer

1..*

1..1

Gérer

0..*

1..1

Gérer

0..*

0..*

1..*

effectuer

0..*

1..*

Gérer

1..*

Attribuer

0..*

1..*

Attribuer

0..*

1..1

Avoir

0..*

1..*

Gérer

0..*

1..1

Gérer

0..*

1..1

Gérer

0..*

1..1

0..*

1..1

Appartient

1..1Client

-

-

-

-

-

-

-

-

id_client

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

Restaurant

-

-

-

-

-

-

-

-

-

-

id

nom

adresse

email

description

tel

site

heure_ouverture

heure_fermeture

image

: int

: String

: String

: String

: String

: int

: int

: int

: int

: blob

Menu

-

-

-

-

-

-

id

titre

info

prix

photo

etat

: int

: String

: String

: double

: String

: StringRestaurateur

-

-

-

-

-

-

-

-

id

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

Commentaire

-

-

-

id

text

etat

: int

: String

: String

Note

-

-

id

note

: int

: int

Reservation

-

-

-

-

-

id

date_res

nbr_perso

commentaire

etat

: int

: Date

: int

: String

: String

Administrateur

-

-

-

-

-

-

id

nom

prenom

email

login

pass

: int

: String

: String

: String

: String

: String

Offre

-

-

-

-

-

id

description

prix

date_debut

date_fin

: int

: String

: double

: Date

: Date

Page 76: Rapport de sprint finale (All Project part)

69

3. Diagramme de classe conception

figure 56: Diagramme de classe conception

0..*

1..1

<<boundary>>

:IU_Interface_offre

+

+

+

+

Demander formulaire ()

Cliquer "suivant" ()

Afficher offre ()

Afficher ("Msg") ()

<<control>>

:ConsulterOffre

+

+

Chercher ()

ReponseSelect ()

<<entity>>

:Offre

-

-

-

-

-

-

id

description

prix

date_debut

date_fin

commantaire

: int

: String

: double

: Date

: Date

: String

+ Select ()

<<entity>>

:Resturant

-

-

-

-

-

-

-

-

-

-

id

nom

addresse

email

description

tel

site

heure_ouverture

heure_fermeture

image

: int

: String

: String

: String

: String

: int

: String

: String

: String

: byte

+

+

Select ()

Ajouter ()

<<entity>>

:Administrateur

-

-

-

-

-

-

id

nom

prenom

email

login

password

: int

: String

: String

: String

: String

: String

<<entity>>

:Client

-

-

-

-

-

-

-

-

id_client

nom

prenom

adresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

<<entity>>

:commantaire

-

-

-

id

text

etat

: int

: String

: String

<<entity>>

:note

-

-

id

note

: int

: int

<<entity>>

:Reservation

-

-

-

-

-

id

date_reservation

nbr_pers

commantaire

etat

: int

: String

: int

: String

: String

<<entity>>

:Restaurateur

-

-

-

-

-

-

-

-

id

nom

prenom

addresse

email

tel

login

pass

: int

: String

: String

: String

: String

: int

: String

: String

1..*

0..*

<<boundary>>

:IU_Interface_Restaurateur

+

+

+

+

Demander formulaire ()

Formulaire Afficher ()

Remplire formulaire ()

Afficher ("Msg") ()

<<control>>

:GérerRestaurant

+ Enregistrer ()

0..*

1..*

0..*

0..*

1..*1..*

0..*

<<boundary>>

:IU_Interface_Administrateur

<<control>>

:GérerClient

+ Enregistrer ()

1..*

0..*

1..*

0..*

0..*

<<boundary>>

:IU_Interface_CLient

<<control>>

:ConsulterSite

+ Chercher ()

<<control>>

:GéreRestaurant

0..*

<<entity>>

:Menu

-

-

-

-

-

id

titre

description

prix

etat

: int

: int

: String

: double

: int

+

+

Select ()

Ajouter ()

...

0..*

Page 77: Rapport de sprint finale (All Project part)

70

Nous présentons ci-dessous le diagramme de classe de conception qui contient les méthodes

et les contrôleurs de notre projet

4. Diagramme de composants

Gerer profil

Gerer restaurant

Client

Gerer client

Gerer reservation

Gerer offre

Restaurateur

Admin

Interface gestion

profil

Interface gestion

offre

Interface gestion

restaurant

Interface gestion

reservation

Interface gestion

client

gerer commentaire

Interface gestion

commentaire

Page 78: Rapport de sprint finale (All Project part)

71

V – Réalisation

1. Outils, bibliothèques et technologies utilisés

La mis en œuvre de ce projet nécessite l’utilisation de différentes outils et technologies parmi

les quels on cite :

Outils :

PowerAMC : pour la création des différents diagrammes

Netbeans 8

Framework Symfony

WAMPSERVER : pour la création de la base de données

Balsamiq Mockups : pour la création des maquettes

Sprinttometer : pour la réalisation du burndownchart

Technologies :

PHP

SQL

HTML

JAVASCRIPT

Bibliothèques :

FOS user Bundle : pour la gestion des droits d’accès

Ob/highcharts-bundle : pour la réalisation des statistiques

Page 79: Rapport de sprint finale (All Project part)

72

2. Captures d’écran de l’application

Nous présenterons ci-dessous quelques captures écran de notre application

figure 57: Interface « vue globale_gestion restaurateur »

Page 80: Rapport de sprint finale (All Project part)

73

figure 58: Interface « acceuil_gestion restaurateur »

figure 59: Interface « consulter fiche restaurateur»

Page 81: Rapport de sprint finale (All Project part)

74

figure 60: Interface « Consulter les restaurants_frontOffice»

figure 61: Interface « Consulter une offre_backOffice»

Page 82: Rapport de sprint finale (All Project part)

75

VIII - Conclusion CON

Bon

Notre projet facilitera la tache pour la consultation et toutes les fonctionnalités sur notre

portail Web et d’avoir une bonne visibilité pour chaque acteur sur les fonctionnalités qui lui ont été

permise.

Ce sprint nous a permis de découvrir de nouveaux outils et d’acquérir de nouvelles

connaissances.

Page 83: Rapport de sprint finale (All Project part)

76

Conclusion générale

C'est le temps de laisser notre empreinte dans ce marché dont le but d'un gain d'or en tant qu’ingénieur

en premier plan et d'avoir de nouvelles connaissances en deuxième plan.

En procédant par étape et en y mettant la détermination, la persévérance et l’effort, le

parcours du succès est possible.

Ce projet nous a permis de découvrir de nouveaux outils et d’acquérir de nouvelles

connaissances.