Вы находитесь на странице: 1из 82

UNIVERSITE MOHAMMED V AGDAL

FACULTE DES SCIENCES

DEPARTEMENT DINFORMATIQUE
FILIERE
LICENCE PROFESSIONNELLE
ADMINISTRATION DE SYSTEMES INFORMATIQUES

MEMOIRE DE FIN DETUDES


Intitul
Ralisation dune application de gestion dune association

Prsent par :
Azziz Daser & Mohamed Benaich

Soutenu le 31/07/2014
Devant le jury :
-

Rsum
Nos travaux ont consist dans le dveloppement d'application d'arrire-plan pour la gestion des
membres, nous appelons Curiospress. Le but de Curiospress est de fournir aux gens une base pour
construire des applications de l'utilisateur, sans tous les tracas. Curiospress est proprement crit,
bien comment, format et document, ai-je oubli de mentionner son objet orient pour la
personnalisation facile et dvelopp en utilisant Symfony2, Si ce logiciel de composition vous
offre tout ce dont vous avez besoin pour alimenter facilement une adhsion ou de souscription
web businesscand automatise compltement l'enregistrement de compte et les vnements
invitation, gestion des abonnements, facturation automatique, la facturation rcurrente, la gestion
des comptes, des rapports, des bulletins d'information, et bien plus encore. Curiospress des thmes
illimits et langues (arabe, franais et English). Prise en charge de plus de 40 processeurs de
paiement pour toute commande et automatisation des factures.
Mots-cls: l'adhsion, la gestion, l'application Symfony2

Summary
Our work consisted in the development of backend application for membership management we
call it Curiospress. The goal of Curiospress is to provide people with a foundation to build user
applications without all the hassle. Curiospress is cleanly written, well commented, formatted and
documented, did I forget to mention its object oriented for easy customisation and developed
using symfony2 ? so this membership software provides you with everything you need to easily
power a membership or subscription web businesscand completely automates account registration
and events invitation, subscription management, automated invoicing, recurring billing, account
management, reporting, newsletters, and much more. Curiospress supports unlimited themes and
languages (arabic, englisj and french). Supports over 40 payment processors for full order and
invoice automation.
Keywords : membership, management, application, symfony2

Ddicaces

Je ddie ce modeste travail :


Mes parents et grands-parents qui sont la source de ma russite.
Ma sur et mon frre que j'adore.
Ma famille laquelle je dois tout mon bonheur et ma russite.
Mes enseignants qui sont la source de mon savoir.
Mes Ami(e)s qui n'ont jamais manqu de tmoigner leur estimes mon
gard.
Et enfin tous ceux qui m'ont soutenu de prs ou de loin
l'achvement de ce travail dans les meilleures conditions.
Mohammed

Ddicaces
Je ddie ce travail en premier lieu mes parents, qui nont jamais
cess de mapporter leur soutien, leur affection et leurs sacrifices.
Quils trouvent ici le tmoignage de mon entire gratitude et que
dieu les protge.
Je ddie ensuite ce mmoire
A mon cher frre Anass, Vous mavez toujours soutenu durant
toutes mes tudes, je vous souhaite, vous et votre famille, beaucoup
debonheur et de russite.
A ma sur Hajar.
A toute ma famille.
Aux membres du comit mosque, qui ont fait preuve de dynamisme
et de responsabilit.
A tous mes amis et amies.
A toutes les personnes qui maiment.
Je vous aime tous
Aziz

Remerciements

Nous tenons prsenter nos reconnaissances et nos remerciements


notre professeur encadrant Mr. SOUIDI, pour le temps consacr la lecture et aux
runions qui ont rythmes les diffrentes tapes de notre mmoire. Les discussions que
nous avons partages ont permis dorienter notre travail dune manire pertinente.
Nous le remercions aussi pour sa disponibilit encadrer ce travail travers ses
critiques et ses propositions damlioration.
Enfin nous exprimons nos remerciements les plus dvous aux membres de
jury qui nous ont honors en acceptant d'valuer ce travail.
Enfin je remercie toutes les personnes qui ont contribu de prs ou de
loin la ralisation de ce mmoire, ainsi quau bon droulement du projet, et dont
les noms ne figurent pas dans ce document

Mohammed&Aziz

INTRODUCTION GENERALE
Comme nous vivons dans un monde o le march informatique se dveloppe trs rapidement
et les technologies se perfectionnent, le besoin dinformatiser les tches internes dans les
Entreprises ne cesse daccrotre. Et ce, pour faciliter les manipulations et gagner du temps.
Les Services de gestion des membres des entreprises se trouvent au cur mme de cette
volution.
Dans cette perspective, et dans le cadre de notre projet de fin dtudes, nous allons nous
intresser au dveloppement dune solution des services de la gestion des adhrents dune
socit afin de lintgrer dans le portail dune socit.
Et dans ce contexte, nous allons procder comme suit :
-

Chapitre1 : Description gnrale

Dans ce chapitre, nous prsentons la problmatique rsoudre et quelques concepts lis au


gestion des adhrents dune socit.
-

Chapitre 2 : Analyse des besoins et spcifications

Ce chapitre dtaille la spcification gnrale de notre futur Projet avec Identification


des diffrentes fonctionnalits de lapplication. Il prsente notamment diffrents cas
dutilisation du projet de point de vue utilisateur.
-

Chapitre 3 : Conception

Ce chapitre prsente la conception gnrale et dtaille de notre future application.


-

Chapitre 4 : Etude de lart

Dans ce chapitre on met laccent sur les diffrentes technologies existantes utilises pour
Llaboration du projet (pendant la ralisation).
-

Chapitre 5 : Ralisation et Interface de lapplication

Ce chapitre prsente les principaux choix ergonomiques adopts en prsentant quelques


Interfaces graphiques de lapplication.

Table des matires


INTRODUCTION GENERALE .............................................................................................................................. 5
TABLE DES MATIERES ....................................................................................................................................... 6
TABLE DES FIGURES .......................................................................................................................................... 4
CHAPITRE1 : DESCRIPTION GENERALE DU PROJET ...................................................................................................... 4
I.
II.
III.
IV.
V.

INTRODUCTION ............................................................................................................................................. 5
DESCRIPTION DU PROJET ................................................................................................................................. 5
DEFINITION DE GESTION DASSOCIATION EN LIGNE ................................................................................................ 7
POURQUOI LA GESTION DES ADHERENTS DASSOCIATION EN LIGNE? ......................................................................... 7
LES AVANTAGES DE LA GESTION DES ADHERENT DASSOCIATION EN LIGNE .................................................................. 7
Pour les adhrents : ....................................................................................................................................... 8
VI. LES FONCTIONNALITES DE LA GESTION DES ADHERENT DASSOCIATION EN LIGNE .......................................................... 8
Pour ladministrateur..................................................................................................................................... 8
Pour lditeur ............................................................................................................................................... 10
Pour Simple utilisateur................................................................................................................................. 11
VII.
CONCLUSION.......................................................................................................................................... 12
CHAPITRE 2 : ANALYSE DES BESOINS ET SPECIFICATIONS ............................................................................................ 13
I.
II.
III.

INTRODUCTION ............................................................................................................................................. 4
OBJECTIFS .................................................................................................................................................... 4
SPECIFICATION DES EXIGENCES.......................................................................................................................... 4
1.
Exigences fonctionnelles ...................................................................................................................... 4
2.
Exigences non fonctionnelles ............................................................................................................... 4
IV. ANALYSE DES BESOINS .................................................................................................................................... 5
V.
DICTIONNAIRE DES DONNEES............................................................................................................................ 5
VI. CONCLUSION ................................................................................................................................................ 7
CHAPITRE 3 : CONCEPTION................................................................................................................................... 8
I.
II.
III.
1.
2.
3.
4.
5.
6.
7.
IV.

INTRODUCTION ............................................................................................................................................. 9
CONCEPTION ................................................................................................................................................ 9
CONCEPTION DU SYSTEME ............................................................................................................................... 9
Dcomposition du systme .................................................................................................................. 9
Stockage des donnes ........................................................................................................................ 10
Diagramme de Classes ......................................................................................................................... 4
Diagramme de cas dutilisation ........................................................................................................... 5
Cas dutilisations .................................................................................................................................. 9
Diagramme de Squence ................................................................................................................... 15
Diagramme dactivit......................................................................................................................... 16
CONCLUSION .............................................................................................................................................. 19

CHAPITRE 4 : ETUDE DE LART ET GESTION DE PROJET ............................................................................................... 20


I.
II.

