Ce présent rapport a été rédigé dans le cadre du projet de fin d’étude pour l’obtention du diplôme de la licence en informatique de gestion. Ce projet consiste a développer une application web et mobile d’SOS remorquage. Afin de mettre en œuvre ce projet, nous avons utilisé le Framework « symfony2 »pour le développement web et Android pour le développement mobile.
Projet de fin étude ( LFIG : Conception et Développement d'une application Web && Mobile pour le service de remorquage )
1. REPUBLIQUE TUNISIENNE
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR
ET DE LA RECHERCHE SCIENTIFIQUE
UNIVERSITE TUNIS EL MANAR
FACULTE DES SCIENCES ECONOMIQUES
ET DE GESTION DE TUNIS
RAPPORT DE PROJET DE FIN D’ETUDES POUR L’OBTENTION DE
LICENCE FONDAMENTALE EN INFORMATIQUE DE GESTION
Organisme d’accueil:
Réalisé par : NOUMAIRI ramzi Encadré par : Suisi afef : FSEGT
Dhahri khether : CNI
Année Universitaire 2015/2016
Conception et Développement d'une application
Web && Mobile pour le service de remorquage
2. Dédicaces
A l’homme de ma vie, mon exemple éternel, mon soutien moral et source de
joie et de bonheur, celui qui s’est toujours sacrifié pour me voir réussir, que
Dieu te garde dans son vaste paradis, à toi mon père Saleh
A la lumière de mes jours, la source de mes efforts, la flamme de mon cœur,
ma vie et mon bonheur ; maman Fatma que je t’aime.
Qui a été toujours dans mon esprit et dans mon cœur, je te dédie aujourd’hui
ma réussite que Dieu te protège et te garde ma grand-mère Aziza.
A celle dont je regrette l’absence à cette étape de ma vie celle qui me manque
terriblement je t’aime et je ne t’oublierais jamais ma grand-mère Khadija.
A ceux qui m’ont toujours soutenue et donné la joie de vivre mes frères
Mohamed Amin, Aymen, je dédie ce travail dont le grand plaisir leurs revient
en premier lieu pour leurs conseils, aides, et encouragements.
Aux personnes qui m’ont toujours aidé et encouragé, qui étaient toujours à
mes côtés, et qui m’ont accompagné durant mon chemin d’études, mes
aimables amies, collègues d’étude, et sœur de cœur Fadwa.
3. Remerciements
Nous remercions Dieu le tout puissant de nous avoir donné la santé et la
volonté d’entamer et de terminer ce projet de fin d’études.
Nous tenons à remercier notre encadreur Madame Suisi Afef pour ses
directives, ses encouragements et ses précieux conseils. Qu’il trouve ici toute
notre reconnaissance et notre vive gratitude pour les efforts qu’elle a fournis
afin de guider ce travail à terme.
Notre remerciement s’adresse également à MR Dhahri Khether et aux
personnels de la CNI pour leurs générosités et la grande patience dont ils ont
su faire prévus leurs charges professionnelles.
Nous tenons à remercier spécialement Monsieur Ayedi wassim pour
l’honneur qu’il nous a fait d’être président de jury de ce projet de fin d’études.
Nous remercions également Monsieur Bouthiefi walid d’avoir bien voulu
accepter d’examiner ce travail et de participer à ce jury.
Nos sincères remerciements s’adressent à tous nos enseignants de l’FSEG
Tunis qui ont assuré une formation, nous permettant de surmonter toutes les
difficultés.
Nous n’oublions pas enfin d’exprimer nos remerciements à nos familles, nos
amies et nos collègues.
4. Table des Matières
INTRODUCTION GENERALE ......................................................................................................................... 1
CHAPITRE 1: ETUDE DE CONTEXTE ET SPECIFICATION.......................................2
1. Introduction :................................................................................................................... 2
2. Présentation de l’organisme d’accueil :........................................................................... 2
2.1. Description : .................................................................................................................... 2
2.2. Domaine d’activité : ........................................................................................................ 3
2.3. Historique :...................................................................................................................... 3
3. Méthodologie et approche adopté: .................................................................................. 4
3.1. Le cycle de développement en spirale : .......................................................................... 4
4. Contexte générale du projet : .......................................................................................... 4
4.1. Présentation du sujet : .................................................................................................... 4
4.2. Mission de stage :............................................................................................................ 5
5. Problématiques et cadre de projet : ................................................................................. 5
5.1. Solution proposée : ......................................................................................................... 5
6. Cahier de charge:............................................................................................................. 5
6.1. Les besoins fonctionnels :................................................................................................ 5
6.2. Les besoins non fonctionnels : ....................................................................................... 6
6.3. Planification du travail :................................................................................................... 7
7. Conclusion :..................................................................................................................... 8
CHAPITRE 2: ANALYSE ET ETUDE DE CAS............................................................9
1. Introduction :................................................................................................................... 9
2. Identification des acteurs :............................................................................................... 9
3. Cas d’utilisation : ............................................................................................................ 9
3.1. Définition :....................................................................................................................... 9
3.2. Diagramme de cas d’utilisation générale:..................................................................... 10
4. Les diagrammes de cas d’utilisation détaillé:................................................................ 11
4.1. Diagramme de cas d’utilisation «s’authentifier » ......................................................... 11
4.2. Diagramme de séquence « s’authentifier »:................................................................. 12
4.3. Diagramme de cas d’utilisation «gérer un compte» :................................................... 13
4.4. Diagramme de séquence «gérer un compte » :............................................................ 14
4.5. Diagramme de cas d’utilisation «demander un camion de remorquage » :................. 15
4.6. Diagramme de séquence «demander un camion de remorquage » : .......................... 16
4.7. Diagramme de cas utilisation «contacter l’agence » : .................................................. 17
5. 4.8. Diagramme de séquence «contacter l’agence » :......................................................... 18
4.9. Diagramme de cas d’utilisation «traiter le demande de remorquage » :.................... 19
4.10. Diagramme de séquence «traiter des demandes de remorquage » : ...................... 20
4.11. Diagramme de cas utilisation «s’inscrire » :.............................................................. 21
4.12. Diagramme de séquence «s’inscrire » :.................................................................... 22
4.13. Diagramme de cas utilisation «valider un client» : ................................................... 23
4.14. Diagramme de séquence «valider un client» :.......................................................... 24
4.15. Diagramme de cas utilisation «modifier l’état camion » :....................................... 24
4.16. Diagramme de séquence «modifier l’état camion » : ............................................. 26
4.17. Diagramme de cas utilisation «gérer les utilisateurs » :.......................................... 27
4.18. Diagramme de séquence «gérer les utilisateurs » :.................................................. 28
4.19. Diagramme de cas utilisation «gérer les camions » : .............................................. 30
4.20. Diagramme de séquence «gérer les camions » :..................................................... 32
4.21. Diagramme de cas utilisation «gérer les chauffeurs » : .......................................... 33
4.22. Diagramme de séquence «gérer les chauffeurs » :................................................. 35
5. Conclusion :................................................................................................................... 36
CHAPITRE 3: CONCEPTION .................................................................................37
1. Introduction :................................................................................................................. 37
2. Outils de modélisation :................................................................................................. 37
2.1. Entreprise architecte :................................................................................................... 37
2.2. Développement du modèle dynamique........................................................................ 37
3. Développement du modèle statique (Diagramme de classe)......................................... 38
3.1. Définition :..................................................................................................................... 38
3.2. Dictionnaire de donnée :............................................................................................... 38
3.3. Représentation graphique:............................................................................................ 39
3.4. Modèle Conceptuelle de donnée :................................................................................ 40
4. Développement du modèle statique (Diagramme de classe)......................................... 40
4.1. Diagramme de séquence détaillé «s’authentifier » : ................................................. 41
4.2. Diagramme de séquence détaillé «gérer un compte» : ............................................. 42
4.3. Diagramme de séquence détaillé «s’inscrire» :.......................................................... 43
4.4. Diagramme de séquence détaillé «contacter l’agence» : .......................................... 44
4.5. Diagramme de séquence détaillé «demander un camion de remorquage» :............ 45
4.6. Diagramme de séquence détaillé «traiter les demandes de remorquage» :............. 46
4.7. Diagramme de séquence détaillé «gérer les utilisateurs» : ....................................... 47
4.8. Diagramme de séquence détaillé «gérer les camions» :............................................ 48
6. 4.9. Diagramme de séquence détaillé «gérer les chauffeurs» :........................................ 49
4.10. Diagramme de séquence détaillé «valider un compte client» :............................. 50
4.11. Diagramme de séquence détaillé «modifier l’état d’un camion» :........................ 51
5. Diagramme d’activité côté application Android ........................................................... 52
6. Conclusion :................................................................................................................... 53
CHAPITRE 4: REALISATION ................................................................................54
1. Introduction :................................................................................................................. 54
1.1. Diagramme de déploiement «SOS remorquage» : ....................................................... 54
2. Environnement de développement :.............................................................................. 55
2.1. Environnement matériel : ............................................................................................. 55
2.1.1. Architecture :............................................................................................................... 55
2.1.2. Matériel utilisés :......................................................................................................... 56
2.2. Environnement logiciel :................................................................................................ 57
2.2.1. Logiciels utilisés : ......................................................................................................... 57
2.2.2. Les serveurs :............................................................................................................... 60
2.3. Protocoles et formats des données :............................................................................. 60
2.3.1. Protocole de communication : .................................................................................... 60
2.3.2. Format de données communiquées :.......................................................................... 61
3. Interface :....................................................................................................................... 61
3.1. Partie FrontOffice.......................................................................................................... 61
3.2. Partie Backoffice :.......................................................................................................... 67
4. Conclusion :................................................................................................................... 70
CONCLUSION.................................................................................................................................................... 71
NETOGRAPHIE................................................................................................................................................. 72
7. Liste des Figures
FIGURE1 : LOGO DE CENTRE NATIONAL D’INFORMATIQUE............................................................ 2
FIGURE 1:CYCLE DE DEVELOPPEMENT EN SPIRALE .......................................................................... 4
FIGURE 2 : LES ACTEURS ............................................................................................................................... 9
FIGURE 3 : DIAGRAMME DE CAS UTILISATION GENERALE ............................................................ 10
FIGURE 4 :DIAGRAMME DE CAS UTILISATION D’AUTHENTIFICATION ...................................... 11
FIGURE 5:DIAGRAMME DE SEQUENCE D’AUTHENTIFICATION..................................................... 12
FIGURE 6 : DIAGRAMME DE CAS D’UTILISATION GERER UN COMPTE ....................................... 13
FIGURE 7 :DIAGRAMME DE SEQUENCE GERER UN COMPTE.......................................................... 14
FIGURE 8:DIAGRAMME DECAS UTILISATION DEMANDER UN CAMION DE REMORQUAGE 15
FIGURE 9 :DIAGRAMME DE SEQUENCE DEMANDER UN CAMION DE REMORQUAGE............ 16
FIGURE 10 :DIAGRAMME DE CAS UTILISATION CONTACTER L’AGENCE .................................. 17
FIGURE 11 :DIAGRAMME DE SEQUENCE CONTACTER L’AGENCE................................................ 18
FIGURE 12:DIAGRAMME DE CAS UTILISATION TRAITER LES DEMANDES DE REMORQUAGE
.............................................................................................................................................................................. 19
FIGURE 13:DIAGRAMME DE SEQUENCE TRAITER LA DEMANDE DE REMORQUAGE............. 20
FIGURE 14:DIAGRAMME DE CAS UTILISATION S’INSCRIRE............................................................ 21
FIGURE 15:DIAGRAMME DE SEQUENCE S’INSCRIRE ......................................................................... 22
FIGURE 16:DIAGRAMME DE CAS UTILISATION VALIDER UN CLIENT ......................................... 23
FIGURE 16:DIAGRAMME DESEQUENCE VALIDER UN CLIENT........................................................ 24
FIGURE 17:DIAGRAMME DE CAS UTILISATION MODIFIER L’ETAT CAMION ............................ 24
FIGURE 18:DIAGRAMME DE SEQUENCE MODIFIER L’ETAT CAMION.......................................... 26
FIGURE 19:DIAGRAMME DE CAS UTILISATION GERER LES UTILISATEURS ............................. 27
FIGURE 20:DIAGRAMME DE CAS UTILISATION GERER LES UTILISATEURS ............................. 29
FIGURE 21:DIAGRAMME DE CAS UTILISATION GERER LES CAMIONS........................................ 30
FIGURE 22:DIAGRAMME DESEQUENCE GERER LES CAMIONS ...................................................... 32
FIGURE 23:DIAGRAMME DE CAS UTILISATION GERER LES CHAUFFEURS................................ 33
FIGURE 24:DIAGRAMME DE SEQUENCE GERER LES CHAUFFEURS ............................................. 35
FIGURE 26:DIAGRAMME DE CLASSE........................................................................................................ 39
FIGURE 27:DIAGRAMME DE SEQUENCE DETAILLE S’AUTHENTIFIER ........................................ 41
FIGURE 28:DIAGRAMME DE SEQUENCE DETAILLE GERER UN COMPTE ................................... 42
FIGURE 29:DIAGRAMME DE SEQUENCE DETAILLE S’INSCRIRE.................................................... 43
FIGURE 30:DIAGRAMME DE SEQUENCE DETAILLE CONTACTER L’AGENCE ........................... 44
FIGURE 31:DIAGRAMME DE SEQUENCE DETAILLE DEMANDER UN CAMION DE
REMORQUAGE................................................................................................................................................. 45
8. FIGURE 32:DIAGRAMME DE SEQUENCE DETAILLE TRAITER LES DEMANDES DE
REMORQUAGE................................................................................................................................................. 46
FIGURE 33:DIAGRAMME DE SEQUENCE DETAILLE GERER LES UTILISATEURS...................... 47
FIGURE 34:DIAGRAMME DE SEQUENCE DETAILLE GERER LES CAMIONS................................ 48
FIGURE 35:DIAGRAMME DE SEQUENCE DETAILLE GERER LES CHAUFFEURS........................ 49
FIGURE 36:DIAGRAMME DE SEQUENCE DETAILLE VALIDER UN COMPTE CLIENT............... 50
FIGURE 37:DIAGRAMME DE SEQUENCE DETAILLE MODIFIER L’ETAT D’UN CAMION ......... 51
FIGURE 38: DIAGRAMME D’ACTIVITE COTE APPLICATION ANDROID........................................ 52
FIGURE 39:DIAGRAMME DE DEPLOIEMENT DU SYSTEME "SOS REMORQUAGE"................... 54
FIGURE 40: ARCHITECTURES MATERIELS DE SYSTEME.................................................................. 55
FIGURE 42: ARCHITECTURE 3-TIERS DE POINT DE VUE TECHNOLOGIE.................................... 57
FIGURE 43:ANDROID SDK............................................................................................................................. 58
FIGURE 44:INTERFACE ACCUEIL.............................................................................................................. 62
FIGURE 45:INTERFACE D’AUTHENTIFICATION ................................................................................... 63
FIGURE 46:INTERFACE MENU .................................................................................................................... 64
FIGURE 47:INTERFACE DE MODIFICATION DES INFORMATION DE CONFIDENTIALITE ...... 64
FIGURE 48:INTERFACE DE MODIFICATION DE DEMANDE DE REMORQUAGE ......................... 65
FIGURE 49:INTERFACE D’AUTHENTIFICATION ................................................................................... 65
FIGURE 50:INTERFACE MENU .................................................................................................................... 66
FIGURE 51:INTERFACE DE MODE LIBRE ................................................................................................ 66
FIGURE 52:INTERFACE DE MODE OCCUPE............................................................................................ 67
FIGURE 53:INTERFACE D’AUTHENTIFICATION ................................................................................... 67
FIGURE 54:INTERFACE DE TABLEAU DE BORD.................................................................................... 68
FIGURE 55:INTERFACE LISTE UTILISATEURS ...................................................................................... 69
FIGURE 56:INTERFACE D’AJOUT D’UN CAMION.................................................................................. 69
FIGURE 57:INTERFACE DE VALIDATION PAR EMAIL ........................................................................ 69
FIGURE 58:INTERFACE LOCALISATION DE LA VOITURE EN PANNE............................................ 70
9. Liste des Tableaux
TABLEAU 1:DESCRIPTION DE CAS UTILISATION D'AUTHENTIFICATION..................... 11
TABLEAU 2:DESCRIPTION DE CAS UTILISATION GERER UN COMPTE........................... 13
TABLEAU 3:DESCRIPTION DE CAS UTILISATION DEMANDER UN CAMION DE
REMORQUAGE.............................................................................................................................................. 15
TABLEAU 4:DESCRIPTION DE CAS UTILISATION CONTACTER L’AGENCE.................. 17
TABLEAU 5:DESCRIPTION DE CAS UTILISATION TRAITER LE DEMANDE DE
REMORQUAGE.............................................................................................................................................. 19
TABLEAU 6:DESCRIPTION DE CAS UTILISATION S’INSCRIRE............................................. 21
TABLEAU 7:DESCRIPTION DE CAS UTILISATION VALIDER UN CLIENT......................... 23
TABLEAU 8:DESCRIPTION DE CAS UTILISATION MODIFIER L’ETAT CAMION.......... 25
TABLEAU 9:DESCRIPTION DE CAS UTILISATION GERER L’UTILISATEUR................... 27
TABLEAU 10:DESCRIPTION DE CAS UTILISATION GERER LES CAMIONS..................... 30
TABLEAU 11:DESCRIPTION DE CAS UTILISATION GERER LES CHAUFFEURS............ 33
10. Page 1
Introduction Générale
De nos jours, la communication et l’échange d’informations exigeant des moyens efficaces et
performants afin de répondre aux besoins des utilisateurs qui sont devenus de plus en plus
exigeants. Parmi ces moyens on cite les téléphones intelligents dont l’adaptation mondiale a
augmenté plus rapidement que toute autre technologie. Le succès de ces derniers est d’au fait
qu’ils permettent aux utilisateurs d’utiliser plus d’une seule application simultanément sur le
téléphone mobile sans nuire à la performance de la téléphonie en aucune manière.
Dans ce contexte, il nous été imploré de développer une application android ainsi qu’une
application web avec deux partie (back office et front office). Pour le service de remorquage
des voiture au cas de panne afin d’élargir l’espace des canaux de communication avec les
clients.
En effet, notre application SOS_REMORQUAGE est considérée comme une application
permettant de faciliter la possibilité d’assistance à travers l’opération d’alerte qui est
accessibles par un terminal mobile.
Dans ce projet nous présentons quatre chapitres : Dans le premier chapitre intitule « Contexte
du projet », nous allons présenter l’entreprise d’accueil et notre application et dans le
deuxième chapitre «Analyse et spécification», nous commencerons d’analyser l’existant et
déterminer et nous identifions les besoins fonctionnels et les besoins non fonctionnels. Puis,
dans le troisième chapitre intitule «Conception», nous tenterons d’approfondir la
compréhension de la structure interne des éléments et leurs relations les uns par rapport aux
autres et d’obtenir une spécification, une analyse et une conception détaillées .Au niveau de
derniers chapitre intitule «Réalisation», nous allons détaillée l'architecture de notre
application en présentant l'environnement matériel et logiciel utilisé et mettre des vue sur ce
dernière dans son état finale.
11. Page 2
CHAPITRE 1: Etude de contexte et
spécification
1. Introduction :
Le but de ce chapitre consiste à mettre le projet dans ce contexte .Il présente en première
partie : l’organisme d’accueil centre national d’informatique, en seconde partie il y aura
une présentation de projet. Ensuite vient la troisième partie qui nous consacrons a l’analyse
de l’existant. Nous clôturons ce chapitre en spécifiant d’une façon détaillée les besoins
fonctionnels et les besoins non fonctionnels de notre application.
2. Présentation de l’organisme d’accueil :
2.1. Description :
Le Centre National de l’Informatique est un établissement public à caractère non
administratif doté de la personnalité civile et de l’autonomie financière. Le CNI est un
organisme placé sous la tutelle du Ministre des Technologies de la Communication et de
l'Economie Numérique, et opérant dans les domaines du secteur de l’informatique et des
technologies de la communication et certifié ISO 9001version 2008.
Figure1 : logo de centre national d’informatique
12. Page 3
2.2. Domaine d’activité :
CNI propose des prestations informatique globale se résument par les activités suivantes :
❖ Maîtrise d’ouvrage déléguée :
- Maîtrise d’ouvrage déléguée et Pilotage de projet.
❖ Etudes &Conseil :
▪ Système d’information :
- Audit de système d’information ;
- Etude d’opportunité, Etude préalable, Etude organisationnelle ;
▪ Réseaux et Sécurité :
- Etude Réseaux et sécurité;
- Assistance à la réception et à l’installation de réseaux;
❖ Développement :
- Développement et Maintenance des systèmes d’Information ;
- Formation sur les SI développés par le CNI ;
❖ Hébergement du système :
- Hébergement des serveurs ;
- Hébergement des applications et des données avec ou sans exploitation ;
2.3. Historique :
a. Centre National de l'Informatique a été créé le 30 décembre 1975 par la Loi n° 75-
83 du 30 décembre 1975-Articles 35 à 42, en tant qu’Établissement Public à
caractère Industriel et Commercial.
b. En 1997, il a été reclassé Établissement Public à caractère Non Administratif.
13. Page 4
c. En 1992, un cycle de formation a été institué au CNI pour l’initiation au travail
dans les administrations publiques.
3. Méthodologie et approche adopté:
Chaque personne peut songer à une idée, peut résoudre un problème et trouver des
solutions pour faciliter n’importe tache, mais, concrétiser cette idée est le problème
majeur. C’est pour cela qu’on doit opter pour les solutions les plus optimales pour avoir
recours à une méthodologie efficace qui permet de gérer un cycle de vie d’un projet.
3.1. Le cycle de développement en spirale :
Figure 1:cycle de développement en spirale
4. Contexte générale du projet :
4.1. Présentation du sujet :
L’amélioration de la qualité des services fournis est un but prioritaire pour n’importe quel
domaine. Afin d’atteindre cet objectif il est tout d’abord indispensable d’adapter des
nouvelles technologies, d’information et de communication, permettant d’une part
l’amélioration du fonctionnement de l’entreprise et d’autre part de garantir la fidélité des
clients.
Notre but à travers ce travail est de chercher une solution qui répond aux exigences des
utilisateurs par la création d’une application mobile rendant disponible la communication
chez le client d’une manière efficace.
14. Page 5
4.2. Mission de stage :
Notre mission dans le cadre de ce projet est de développer une application permettant de
faciliter la communication entre les clients et l’entreprise de remorquage .En effet il s’agit
de réaliser d’une part une application android qui permet a les clients de commander un
camion de remorquage pour l’assistance et d’autre part, une application web permet a
l’administrateur de gérer ces demande ,son matérielle, et ses chauffeurs.
5. Problématiques et cadre de projet :
En faisant un aperçu sur les applications mobiles destinées au secteur commercial dans
le monde, nous constatons l’évolution rapide de ces applications. Mais la grande
recherche sur plusieurs sociétés de remorquage sur l'Internet nous donne cette idée
d'application Android. Donc, grâce à cette application, nous n'aurons pas besoin de
l'accès à l'Internet pour les sociétés de remorquage.
5.1. Solution proposée :
Avec l'avancée et l'émergence des technologies mobiles, la plupart sont maintenant
équipés de camera et de GPS, d ou Le but du projet était de profiter ces fonctionnalités
que possèdent aujourd’hui les Smartphones pour développer une application mobiles
basée sur la géolocalisation par satellite, qui aide l’utilisateur à préciser son position.
Afin d’apporter une valeur ajoutée et un meilleur service aux clients, nous proposons une
application mobile à usage simple qui assure la disponibilité et facilite la communication
et l’exploitation des services d’assistance voiture en panne pour les clients. Cette dernière
permet interaction intelligente et efficace avec les clients.
6. Cahier de charge:
6.1. Les besoins fonctionnels :
15. Page 6
Nous avons présenté les exigences fonctionnels proposé par notre système se résument
comme le suit :
S’authentifier : L’application permet aux utilisateurs de s’authentifier afin de profiter
certains fonctionnalité de l’application.
Commander un camion de remorquage : le client a demandé une assistance pour
remorquer votre voiture en panne.
Gérer un compte : L’application offre aux clients la possibilité de gérer votre compte a
travers les fonctionnalité de supprimer, modifier un compte afin de mieux utiliser ses
fonctionnalités.
Contacter l’assistance : le système donne au client la possibilité de contacter
l’assistance.
Gérer les camions de remorquage : le système permet à l’administrateur de gérer ses
camions avec les fonctionnalités d’ajout, suppression et modification.
Gérer les utilisateurs : le système permet à l’administrateur de gérer ses utilisateurs avec
les fonctionnalités d’ajout, suppression et modification.
Gérer les chauffeurs : le système permet à l’administrateur de gérer ses chauffeurs avec
les fonctionnalités d’ajout, suppression et modification.
Traiter les demandes de remorquage : l’application offre à l’utilisateur D’abord, de
localiser la position actuelle d’un client. Ensuite, la consultation des réseaux des camions de
remorquage en se basant sur la demande et la position reçu.
Valider un compte client : le système permet à l’administrateur de gérer ses chauffeurs
avec les fonctionnalités d’ajout, suppression et modification.
Modifier l’état d’un camion : le système permet à l’administrateur de gérer ses
chauffeurs avec les fonctionnalités d’ajout, suppression et modification
6.2. Les besoins non fonctionnels :
Ces fonctionnalités sont considérées comme des exigences identifient des contraintes de
l’application. Les besoins non fonctionnels de notre système se résument comme le suit :
16. Page 7
La sécurité et confidentialité : L’application doit être sécurisé au niveau des droits
d’accès ce qui engendre une protection des donné de chaque utilisateur.
La performance et rapidité : Au sein de l’application le temps de réponse doit être plus
court afin de satisfaire l’optimisation de traitement effectue.
L’Ergonomie et convivialité : L’application doit être fournie des interfaces lisible et
simple afin de faciliter l’utilisation ces fonctionnalités par les usagers.
La maintenance : L’application doit être compréhensible au niveau de code source afin de
faciliter sa maintenance.
La disponibilité :La présence d’une connexion internet pour exploiter les fonctionnalités
de l’application.
6.3. Planification du travail :
Le diagramme de Gantt est un outil utilisé (souvent en complément d'un réseau PERT) en
ordonnancement et gestion de projet et permettant de visualiser dans le temps les diverses
tâches composant un projet. Il permet de représenter graphiquement l'avancement du
projet.
La figure 6 représente le diagramme de Gantt qui énumère les différentes étapes que nous
avons adoptées tout au long du stage :
a. Étape d’étude: Consistant à définir la finalité du projet et son inscription dans une
stratégie globale.
b. Analyse de l’existant :Il a tout d’abord fallu faire des analyses préalables, par
l’exploration du sujet et l’analyse internes et externes, pour pouvoir dégager les
besoins fonctionnels et non fonctionnels de l’application.
17. Page 8
c. Spécification : La spécification a pour but d'établir une première description du
futur système.
d. Conception : Consistant à définir précisément chaque sous-ensemble du logiciel.
e. Réalisation : (Implémentation ou programmation), soit la traduction dans un
langage de programmation des fonctionnalités définies lors de phases de conception.
f. Test et Validation :A la phase d'intégration des divers programmes pour obtenir le
logiciel fini, Ainsi qu'à l'ensemble des tests qui permettra de vérifier que le logiciel
correspond exactement au cahier des charge
7. Conclusion :
Dans ce chapitre nous avons présenté le contexte de projet ainsi que les conditions de
travail au sein de centre national d’informatique dans lequel se déroule notre stage. Nous
avons évoqué aussi les différents besoins fonctionnels et non fonctionnels de notre
application qui nous a permis d’avoir une vue globale de notre application afin de
concevoir les modèles et les différents diagrammes dans le second chapitre.
18. Page 9
CHAPITRE 2: Analyse et étude de cas
1. Introduction :
Dans ce chapitre, nous abordons la phase d’analyse et spécification qui considèrent comme une
étape très important au niveau de développement. Il s’agit de définir d'une manière normalisée
les relations entre les différents acteurs et le système afin d’accomplir une application fiable et
sûre. Elle doit également permettre d'évaluer les caractéristiques souhaitées du logiciel au
niveau de sécurité et d’ergonomie.
2. Identification des acteurs :
Par définition un acteur est un élément externe qui interagissent directement avec le système
.Cet élément peut être utilisateur ou un système tiers (autre ordinateur, autre programme, base
de donné).
Les acteurs sont :
Figure 2 : Les acteurs
3. Cas d’utilisation :
3.1. Définition :
Un cas d'utilisation (use case) représente un ensemble de séquences d'actions qui sont
réalisées par le système et qui produisent un résultat observable intéressant pour un acteur
particulier. Chaque cas d'utilisation spécifie un comportement attendu du système considéré
19. Page 10
comme un tout, sans imposer le mode de réalisation de ce comportement. Il permet de décrire
ce que le futur système devra faire, sans spécifier comment il le fera.
3.2. Diagramme de cas d’utilisation générale:
Figure 3 : diagramme de cas utilisation générale
La figure ci-dessus offre une vision générale sur le système permettant de fixer le projet en
termes de besoins des utilisateurs en mettant en relief les principaux cas d’utilisation.
20. Page 11
4. Les diagrammes de cas d’utilisation détaillé:
Dans cette partie, nous analysons les différents cas d’utilisation du notre système.
4.1. Diagramme de cas d’utilisation «s’authentifier »
Figure 4 : diagramme de cas utilisation d’authentification
Description :
Tableau 1:description de cas utilisation d'authentification
Nom de cas : S’authentifier
Acteur : Le client, l’administrateur, employer, chauffeur
Pré-condition :
Le login et le mot de passe saisis doivent être valides
Post-condition :
Ouverture son session privée
Scenario nominal :
1-Le système affiche le formulaire d’authentification
2-L’utilisateur saisie son pseudo et son mot de passe
3-le système vérifie la validité des donnes saisies
4-Le système vérifie l’existence de l’utilisateur
5-Si l’utilisateur est authentifié le système affiche son espace privé
21. Page 12
Enchainement
alternatif :
E.A.1-Les donné saisie n’est pas valide et/ou vide :
(Le système affiche un message d’erreur)
E.A.2-L’utilisateur n’existe pas ou existe déjà dans la base de
donné :
(Le système affiche un message d’erreur)
4.2. Diagramme de séquence « s’authentifier »:
Figure 5:diagramme de séquence d’authentification
22. Page 13
4.3. Diagramme de cas d’utilisation «gérer un compte» :
Figure 6 : diagramme de cas d’utilisation gérer un compte
Description :
Tableau 2:description de cas utilisation gerer un compte
Nom de cas : Gérer un compte
Acteur : Le client
Pré-condition : Le client doit être authentifié
Post-condition :
Ouverture son session privée
Scenario nominal :
Le client a la permission de gérer son compte avec les opérations
de suppression, modification.
Enchainement
alternatif :
Si les champs est invalide le système affiche message d’erreur
23. Page 14
4.4. Diagramme de séquence «gérer un compte » :
Figure 7 :diagramme de séquence gérer un compte
24. Page 15
4.5. Diagramme de cas d’utilisation «demander un camion de
remorquage » :
Figure 8:diagramme de cas utilisation demander un camion de remorquage
Description :
Tableau 3:description de cas utilisation demander un camion de remorquage
Nom de cas : demander un camion de remorquage
Acteur : Client
Pré-condition :
Le client doit être authentifié
Post-condition : L’ouverture de la session privée
Scenario nominal :
1. Le système affiche l'interface relative à «espace de client»
2. le système offre la possibilité d’appeler l’administrateur de service de
remorquage ou d’envoyer une demande à travers des informations
relatives au nom, prénom, nombre de personne, type de voiture, et la
position actuelle.
3. Le système effectue l’envoie de demande avec succès.
Enchainement alternatif
E.A : Lors de l’envoie d’un demande de remorquage si la nature des
25. Page 16
champs saisie incorrecte ou un champ obligatoire n’est pas remplie à, un
message d'erreur sera affiché.
(Le système affiche un message d’erreur)
4.6. Diagramme de séquence «demander un camion de
remorquage » :
Figure 9 : diagramme de séquence demander un camion de remorquage
26. Page 17
4.7. Diagramme de cas utilisation «contacter l’agence » :
Figure 10 : diagramme de cas utilisation contacter l’agence
Description :
Tableau 4:description de cas utilisation contacter l’agence
Nom de cas : Contacter l’entreprise
Acteur : Client
Pré-condition :
Le client doit être authentifié
Post-condition : L’ouverture de la session privée
Scenario nominal :
1. Le système affiche l'interface relative à «espace de client»
2. L’utilisateur choisit contact.
3. Le système affiche le numéro d’entreprise.
4. Le client appelle le numéro.
27. Page 18
4.8. Diagramme de séquence «contacter l’agence » :
Figure 11 :diagramme de séquence contacter l’agence
28. Page 19
4.9. Diagramme de cas d’utilisation «traiter le demande de
remorquage » :
Figure 12:diagramme de cas utilisation traiter les demandes de remorquage
Description :
Tableau 5:description de cas utilisation traiter le demande de remorquage
Nom de cas : Traiter les demandes de remorquage
Acteur : Admin , employer
Pré-condition :
L’admin et l’employer doit être authentifié
Post-condition : L’ouverture de la session privée
Scenario nominal :
1. Le système affiche l'interface relative aux demandes de remorquage
2. le système offre la possibilité de localiser la position actuelle de voiture.
3. Affecter un camion de remorquage pour un client.
29. Page 20
Enchainement alternatif
E.A : Lors la localisation de voiture en pannes’il n’est pas des connexions
internet la carte googlemap n’affiche rien.
(Le système affiche un message d’erreur)
4.10. Diagramme de séquence «traiter des demandes de
remorquage » :
Figure 13:diagramme de séquence traiter la demande de remorquage
30. Page 21
4.11. Diagramme de cas utilisation «s’inscrire » :
Figure 14:diagramme de cas utilisation s’inscrire
Description :
Tableau 6:description de cas utilisation s’inscrire
Nom de cas : S’inscrire
Acteur : Client
Pré-condition :
L’utilisateur demande le formulaire d’inscription.
Post-condition :
L’application affiche le formulaire d’inscription
Scenario nominal :
1. Le client demande la création d’un nouveau compte,
2. Le système affiche le formulaire d’inscription,
3. L’utilisateur remplit le formulaire puis valide,
4. Le système vérifie puis créer un nouveau compte avec les
informations saisies,
Enchainement
alternatif
E.A : Champs obligatoires non valides et/ou vides
(Le système affiche un message d’erreur)
31. Page 22
4.12. Diagramme de séquence «s’inscrire » :
Figure 15:diagramme de séquence s’inscrire
32. Page 23
4.13. Diagramme de cas utilisation «valider un client» :
Figure 16:diagramme de cas utilisation valider un client
Description :
Tableau 7:description de cas utilisation valider un client
Nom de cas : Valider un client
Acteur : Admin
Pré-condition : Le client doit être authentifié
Post-condition :
L’ouverture de la session privée
Scenario nominal :
1. l’admin demande valider un nouveau compte client,
2. Le système affiche l’interface de validation,
3. L’admin valide le client inscrit.
33. Page 24
4.14. Diagramme de séquence «valider un client» :
Figure 16:diagramme deséquence valider un client
4.15. Diagramme de cas utilisation «modifier l’état camion » :
Figure 17:diagramme de cas utilisation modifier l’état camion
34. Page 25
Description :
Tableau 8:description de cas utilisation modifier l’état camion
Nom de cas : Modifier l’état camion
Acteur : Chauffeur
Pré-condition : Le chauffeur doit être authentifié
Post-condition :
L’ouverture de la session privée
Scenario nominal :
1. le chauffeur demande modifier la disponibilité d’un camion,
2. Le système affiche l’interface de disponibilité,
3. le chauffeur choisir l’état d’un camion.
4. le chauffeur modifier l’état
35. Page 26
4.16. Diagramme de séquence «modifier l’état camion » :
Figure 18:diagramme de séquence modifier l’état camion
36. Page 27
4.17. Diagramme de cas utilisation «gérer les utilisateurs » :
Figure 19:diagramme de cas utilisation gérer les utilisateurs
Description :
Tableau 9:description de cas utilisation gérer l’utilisateur
Nom de cas : Gérer un utilisateur
Acteur : Administrateur
Pré-condition :
L’administrateur d’S.O.S Remorquage doit être authentifié
Post-condition : L’interface de consultation des utilisateurs
Scenario nominal :
1. Le système affiche l'interface relative à «Consultation des utilisateurs »
2. le système assure la mise à jour, vue, recherche, création, et la
suppression des utilisateurs.
3. Le système effectue les opérations de consultation avec succès.
37. Page 28
Enchainement alternatif
E.A : Lors de l’ajout d’un nouveau utilisateur si la nature des champs
saisie incorrecte ou un champ obligatoire n’est pas remplie ou bien
l'utilisateur a ajouter existe déjà, un message d'erreur sera affiché.
Lors de la modification d'un utilisateur si la nature des champs saisie
incorrecte ou un champ obligatoire n’est pas remplie ou bien les nouveaux
camions existe.
(Le système affiche un message d’erreur)
4.18. Diagramme de séquence «gérer les utilisateurs » :
39. Page 30
4.19. Diagramme de cas utilisation «gérer les camions » :
Figure 21:diagramme de cas utilisation gérer les camions
Description :
Tableau 10:description de cas utilisation gérer les camions
Nom de cas : Gérer un camion
Acteur : Administrateur
Pré-condition :
L’administrateur d’S.O.S Remorquage doit être authentifié
Post-condition : L’interface de consultation des camions
Scenario nominal :
1. Le système affiche l'interface relative à «Consultation des camions »
2. le système assure la mise à jour, vue, recherche, création, et la
suppression des camions.
3. Le système effectue les opérations de consultation avec succès.
40. Page 31
Enchainement
alternatif
E.A : Lors de l’ajout d’un nouveau camion si la nature des champs saisie
incorrecte ou un champ obligatoire n’est pas remplie ou bien le camion a
ajouter existe déjà, un message d'erreur sera affiché.
Lors de la modification d'un camion si la nature des champs saisie
incorrecte ou un champ obligatoire n’est pas remplie ou bien les
nouveaux camions existe.
(Le système affiche un message d’erreur)
41. Page 32
4.20. Diagramme de séquence «gérer les camions » :
Figure 22:diagramme deséquence gérer les camions
42. Page 33
4.21. Diagramme de cas utilisation «gérer les chauffeurs » :
Figure 23:diagramme de cas utilisation gérer les chauffeurs
Description :
Tableau 11:description de cas utilisation gérer les chauffeurs
Nom de cas : Gérer un chauffeur
Acteur : Administrateur
Pré-condition :
L’administrateur d’S.O.S Remorquage doit être authentifié
Post-condition : L’interface de consultation des chauffeurs
Scenario nominal :
1. Le système affiche l'interface relative à «Consultation des chauffeurs »
2. le système assure la mise à jour, vue, recherche, création, et la
suppression des clients.
3. Le système effectue les opérations de consultation avec succès.
Enchainement
alternatif
E.A : Lors de l’ajout d’un nouveau chauffeur si la nature des champs
saisie incorrecte ou un champ obligatoire n’est pas remplie ou bien le
43. Page 34
chauffeur a ajouter existe déjà, un message d'erreur sera affiché.
Lors de la modification d'un chauffeur si la nature des champs saisie
incorrecte ou un champ obligatoire n’est pas remplie ou bien le nouveau
chauffeur existe.
(Le système affiche un message d’erreur)
44. Page 35
4.22. Diagramme de séquence «gérer les chauffeurs » :
Figure 24:diagramme de séquence gérer les chauffeurs
45. Page 36
5. Conclusion :
Le but de ce chapitre consiste à définir les différents acteurs du système et à présenter une
modélisation détaillée en diagramme de cas d’utilisation pour obtenir à une formalisation
claire de ce qui a été établi au cours de cette étude Dans le deuxième chapitre nous nous
attacherons à la phase de conception en présentent les diagrammes des séquences et des
classes.
46. Page 37
CHAPITRE 3: Conception
1. Introduction :
Dans ce chapitre nous nous intéressons à la conception d’une solution répondant aux
spécifications présentées dans le chapitre précédent. La conception est la phase qui vise à
transformer un concept abstrait en un produit réel. Elle permet d’élaborer une base solide sur
laquelle s’appuiera le projet. Nous allons présenter tout d’abord les diagrammes de puis classe
on va réaliser le diagramme séquence.
2. Outils de modélisation :
2.1. Entreprise architecte :
Entreprise architecte est une solution de modélisation et de gestion de métadonnées à la
pointe de l’innovation, destinée aux architectures de données, aux architectures
d’informations et aux architectures d’entreprise.
2.2. Développement du modèle dynamique
UML : (UnifiedModelingLanguage) est une méthode de modélisation orientée objet dans le
but de définir la notation standard pour la modélisation des applications construites à l’aide
d’objets. Elle est utilisée pour spécifier un logiciel et/ou pour concevoir un logiciel. Dans la
spécification, le modèle décrit les classes et les cas d’utilisation vus de l’utilisateur final du
logiciel. Le modèle produit par une conception orientée objet est en général une extension du
modèle issu de la spécification. Il enrichit ce dernier de classes, dites techniques, qui
n’intéressent pas l’utilisateur final du logiciel mais seulement ses concepteurs. Il comprend les
modèles des classes, des états et d’interaction. UML est également utilisée dans les phases
terminales du développement avec les modèles de réalisation et de déploiement.
47. Page 38
3. Développement du modèle statique (Diagramme de classe)
3.1. Définition :
Un diagramme de classes UML décrit les structures d'objets et d'informations utilisées par
votre application, à la fois en interne et dans la communication avec ses utilisateurs. Il décrit
les informations sans faire référence à une implémentation particulière. Ses classes et relations
peuvent être implémentées de nombreuses manières, comme les tables de base de données, les
nœuds XML ou encore les compositions d'objets logiciels.
3.2. Dictionnaire de donnée :
Classe Attribut Désingation
Userweb
ID
Nom
Pérnom
login
Password
CIN
-L’identifiant de l’utilisateur.
- Le nom de l’utilisateur.
- Le prénom de l’utilisateur.
- Login de utilisateur
- Mot de pase de utilisatur
- le cin de l’utilisateur
Client ID
Nom
Prenom
Pseudo
Password
Num_doss_ass
email
L’identifiant de l’utilisateur.
- Le nom de l’utilisateur.
- Le prénom de client.
- Login de utilisateur
- Mot de pase declient
-numéro de dossier assurance
-email de client
Chauffeur ID
Nom
Pérnom
login
Password
CIN
-L’identifiant de chauffeur.
- Le nom de l’utilisateur.
- Le prénom de l’utilisateur.
- Login de utilisateur
- Mot de pase de utilisatur
- le cin de l’utilisateur
Camion
ID
Marque
Model
Matricule
-Identifiant ‘un camion
-marque de la camion
-model de la camion
-matricule de la camion
Demande ID
Nom&prenom
Type de voiture
Nombre de personne
description
-Identifiant de demande
-le nom et prenom de client
-le type de voiture en panne
-le nombre de personne
-le description
48. Page 39
Historique
ID
Nom prenom
Date de demande
-Identifiant de historique
Nom prenom
Le date d’envoie de demande
Date_envoie
ID
Camion_id
Chaufeur_id
Identifiant de date_envoie
Cle etranger camion
Cle etranger chaufeur
3.3. Représentation graphique:
Figure 26:diagramme de classe
49. Page 40
3.4. Modèle Conceptuelle de donnée :
Figure 26:modèle conceptuelle de donnée
4. Développement du modèle statique (Diagramme de classe)
50. Page 41
4.1. Diagramme de séquence détaillé «s’authentifier » :
Figure 27:diagramme de séquence détaillé s’authentifier
La figure 21 illustre le diagramme de séquence détaillé de l'authentification qui permet
la connexion à l'application.
51. Page 42
4.2. Diagramme de séquence détaillé «gérer un compte» :
Figure 28:diagramme de séquence détaillé gérer un compte
La figure 22 illustre le diagramme de séquence détaillé de gérer un compte
52. Page 43
4.3. Diagramme de séquence détaillé «s’inscrire» :
Figure 29:diagramme de séquence détaillé s’inscrire
La figure 23 illustre le diagramme de séquence détaillé de l'inscription qui permet
l’inscription au sein de l'application.
53. Page 44
4.4. Diagramme de séquence détaillé «contacter l’agence» :
Figure 30:diagramme de séquence détaillé contacter l’agence
La figure 24 illustre le diagramme de séquence détaillé de contacter l’agence qui
permet l’inscription au sein de l'application.
54. Page 45
4.5. Diagramme de séquence détaillé «demander un camion de
remorquage» :
Figure 31:diagramme de séquence détaillé demander un camion de remorquage
La figure 25 illustre le diagramme de séquence détaillé de demander un camion de
remorquage.
55. Page 46
4.6. Diagramme de séquence détaillé «traiter les demandes de
remorquage» :
Figure 32:diagramme de séquence détaillé traiter les demandes de remorquage
La figure 26 illustre le diagramme de séquence détaillé traité les demandes de
remorquage.
56. Page 47
4.7. Diagramme de séquence détaillé «gérer les utilisateurs» :
Figure 33:diagramme de séquence détaillé gérer les utilisateurs
57. Page 48
4.8. Diagramme de séquence détaillé «gérer les camions» :
Figure 34:diagramme de séquence détaillé gérer les camions
58. Page 49
4.9. Diagramme de séquence détaillé «gérer les chauffeurs» :
Figure 35:diagramme de séquence détaillé gérer les chauffeurs
59. Page 50
4.10. Diagramme de séquence détaillé «valider un compte client» :
Figure 36:diagramme de séquence détaillé valider un compte client
60. Page 51
4.11. Diagramme de séquence détaillé «modifier l’état d’un
camion» :
Figure 37:diagramme de séquence détaillé modifier l’état d’un camion
61. Page 52
5. Diagramme d’activité côté application Android
Le diagramme d'activité permet de fournir une vue du comportement d'un système
en décrivant la séquence d'actions d'un processus. Il est similaire aux organigrammes de
traitement de l'information, car ils montrent les flux entre les actions dans une activité.
Description : Après avoir activer le GPS et lancer l’application, le client remplit un
formulaire de demande de remorquage, au moment où il envoie cette demande, la méthode
GPSTracker est activée, elle permet de positionner le client en panne sur un plan ou une carte
à l'aide de ses coordonnées géographiques. La demande du client, qui englobe les
informations saisies par le client en plus les coordonnées géographiques, est ensuite transférer
vers le serveur qui va lui renvoyer un message de réponse à sa demande.
Figure 38: Diagramme d’activité côté application Android
62. Page 53
6. Conclusion :
Au cours de ce chapitre, nous avons présenté la conception de notre future application,
cette étape nous a permis de mieux comprendre les besoins des utilisateurs d’analyser le
fonctionnement de notre application ce qui va nous faciliter notre prochaine étape qui est la
réalisation.
63. Page 54
CHAPITRE 4: Réalisation
1. Introduction :
Ce chapitre constitue le dernier volet de ce rapport, il a pour objectif d’exposer le travail
réaliser. Nous présentons, en premier lieu l’environnement de travail et les outils de
développement utilisés. En second lieu, nous élaborons une présentation des différentes
interfaces développées. Dans cette section, nous allons présenter l’ensemble d’outils et
moyens techniques qui constituent l’environnement général de développement de
l’application. Nous commençons à parler sur l’environnement matériel, l’environnement
logiciel et en fin de langage de développement.
1.1. Diagramme de déploiement «SOS remorquage» :
Un diagramme de déploiement est un diagramme de classes ou un diagramme d’objets
représentant les nœuds ou les instances de nœuds sur lesquels le système s’exécute tout en
proposant une vision statique de la topologie du matériel sur lequel s’exécute le système et en
montrant les associations (connexions) qui existent entre les nœuds du système. La figure 20
montre le diagramme de déploiement de notre système.
Figure 39:Diagramme de déploiement du système "SOS Remorquage"
64. Page 55
2. Environnement de développement :
2.1. Environnement matériel :
2.1.1. Architecture :
SOS remorquage est une application qui se connecte à un serveur de base de données distant,
via Internet, afin de récupérer les données. Ce qui nécessite aussi l’intégration d’un serveur
web entre l’application client et le serveur de base de données. D’où l’architecture de notre
application est à 3 niveaux (architecture 3-tiers), elle est partagée entre:
❖ Le client Android : Conteneur d’application et demandeur de ressources,
❖ Le serveur Web : Vu que les données seront communiquées entre deux environnements
hétérogènes, le rôle principal du serveur web est de gérer la communication entre le client
Android et le serveur de base de données.
❖ Le serveur de base de données fournit les données au serveur web.
Figure 40: Architectures matériels de système
65. Page 56
2.1.2. Matériel utilisés :
Pour la réalisation du projet, nous avons utilisé :
Machine de développement 1 :
Processeur : Intel(R) Pentium(R) CPU M380 @2.53GHz 2.53GHz
Mémoire RAM : 4Go
Type de système : Windows 7 32bit
Machine de développement 1 :
Processeur : Intel(R) Core(TM) i3 CPU M380 @2.53GHz 2.53GHz
Mémoire RAM : 4Go
Type de système : Windows 7 32bit
Figure 41: technologie utilisé
La méthode la plus répandue de se connecter à une base de données MySQL à distance à
partir d'un appareil Android, est de mettre une sorte de service dans le milieu. MySQL est
habituellement utilisé avec PHP, donc la façon la plus simple et la plus évidente d'écrire des
66. Page 57
scripts PHP pour gérer la base de données et exécuter ces scripts en utilisant le protocole
HTTP du système Android. Nous avons codé les données dans le format JSON, à fin de
communiquer les données entre PHP et Android, en exploitant les options faciles à utiliser
construit dans les fonctions JSON dans les deux langages. Si nous parlons de l'architecture 3-
tiers de point de vue technologie, le client est la plateforme Android, le serveur web est le
PHP et le serveur de base de données est le MySQL.
Figure 42: Architecture 3-tiers de point de vue technologie
2.2. Environnement logiciel :
2.2.1. Logiciels utilisés :
Eclipse :
Eclipse est un environnement de développement intégré libre extensible, universel et
polyvalent, permettant de créer des projets de développement mettant en oeuvre n'importe
quel langage de programmation. Eclipse est principalement écrit en Java.La spécificité
67. Page 58
d'Eclipse IDE vient du fait de son architecture totalement développée autour de la notion de
plugin : toutes les fonctionnalités de cet atelier logiciel sont développées en tant que plug-in.
Le SDK Android :
Le kit de développement (SDK) d'Android est un ensemble complet d'outils de
développement. Il inclut un débogueur, des bibliothèques logicielles, un émulateur, de la
documentation, des exemples de code et des tutoriaux.
Figure 43:Android SDK
Nous l’avons évoqué plus haut, Le SDK comprend un émulateur qui permet de simuler les
différentes versions d'Android, permettant ainsi aux développeurs de tester leurs applications
ou de tester les fonctionnalités d'Android. Le SDK contient plusieurs images en fonction des
différentes versions d’Android.
68. Page 59
Eclipse est l’Environnement de Développement Intégré (ou IDE) le plus largement utilisé
pour la programmation Java, très performant, il est de plus gratuit et open source. Le langage
privilégié pour le développement d’applications Android est justement Java. Google a donc
tout naturellement conçu un plugin pour Eclipse (un plugin est un module qui complète un
logiciel hôte pour lui apporter de nouvelles fonctionnalités). Android Développement Tools,
ou ADT, est très complet et surtout très pratique : conception graphique d’interfaces
utilisateur, debug distant sur un téléphone, gestion de l’architecture de fichiers d’une
application etc.
Symfony2
Symfony 2 est un framework web, c'est à dire un outil très complet permettant de réaliser des
applications web.D'après son créateur Fabien Potencier, Symfony 2 est en fait plus un
rassemblement de bibliothèques et de composants tous fortement découplés assemblées et
paramétrés pour fonctionner ensemble.
En effet, Symfony2 se base notamment sur:
• Doctrine pour requêter la base de données
• Twig pour le rendu de ses templates
SwiftMailer pour l'envoi d'e-mails
WampServeur :
WampServer est une plate-forme de développement Web sous Windows pour des applications
Web dynamiques à l’aide du serveur Apache2, du langage de scripts PHP et d’une base de
données MySQL. Il possède également PHPMyAdmin pour gérer plus facilement les bases de
données. [3]
GanttProject :
GanttProject est une application programmée en Java permettant de gérer un projet constitué
de tâches auxquelles on assigne des propriétés (dates, ressources, priorité, etc.) et qu'on peut
lier entre elles par des relations de dépendance. Le tout est édité sous forme de diagrammes de
Gantt. [4]
69. Page 60
netbeans :
NetBeans est un environnement de développement intégré (EDI), placé en open source par
Sun en juin 2000 sous licence CDDL (Common Development and Distribution License) et
GPLv2. En plus de Java, NetBeans permet également de supporter différents autres
langages, comme C, C++, JavaScript, XML, Groovy, PHP et HTML de façon native ainsi que
bien d'autres (comme Python ou Ruby) par l'ajout de greffons. Il comprend toutes les
caractéristiques d'un IDE moderne (éditeur en couleur, projets multi-langage, refactoring,
éditeur graphique d'interfaces et de pages Web).
Apache :
Apache HTTP est un serveur web utilisé en entreprise et sur des serveurs privés. Il permet
d'utiliser plusieurs technologies web telles PHP, SSL et servir de proxy vers d'autres serveurs
web pour faire de la balance de charge ou simplement pour accéder à d'autres technologies.
2.2.2. Les serveurs :
La partie serveur est composé de deux serveurs distants: le serveur web et le serveur de base
données.
Le serveur Web utilisé est le serveur Apache car il est le serveur le plus répandu sur
Internet pour déployer les scripts PHP,
Le serveur de base de données utilisé est le serveur MySQL. Nous avons l’utilisé car il est
très rapide et plus simple à utiliser que la plupart des serveurs de base de données.
2.3. Protocoles et formats des données :
2.3.1. Protocole de communication :
Dans notre projet, nous avons utilisé le protocole HTTP, afin de communiquer les données
entre les clients et le serveur web.
70. Page 61
En général, nous utilisons la méthode Post pour envoyer des données au programme situé à
une URL spécifiée.
2.3.2. Format de données communiquées :
JSON (JavaScript Object Notation) est un format de données textuel, générique, dérivé de la
notation des objets du langage ECMAScript. Il permet de représenter de l’information
structurée. [6]
Un document JSON ne comprend que deux éléments structurels :
Sembles de paires nom / valeur,
Ces mêmes éléments représentent 3 types de données :
Le principal avantage de l’utilisation de JSON, dans notre application, est qu’il est simple à
mettre en oeuvre. Au rang des avantages, nous pouvons également citer :
le à apprendre, car sa syntaxe est réduite et non-extensible,
nt connus et simples à décrire, langage XML qui est très verbeux.
Lorsque l'application Android s'exécute, elle se connectera au script PHP. Le script PHP va
récupérer les données depuis la base de données MySQL. Ensuite les données seront encodées
au format JSON et envoyées au système Android. Ensuite, l'application Android va obtenir
ces données codées. Elle les analysera et les affichera sur le mobile.
3. Interface :
Voici l’enchaînement de quelques interfaces accompagnées par leurs scénarios descriptifs :
3.1. Partie FrontOffice
72. Page 63
Figure 45:interface d’authentification
Pour chaque client, nous attribuons un login et un mot de passe. Pour se connecter, il doit les
remplir correctement. A partir des champs saisis, le système affiche le profil correspondant pour
chaque acteur. Si les champs ne sont pas corrects, le système demandé à l’utilisateur de les
vérifier et les saisir de nouveau. La figure suivante illustre le formulaire d’authentification.
73. Page 64
Figure 46:interface menu
L’utilisateur sélectionne l’icône de l’application pour pouvoir accéder à l’interface de menu.
Figure 47:interface de modification des informations de confidentialité
74. Page 65
Figure 48:interface de modification de demande de remorquage
Coté chauffeur
Figure 49:interface d’authentification
78. Page 69
Figure 55:interface liste utilisateurs
Figure 56:interface d’ajout d’un camion
Figure 57:interface de validation par email
79. Page 70
Figure 58:interface localisation de la voiture en panne
4. Conclusion :
Ce chapitre nous a permis d'étudier les différents outils de développements et de choisir
l'environnement de travail. Nous avons présenté les aspects de réalisation de notre application
ainsi que quelques aperçus d'écrans illustrant quelques scénarios d’utilisation de l’application.
80. Page 71
Conclusion
Ce travail a été réalisé au sein de centre nationale d’informatique qui consiste à concevoir et
implémenter une application Android de « SOS remorquage ». Ce projet a été mené dès le but
de réaliser une solution conviviale et innovante, dotée d’une interface particulièrement simple
et facile à utiliser.
L’application que nous avons mise en place, offre à ses utilisateurs un accès sécurisé et
universel via les appareils mobiles, en leur proposant divers services, tel que : la consultation
des comptes personnels, l’accès aux différents produits et aux différents contacts, suivis de
l’actualité de l’agence, un service de géo localisation etc.
D’autre part, cette application va permettre d’augmenter le nombre de ses clients, améliorer
sa productivité et profiter de tous les avantages qu’offre une application Android.
Il en résulte de ce qui précède que le stage de fin d’études a été pour nous une grande
opportunité puisqu’il était question de corroborer les connaissances et les théories que nous
avons apprises au cours de notre formation par de la pratique englobant plusieurs aspects
d’implémentation, de conception et de déploiement, ainsi ancré et approfondi nos
connaissances.
Sur le plan technique ce projet nous a permis de nous adopter par la première fois à
l’environnement Android, la plateforme SDK et le langage JSON qui est destiné à la gérance
de la communication des données entre deux environnements hétérogènes qui sont le client
Android et le serveur de base de données.
Comme perspective de ce travail, notre application pourrait être enrichie par un module de
paiement en ligne afin que le client effectue tous les virements d’argents sans se déplacer.
Enfin la mise en œuvre d’une application Android à travers les réseaux sans fils est certes
innovante, cependant la sécurisation des échanges demeurât un problème crucial à résoudre
pour qu’on puisse garantir l’intégrité, la confidentialité et la cohérence des données.
82. Page 73
TITRE DU PROJET
Application Web et Android pour le service de
remorquage
Résumé :
Ce présent rapport a été rédigé dans le cadre du projet de fin d’étude pour l’obtention du
diplôme de la licence en informatique de gestion. Ce projet consiste a développer une
application web et mobile d’SOS remorquage. Afin de mettre en œuvre ce projet, nous avons
utilisé le Framework « symfony2 »pour le développement web et Android pour le
développement mobile.
❖ Mot clés : Android, symfony2, SDK
Abstract:
This report was written as part of the final project study for graduation from the management
computer license. This project is to develop a mobile and web application SOS tow. To
implement this project, we used the Framework "Symfony2" for Android and web
development for mobile development.
❖ Keyword: Android, symfony2, SDK.