INTRODUCTION ........................................................................................................................................... 21
OUTILS DE REALISATION ET DE MODELISATION .................................................................................................. 22
2.1 PowerAMC ......................................................................................................................................... 22
2.2 WAMPSERVER .................................................................................................................................... 22
III. LANGAGES DE REALISATION ET DE MODELISATION.............................................................................................. 23
3.1 UML .................................................................................................................................................... 23
3.2 PHP ..................................................................................................................................................... 23
3.3 Le Framework Symfony ...................................................................................................................... 24
3.4 MySQL ................................................................................................................................................ 24
3.5 Autres technologies ............................................................................................................................ 25
IV. GESTION DE PROJET ..................................................................................................................................... 25

4.1 Microsoft Project ................................................................................................................................ 25


4.2 planification du projet ........................................................................................................................ 26
4.3 Dfinition du diagramme de GANTT .................................................................................................. 26
4.4 Structure de dcoupage du projet (WBS) ........................................................................................... 28
V.
CONCLUSION .............................................................................................................................................. 29
CHAPITRE 5 : REALISATION ET INTERFACE DE LAPPLICATION ..................................................................................... 30
I.
II.

INTRODUCTION ........................................................................................................................................... 31
CHOIX DE LA TECHNOLOGIE DE SECURITE........................................................................................................... 32
2.1 Introduction........................................................................................................................................ 32
2.2 La scurit de notre application ......................................................................................................... 32
III. ARCHITECTURE GLOBALE DU SITE WEB ............................................................................................................. 33
IV. INTERFACE DE LAPPLICATION ......................................................................................................................... 35
4.1 Introduction........................................................................................................................................ 35
4.2 Prsentation de lapplication ............................................................................................................. 35
V.
CONCLUSION .............................................................................................................................................. 46
CONCLUSION GENERALE: ............................................................................................................................... 47
ANNEXE .......................................................................................................................................................... 49
I.

ANNEXE I : INSTALLATION SOUS LINUX ............................................................................................................. 50


1.1 Vrifier et prparer le serveur de production ..................................................................................... 50
1.2 Pr-requis au bon fonctionnement de Symfony2 ............................................................................... 50
1.3 Installer wkhtmltopdf ......................................................................................................................... 50
1.4 Envoyer les fichiers sur le serveur....................................................................................................... 51
1.5 Rgler les droits sur les dossiers app/cache et app/logs .................................................................... 51
1.6 Mettre en place la base de donnes .................................................................................................. 51
II.
ANNEXE II : INSTALLATION SOUS WINDOWS ..................................................................................................... 53
2.1 Installation de WAMP ........................................................................................................................ 53
2.2 Dploiement des diffrents modules Apache et PHP ......................................................................... 53
2.3 Installer wkhtmltopdf ......................................................................................................................... 53
2.4 Test de Symfony2 ............................................................................................................................... 54

Table des figures


FIGURE 1: L'ARCHITECTURE CLIENT-SERVEUR ........................................................................................... 10
FIGURE 2: MODELE CONCEPTUEL DE DONNEES .............................................................................................. 11
FIGURE 3: MODELE LOGIQUE DE DONNEES .................................................................................................... 12
FIGURE 4: LA BASE DE DONNEES.................................................................................................................... 4
FIGURE 5: DIAGRAMME DE CLASSES ................................................................................................................ 5
FIGURE 6: DIAGRAMME DES CAS DUTILISATIONS GLOBALE ............................................................................ 6
FIGURE 7: DIAGRAMME DU PACKAGE GESTION DES ADHERENTS .................................................................. 10
FIGURE 8: DIAGRAMME DU PACKAGE GESTION DES COTISATIONS ................................................................ 11
FIGURE 9: DIAGRAMME DU PACKAGE GESTION DES GROUPES ...................................................................... 12
FIGURE 10: DIAGRAMME DU PACKAGE GESTION DES EVENEMENTS .............................................................. 13
FIGURE 11: DIAGRAMME DU PACKAGE PROFILE ............................................................................................ 14
FIGURE 12: DIAGRAMME DU PACKAGE PREFERENCES ................................................................................... 15
FIGURE 13: DIAGRAMME DE SEQUENCE......................................................................................................... 16
FIGURE 14: DIAGRAMME DACTIVITE RELATIF AU CAS DUTILISATION AUTHENTIFICATION ....................... 17
FIGURE 15: DIAGRAMME DACTIVITE RELATIF AU CAS DUTILISATION MODIFICATION DE PROFIL ............. 18
FIGURE 16: PLANIFICATION DU PROJET .......................................................................................................... 26
FIGURE 17: DIAGRAMME DE GANT RELATIF AU DEROULEMENT DES ACTIVITES DURANT LA PERIODE DU
PROJET ........................................................................................................................................................... 27
FIGURE 18: MECANISME DE SECURITE DE LAPPLICATION .............................................................................. 33
FIGURE 19: ARCHITECTURE GLOBALE DU SITE WEB ........................................................................................ 33
FIGURE 20: STRUCTURE DUN BUNDLE ........................................................................................................... 35
FIGURE 21: PAGE D'AUTHENTIFICATION ..................................................................................................... 36
FIGURE 22: TABLEAU DE BORD DE L'APPLICATION ..................................................................................... 37
FIGURE 23: PAGE DE GESTION DES ADHERENTS ......................................................................................... 38
FIGURE 24: GESTION DES ADHERANT - ACTIONS DIPONIBLES ................................................................... 39
FIGURE 25: PAGE DE GESTION DES GROUPES ............................................................................................. 39
FIGURE 26: PAGE DE GESTION DES STATUTS .............................................................................................. 40
FIGURE 27: PAGE DE GESTION DES COTISATIONS....................................................................................... 40
FIGURE 28: PAGE DE GESTION DES EVENEMENTS ....................................................................................... 41
FIGURE 29: PREFERENCES ........................................................................................................................... 42
FIGURE 30: MESSAGERIE .............................................................................................................................. 43
FIGURE 31: CALENDRIER DES EVENEMENTS................................................................................................ 44
FIGURE 32: PROFILE ..................................................................................................................................... 45

Chapitre1 :
Description Gnrale
DU PROJET

I. Introduction
Une association est un organisme but non lucratif qui peut bnficier d'exonrations
fiscales s'il remplit trois conditions :
o
o
o

la gestion et l'administration conservent un caractre bnvole


aucun bnfice n'est distribu
Les administrateurs n'ont aucun intrt, direct ou indirect, aux rsultats (attention :
percevoir un salaire de l'association, paralllement une fonction de membre des
instances dlibrantes, peut suffire caractriser un intrt direct).

Il y a des obligations communes leur incombent comme dclarations des honoraires,


commissions, courtages, etc.
Les commissions, honoraires, vacations verses des tiers doivent tre dclares comme
la dclaration annuelle des salaires
Les associations qui emploient du personnel salari doivent dclarer le montant des
rmunrations verses au cours de lanne.
Et pour faciliter la gestion dassociation on utilise des moyennes informatiques et des
nouvelles technologies.
Dans ce chapitre, nous prsentons les motivations qui sont derrires lide de ce projet.
Nous dtaillons la liste exhaustive des fonctionnalits attendues par lapplication
raliser et les objectifs viss par ce projet

II. Description du projet


Notre sujet de projet de fin dtude consiste tendre une application Web base sur la
Plateforme Apache en utilisant des langages cot serveur et cot client en ajoutant des
modules : Espace gestion des adhrents, gestion des groups, gestion des statuts, gestion
des cotisations, gestion des vnements, prfrences, messagerie, profile.
Le premier est un module despace gestion des adhrents qui va afficher la liste
des adhrents et nous donne accs de nombreuses fonctions :
o Filtrage et tri des adhrents.

Affichage des fiches des adhrents.


Suppression.
Contact (par email, SMS, appel,)
Gnration Ticket de repas (PDF).
Gnration de cartes de membres (PDF).
Export CSV.
Export XML.
Ajouter un adhrent.
Recherche.
Activer ou dsactiver un adhrent ou le rende administrateur ou diteur ou
utilisateur.
o Etc
o
o
o
o
o
o
o
o
o
o

Le deuxime, Espace gestion des groups qui va afficher la liste des groups et nous
donne la possibilit dajouter des groups, les supprimer, les modifier, les afficher
Le troisime, Espace gestion des statuts qui va afficher la liste des statuts et nous
donne la possibilit dajouter, supprimer et modifier dun statut.
Le quatrime, Espace gestion des cotisations qui va afficher la liste des cotisations
et nous donne la possibilit dajouter, supprimer et modifier dune cotisation.
Le cinquime, Espace gestion des vnements qui va afficher la liste des
vnements et nous donne la possibilit dajouter, supprimer et modifier dun
vnement.
Le sixime, Espace prfrences qui va nous donne la possibilit de configuration et
gre linterface de notre application web et permettant de visualiser et modifier
des paramtres d'utilisation:
o Ajouter ou de supprimer ou modifier les composants dapplication(les
noms, les titres, les rubriques, les fonctionnalits).
o Changer les paramtres de visualisation (rsolution en pixels, fond d'cran,
tailles des polices d'affichage...).
Le septime, Espace messagerie qui va afficher la liste des messages reus et nous
donne la possibilit denvoyer et supprimer dun message.
Et le dernier, Espace profile, va permettre au adhrent dafficher la liste leur profile
et donne la possibilit de rgler le compte (changer le mot de passe, email,).

III. Dfinition de gestion dassociation en ligne


Une gestion dassociation en ligne est l'accs aux services association depuis une interface
interactive, par exemple un Navigateur web. Sa disponibilit permet : l'accs aux comptes,
pouvoir effectuer la gestion des adhrents, gestion des groups, gestion des statuts, gestion
des cotisations, gestion des vnements, prfrences, messageries, profiles, ou obtenir
des informations des adhrents rcentes (historique, calendrier). Son accs peut
s'effectuer depuis un Guichet automatique par tlphone, via un ordinateur ou grce un
assistant personnel (PDA) ayant l'Internet. La connexion se fait gnralement par accs
scuris.

IV. Pourquoi la gestion des adhrents dassociation en


ligne?
Le besoin de mobilit grandissant, un accs des utilisateurs au rseau financier mondial
par la technologie sans-fil : tlphone cellulaire, ordinateurs portables, etc. est devenu
ncessaire.
Les informations publis sont soit publiques, soit prives.
Lapplication de la gestion des adhrent dassociation en ligne permit de facilit la gestion
les adhrents dassociation a la direction de dassociation (Automatisation et rduit le
traitement Manuel) et elles peuvent aussi licencier du personnel, car ils sont devenus
inutiles car tout se joue sur internet.
Et pour ladhrent peut suivre les activits et ordre du jour de lassociation, cest toujours
mieux et plus rapide (ben oui on ne doit pas se dplacer et aussi par exemple, on reoit un
rappel ou notification, on peut directement et rapidement voir leur services.)

V. les avantages de la gestion des adhrent


dassociation en ligne
7

Pour les adhrents :


Le adhrent peut grer ses services, domiciliations... domicile, c'est toujours mieux et
plus rapide (ben oui on ne doit pas se dplacer et aussi par exemple, on reoit un rappel
de facture, on peut directement et rapidement voir leur services.).

Pour lassociation:
Ca diminue leur frais. Surtout pour lassociation qui gre leurs adhrents en ligne qui n'a
pas d investir dans des agences ou les gens qui font la gestion. Les adhrents peuvent
aussi imprimer leur information de profile ou des vnements qui sintresse en ligne, a
veut dire que c'est ladhrent qui paie le papier et l'encre.

VI. les fonctionnalits de la gestion des adhrent


dassociation en ligne
Pour ladministrateur
Module Espace profile
Le Module espace profile gre tous les aspects du compte propre au administrateur:
- mise jour de compte
-changement de mot de passe
-Voir profile.
Module Espace gestion des adhrents
Le Module espace gestion des adhrents gre tous les aspects concernant la gestion
d'adhrent:
-Insrer un adhrent.
-Modifier un adhrent.
-Supprimer un adhrent.
-Recherche un adhrent.

-Contact un adhrent (par email, SMS, appel,)


Module Espace gestion des cotisations
Le Module espace gestion des cotisations gre tous les cotisations des adhrents :
-Ajouter une cotisation.
-Modifier une cotisation.
-Supprimer une cotisation.
Module Espace gestion des vnements
Le Module espace gestion des vnements gre tous les vnements :
Espace gestion des vnements qui va
-afficher la liste des vnements.
-Ajouter un vnement.
-Supprimer un vnement.
-Modifier un vnement.
- Notification
Module Espace rfrence
Le Module espace configuration gre linterface de notre application web Congrs et
permettant de visualiser et modifier des paramtres d'utilisation:
-Ajouter ou de supprimer ou modifier les composants de Congrs(les noms, les titres, les
rubriques, les fonctionnalits)
- Changer les paramtres de visualisation (rsolution en pixels, fond d'cran, tailles des
polices d'affichage...).
Module Espace gestion des groups
Le Module espace gestion des groups gre les groups des adhrent :
-Ajouter un group.
-Modifier un group.
-Supprimer un group.
Module Espace gestion des statuts

Le Module espace gestion des statuts gre les statuts des adhrents:
-Ajouter un statut.
-Modifier un statut.
-Supprimer un statut.
Module Espace messagerie
Le Module espace messagerie gre les services concernant les messages:
-Afficher les messages.
-Envoyer un message.
-Supprimer un message.

Pour lditeur
Module Espace profile
Le Module espace profile gre tous les aspects du compte propre au administrateur:
-Gestion du compte (mise jour de compte, changement de mot de passe voir leur profile).
Module Espace gestion des adhrents
Le Module espace gestion des adhrents gre tous les aspects concernant la gestion
d'adhrent:
-Insrer un adhrent.
-Modifier un adhrent.
-Supprimer un adhrent.
-Recherche un adhrent.
-Contact un adhrent (par email, SMS, appel,)

Module Espace gestion des cotisations


Le Module espace gestion des cotisations gre tous les cotisations des adhrents :
-Ajouter une cotisation.
-Modifier une cotisation.

10

-Supprimer une cotisation.


Module Espace gestion des vnements
Le Module espace gestion des vnements gre tous les vnements :
Espace gestion des vnements qui va
-afficher la liste des vnements.
-Ajouter un vnement.
-Supprimer un vnement.
-Modifier un vnement.
- Notification
Module Espace gestion des groups
Le Module espace gestion des groups gre les groups des adhrent :
-Ajouter un group.
-Modifier un group.
-Supprimer un group.
Module Espace gestion des statuts
Le Module espace gestion des statuts gre les statuts des adhrents:
-Ajouter un statut.
-Modifier un statut.
-Supprimer un statut.
Module Espace messagerie
Le Module espace messagerie gre les services concernant les messages:
-Afficher les messages.
-Envoyer un message.
-Supprimer un message.

Pour Simple utilisateur


Module Espace profile

11

Le Module espace profile gre tous les aspects du compte propre au administrateur:
-Gestion du compte (mise jour de compte, changement de mot de passe voir leur profile).
Module Espace messagerie
Le Module espace messagerie gre les services concernant les messages:
-Afficher les messages.
-Envoyer un message.
-Supprimer un message.
Module Espace Calendrier
Le Module espace calendrier permit lutilisateur voir leur vnements.

VII. Conclusion
Dans ce chapitre nous avons prsent les diffrentes activits de notre application et nous
avons galement prsent le sujet de notre projet. Notre sujet sera expliqu plus en
Dtaille dans le chapitre suivant, en exposant les besoins et les objectifs atteindre.

12

Chapitre 2 :
Analyse des besoins
Et spcifications

13

I. Introduction
Dans ce chapitre, nous prsentons les motivations qui sont derrires lide de ce
projet. Nous dtaillons la liste exhaustive des fonctionnalits attendues par lapplication
raliser et les objectifs viss par ce projet.

II. Objectifs
Notre tche est sous thme Gestion des adhrents dassociation en ligne, cette
application web destin la direction de lassociation qui veut grer les adhrents, notre
application consiste offrir une solution de gestion des associations, ainsi elle donne la
main aux administrateurs afin de personnaliser et configurer lapplication a leurs besoin.

III. Spcification des exigences


1. Exigences fonctionnelles

-Notification de ladhrent domicile soit par mail ou par poste.


-Gestion des comptes utilisateurs.
-Lditeur peut voir la situation administrative des adhrents.
-Ladministrateur a sa propre panneau de configuration qui permet par exemple de faire la
gestion des adhrents.
2. Exigences non fonctionnelles

-Garder ses adhrents et les fidliser en les satisfaisant au mieux.


-largir sa gamme des adhrents en offrant des services rapides et faciles manipuler.
-Gagner du temps pour le client.
-La disponibilit de 24h/24h et 7j/7j.
-Accs fiable et scuris : accs personnaliss, connexions scurises.
-Portabilit : Utilisable avec plusieurs systmes dexploitation.
-Pas de ncessit de se dplacer.

IV. Analyse des besoins


1. A qui lapplication est-elle destine ?
Lapplication est destine la direction de lassociation.
2. Quels problmes lapplication rsoudra-t-elle ?
Lapplication a pour but de facilit la gestion les adhrent s dassociation a la direction
dassociation:
Administration :
- Automatisation et rduit le traitement Manuel.
- Elles peuvent aussi licenci du personnel, car ils sont devenus inutiles car tout se joue sur
internet.
Adhrent :
- ladhrent peut suivre les activits et ordre du jour de lassociation, cest toujours mieux et
plus rapide (ben oui on ne doit pas se dplacer et aussi par exemple, on reoit un rappel ou
notification, on peut directement et rapidement voir leurs services.)
- lapplication est disponible 24h/24h et 7j/7j.
- ils doivent plus se dplacer la direction et on sait quel point, cest dur pour eux de se
dplacer
3. O lapplication sera-t-elle utilise ?
Lapplication sera utilise surement sur net.
4. Pourquoi lapplication est-elle attendue ?
Pour de nombreuses raisons, lapplication va bnficier de services en ligne, car le besoin de
mobilit grandissant, et laccs des utilisateurs par la technologie sans-fil : tlphone
cellulaire, ordinateurs portables, etc. est devenu ncessaire.

V. Dictionnaire des donnes

Administrateur : Cest lAdministrateur et le responsable de lapplication, il a la


possibilit de faire tout ce qu'un utilisateur normal ne pourrait pas faire.

Editeur : compte avec droit daccs moins quadministrateur par exemple il ne peut rien
supprimer dans lapplication.

Simple utilisateur : Compte avec droit daccs moins quditeur il peut juste consulter
son profile, voir le calendrier des vnements.

Prfrence : La prfrence est l'expression d'un choix, en raison de critres soit


subjectifs plus ou moins conscients, soit objectifs, bass sur des critres clairement
noncs et conscients.

Cotisation : Somme que versent les adhrents dune association ou les personnes
affilies un organisme.

Association : Une association est un organisme but non lucratif pour le but solidarit,
coopration, conscience

Adhrent : membre d'une association.

VI. Conclusion
Nous avons tudi lenvironnement de notre projet et analys e systme et les besoins du
client tout au long de ce deuxime chapitre danalyse des besoins et spcification. Dans
le chapitre suivant, nous allons prsenter la conception de notre application, en
prsentant quelques diagrammes illustrant les diffrentes fonctionnalits de notre
application.

Chapitre 3 :
Conception

I. Introduction
La phase de conception est considre parmi les phases les plus importantes dans le cycle
de vie d'un logiciel. Il s'agit en premier lieu de prsenter une modlisation par tape de
Conception de notre application et dcrire finalement l'architecture de la base de
donnes.

II. Conception
Les diagrammes UML de modlisation dynamique nous montrent l'volution du systme
Et les interactions entre objets. Nous allons prsenter comme exemple de cette
modlisation un ensemble de diagrammes dactivit et diagramme de squence ensuite
on va dcrire Larchitecture de la base de donnes. Le diagramme dactivits nest autre
que la transcription dans UML de la reprsentation du processus telle quelle a t
labore lors du travail qui a prpar la modlisation : il montre Lenchanement des
activits qui concourent au processus.
Le diagramme de squence reprsente les interactions entre objets au cours du temps par
des messages (synchrone et asynchrone).

III. Conception du Systme


1. Dcomposition du systme
La figure suivante reprsente larchitecture de lapplication, il y a deux principaux soussystmes : les navigateurs (ct client) et les serveurs (Base de donnes).
Cette architecture est appele gnralement par larchitecture Client-serveur.

Figure 1: L'architecture Client-serveur

2. Stockage des donnes


Lapplication utilise un SGBD relationnel (MySQL), il est rapide, facilement disponible, et
son rapport cout-efficacit correspond bien cet type dapplications bancaires.
La base de donnes garantit la cohrence des donnes et leur disponibilit aux accs
concurrents, chaque transaction est traite en une seule opration.
Les rgles de gestion expriment des contraintes quil faut le respecter sur le Modle
conceptuel de donnes suivant:

MCD :

10

Figure 2: modle conceptuel de donnes

Comme montre le diagramme ci-dessus :


o
o
o
o
o
o
o

Un adhrant peut avoir une photo de profile, une photo de profile consterne un et un seule
adhrant
Un adhrant peut avoir un ou plusieurs statuts, un statu consterne plusieurs adhrant
Un adhrant paye des cotisations
Un adhrant appartient un ou plusieurs groupes, un groupe peut contenir plusieurs
adhrant
Un vnement consterne plusieurs groupes
Un adhrant (utilisateur) peut enregistrer des logs sur un autre adhrant (accus de
rception des appels, SMS et mail)
La table config est utilise pour personnaliser et configurer le comportement de l'application
au besoin de l'utilisateur

MLD :

11

Figure 3: Modle logique de donnes

Dans le modle logique de donnes prsent ci-dessus nous avons ajout les cls trangres pour les
une table association de la relation avancement

12

Figure 4: la base de donnes

3. Diagramme de Classes
Le diagramme de classes est considr comme le plus important de la modlisation
oriente objet, il est le seul obligatoire lors dune telle modlisation. Le diagramme de
classes montre la structure interne du systme.
Il permet de fournir une reprsentation abstraite des objets du systme qui vont interagir
ensemble pour raliser les cas dutilisation. Il sagit dune vue statique car on ne tient pas
compte du facteur temporel dans le comportement du systme.
Les principaux lments de cette vue statique sont les classes et leurs relations :
association, gnralisation et plusieurs types de dpendances, telles que la ralisation et
lutilisation.
o Une classe de conception est compose par :
o Attribut : chaque attribut dune classe est le mme pour chaque instance de cette
classe.
Mthodes : elle dfinit le comportement dune classe elle-mme, et non le comportement
de ses instances qui peut tre diffrent.
La figure ci-dessous montre le diagramme de classes que nous avons ralises, en
illustrant toutes les classes, relations entre ces classes et leurs cardinalits.

Figure 5: Diagramme de classes

4. Diagramme de cas dutilisation


Les diagrammes de cas d'utilisation sont des diagrammes UML utiliss pour donner une
vision globale du comportement fonctionnel d'un systme logiciel.
Un cas d'utilisation reprsente une unit discrte d'interaction entre un utilisateur
(humain ou machine) et un systme. Il est une unit significative de travail. Dans un
diagramme de cas d'utilisation, les utilisateurs sont appels acteurs (actors), ils
interagissent avec les cas d'utilisation (use cases).
UML dfinit une notation graphique pour reprsenter les cas d'utilisation, cette notation
est appele diagramme de cas d'utilisation. UML ne dfinit pas de standard pour la forme
crite de ces cas d'utilisation, et en consquence il est ais de croire que cette notation
graphique suffit elle seule pour dcrire la nature d'un cas d'utilisation. Dans les faits, une
notation graphique ne peut donner qu'une vue gnrale simplifie d'un cas ou d'un
ensemble de cas d'utilisation.
Les diagrammes de cas d'utilisation sont souvent confondus avec les cas d'utilisation.
Bien que ces deux concepts soient relis, les cas d'utilisation sont bien plus dtaills que
les diagrammes de cas d'utilisation.

La figure ci-dessous dcrit les diffrents cas d'utilisations de chaque acteur. Elle
permet de distinguer les rles et les acteurs du projet.
NB :Le diagramme qui suit reprsente un cas dutilisation globale de lapplication.

gestion des adherants

Gestion des Groupes

Gestion des cotisations

Gestion des Status

Prfrences

Gestion des venement

Messagerie

Profile

Figure 6: Diagramme des Cas dUtilisations globale

Pour Administrateur :
authentification par un login et mot de passe avec possibilit de choisir la langue
entre (AR, FR, EN)
gestion des adhrents:
o ajouter, modifier et supprimer un adhrant
o recherche multicritres par cin, sexe, date de naissance, ville, coda bar, statuts,
groupe, cotisation, nombre de ligne par page
o activer ou dsactiver un adhrant (accs son profile)
o changer le rle de l'utilisateur (simple utilisateur, diteur ou administrateur)
o associer un ou plusieurs utilisateurs un groupe
o crer un groupe de filtre
o exporter la liste des adhrents vers diffrent type de donnes (csv, XML, PDF ou
Excel)
o imprimer les cartes des adhrents
o imprimer les tickets de repas
o naviguer sur les profils des adhrant avec les touches de claviers
o ajouter un statut pour un adhrant

o
o
o
o
o
o
o
o
o

ajouter une cotisation


consulter le profile complet d'un adhrant
information gnrale
Informations de L'association
Informations de contact
Historique des Grades (statuts)
Historique des Cotisations
Historique des appels, sms ou mail reus
imprimer la fiche d'un adhrant

Gestion des Groupes:


o Ajouter, modifier et supprimer un groupe
o consulter la liste des membres dans un groupe
o chercher un adhrant dans un groupe
o appeler un adhrant et laisser un feedback sur l'appel mis
o Envoyer un SMS
o Enlever un adhrant d'un groupe
Gestion des Statuts:
o consulter la liste des statuts disponible et le nombre d'adhrents pour chaque
statut
o Ajouter, modifier et supprimer un statut
Gestion des cotisations:
o consulter la liste des cotisationseffectues
o recherche multicritres
o Modifier et supprimer une cotisation
o Afficher une cotisation et imprimer les reus
Gestion des vnements:
consulter la liste des vnements
recherche multicritres
consulter le calendrier des vnements
ajouter un vnement en utilisant l'interface ergonomique du calendrier
changer la date d'un vnement avec un simple drag & drop
afficher, mettre jour et supprimer un vnement
publier un vnement par mail
imprimer les lettres d'invitations
Prfrences:

modifier linformation relative l'association


logo de l'application, titre, description, ville ...
configurer les paramtres de Google maps afin d'afficher l'adresse exacte de
l'association dans la carte (Latitude, Longitude)
changer le thme de l'application
mettre jour le nombre de ligne afficher par page
Permettre ou non aux membres d'imprimer leurs carte
modifier la mise en forme des badges
modifier le modle des lettres envoyes
configuration des champs:
prciser quel information afficher pour les tables adhrant et cotisations

Messagerie:
Bote de rception, Bote d'envoi, messages supprims
envoyer un nouveau message
Profile:
Modifier la photo de profile et les autres informations
imprimer la carte si c'est autoris par l'administrateur
Changer le mot de passe (ncessite le mot de passe actuel)
Changer l'adresse email (ncessite le mot de passe actuel)
Dconnexion
Pour Editeur :
Fonctionnalit de l'administrateur avec des exceptions
authentification
gestion des adhrents:
o ajouter, modifier un adhrant
o un diteur n'a pas le droit de modifier linformation d'un administrateur
pour des raisons de scurit
o recherche multicritres
o cin, sexe, date de naissance, ville, codabar, statuts, groupe, cotisation,
nombre de ligne par page
o exporter la liste des adhrents vers diffrent type de donnes (csv, xml, pdf
ou excel)
o imprimer les cartes des adhrents
o imprimer les tickets de repas
o naviguer sur les profils des adhrents avec les touches de claviers

o
o
o
o

ajouter un statut pour un adhrant


ajouter une cotisation
consulter le profile complet d'un adhrant
imprimer la fiche d'un adhrant

Gestion des Groupes: fonctionnalit de l'administrateur sauf la suppression d'un


groupe
Gestion des Statut: fonctionnalit de l'administrateur sauf la suppression d'un
Statuts
Gestion des cotisations: fonctionnalit de l'administrateur sauf la suppression des
cotisations
Gestion des vnements: un diteur peut juste voir dans le calendrier les
vnements auxquels il est invit
Messagerie:
o Bote de rception, Bote d'envoi, messages supprims
o envoyer un nouveau message
Profile:
o Modifier la photo de profile et les autres informations
o imprimer la carte si c'est autoris par l'administrateur
o Changer le mot de passe (ncessite le mot de passe actuel)
o Changer l'adresse email (ncessite le mot de passe actuel)
Dconnexion
Pour Simple utilisateur :
authentification
Calendrier: un utilisateur peut juste voir dans le calendrier les vnements
auxquels il est invit
Messagerie:
o Bote de rception, Bote d'envoi, messages supprims
o envoyer un nouveau message
Profile:
o Modifier la photo de profile et les autres informations
o imprimer la carte si c'est autoris par l'administrateur
o Changer le mot de passe (ncessite le mot de passe actuel)
o Changer l'adresse email (ncessite le mot de passe actuel)
Dconnexion
5. Cas dutilisations

5.1. Cas dutilisation (Module Espace gestion des adhrents)


Spcification : Lobjectif de ce cas dutilisation est faire la gestion de des adhrents.

recherche multi -critres


ajouter, modifier un adherant

associer un groupe

exporter (csv, xml, pdf, excel)

crer un groupe de filtre

imprimer les badges


Editeur

changer le role de l 'utilisateur

activation
Administrateur

suppression

Figure 7: Diagramme du Package gestion des adhrents

5.2. Cas dutilisation (Module Espace gestion des cotisations)


Spcification : Lobjectif de ce cas dutilisation est faire la gestion des cotisations.

10

consulter la liste des cotisation

recherche multi -critres

imprimer le reus

Ajouter une cotisation

Mettre jour une cotisation

Editeur

suppression une cotisation

Administrateur

Figure 8: Diagramme du Package Gestion des cotisations

5.3. Cas dutilisation (Module Espace gestion des Groupes)


Spcification : Lobjectif de ce cas dutilisation est faire la gestion des Groupes.

11

chercher un adhrant
ajouter, modifier un groupe

consulter la liste des membres dans un groupe

appeler un adherant

Envoyer un SMS

Enlever un adhrant d'un groupe

Editeur

suppression

Administrateur

Figure 9: Diagramme du Package Gestion des Groupes

5.4. Cas dutilisation (Module Espace gestion des vnements)


Spcification : Lobjectif de ce cas dutilisation est faire la gestion des vnements.

12

voir calendrier personel

Utilisateur

consulter la liste des vnements


Editeur

recherche multi-critres

imprimmer les lettres

consulter le calendrier des venements

publier un vnement par mail

ajouter un evenement

Administrateur

Mettre jour un evenemnt

supprimer un evenement

Figure 10: Diagramme du Package Gestion des vnements

5.5. Cas dutilisation (Module Espace Profile)


Spcification : Lobjectif de ce cas dutilisation est faire la gestion Profile.

13

Changer le mot de passe


re-authentification

Mettre jour son profile

imprimer la carte
Utilisateur

Editeur2

Administrateur

Figure 11: Diagramme du Package Profile

5.6. Cas dutilisation (Module Espace Prfrences)


Spcification : Lobjectif de ce cas dutilisation est faire la configuration de lapplication.

14

configurer l'application

changer le theme de l 'application

Administrateur

configuration des champs

modifier les information

Le modle des lettres envoyes

La mise en forme des badges

Figure 12: Diagramme du Package Prfrences

6. Diagramme de Squence
Les diagrammes de squence sont couramment utiliss par nombre d'acteurs d'un
projet. En effet, le diagramme de squence est une reprsentation intuitive lorsque l'on
souhaite concrtiser des interactions entre deux entits (deux sous-systmes ou deux
classes d'un futur logiciel).
Ils permettent l'architecte/designer de crer au fur et mesure sa solution. Cette
reprsentation intuitive est galement un excellent vecteur de communication dans
une quipe d'ingnierie pour discuter cette solution. Les diagrammes de squence
peuvent galement servir la problmatique de test. Les traces d'excution d'un test
peuvent en effet tre reprsentes sous cette forme et servir de comparaison avec les
diagrammes de squence raliss lors des phases d'ingnierie. Les diagrammes de
squence tels que dfinis en UML souffraient cependant d'un gros inconvnient.

15

La quantit de diagrammes raliser pouvait atteindre un nombre lev ds lors que


l'on

souhaitait

dcrire

avec

un

peu

de

dtail

les

diffrentes

branches

comportementales d'une fonctionnalit.


La figure ci-dessous montre le processus suivi par ladhrent pour grer son compte.
Ce processus ne se dclenche si, et seulement si, ladhrent choisit la commande Espace
profil.

Figure 13: diagramme de squence

7. Diagramme dactivit

16

UML permet de reprsenter graphiquement le comportement d'une mthode ou le


droulement d'un cas d'utilisation, l'aide de diagrammes d'activits (une variante des
diagrammes d'tats-transitions). Une activit reprsente une excution d'un mcanisme,
un droulement d'tapes squentielles.
Le passage d'une activit vers une autre est matrialis par une transition. Les transitions
sont dclenches par la fin d'une activit et provoquent le dbut immdiat d'une autre
(elles sont automatiques). En thorie, tous les mcanismes dynamiques pourraient tre
dcrits par un diagramme d'activits, mais seuls les mcanismes complexes ou
intressants mritent d'tre reprsents.
7.1. Diagramme dactivit

Figure 14: Diagramme dactivit relatif au cas dutilisation Authentification

7.2. Diagramme dactivit (Modification de profil)

17

Figure 2: Diagramme dactivit relatif au cas dutilisation Modification de profil

18

IV. Conclusion
Au cours de ce chapitre, nous avons conu notre base de donnes ainsi que les
diffrents composants de notre systme.
Maintenant, notre application est prte tre code. Mais tout le prochain chapitre sera
des technologies utilises dans notre application.

19

Chapitre 4 :
Etude de lart et gestion de projet

20

I. Introduction
Le choix des technologies utilises dans une application agit sans doute sur la
qualit du travail ralis. Le succs ou lchec dun travail quelconque dpend, en partie,
du choix des technologies employes. Nous allons exposer dans ce chapitre la
technologie envisageable et relative au dveloppement de notre application.

21

II. Outils de Ralisation et de Modlisation


2.1 PowerAMC
PowerAMC est un logiciel de modlisation. Il permet de modliser les traitements
informatiques et leurs bases de donnes associes. Cr par SDP sous le nom
AMC*Designor, rachet par Powersoft, ce logiciel est produit par Sybase depuis le rachat
par cet diteur en 1995. Hors de France, la version internationale est commercialise par
Sybase sous la marque PowerDesigner.

2.2 WAMPSERVER

WAMP est un acronyme informatique signifiant Windows, Apache, MySQL et PHP dans la
majorit des cas mais aussi parfois, Perl , ou Python .
Les rles de ces quatre composants sont les suivants :
o Apache est le serveur web frontal : il est devant tous les autres et rpond
directement aux requtes du client web (navigateur)
o Le langage de script PHP sert la logique ;
o MySQL stocke toutes les donnes de l'application ;
Windows assure l'attribution des ressources ces trois composants.
Tous les composants peuvent tre situs :
sur une mme machine ,sur deux machines, gnralement Apache et le langage de script
d'un ct et MySQL de l'autre ,sur de nombreuses machines pour assurer la haute
disponibilit (rpartition de charge et/ou failover).

22

Nanmoins, l'architecture WAMP est le plus souvent utilise pour dvelopper des sites
web sur une machine Windows. De ce fait, en gnral, tout se passe sur une mme
machine. La mise en production se fera gnralement sur une architecture LAMP (ou
XAMP, X dsignant un systme base d'Unix).

III. Langages de Ralisation et de Modlisation


3.1 UML
UML (en anglais UnifiedModeling Language ou langage de modlisation unifi ) est
un langage de modlisation graphique base de pictogrammes. Il est apparu dans le
monde du gnie logiciel, dans le cadre de la conception oriente objet . Couramment
utilis dans les projets logiciels, il peut tre appliqu toutes sortes de systmes ne se
limitant pas au domaine informatique.
UML est l'accomplissement de la fusion de prcdents langages de modlisation
objet : Booch, OMT, OOSE. Principalement issu des travaux de GradyBooch, James
Rumbaugh et Ivar Jacobson, UML est prsent un standard dfini par l'Object
Management Group (OMG). La dernire version diffuse par l'OMG est UML 2.4.1 depuis
aout 2011.

3.2 PHP

Le PHP: Hypertext Preprocessor, plus connu sous son sigle PHP, est un langage de
scripts libre principalement utilis pour produire des pages Web dynamiques via
un serveur HTTP, mais pouvant galement fonctionner comme n'importe quel langage
interprt de faon locale, en excutant les programmes en ligne de commande. PHP est
un langage impratifdisposant depuis la version 5 de fonctionnalits de modle

23

objet compltes. En raison de la richesse de sa bibliothque, on dsigne parfois PHP


comme une plate-forme plus qu'un simple langage.

3.3 Le Framework Symfony


Symfony est un Framework MVC open-source crit en PHP 5, donc orient objet. Ses
principales fonctionnalits sont :
Une sparation du code en trois couches, selon le modle MVC. Un systme de
templatevolu.
Des performances optimises et un systme de cache pour garantir des temps de
rponse optimums.
Une gestion des url parlantes, qui permet de formater l'url d'une page
indpendamment de sa position dans l'arborescence fonctionnelle.
Un systme de configuration en cascade qui utilise de faon extensive le langage
YAML8.
Un systme de gestion de langue (pour internationaliser un site).
Une couche de mapping objet-relationnel (ORM) et une couche d'abstraction de
donnes.
Le support de l'Ajax.
Une architecture extensible, permettant la cration et l'utilisation de plugins.

3.4 MySQL

MySQL est un systme de gestion de base de donnes (SGBD). Selon le type


d'application, sa licence est libre ou propritaire. Il fait partie des logiciels de gestion
de base de donnes les plus utiliss au monde, autant par le grand public (applications
web principalement) que par des professionnels, en concurrence avec Oracle et Microsoft
SQL Server.

24

MySQL AB a t achet le 16 janvier 2008 par Sun Microsystems pour un milliard


de dollars amricains1. En 2009, Sun Microsystems a t acquis par Oracle Corporation,
mettant entre les mains d'une mme socit les deux produits concurrents que
sont Oracle Database et MySQL. Ce rachat a t autoris par la Commission
europenne le 21 janvier 20102,3.
Depuis mai 2009, son crateur Michael Widenius a cr MariaDB pour continuer son
dveloppement en tant que projet Open Source.

3.5 Autres technologies


Technologies web: Html5, CSS3, JQuery, Ajax, FullCalendar, Twitter bootstrap
Outils de gestion de code sources: Git

IV. Gestion de Projet


Dans cette partie nous reprsentons lorganigramme chronologique de la ralisation de
notre projet. Cet organigramme comporte les principales tches effectues tout au
long du projet.
Nous avons commenc durant trois semaines par analyser lexistant et spcifier les
besoins, puis nous avons pass la partie conception qui a dur quatre semaines. Vers
la fin de cette dernire nous avons commenc la plus grande partie (plus que dix
semaines) cest la partie de programmation et la ralisation. Pour la partie du rapport
nous lavons cre au fur et a mesure de lavancement du travail (les deux dernires mois).

4.1 Microsoft Project


Microsoft Project (ou MS Project ou MSP) est un logiciel de gestion de projets dit
par Microsoft. Il permet aux chefs de projet et aux planificateurs de planifier et piloter les
projets, de grer les ressources et le budget, ainsi que d'analyser et communiquer les
donnes des projets.

25

Utilis aujourd'hui (2011) par plus de 20 millions de chefs de projet, Microsoft Project est le
logiciel de gestion de projet le plus utilis au monde2,3. Plus de 10 000 entreprises ont
aussi dploy la version serveur de Microsoft Project, nomme Microsoft Project Server.

4.2 planification du projet


La planification prend en compte la gestion des tches : dures, enchainement,
regroupement, calcul des chances, fait sortir lordonnancement des vnements et des
jalons du projet.
La structuration organise pralablement les lments principaux dcrits prcdemment.
Certaines des lments issus de la structuration sont directement ncessaire la
planification, comme :
Les composants et les livrables qui leur associs.
Les activits du cycle de vie du projet.
Les tches et les macros tches de chaque lot de travaux

Figure 3: planification du projet

4.3 Dfinition du diagramme de GANTT

26

Le diagramme de GANTT est un outil permettant de modliser la planification de tches


ncessaires la ralisation d'un projet. Il s'agit d'un outil invent en 1917 par Henry L.
GANTT.
Etant donn la relative facilite de lecture des diagrammes GANTT, cet outil est utilis par
la quasi-totalit des chefs de projet dans tous les secteurs. Le diagramme GANTT
reprsente un outil pour le chef de projet, permettant de reprsenter graphiquement
l'avancement du projet, mais c'est galement un bon moyen de communication entre les
diffrents acteurs d'un projet.
Ce type de modlisation est particulirement facile mettre en uvre avec un simple
tableur mais il existe des outils spcialiss dont le plus connu est Microsoft Project. Il
existe par ailleurs des quivalents libres de ce type de logiciel.
Le tableau ci-dessous illustre la rpartition du travail tout au long de ce projet :

Figure 4: Diagramme de Gant relatif au droulement des activits durant la priode du projet

27

4.4 Structure de dcoupage du projet (WBS)


La gnration de la WBS du projet, contenant toutes les tches de production, se fait
partir des deux structures :
o

ATS listant les composants du systme

La liste des activits appartenant aux diffrents cycles de vie.

Chaque croisement produit/activit dtermine un lot de travaux, ce dernier se dfinit


comme lensemble des tches pour effectuer la production dun composant.
Il ya des composants qui ncessite le mme travail et les mmes activits du cycle vie, tels
que lauthentification, la consultation des dossiers, dsignation donc on va prendre le cas
gnral

28

V. Conclusion
Ce chapitre nous a permis dtudier la technologie au long utilis du dveloppement de
lapplication soit dans la partie conception, dveloppement ou gestion du projet.

29

Chapitre 5 :
Ralisation et Interface de lapplication

30

I. Introduction
La phase de ralisation est une tape trs importante dans le cycle de vie de notre
application.
Cette phase permet de concrtiser notre projet par le dveloppement des interfaces et
par des ralisations concrtes des fonctionnalits du systme. Pour raliser notre
application nous avons en recourt plusieurs outils de dveloppement. Dans ce chapitre,
nous prsentons en premier lieu lenvironnement de travail. En second lieu,

nous

prsentant le choix techniques que nous avons adopt pour le dveloppement de


notre application.

31

II. Choix de la technologie de scurit


2.1 Introduction
Selon les experts en la matire, la majorit des applications Web souffrent de
vulnrabilits. Il est pourtant ncessaire de comprendre que la scurit des sites Internet
ne souffre pas de manichisme : un site peut tre plus ou moins sr, et la scurit est
souvent une affaire de compromis.
Elle dpend de nombreux facteurs, tels que les connaissances du dveloppeur bien
entendu, mais aussi la conception et la complexit du site, le cot et les dlais de
fabrication et mme parfois aussi tonnant que cela puisse paratre de la
responsabilisation de ses utilisateurs.
Les internautes doivent utiliser des navigateurs (ou agents utilisateur) pour parcourir le
Web. Comme tout logiciel, ceux-ci sont potentiellement porteurs de vulnrabilits et
peuvent ainsi exposer accidentellement, sous certaines conditions, des informations
concernant leur utilisateur. Il est donc ncessaire de mettre jour ces logiciels lorsque de
telles vulnrabilits sont dcouvertes et que des correctifs sont publis. Mais beaucoup
dutilisateurs ne le font pas, ce qui ouvre une faille de scurit qui nest pas forcment du
ressort des dveloppeurs du site Internet.

2.2 La scurit de notre application


La scurit dans lapplication est un processus comprenant 2 tapes, dont le but est de
prvenir un utilisateur d'accder une ressource laquelle il n'a pas accs.
Dans la premire tape du processus, le systme de scurit identifie l'utilisateur en lui
demandant de soumettre une sorte d'identification. C'est ce qu'on appelle
l'authentification, et cela signifie que le systme cherche savoir qui vous tes.
Une fois que le systme sait qui vous tes, l'tape suivante est de dterminer si vous avez
accs une ressource donne. Cette tape du processus est appele autorisation, et cela
signifie que le systme vrifie si vous avez les privilges pour excuter certaines actions.

32

Figure 5: Mcanisme de scurit de lapplication

III. Architecture globale du Site Web


Lapplication possde larborescence suivante :

Figure 6: Architecture globale du site web

Le rpertoire /app
Ce rpertoire contient tout ce qui concerne l'application sauf son code source afin de
sparer le code source, qui fait la logique de l'application, du reste. Le reste, c'est ce
rpertoire /app. Et ce reste c'est : la configuration, le cache, les fichiers logs, etc. Ce sont
des fichiers qui concernent l'entiret de l'application, contrairement aux fichiers de code
source qui seront dcoups par fonctionnalit de l'application.

33

Le rpertoire /src
C'est ici que rside tous le code source de notre application, les vue les contrleurs les
modles, les services etc. organis en bundles, des briques de lapplication.
Le rpertoire /vendor
Ce rpertoire contient toutes les bibliothques externes notre application. Dans ces
bibliothques externes, j'inclus Symfony2 ! Vous pouvez parcourir ce rpertoire, vous y
trouverez des bibliothques comme Doctrine, Twig, SwiftMailer, etc.
Le rpertoire /web
Ce rpertoire contient tous les fichiers destins aux visiteurs : images, fichiers CSS et
JavaScript, etc. Il contient galement le contrleur frontal (app.php) qui est le point
d'entre de l'application.
Les bundles de notre application :
Lapplication se compose de trois bundle :
UserBundle : ce bundle permet la gestion des adhrents et les groupes.
AssociationBundle : ce bundle permet la gestion des cotisations, des vnements, et le
partie configuration.
MessageBundle : ce bundle gre la messagerie locale qui permet de communiquer entre
les utilisateurs de lapplication

La structure de ces bundle est la mme que tous les bundles Symfony, la figure ci-dessous
illustre un exemple dun bundle :

34

Figure 20: Structure dun bundle

IV. Interface de lApplication


4.1 Introduction
Comme toute application, notre application doit tre facile utiliser et comprhensive par
tout type de cible. Dans ce qui suit, nous prsentons quelques interfaces pour faire
expliquer les principales fonctionnalits des diffrents modules de notre projet.

4.2 Prsentation de lapplication


Ici je vais vous dtailler les diffrentes fonctionnalits de linterface web. Vous pouvez voir
ci-dessous la page de connexion de l'application.

35

Figure 21: Page d'authentification

Cette page permet l'identification d'un utilisateur grce un login et un mot de passe avec
la possibilit de choisir la langue entre larabe, franais et langlais. L'utilisateur est oblig
de se connecter sil souhaite accder l'application.
Une fois lauthentification russie, lutilisateur est redirig automatiquement vers le
tableau de bord.
Tableau de bord

36

Figure 7: tableau de bord de l'application

1. Nombre total des adhrents


2. Nombre des groups
3. Nombre des vnements
4. Nombre des rservations
5. Nombre des logements
6. Nombre des chambres
7. Tableau de bord
8. Gestion des adhrents
9. Gestion des groupes
10. Gestion des statuts
11. Gestion des cotisations
12. Gestion des vnements
13. Prfrences
14. Un bouton pour rduire le menu gauche
15. Google maps afficher l'adresse exacte de l'association dans la carte
16. Messagerie
17. Calendrier
18. Profile
Depuis la page daccueil lutilisateur pourra donc consulter des statistiques sur
lassociation, aussi une carte Google maps qui permet dafficher l'adresse exacte de
l'association dans la carte
Page de gestion des adhrant

37

Figure 8: page de gestion des adhrents

Dans la page de gestion des adhrents ladministrateur la possibilit de:


o ajouter, modifier et supprimer un adhrant
o recherche multicritres par le CIN, sexe, date de naissance, ville, coda bar, statut, groupe,
cotisation, nombre de ligne par page
o activer ou dsactiver un adhrant (accs son profile)
o changer le rle de l'utilisateur (simple utilisateur, diteur ou administrateur)
o associer un ou plusieurs utilisateurs un groupe
o crer un groupe de filtre
o exporter la liste des adhrents vers diffrent type de donnes (csv, xml, pdf ou excel)
o imprimer les cartes des adhrents
o imprimer les tickets de repas
o naviguer sur les profils des adhrant avec les touches de claviers
o ajouter un statut pour un adhrant
o ajouter une cotisation
o consulter le profile complet d'un adhrant
o information gnrale
o Informations de L'association
o Informations de contact
o Historique des Grades (statuts)
o Historique des Cotisations
o Historique des appels, sms ou mail reus
o imprimer la fiche d'un adhrant

38

Figure 9: gestion des adhrant - Actions diponibles

Page de gestion des groupes

Figure 10: page de gestion des groupes

Cette page affiche la liste des groupes disponible ainsi le nombre des adhrents dans chaque
groupe avec la possibilit de :
o Ajouter, modifier et supprimer un groupe
o consulter la liste des membres dans un groupe
o chercher un adhrant dans un groupe
o appeler un adhrant et laisser un feedback sur l'appel mis

39

o
o

Envoyer un SMS
Enlever un adhrant d'un groupe

Page de gestion des statuts

Figure 11: Page de gestion des statuts

Cette page permet dafficher la liste des statuts avec la possibilit de :


o consulter la liste des statuts disponible et le nombre d'adhrent pour chaque statut
o Ajouter, modifier et supprimer un statut

Page de gestion des cotisations

Figure 12: Page de gestion des cotisations

Dans cette page un utilisateur (diteur) peut consulter la liste des cotisations effectu avec la
possibilit de :
o consulter la liste des cotisationseffectues
o recherche multicritres (cin, priode de cotisation, groupe, type de cotisation, nombre de
ligne par page)

40

o
o

Modifier et supprimer une cotisation


Afficher une cotisation et imprimer les reus

Page de gestion des vnements

Figure 13: Page de gestion des vnements

Et dans la page de Gestion des vnements qui permit afficher la liste des vnements
dassociations on a la possibilit de :
o Consulter la liste des vnements
o recherche multicritres
o cin, priode d'vnement, groupe, nombre de ligne par page
o consulter le calendrier des vnements
o ajouter un vnement en utilisant l'interface ergonomique du calendrier
o changer la date d'un vnement avec un simple drag & drop
o afficher, mettre jour et supprimer un vnement
o publier un vnement par mail
o imprimer les lettres d'invitations

Prfrences

41

Figure 14: Prfrences

Dans cette on peut configurer et personnaliser lapplication a nos besoins, elle est accessible
seulement par les administrateurs :
o modifier les informations relatives l'association
o logo de l'application, titre, description, ville ...
o configurer les paramtres de Googlemaps afin d'afficher l'adresse exacte de l'association
dans la carte (Latitude, Longitude)
o changer le thme de l'application
o mettre jour le nombre de ligne afficher par page
o Permettre ou non aux membres d'imprimer leurs carte
o modifier la mise en forme des badges
o modifier le modle des lettres envoyes
o configuration des champs:
o prciser quel information afficher pour les tables adhrents et cotisations

Messagerie
Cest la partie messagerie de lapplication la possibilit dafficher les messages reus, envoys et
supprims aussi la possibilit denvoyer un nouveau message.

42

Figure 30: Messagerie

Calendrier des vnements

43

Figure 31: Calendrier des vnements

Cette page permet dafficher les vnements sous forme dun calendrier

Profile

44

Figure 15: Profile

Et dans la page Profile on a la possibilit de :


Par le bouton afficher mon profile
Afficher toutes les informations
Modifier la photo de profile et les autres informations
Imprimer la carte si c'est autoris par l'administrateur
Par le bouton compte
Changer le mot de passe (ncessite le mot de passe actuel)
Changer l'adresse email (ncessite le mot de passe actuel)
Par le bouton dconnexion
Dconnecter de la session et revient a la page daccueil

45

V. Conclusion

Dans ce chapitre nous avons prsent en dtails le dveloppement de notre application.


Nous avons commenc par prsenter des choix de la technologie. De plus, nous avons
expos larchitecture globale de notre site web.
Nous avons aussi prsent les principales interfaces de notre application et nous avons
galement expos les diffrentes tapes suivre par lutilisateur, et il est noter que ce
travail nous a pos quelques problmes mais enfin nous sommes contents, dans ce
travail, darriver raliser les principaux modules en rpondant aux contraintes et en
rpondant parfaitement lattente de lentreprise

46

Conclusion
gnrale:

47

La prennit dune socit nest pas forcment


lie son gigantisme mais avant tout son
pragmatisme et ses hommes.

Ce projet nous a permis de connatre la gestion des adhrents dassociation en ligne et


dapprofondir nos connaissances, notamment en termes de conception et de ralisation
de ce domaine. Pour la modlisation, nous avons opts pour UML comme langage de
modlisation et PowerAMC comme outil de modlisation nous permettant ainsi de
reprsenter nos diagrammes sous format lectronique. Pour la ralisation, nous nous
sommes orients vers la plateforme Apach, en utilisant PHP comme de codage ct
Serveur et JavaScript cot client.
Le SGBD exploit nest autre que MySQL, nous permettant de bnficier des services des
procdures stockes et la gestion des donnes.
En effet, ce projet peut tre encore dvelopp, et parmi ces perspectives nous pouvons
envisager :
o
o

les notifications par SMS et par appel tlphonique (pas juste simulation);
version dapplication pour le Smart phone Androde et iOS.

Nous avons aussi rencontr quelques problmes au dbut du projet, faute de


documentation sur les logiciels, manque dexprience et dexpertise dans la manipulation
des logiciels libres. Il reste beaucoup damliorations et extensions qui peuvent tre
apportes ce module.
En consquence de tout ce qui prcde, nous esprons avoir t au niveau de la tche qui
nous a t affecte. Ce travail nous a donn lopportunit dassurer un travail de groupe,
comment compter sur soi pour rsoudre les problmes au cas o ils se prsentent,
comment tre mticuleuses dans notre travail, comment tre attentives aux indications
de notre encadrant, comment tre bien organises pour accomplir dans les meilleurs
dlais, et meilleures conditions les tches qui nous sont confies.

48

Annexe

49

I. Annexe I : Installation sous Linux


On va voir dans ce chapitre les points vrifier pour dployer lapplication sur un serveur
linux. La mthodologie est la suivante :

1.1 Vrifier et prparer le serveur de production


videmment, pour dployer une application Symfony2 sur votre serveur, encore faut-il
que celui-ci soit compatible avec les besoins de Symfony2 ! Pour vrifier cela, on peut
distinguer deux cas.
Symfony2 intgre un petit fichier PHP qui fait toutes les vrifications de compatibilit
ncessaires, Il s'agit du fichier web/config.php, envoyez le sur votre serveur. Ouvrez la
page web qui lui correspond, par exemple www.votre-serveur.com/config.php. Vous
devriez obtenir soit des alertes "Major Problems" que vous devez corriger ou juste des
Recommandations essayez de les respecter si cela est possible.

1.2 Pr-requis au bon fonctionnement de Symfony2


Voici les points obligatoires qu'il faut que votre serveur respecte pour pouvoir faire tourner
Symfony2 :
PHP doit tre au minimum la version PHP 5.3.3
JSON doit tre activ
ctype doit tre activ
Votre PHP.ini doit avoir le paramtre date.timezone dfini
installer le driver PDO

1.3 Installer wkhtmltopdf


Wkhtmltopdf un outil qui permet de gnrer des PDF, il est utilis dans l'application pour
imprimer les badges des adhrents.

50

# apt-get install wkhtmltopdf


pres l'installation modifier le fichier de configuration app/config/config.yml afin de
spcifier le chemin absolue de wkhtmltopdf.

1.4 Envoyer les fichiers sur le serveur


Dans un premier temps, il faut bien videmment envoyer les fichiers sur le serveur. Pour
viter d'envoyer des fichiers inutiles et lourds, videz dans un premier temps le cache de
votre application en supprimant tout le contenu du repertoire app/cache. Ensuite,
envoyez tous vos fichiers et dossiers la racine de votre hbergement, dans www/
Important:
Les fichiers dans le rpertoire vendors/ sont assez lourds et prennent beaucoup de temps
lors de l'uploada. Pour remdier ce problme, sur votre serveur, excutez la commande
# php composer.phar install
Cette commande qui va installer les mmes versions des dpendances que vous avez en
local. Cela se fait grce au fichier composer.lock qui contient tous les numros des
versions installes justement.
Si vous n'avez pas accs Composer sur votre serveur, alors contentez-vous d'envoyer le
dossier vendor en mme temps que le reste de votre application.

1.5 Rgler les droits sur les dossiers app/cache et


app/logs
Vous le savez maintenant, Symfony2 a besoin de pouvoir crire dans deux rpertoires :
app/cache pour y mettre le cache de l'application et ainsi amliorer les performances, et
app/logs pour y mettre l'historiques des informations et erreurs rencontres lors de
l'excution des pages. Sur votre serveur, excutez la commande suivante:
# chmod 775 -R app/cache app/logs

1.6 Mettre en place la base de donnes

51

Il ne manque pas grand-chose avant que votre site ne soit oprationnel. Il faut notamment
s'attaquer la base de donnes. Pour cela, modifiez le fichier app/config/parameters.yml
de votre serveur afin d'adapter les valeurs des paramtres database_*.
Ensuite connecter a MySQL et importer la base de donner l'aide du ficher
app/Ressources/source.sql

a y est, l'application devrait tre oprationnel ds maintenant ! Vrifiez que tout


fonctionne bien dans www.votre-serveur.com/app.php.
Important:
Les erreurs ne sont certes pas affiches l'cran, mais elles sont heureusement
rpertories dans le fichier app/logs/prod. Si l'un de vos visiteurs vous rapporte une
erreur, c'est dans ce fichier qu'il faut aller regarder pour avoir le dtail, les informations
ncessaires la rsolution de l'erreur.

52

II. Annexe II : Installation sous Windows


2.1 Installation de WAMP
Pour commencer, il faut tlcharger linstalleur wamp disponible gratuitement sur
son site officiel. (Notez quil est disponible en version 32 et 64 bits veillez donc choisir la
bonne version en regard de votre systme dexploitation afin den tirer pleinement
satisfaction)
Ds lors que le tlchargement est termin vous pouvez procder son installation.
Linstallation est trs simple je ne mattarderai pas dessus afin de rester centr
uniquement sur lessentiel dans ce tutoriel.

2.2 Dploiement des diffrents modules Apache et


PHP
Pour apache :
Faites clic-gauche sur licne de Wamp dans la barre des tches > Apache > Apache
Modules > slectionnez Rewrite Module
Pour les modules php :
clic-gauche sur licne de Wamp > PHP > PHP Extensions > cochez php_intl ,
php_xmlrpc , php_pdo_mysql , php_sqlite3 , php_mbstring
Symfony2 recommande aussi lutilisation du module php_apc pour acclrer le rendu des
pages.

2.3 Installer wkhtmltopdf


Pour tlcharger Wkhtmltopdf, rendez-vous cette adresse :
http://wkhtmltopdf.org/downloads.html Ds lors que le tlchargement est termin vous
pouvez procder son installation.
Ensuit vous devez modifier le fichier de configuration app/config/config.yml afin de
spcifier le chemin absolue de wkhtmltopdf.

53

2.4 Test de Symfony2


Placez ensuite le rpertoire de lapplication dans votre rpertoire web (par dfaut
C:/WAMP/www/ ) et rendez-vous ladresse : http://localhost/association/app/check.php

54

Rfrences
bibliographiques:

55

Cours
Auteur : GuillareRossolini

PHP 5
Auteur : Rodolphe Riel
MySQL 5
Auteur : Olivier Hondermarck
JavaScript

Rfrences Netographiques
[1] : http://www.codes-sources.com/
[2] : http://www.sitedynamique.com/
[3] : http://www.commentcamrche.com
[4] : http://www. Developpez.com
[5] : http://www. wikipedia.com
[6] : http://www.siteduzero.com/

56