Vous êtes sur la page 1sur 98

_ Q



O _

_ : _ O_ _C
Q O


j : A j
:
A_A

:
Q : -

MINISTERE DE LEDUCATION,
DE LA JEUNESSE ET DES SPORTS

INSTITUT DE TECHNOLOGIE DU CAMBODGE

DEPARTEMENT DE GENIE INFORMATIQUE ET COMMUNICATION

MEMOIRE DE FIN DETUDES

Titre : Systme de Gestion pour les Chefs de Chantier et
Store Multimdia pour la Socit TC Computer
Etudiant : M. SAY Vortana
Spcialit : Informatique et Communication
Matre de stage : Dr. SENG Sopheap
Anne scolaire : 2012 2013



_ Q
A





O _
j A j
AR C
HO
A ________________
C

_ : _ O__C
Q O



_ :

_ :
A_A O :
_

_ : R


O


MINISTERE DE LEDUCATION,
DE LA JEUNESSE ET DES SPORTS

INSTITUT DE TECHNOLOGIE DU CAMBODGE
DEPARTEMENT GENIE INFORMATIQUE ET COMMUNICATION




MEMOIRE DE FIN DETUDES INGENIEUR
DE M. SAY Vortana


Date de soutenance : le 15 juillet 2013

Autorise la soutenance de mmoire


Directeur de lInstitut : Dr. OM Romny
Phnom Penh, le juillet 2013


Titre :Systme de Gestion pour les Chefs de chantier et
Store Multimdia pour la Socit TC Computer

tablissement du Stage : CamMob


Chef du dpartement : Dr. SENG Sopheap

Professeur encadrant du projet : Dr. SENG Sopheap

Responsable dans ltablissement : M. KONG Kannika


PHNOM PENH, 2013


REMERCIEMENTS
Premirement, je tiendrais exprimer tout particulirement mes reconnaissances et ma
profonde gratitude aux personnes suivantes qui mont aides raliser avec succs le projet
propos pendant mon stage:
Je voudrais exprimer spcialement ma reconnaissance mes parents pour le support
financire, lencouragement et la motivation tout au long de ma vie.
Son Excellence Mme. PHOEURNG Sackona, Secrtaire dEtat du Ministre de
lEducation, de la Jeunesse et des Sports et Prsidente du Conseil dAdministration de
lITC, pour ses efforts considrables qui contribuent davantage au dveloppement durable
de lITC et qui font de lITC un ple technologique reconnu pour sa qualit de formation
lchelle nationale, rgionale et internationale.
Son Excellence Dr. OM Romny, directeur de lITC pour sa bonne gestion de linstitut et
ses bonnes cooprations avec les universits partenaires au niveau local, rgional et
international qui renforce la qualit de la formation des ingnieurs et des techniciens
suprieurs.
Dr. SENG Sopheap, chef du dpartement Gnie Informatique et Communication, pour sa
bonne gestion, ses bons conseils, et ses bonnes relations avec les entreprises qui accueillent
chaque anne des tudiants de dpartement GIC pour faire du stage.
Dr. SENG Sopheap, mon matre de stage, de mavoir expliqu des techniques permettant
deffectuer mon stage. Je le salue galement pour ses remarques et corrections qui ont
permis l'laboration de ce mmoire.
M. KONG Kannika, mon tuteur de stage, de m'avoir donn toujours des conseils trs
prcieux pour rsoudre des problmes pendant le stage.
Merci tous les enseignants de dpartement GIC de me transmettre des connaissances trs
prcieuses pendant mes tudes lITC.
Finalement, Merci tous les employs de CAMMOB pour mavoir intgr rapidement au
sein de lentreprise.




i



TABLE DES MATIERES
REMERCIEMENTS ........................................................................................ i
RESUME .......................................................................................................... ii

INTRODUCTION ........................................................................................... 1
I. PRESENTATION GENERALE ................................................................ 2
1. Prsentation de lentreprise ............................................................................................ 2
1.1. Introduction lentreprise............................................................................................... 2
1.2. Activits et services de lentreprise ................................................................................ 3
1.3. Situation gographique et contact ................................................................................... 3
2. Prsentation des projets du stage ................................................................................... 3
2.1. Missions .......................................................................................................................... 4
2.1.1. Le Systme de Gestion pour les Chefs de Chantier ..................................................... 4
2.1.2. Le Store Multimdia pour la Socit TC Computer .................................................... 4
2.2. Planification Globale ...................................................................................................... 5
3. Mthodologie de dveloppement .................................................................................... 6
3.1. Cest quoi le Scrum ? ...................................................................................................... 6
3.2. Les rles et outils impliqus dans la mthodologie ........................................................ 7
3.3. Comment le Scrum marche ? .......................................................................................... 8

II. SYSTEME DE GESTION POUR LES CHEFS DE CHANTIER ..... 10
1. Prsentation du projet ................................................................................................... 10
1.1. Problmatique ............................................................................................................... 11
1.2. Objectif global du projet ............................................................................................... 11
1.3. Organisation de lquipe ............................................................................................... 12
2. Planification .................................................................................................................... 13
3. Analyse et Spcifications des Besoins ........................................................................... 14
3.1. Etude de besoins ........................................................................................................... 14
3.1.1. Besoins fonctionnels .................................................................................................. 14
3.1.2. Besoins non fonctionnels ........................................................................................... 14
3.2. Contraintes du systme ................................................................................................. 15
4. Cas dutilisation ............................................................................................................. 15
4.1. Acteur ........................................................................................................................... 16
4.2. Spcification de chaque cas dutilisation ...................................................................... 23
5. Choix de Technologie et Conception ............................................................................ 24
5.1. Technologies utilises ................................................................................................... 24
5.1.1. Cot client .................................................................................................................. 24


5.1.2. Cot Serveur .............................................................................................................. 25
5.2. Outils utiliss ................................................................................................................ 26
6. Architecture du Systme ............................................................................................... 27
6.1. Architecture physique ................................................................................................... 27
6.2. Architecture logique ..................................................................................................... 28
7. Conception de Base de Donnes ................................................................................... 29
8. Organisation de lIHM .................................................................................................. 29
9. Implmentation du projet ............................................................................................. 31
9.1. Comment faire pour utiliser Google Maps sur votre site web ? ................................... 31
9.2. Comment afficher les informations sur le Google Map ............................................... 32
6.2. DataTables .................................................................................................................... 33
9.3. Twitter boostrap ............................................................................................................ 33
9.4. Changer la langue entre langlais et le khmer .............................................................. 34
10. Bilan du Systme des Gestion pour les Chefs de Chantier ...................................... 35
10.1. Fonctionnalits ralises ............................................................................................. 35
10.2. Points forts et points faibles du produit ...................................................................... 35
10.2.1. Points forts ............................................................................................................... 35
10.2.2. Points faibles ............................................................................................................ 35

III. LE STORE MULTIMDIA POUR LA SOCIT TC COMPUTER
36
1. Prsentation du Projet ................................................................................................... 36
1.1. Problmatique ............................................................................................................... 37
1.2. Objectif global du projet ............................................................................................... 37
1.3. Organisation de lquipe ............................................................................................... 38
2. Planification ................................................................................................................... 39
3. Analyse et Spcification de Besoins .............................................................................. 40
3.1. Besoins fonctionnels ..................................................................................................... 40
3.2. Besoins non fonctionnels .............................................................................................. 42
3.3. Contraintes du systme ................................................................................................. 42
3.4. Cas dutilisation ............................................................................................................ 43
3.4.1. Acteur ........................................................................................................................ 44
3.4.2. Spcification de chaque cas dutilisation ................................................................... 52
4. Choix de Technologie et Conception ............................................................................ 54
4.1. Choix de technologie .................................................................................................... 54
4.1.1. Technologies utilises ................................................................................................ 54
4.1.1.1. Cest quoi CakePHP ? ............................................................................................ 54
4.1.1.2. MVC (Modle Vue Contrleur) ............................................................................. 55
4.1.1.3. Moins de configurations et plus de conventions .................................................... 56
4.1.2. Langages utiliss ........................................................................................................ 57
4.1.3. Outils utiliss ............................................................................................................. 58
4.2. Architecture du systme ............................................................................................... 58


4.2.1. Architecture physique ................................................................................................ 58
4.2.2. Architecture logique .................................................................................................. 59
4.3. Conception de base de donn ....................................................................................... 61
4.4. Organisation de lIHM ................................................................................................ 62
5. Implmentation .............................................................................................................. 64
5.1. Cration de modles, contrleurs et vues ..................................................................... 64
5.1.1. Modle ....................................................................................................................... 64
5.1.2. Contrleur .................................................................................................................. 65
5.1.3. Vue ............................................................................................................................. 66
5.2. Conventions dans CakePHP ......................................................................................... 67
5.3. Couper la musique et la vido ...................................................................................... 67
6. Bilan du Store Multimdia pour la Socit TC Computer ........................................ 69
6.1. Fonctionnalits ralises ............................................................................................... 69
6.2. Points forts et points faibles du produit ........................................................................ 69
6.2.1. Points forts ................................................................................................................. 69
6.2.2. Points faibles .............................................................................................................. 69

IV. CONCLUSION ........................................................................................ 70
1. Exprience acquise ......................................................................................................... 70
2. Difficults ........................................................................................................................ 70
3. Perspective ...................................................................................................................... 70

REFERENCES BIBLIOGRAPHIQUES ..................................................... 71
ANNEXE A : SCHEMA DE DONNS ..................................................... 72
1. Systme de Gestion pour les Chefs de Chantier ......................................................... 72
2. Store Multimdia pour la Socit TC Computer ............................................................... 76
ANNEXE B : CAPTURE DECRAN ........................................................... 81
1. Systme de Gestion pour les Chefs de Chantier ......................................................... 81
2. Store Multimdia pour la Socit TC Computer ........................................................ 84







LISTE DES FIGURES
Figure 1: Logo de CamMob .................................................................................................. 2
Figure 2: Le processus de Scrum ........................................................................................... 6
Figure 3: Burndown chart ...................................................................................................... 9
Figure 4: Introduction du Systme de Gestion pour les Chefs de Chantier ........................ 10
Figure 5: Organisation de lquipe du projet Systme de Gestion pour les chefs de Chantier
..................................................................................................................................... 12
Figure 6: Diagramme de case dutilisation Systme de Gestion pour les Chefs de Chantier
..................................................................................................................................... 15
Figure 7: Architecture physique du systme ....................................................................... 27
Figure 8: Architecture logique du systme .......................................................................... 28
Figure 9: Conception de base de donn du Systme de Gestion des Sites de Construction 29
Figure 10: Diagramme de l'enchanement de fentre du manager ...................................... 30
Figure 11: Organisation de lquipe du Store Multimdia pour TC Computer ................... 38
Figure 12: Diagramme de case d'utilisation du systme TC Magasin ................................. 43
Figure 13: Droulement de la conception MVC ................................................................. 56
Figure 14: Architecture physique du systme ..................................................................... 58
Figure 15: Architecture logique du systme ........................................................................ 59
Figure 16: Conception de base de donn du systme TC Magasin ..................................... 61
Figure 17: Diagramme de l'enchanement de fentre dadministrateur ............................... 62
Figure 18: Diagramme de l'enchanement de fentre duploader ........................................ 63
Figure 19: Diagramme de l'enchanement de fentre de la rceptionniste .......................... 63
Figure 23: Page log in .......................................................................................................... 81
Figure 24: la carte de Google .............................................................................................. 81
Figure 25: Gestion du projet ................................................................................................ 81
Figure 26: Gestion dutilisateur ........................................................................................... 82
Figure 27: Gestion du produit .............................................................................................. 82


Figure 28: le rapport dactivits de lutilisateur .................................................................. 83
Figure 29: la rsultt dactivits de lutilisateur dans ce mois ............................................ 83
Figure 30: dactivits dtailler de lutilisateur ..................................................................... 83
Figure 31: Page log in .......................................................................................................... 84
Figure 32: Gestion de lapplication ..................................................................................... 84
Figure 33: Gestion de la catgorie ....................................................................................... 85
Figure 34: Gestion du crdit ................................................................................................ 85
Figure 35: Gestion dutilisateur ........................................................................................... 85
Figure 36: Gestion du client ................................................................................................ 86
Figure 37: Ajouter crdit certain client ............................................................................. 86
Figure 38: Vendre le crdit .................................................................................................. 86
Figure 39: le code gnr du crdit ..................................................................................... 87
Figure 40: Gestion du code gnr ...................................................................................... 87

LISTE DES TABLEAUX
Tableau 1: Planification globale du stage .............................................................................. 5
Tableau 2: Planning du Systme de Gestion pour les Chefs de Chantier ............................ 13
Tableau 3: Bilan du Systme de Gestion pour les Chefs de Chantier ................................. 35
Tableau 4: Planning du projet TC Magasin ......................................................................... 39
Tableau 5: Bilan du Store Multimdia pour la Socit TC Computer ................................ 69



ABRVIATION
CRUD : Create, Read, Update, Delete
CSS : Cascading Style Sheet
CTP : Cake Template Page
GIC : Gnie Informatique et Communication
HTTP : Hypertext Transfer Protocol
HTML : Hypertext Markup Language
IHM : Interface Homme-Machine
ITC : Institut de Technologie du Cambodge
MCD : Modle Conceptuel de Donne
MVC : Model View Controller
SQL : Structure Query Language
URL : Uniform Resource Locator
APIs : Application Programming Interfaces



RESUME
Ce stage a t effectu CamMob pendant 4 mois partir du 25 Fvrier 2013 au 25 Juin
2013. J'ai obtenu deux projets, Le Store Multimdia pour la Socit de TC Computer et le
Systme de Gestion pour les Chefs de Chantier. Pour le Store Multimdia pour la Socit
de TC Computer, lobjectif principal du projet est dveloppement une application sur le
tlphone portable Androde et IOS pour grer les achats des logiciels, des musiques, et des
vidos soit vraiment essentielle et utile. Je suis responsable de la cration dun systme de
gestion de contenu de cette application. Ses fonctions sont gestion les donnes de magasin
(les applications, les produits recommands, les crdits et les utilisateurs), cre les APIs
pour application de TC Computer sur mobile pour rcuprer les donne du serveur web et
gnration le code alatoire pour recharger compte de crdit du client. Pour le Systme de
Gestion pour les Chefs de Chantier, lobjectif principal du projet est de crer un systme
pour assurer lefficacit du travail des sites de construction dans lentreprise de
construction. J'ai cre une application web pour ce systme. Pratiquement, cette application
site web quipe utilisateur avec les fonctionnalits utiles telles que afficher les sites
responsables par chaque contrleur, gestion les projets, gestion les produits, gnrer le
rapport dactivits dutilisateur et gnrer le rapport dactivits sur chaque site.
ABSTRACT
This training was conducted in CamMob for four months from 25 February 2013 to 25
June 2013. I was assigned two projects, Multimedia Store for TC Computer and
Construction Site Management System for Site Manager. For TC Computers Multimedia
Store, the main objective of this project is development a mobile application in android and
IOS to manage selling applications, music, and videos. I was responsible for the creation of
the backend of this application. Its functions are managing store data (applications,
features, credits and users), creating APIs for mobile application and generate random code
to top up users credits. For Construction Site Management System for Site Manager, the
main objective of this application is creating a system to ensure the work effectiveness of
the construction sites. I created a web application for the system. Integrated with Google
map, users can view various sites and controllers in the list on the map. Practically, this
web application equipped user with useful features such as display responsible construction
sites of each controller, number visited on each project, project management, products
management, generate the report of users activities and generate reports for each site.
ii
1

INTRODUCTION
Dans le cadre de la formation des ingnieurs lITC, un stage au moins de 12 semaines
est propos aux tudiants en 5me anne du dpartement Gnie Informatique et
Communication (GIC) afin quils puissent mettre en pratique leurs connaissances
thoriques et acqurir des nouveaux connaissances ainsi que des nouvelles technologies
dans une entreprise publique ou prive.

Jour aprs jour, la technologie nous offre beaucoup de nouvelles innovations, en
particulier le Smartphone. Jusqu maintenant, il y a plusieurs plates-formes disponibles
dans le march comme BlackBerry, IOS, Windows Phone et Androde qui nous offert le
systme opratoire pour dvelopper ses applications. En voyant ce phnomne,
lentreprise de CamMob o mon stage est effectu est cre. Lentreprise CamMob est
une start-up cambodgienne spcialise dans le dveloppement d'applications mobiles et
les sites web mobiles.

Lentreprise de CamMob me donne deux projets qui sont le Store Multimdia pour la
Socit TC Computer et le Systme de Gestion pour les Chefs de Chantier. Pour le
premier projet, le Store Multimdia pour la Socit TC Computer est implment sur la
plate-forme androde et IOS. En outre il y a un systme de gestion de contenu pour cette
application. a fait que sept semaines que jai ralis le systme de gestion de contenu
pour application TC Computer sur mobile. En revanche, le Systme de Gestion pour les
Chefs de Chantier est implments sur la plate-forme androde et une application web.
Jai pass deux mois pour cre cette application site web.

Ce rapport est divis en 4 grandes parties. Le premier est la prsentation gnrale du
stage et la mthodologie de projet du stage. La seconde partie parle sur le Systme de
Gestion pour les Chefs de Chantier. Le troisime met laccent sur le Store Multimdia
pour la Socit TC Computer. Et le dernier touche la conclusion du stage.





2

I. PRESENTATION GENERALE
Cette partie dcrit en bref lentreprise o mon stage a t effectu, ses activits et
services, son structure globale et le contact. Finalement, on propose la mthodologie de
travail.

1. Prsentation de lentreprise
1.1. Introduction lentreprise
CamMob est une start-up cambodgienne spcialise dans le dveloppement
d'applications mobiles et les sites web mobiles. Lquipe CamMob est spcialise sur
la conception, le dveloppement et l'intgration des sites et les applications pour iOS,
Androde, Windows Phone et BlackBerry. CamMob met la disposition dans chaque
projet une quipe dexperts fonctionnels, ergonomes mobiles, architectes et
dveloppeurs avec soucis de la qualit du service rendu et de lintgration la plus lgre
possible dans les plates-formes existants de ses clients.
Fonde en novembre 2009, CamMob a dvelopp ses activits dans le march
dOutsourcing, et plus particulirement avec les partenaires europens. CamMob forme
et met la disposition de ses clients une quipe de jeunes ingnieurs cambodgiens
motivs et passionns par les technologies mobiles.








Figure 1: Logo de CamMob





3

1.2. Activits et services de lentreprise
CamMob est une agence mobile qui accompagne et conseille ses clients dans la
conception, le design, le dveloppement dapplications sur les plates-formes comme ci-
dessous :
- Androde
- IOS (iPhone and iPad)
- Windows Phone
- BlackBerry
Application site web et site web mobile compatible avec tout type des tlphones dans
le march, des bases terminales aux Smartphones rcents comme IOS et Androde.

1.3. Situation gographique et contact
On peut contacter lentreprise de CamMob avec les informations de contact suivant :
Adresse : #18C, rue 584, Toul Kork, Phnom Penh, Cambodge.
Tlphone : +(855)15741234
Courier lectronique : info@cam-mob.com
Site dInternet : http://www.cam-mob.com
2. Prsentation des projets du stage
Obligatoirement, les tudiants en quatrime anne dans dpartements le dpartement
Gnie Informatique et Communication (GIC), doivent faire un stage de fin dtudes
pendant trois mois au minimum au deuxime semestre. Le stage peut tre fait dans un
tablissement public, une organisation, ou une entreprise prive. Lobjective du stage
est non seulement de faire lintgration entre les tudes thoriques lcole la vie
professionnelle lentreprise, mais encore de donner des grandes opportunits aux
tudiants dacqurir des nouveaux connaissances ainsi que des nouvelles technologies.
A la fin du stage fin dtudes, les tudiants doivent raliser un rapport pour faire la
prsentation de ce quils ont fait.
Mon stage est ralis pendant environ 4 mois du 25 Fvrier 2013 au 25 Juin 2013
CamMob, une entreprise prive.
Jai t encadr par :
Matre de stage : Dr. SENG Sopheap
Chef du dpartement Gnie Informatique et Communication
Tuteur de stage : M. KONG Kannika
Chef d'quipe de dveloppeur du Web CamMob
4

2.1. Missions
2.1.1. Le Systme de Gestion pour les Chefs de Chantier
Le Systme de Gestion pour les Chefs de Chantier est un produit du CamMob. Ce projet
est conu comme un produit gnrique de sorte quil est adaptable dautres besoins
similaires.
Inspir par Google Maps Coordinate, Ce projet a t cr pour coordonner et contrler
les sites de construction. Lobjectif principal de ce projet est dobserver les informations
concernant de chaque site de construction. En outre, ce systme est galement d'assurer
l'efficacit du travail.
En gnrale, une socit de construction gre un ou plusieurs chantiers de construction.
Pour chaque chantier est responsable par un ou plusieurs chefs de chantier. Chaque jour,
un chef de chantier doit visiter un ou plusieurs chantiers pour contrler le travail et
rapporter au manager les informations concernant le chantier comme le Progress du
chantier, le nombre du travail, la quantit du produit dans le stock et les problmes
exists dans ce chantier. En revanche, le manager doit pouvoir savoir quel chantier est
visit, quel chantier nest pas encore visit, quel site rencontre des problmes. De plus,
le manager souhaite connatre les activits de chef de chantier sur chaque chantier quil
lest visit.
2.1.2. Le Store Multimdia pour la Socit TC Computer
TC Computer est une entreprise locale dont les services sont vendre les ordinateurs et
les appareils mobiles. Dans la mthode traditionnelle, les clients peuvent demander
techniciens pour installer les applications mobiles, les musiques, et les vidos qui sont
disponibles. En plus, ils pourraient acheter les applications, les musiques et les vidos
qui ne sont pas gratuit. Pour faciliter ces processus et gnrer plus de revenus, TC
Computer demandent une application TC Magasin qui a utilises principalement sur
Androde et IOS mobiles.
Ce systme est utilis principalement pour les appareils mobiles d'Android et d'IOS
pour acheter les produits de TC sans aides de techniciens.


5

2.2. Planification Globale


Tableau 1: Planification globale du stage

Jai eu environ quatre mois pour mon stage. Jai pass une semaine pour installer et
configurer lenvironnement du travail et install des applications ncessaires. Ensuite,
a fait que sept semaines que jai effectu le premier projet, TC Magasin. En fin, il y a
huit mois que je peux raliser le deuxime projet, la Systme de Gestion des Projet de
Construction.
Dans chaque chapitre du projet, il y a un plan dtaill qui se compose des sprints et les
descriptions des sprints.
Tche Semaine
1 2-8 9-16
Installation lenvironnement du travail
Projet 1 : Systme de Gestion pour les
Chefs de Chantier

Projet 2 : Le Store Multimdia pour la
Socit TC Computer

Rapport prparation
6

3. Mthodologie de dveloppement
Pour dvelopper une application plus efficace, on doit avoir une mthodologie de
travail. Lorsquil existe beaucoup de mthodologies de dveloppement, on doit choisir
un parmi lesquelles.
Comme mon stage est effectu lentreprise CamMob, ce projet est utilis la
mthodologie de dveloppement Scrum parce que cest une mthode qui a choisi par
lentreprise pour dvelopper tous les applications.
3.1. Cest quoi le Scrum ?
Scrum est une mthode agile ddie la gestion de projets qui existe beaucoup des
avantages comme ci-dessous :
Le travail itrative et incrmentale
Une productivit plus lev
Amlioration engagement de l'quipe et la satisfaction du travail
Rduction du temps de mise sur le march
Concentrer sur la satisfaction du client











Figure 2: Le processus de Scrum





7

3.2. Les rles et outils impliqus dans la mthodologie
Il y a 3 rles principaux qui participent dans le droulement de dveloppement :
- Le propritaire du produit =Le propritaire du produit est le reprsentant des
clients et des utilisateurs et ce qui crit des User Stories, les priorise et les
ajoute au Product Backlog. Il sait la logique de business et les souhaits de
l'utilisateur. Son objectif est de maximiser la valeur du produit dvelopp
- L'quipe = Celui qui est charge de distribuer le produit avec croix-
fonctionnelle
comptences et qui font le travail rel (analyser, concevoir, dvelopper et
tester). En plus il doit tre l'auto-organisation et autodirig.
- Scrum Master = Il est responsable de la mthod Scrum. Il doit s'assurer que
celle-ci est comprise, et bien mise en application. Ce n'est pas un chef de projet,
ni un intermdiaire de communication avec les clients En tant quun
facilitateur, il aide l'quipe dterminer quelles interactions avec lextrieur
sont utiles, et lesquelles sont obstacles. Il aide alors maximiser la valeur de
produit par l'quipe.
- Product Backlog = cest la liste des User Stories avec la priorit qui dfinit par
le propritaire du produit.
- User Story = il concentre sur le souhait dutilisateur. La forme dUser Story
peut tre diffrente de lun lautre.
Exemple :
o En tant que <type dutilisateur>, je veux <quelques buts> pour
<ralisation>.
o Afin de <ralisation >, comme <type dutilisateur>, je veux<quelques
buts>.
- Sprint Backlog = il estla liste des User Stories avec la priorit qui slectionne
partir de Product pour chaque Sprint.







8

3.3. Comment le Scrum marche ?
Aprs avoir analys les besoins qui sont demands par le client, le propritaire de
produit va crer le Product Backlog qui contient les User Stories avec les priorits.
Daprs le Product Backlog, le ScrumMaster et lquipe vont faire la runion de
planification de Sprint pour slectionner les travaux ou bien les User Stories faire
selon les priorits et les mettre dans le Sprint backlog avec le dtail du temps qu'il
faudra pour le faire. La moyenne pour dfinir le priode pour chaque lment (User
Story) de Sprint est faite selon le Planning Poker. Le Planning poker est une mthode
que lquipe et le ScrumMaster se discutent fin destimer le temps pour finir chaque
fonctionnalit. Normalement, le ScrumMaster prfre le plus court, en revanche
lquipe veut plus que a, donc lquipe doit exprimer les raisons pourquoi a prend
beaucoup de temps.
Donc on a le Sprint Backlog qui est la liste des travaux que l'quipe doit tenir compte
lors du Sprint suivant. Aprs le Sprint Backlog est fait, lquipe doit le suivre
particulirement le temps dfinit pour chaque User Story.
Tous les jours, le ScrumMaster et lquipe doit avoir une runion qui sappelle Scrum
quotidien. Scrum quotidien est une technique trs efficace de contrler pendant le
dveloppement dapplication. Pendant 15 minutes au maximum, le ScrumMaster pose
quelques questions comme ces 3 questions : Quest-ce que avez-vous fait depuis hier?
Quest-ce vous allez faire aujourd'hui? Avez-vous des problmes qui vous empchent
de l'accomplissement de votre objectif?
Ensuite, quand le temps pour le premier Sprint est atteint, le ScrumMaster doit faire une
autre runion quon appelle la runion de rvision de Sprint. Ce quon doit faire dans
cette runion est de rviser le travail qui est termin et n'est pas termin et faire une
dmo pour valider les fonctionnalits qui ont fait. Aprs la fin de chaque Sprint on doit
obligatoirement obtenir un produit qui peut tre fait une dmo pour montrer au client
lavancement du projet. Pour le travail qui nont pas encore termin, quon a 2
possibilits : on peut mettre a dans le Sprint suivant sils sont les fonctionnalits
principales ou bien on peut refaire a aprs on a termin les autres.
Donc, on a le Sprint suivant qui peut tre contient les fonctionnalits de dernier Sprint
ou pas. On refaire les tapes au-dessus jusqu tous les fonctionnalits dans le Product
backlog sont tout fait bien.


9

En plus, la mthodologie Scrum donne la possibilit dvaluer notre travail par nous-
mmes ou bien par le ScrumMaster. a peut tre apparat par un outil quon appelle
Burndownchart qui est un graphique affich publiquement pour montrer le travail
restant dans le Sprintbacklog en comparant avec le temps. Ce graphique doit tre mit
jour tous les jours pour quil donne une vision simple de l'tat d'avancement du Sprint.













Figure 3: Burndown chart




C
pr
pr
En
Po
un
ra
ch
ex
vi
le
le















C

II. SY
ette partie
roblmatiqu
rvue pour l
1. Prs
n gnrale,
our chaque
n chef de c
apporter au
hantier, le n
xists dans
isit, quel c
e manager s
est visit.

hantier 1
Figure
YSTEME
prsente au
ues et lobj
la conceptio
sentation d
une socit
chantier est
chantier doi
manager l
nombre du
ce chantier
chantier nes
ouhaite con


4: Introdu
E DE GE
ux lecteurs
jectif princi
on et la ral
du projet
de constru
t responsabl
it visiter un
es informat
travail, la
r. En revanc
st pas encor
nnatre les a
Grer

ction du Sy
10
ESTION
CHAN
le premier
ipal du pro
isation du p
t
uction gre
le par un ou
n ou plusie
tions conce
quantit du
che, le man
re visit, qu
activits de

Chantier
ystme de G
N POUR
NTIER
r projet du
ojet. Ensuit
projet.
un ou plusi
u plusieurs c
eurs chantie
ernant le ch
u produit d
ager doit po
uel site renc
chef de cha
r 2
Gestion pou
R LES CH
stage. On
te, on mon
ieurs chanti
chefs de cha
ers pour con
hantier com
dans le stoc
ouvoir savo
contre des p
antier sur ch
Gre

ur les Chef
HEFS D
commence
ntre la plan
ers de cons
antier. Chaq
ntrler le tr
mme le Prog
ck et les pr
oir quel cha
problmes.
haque chant
er
Chan
fs de Chant
E
e par les
nification
truction.
que jour,
ravail et
gress du
roblmes
antier est
De plus,
tier quil
ntier 3
tier
11

1.1. Problmatique
Dans la gestion pour les chefs de chantier, on sait bien quil est difficile pour le chef de
chantier dinformer les informations de chaque chantier au manager. De plus, il est aussi
compliqu dinformer le gestionnaire immdiatement quand il y a des problmes au site
de projet ou quand un problme est rsolu. Pour le manager, on trouve quil existe aussi
beaucoup de difficults en grant ce type de travail. Tout dabord, il ne peut pas savoir
si le contrleur a visits les sites de ses projets. Par ailleurs, il faut que le manager
contacte le contrleur pour connatre les tats courants de travail de chaque site. En plus
de cela, le gestionnaire nest pas en mesure dtre inform sil y a des problmes
chaque site. Donc, il nest pas capable dassigner les contrleurs rsoudre ces
problmes immdiatement.
cause de ces problmes, le Systme de Gestion des Sites de Construction a t
propos.
1.2. Objectif global du projet
Aprs avoir analys la problmatique, on est capable de dterminer les objectifs du
projet. Lobjectif principal de ce projet est de crer un systme pour assurer lefficacit
du travail de contrleur dans la socit de construction. Ce systme se compose une
application mobile (Androde) et une application web. Lapplication mobile est
dveloppe pour les contrleurs de la socit qui directement surveillent les sites de
construction et lapplication web a utilise par le manager de la socit pour surveiller
tous les sites de construction et toutes les activits contrleurs.
Le contrleur peut utiliser lapplication mobile pour :
- Lister tous les projets de construction quil est responsable sous forme de la
liste ou sur la carte
- Afficher les sites
- Check-in quand il visite le site et Check-out quand il sort le site de projet
- Mettre jour les informations
- Rapporter le problme
- Fermer un problme du projet
- Consulter le rapport de ses visites au site





En















F
Dv
n revanche
- V
r
- V
en
- G
- G
- G
- G
Se
- G
ou

1.3.
Figure 5: O
M.
veloppeu
le gestionna
Visualiser la
el
Visualiser la
n temps-re
Gestion des c
Gestion des u
Gestion des p
Gnrer le r
emaine ou M
Gnrer le ra
u Mois)
Organisa
Organisation
C
SAY Vo
ur de l'ap
aire est cap
a go locatio
a go locatio
l
chantiers de
utilisateurs
produits
rapport des
Mois)
apport des a
ation de l
n de lquip
M
Chef du p
ortana
pplicatio
12
able dutilis
on des chef
on des chan
e constructio
activits
activits su
quipe
pe du proje
Chanti
M. Kong
produit e
on web
ser lapplica
fs chantier
ntiers de co
on
du chef de
ur le chantie
et Systme
ier
Kannika
et Scrum
Dv
ation web p
sur la Goo
onstruction
e chantier p
er par la du
de Gestion
a
m Master
M. K
veloppeu
mobile
our :
ogle Map en
sur la Goo
par la dur
ure (Jour,
n pour les c

r
KEM Ou
ur de l'a
e sur An
n temps-
gle Map
e (Jour,
Semaine
chefs de
dom
applicatio
ndroid
on
13

2. Planification

Tche Semaine
1 2 3 4 5 6 7 8
tudesdesnouvellestechnologiesetbasededonnes
Sprint16 S1 S2 S3 S4 S5 S6 S7

Tableau 2: Planning du Systme de Gestion pour les Chefs de Chantier

Aprs avoir identifi les objectifs et les fonctions ncessaires du projet, on peut crer la
planification prvue suivre pour raliser le projet. Comme la mthodologie Scrum est
suivie, les tches sont divises en sprints. Chaque sprint dure une semaine. La dure
totale de ce projet est huit semaines. Les sept premires semaines sont consacres pour
dvelopper l'application, et la dernire semaine est pour tester et dbugger l'application.
- Sprint 1 : Il consiste dtudes du scnario global afin de dterminer les
fonctionnalits essentielles et les besoins du systme et dsigner la base de
donnes pour systme.
- Sprint 2 : On cre le menu principal. En plus, On ralise toutes les
fonctionnalits concernant laffichage des chantiers de construction, chefs de
chantier et des informations dtailles du chantier.
- Sprint 3 : Il contient toutes les fonctionnalits concernant comment on peut grer
CRUD (Create, Read, Update et Delete) les informations du site et produits.
- Sprint 4 : Dans ce sprint, on effectue les fonctionnalits concernant la gnration
des rapports dactivits de lcontrleur sur chaque site de construction.
- Sprint 5 : Ce sprint contient les fonctionnalits concernant la gnration des
rapports dactivits sur chaque site de construction.
- Sprint 6 : Il est consacr pour lauthentification et le support multi-langues,
langlais et le khmer.
- Sprint 7 : Il contient les fonctionnalits restantes de tous les Sprint avec quelques
fonctionnalits supplmentaires comme supporter multi-cran.



14

3. Analyse et Spcifications Des Besoins
3.1. Etude de besoins
3.1.1. Besoins fonctionnels
Les Besoins fonctionnels sont les besoins demands par notre chef du produit et ces
sont les fonctions qui doivent tre implmentes. Il est trs important de bien dfinir des
besoins fonctionnels car ils doivent rpondre et garantir lobjective du projet. En
utilisant ces besoins et la rfrence de lobjective du projet, on peut dfinir des besoins
comme la prsente suivante:
- Visualiser la go location des chefs chantier sur la Google Map en temps-
rel
- Visualiser la go location des chantiers de construction sur la Google Map
en temps-rel
- Rechercher un chantier par nom
- Afficher dtaille de chaque chantier
- Gestion des chantiers de construction
- Gestion des utilisateurs
- Gestion des produits
- Gnrer le rapport des activits du chef de chantier par la dure (Jour,
Semaine ou Mois)
- Gnrer le rapport des activits sur le chantier par la dure (Jour, Semaine
ou Mois)

3.1.2. Besoins non fonctionnels
Les besoins fonctionnels sont nots dans la partie prcdente, alors il existe aussi un
autre type besoin appeles besoins non-fonctionnels. Les besoins non-fonctionnelles
sont les besoins quon dfinit pour amliorer le systme. Ils sont:
- Ergonomie: le systme doit tre uniforme et facile utiliser avec une interface
agrable.
- Maintenance et extensibilit: le systme doit tre bien organis en modules
indpendants pour tre facilement maintenu et extensible.
- Performance: la vitesse rapide avec le droulement confiance sans erreurs.
- Le support multi-langues: langlais et le khmer
- Le support multi-crans du desktop et mobile
15

3.2. Contraintes du systme
Il est absolument important de connatre toutes les contraintes du systme avant de
commencer le dveloppement. Donc aprs une analyse rigoureuse du projet, on sait qu'il
y a des contraintes telles que:
- Pour permettre la communication entre ce systme et le serveur, il faut avoir des
APIs. Par consquent, on a galement besoin de crer des APIs pour ce systme.
4. Cas dutilisation
Un cas dutilisation dfinit une manire dutiliser le systme et permet den crire les
exigences fonctionnelles. Chaque cas dutilisation contient un ou plusieurs scnarios qui
dfinissent comment le systme devraient interagir avec les utilisateurs pour atteindre
un but ou une fonction spcifique dun travail.





















Figure 6: Diagramme de case dutilisation Systme de Gestion pour les Chefs de
Chantier
16

Aprs la capture de besoins, on trouve quil est ncessaire davoir un type dacteur:
- Manager : utilisateur qui peut faire toutes les fonctionnalits
4.1. Acteur
Pour le manager, il peut faire toutes les tches dans le systme.
Visualiser la go location des chefs de chantier sur la Google Map en
temps-rel
1. Afficher les chefs de chantier sur la carte du Google
No. 1 Afficher les chefs de chantier sur la carte du Google
Acteurs Manager
Description Afficher tous les chefs de chantier sur la carte du Google
Donnes Non
Pr-condition Il y a au moins un chef de chantier
Rsultat Liste des chefs de chantier sur la carte du Google

2. Filtrer entre les chantiers et les chefs de chantier
No. 2 Filtrer entre les chantiers et les chefs de chantier
Acteurs Manager
Description afficher entre les chantiers et les chefs de chantier sur la Google Map
Donnes Faire une slection entre chantier et chef de chantier
Pr-condition Il y a au moins un chantier ou chef de chantier
Rsultat Afficher seulement les informations partir de choix

3. Mis jour les informations des chefs de chantier pendant la dur
dfini sur la Google Map
No. 3 Mis jour les informations des chefs de chantier pendant la dur
dfini sur la Google Map
Acteurs Manager
Description Pour conserver des informations concernent les chefs de chantier sur la
carte du Google jour, il est ncessaire que toutes les informations sont
recharges automatiquement pendant la dure dfini
Donnes Non
Pr-condition Il y a au moins un chef de chantier
Rsultat Les informations concernent les chefs de chantier sur la carte du Google
sont mise jour.






17

- Visualiser la go location des chantiers sur la Google Map en temps-rel
4. Afficher les chantiers sur la carte du Google
No. 4 Afficher les chantiers sur la carte du Google
Acteurs Manager
Description Afficher tous les chantiers sur la carte du Google
Donnes Non
Pr-condition Il y a au moins un chantier
Rsultat Liste des chantiers sur la carte du Google

5. Rechercher un chantier dans la liste
No. 5 Rechercher un chantier dans la liste
Acteurs Manager
Description Rechercher un chantier par nom
Donnes Non
Pr-condition Il y a au moins un chantier et utilisateur donne nom du chantier
Rsultat Un chantier

6. Mis jour les statuts des chantiers pendant la dur dfini
No. 6 Mis jour les informations des chantiers pendant la dur dfini sur
la Google Map
Acteurs Manager
Description Pour conserver des informations concernent les chantiers sur la carte du
Google jour, il est ncessaire que toutes les informations sont
recharges automatiquement pendant la dure dfini
Donnes Non
Pr-condition Il y a au moins un chantier
Rsultat Les informations concernent les chantiers sur la carte du Google sont
mise jour.

- Gestion dutilisateur (manager ou chef de chantier)
7. Ajouter un nouvel utilisateur
No. 7 Ajouter un utilisateur (manager ou chef de chantier)
Acteurs Manager
Description Additionner un utilisateur du systme
Donnes Le nom
La date de naissance
Ladresse
La photo
Le numro du tlphone
Le type dutilisateur
Le nom de lutilisateur
le mot de passe
Pr-condition Lutilisateur du systme ne peut pas existe
Rsultat Le nouveau utilisateur du systme est cre

18

8. Afficher les utilisateurs (manager ou chef de chantier)
No. 8 Afficher les utilisateurs du systme
Acteurs Manager
Description Afficher tous les utilisateurs du systme
Donnes Non
Pr-condition Il y a au moins un utilisateur du systme
Rsultat Liste des utilisateurs du systme

9. Modifier un utilisateur
No. 9 Modifier un utilisateur du systme
Acteurs Manager
Description Changer les donnes de lutilisateur du systme
Donnes Le nom
La date de naissance
Ladresse
La photo
Le numro du tlphone
Le type dutilisateur
Le nom de lutilisateur
le mot de passe
Pr-condition Lutilisateur doit tre exist
Rsultat Lutilisateur est modifi

10. Supprimer un utilisateur
No. 10 Supprimer un utilisateur du systme
Acteurs Manager
Description Supprimer un utilisateur du systme existant
Donnes Un utilisateur du systme
Pr-condition Lutilisateur du systme doit tre exist
Rsultat Lutilisateur du systme est supprim

11. Modifier le mot de passe pour un utilisateur
No. 11 Changer le mot de passe de certain utilisateur du systme
Acteurs Manager
Description Changer le mot de passe dun utilisateur
Donnes Lutilisateur, le vieux mot de passe et le nouveau mot de passe
Pr-condition Lutilisateur doit tre exist
Rsultat Le mot de passe de lutilisateur du systme est chang





19

- Gestion du chantier
12. Ajouter un nouvel chantier
No. 12 Ajouter un nouvel chantier
Acteurs Manager
Description Additionner un site de construction
Donnes
(ncessaires)
Le nom du site
Ladresse du site
Location du site
Le nombre du travailleur
Le numro du tlphone
Pr-condition Le site ne peut pas existe
Rsultat Le nouveau site est cre

13. Afficher les chantiers
No. 13 Afficher les chantiers
Acteurs Manager
Description Afficher tous les chantiers
Donnes Non
Pr-condition Il y a au moins un chantier
Rsultat Liste des chantiers

14. Modifier les informations du chantier
No. 14 Modifier les informations du chantier
Acteurs Manager
Description Changer les donnes du chantier
Donnes
(ncessaires)
Le nom du chantier
Ladresse du chantier
Location du chantier
Le nombre du travailleur
Le numro du tlphone
Pr-condition Le chantier doit tre exist
Rsultat Le chantier est modifi

15. Supprimer un chantier
No. 15 Supprimer un chantier
Acteurs Manager
Description Supprimer un chantier existant
Donnes Un chantier
Pr-condition Le chantier doit tre exist
Rsultat Le chantier est supprim




20

16. Fermer un chantier
No. 16 Clturer un chantier
Acteurs Manager
Description Quand un chantier est fini ou fainant, on peut clturer ce chantier.
Toutes les informations concernant avec ce chantier nauront pas
supprim dans la base de donnes
Donnes Un chantier
Pr-condition Le chantier doit tre exist
Rsultat Le chantier est ferm

17. Clturer un problme rsolu dans un chantier
No. 17 Clturer un problme rsolu dans un chantier
Acteurs Manager
Description Quand un problme dans un chantier est rsolu, on peut clturer ce
problme. Toutes les informations concernant avec ce problme
nauront pas supprim dans la base de donnes
Donnes Un problme dans un chantier
Pr-condition Le chantier doit tre exist
Rsultat Le chantier est ferm

- Gestion du produit
18. Ajouter un nouvel produit
No. 18 Ajouter un produit
Acteurs Manager
Description Additionner un produit
Donnes Le nom du produit
la description du produit
la photo du produit
Pr-condition Le produit ne peut pas existe
Rsultat Le nouveau produit est cre

19. Afficher les produits
No. 19 Afficher les produits
Acteurs Manager
Description Afficher tous les produits
Donnes Non
Pr-condition Il y a au moins un produit
Rsultat Liste des produits





21

20. Modifier les informations du produit
No. 20 Modifier un produit
Acteurs Manager
Description Changer les donnes du produit
Donnes Le nom du produit
la description du produit
la photo du produit
Pr-condition Le produit doit tre exist
Rsultat Le produit est modifi

21. Supprimer un produit
No. 21 Supprimer un produit
Acteurs Manager
Description Supprimer un produit existant
Donnes Un produit
Pr-condition Le produit doit tre exist
Rsultat Le produit est supprim

- Gnrer le rapport des activits du chef de chantier
22. Gnrer le rapport des activits du chef de chantier par certain
dure (Jour, Semaine et Mois)
No. 22 Gnrer le rapport des activits du chef de chantier
Acteurs Manager
Description Pour facilittes les tche pour manager, on a une fonction qui permettre
lister tous les activits du chef de chantier chaque chantier par la dure
slection (Jour, Semaine, Mois)
Donnes Un chef de chantier
Une dure (Jour, Semaine ou Mois)
Pr-condition Il y a au moins un chef du chantier
Rsultat Lister des activits du chef de chantier

- Gnrer le rapport du chantier
23. Gnrer le rapport du chantier par certain dure (Jour, Semaine et
Mois)
No. 23 Gnrer le rapport du chantier par certain dure
Acteurs Manager
Description Pour facilittes les tche pour manager, on a une fonction qui permettre
lister tous les activits dans certain chantier par la dure slection (Jour,
Semaine, Mois)
Donnes Un chantier
Une dure (Jour, Semaine ou Mois)
Pr-condition Il y a au moins un chantier
Rsultat Lister des chantiers avec ses activits

22

- Changer la langue entre anglais et khmer
24. Changer la langue entre langlais et le khmer
No. 24 Changer la langue entre langlais et le khmer
Acteurs Manager
Description Changer la langue entre langlais et le khmer
Donnes Faire une slection entre langue langlais et le khmer
Pr-condition Non
Rsultat Toutes les mots dans interfaces du site web sont chang selon la langue
choisir

Cette partie porte sur le cahier de charge du projet. On liste tous les besoins et on donne
des spcifications en bref pour chaque fonctionnalit. Aprs avoir lit ce chapitre, on
peut savoir plus clairement de quoi lapplication sagit. La partie suivant parlera en
dtail la conception du systme et la technologie utilise pour le dveloppement.





23

4.2. Spcification de chaque cas dutilisation
Visualiser la go location des chefs de chantier sur la Google Map en temps-
rel
C'est la fonction essentielle dans ce systme. Il est important d'observer les sites de
construction et les contrleurs. Il ya une carte Google qui consistent en des sites de
construction et des contrleurs. Chaque site et le contrleur sont marqus sur la position
spcifique sur la carte Google. En outre, il y a un filtre qui permettent aux utilisateurs
d'afficher seul site et / ou contrleur sur la carte Google. Aprs la dure fini, les
informations concernent les projets et les contrleurs sur la carte Google sera mise
jour.
- Visualiser la go location des chantiers de construction sur la Google Map
en temps-rel
- Gestion dutilisateur du systme
Il existe deux types d'utilisateurs, administrateurs/managers, et client mobiles. Ce
module est gr par l'administrateur du groupe, et les utilisateurs de l'administrateur du
groupe pourrait effectue quatre oprations de base CRUD pour chaque utilisateur.
- Gestion du chantier
Un site de construction est un lment important dont dispose informations de base
(nom, adresse, location, numro de tlphone et autre informations), le nombre de
travailleurs, le progrs, les contrleurs et les produits. On peut faire toutes les oprations
CRUD (Create, Read, Update, et Delete) pour chaque site. En outre, on peut fermer
certain projet. Dans chaque projet dtaill, il pourrait avoir beaucoup des problmes, et
on peut fermer chaque problme si on veut
- Gestion un produit
Dans chaque site de construction, il pourrait consister les produits lis avec la
construction. Ce module est cr pour grer produits de construction. On peut faire
toutes les oprations CRUD (Create, Read, Update, et Delete) pour chaque site.

24

- Gnrer le rapport des activits du chef de chantier par certain dure
(Jour, Semaine et Mois)
Pour facilittes manager, on a une fonction qui permettre liste tous les activits du
contrleur chaque site de construction par la dure slection (Jour, Semaine, Mois). Il
y a deux parties importantes, les visite logs et les problmes logs. Dans le visite logs,
chaque jour pourrait avoir des activits logs lorsque le contrleur ajouter, modifier ou
supprimer les informations du projet.
- Gnrer le rapport des activits du chantier par certain dure (Jour,
Semaine et Mois)
Pour facilittes manager, on a une fonction qui permettre liste tous les activits chaque
site de construction par la dure slection (Jour, Semaine, Mois). Similaire de la
gnration le rapport des activits du contrleur. Il y a deux parties importantes, les
visite logs et les problmes logs. Dans le visite logs, chaque jour pourrait avoir des
activits logs lorsque le contrleur ajouter, modifier ou supprimer les informations du
site de construction.
- Changer la langue entre langlais et le khmer
En raison du fait que ce produit est conu pour une utilisation locale, il est important
qu'il ait la langue locale, le khmer. L'utilisateur peut choisir entre langlais et le khmer
afin de changer la langue des mots sur l'interface du site web.
5. Choix de Technologie et Conception
5.1. Technologies utilises
La cration du systme joue le rle comme un site internet, elle sappuie sur un
ensemble de technologies que le point de vue du dveloppeur web. Mon projet est
dveloppements sur la carte du Cambodge. Aussi je choisie le Google Maps, Ajax,
JQuery et JSON pour dvelopper ce projet.
5.1.1. Cot client
- Google Maps est une application de service web de cartographie et
de la technologie fournie par Google, qui alimente de nombreux services bass sur des
cartes, y compris le site Google Maps, Google Ride Finder, Google Transit, et des
cartes embarques sur des tiers sites via l'API Google Maps. Il propose des cartes
routires, un planificateur d'itinraire pour le voyage pied, voiture, vlo (beta), kayak,
ou les transports en commun et une localisation urbaine des entreprises pour de
nombreux pays travers le monde. Google Maps Images satellite ne sont pas mis jour
25

en temps rel, ils sont plusieurs mois ou annes anciennes. Google Maps utilise une
variante proche de la projection de Mercator, de sorte qu'il ne peut pas montrer les
zones autour des ples. Un produit connexe est Google Earth, un programme autonome
qui offre plus de globe-visualisation, y compris les caractristiques montrant les zones
polaires.
- Cartographie sur le web est le processus de conception, la mises en
uvre, gnrer et dlivrer des cartes sur le World Wide Web et de son produit. Bien que
la cartographie web traite principalement de questions technologiques, de la
cartographie Web tudie en outre les aspects thoriques: l'utilisation de cartes Web,
l'valuation et l'optimisation des techniques et des flux de travail, la facilit d'utilisation
de cartes Web, aspects sociaux, et plus encore.
- JQuery : une bibliothque libre de JavaScript, dont la syntaxe est
trs courte et dont les noms des fonctions sont intuitifs.
- Ajax (Asynchronous JavaScript and XML) : en effet la
technologie web entire est base sur le modle de laller-retour nous utilisons lAjax
dans le systme qui peut rcuprer des donnes par une requte serveur rapide.
- JavaScript : sutilise dans le contexte du web principalement
travers dun navigateur internet. Il permet lexcution de code information intgr a des
pages web et il est un des outils permettant de dvelopper du web dynamique .
- CSS (Cascading Style Sheets) : un langage qui permet de dcrire la
prsentation de documents structure en format HTML et dans un langage dapplication
XML. Avec laquelle, nous pouvons crer la feuille de style qui fournit la solution pour
le dveloppeur de la manier simple a utilisateur son style qui peut sparer la logique
applicative de la prsentation.
- HTML (Hyper Text Mark up Language) : un langage de base pour crer la
page web.
- JSON (JavaScript Object Notation) : est un standard ouvert bas sur du texte
destin lisible change de donnes. Il est driv du langage de script JavaScript pour
reprsenter les simples structures de donnes et des tableaux associatifs, appels objets.
En dpit de sa relation avec JavaScript, il est indpendant de la langue, avec analyseurs
disponibles dans de nombreuses langues.
5.1.2. Cot Serveur
- PHP : un langage de scripts libre principalement utilis pour
26

produire des pages web dynamiques via un serveur http, mais pouvant galement
fonctionner comme nimporte quel langage interprt de faon locale, en excutant le
programmes en ligne de commande. On utilise ce langage car on peut adapter
facilement avec ce langage.
- SQL est un langage utilis pour envoyer la requte structure au
serveur de base de donnes.
- MySQL permet de stocker des donnes de faon ordonnes. C'est
dire qu'il est capable d'enregistrer, modifier, rechercher rapidement des donnes(le
contenu d'un message par exemple). Il est utilisable sur de nombreux systme
d'exploitation
- JSON (JavaScript Object Notation)
5.2. Outils utiliss
Tout au long de notre projet, on peut raliser le travail laide des outils au-dessous :
- Lamp : est une plateforme de dveloppement Web, permettant de faire
fonctionner localement (sans se connecter un serveur externe) des scripts PHP.
LsampServer nest pas en soi un logiciel, mais un environnement comprenant
deux serveurs (Apache et MySQL), un interprteur de script (PHP), ainsi quune
administration pour les deux bases SQL et PhpMyAdmin.
- NetBeans 7.3 : diteur de texte pour aider crire le code source.
- Microsoft Word : est utilis pour la rduction de document concernant le projet
tel que le cahier de charge, le manuel, le rapport... etc.
- Visual Paradigme : outil quon utilise pour faire la modlisation de base de
donn et les diagrammes UML.
- Mozilla firebug: pour contrler la transmission des donnes entre la machine
client et le serveur.
- Navigateur Web: les navigateurs sont utiliss pendant le dveloppement et le
test du produit comme Mozilla Firefox, Chrome.


Po
ar
co
le












D
l'a






M
6.
our la rela
rchitecture
omme la co
e systme fo
Dans cette ar
application
- Mana
accd
- Serve
foncti
trois l
- Chef
systm
Manager
Architect
6.1. Arc
ation de la
application
onception g
onctionnelle
Fig
rchitecture,
du systme
ager est un n
der vers serv
eur Web : il
ionnent en p
logiciels im
de Chanti
me.
R
ture du S
chitecture p
a partie te
n. Larchite
nrale du
e et les comp
gure 7: Arc
il dcrit l'en
:
navigateur a
veur Web po
fait fonctio
parallle. Il
mportant, ser
ier est un
Requte
Rponse
27
ystme
physique
echnique du
ecture phys
systme, En
posants phy
chitecture p
nsemble des
agent. Son d
our faire int
onner plusie
traites les d
rveur web, M
client mob
S
u projet n
sique prse
n plus elle
ysiques du s
physique du
s composan
droulemen
teraction av
eurs logiciel
demandes fa
MySQL et P
bile qui ut
erveur We
nous devon
ente ici p
donne lid
systme.
u systme
nts matriels
t est comme
vec lapplica
ls (logiciel s
aites par le c
PHP.
tilise lappl
eb
ns savoir c
peut tre c
e globale c
s supportant
e un client,
ation web.
serveur HTT
client Web,
lication mo
C
comment
onsidr
comment
t
pour
TP) qui
, et il a
obile du
Chef de Chhantier
28

6.2. Architecture logique
Le schma suivant reprsente larchicube logique de composants maternels qui support
lexcute du systme. Il va donner lide plus dtaille comment le systme fonctionne et la
composant principale.











Figure 8: Architecture logique du systme

Dans cette architecture, il y a deux parties impliques :
- Application web
1. Le manager utilise certain navigateur web
2. Le manger accs lapplication web, systme de gestion pour les chefs de
chantier, au serveur web. Navigateur web va envoyer http requte au server.
3. Le systme va envoyer les requtes pour rcuprer les besoin donnes la
base de donnes, MySQL
4. MySQL va retourner les donnes lapplication web
5. Lapplication web retourne les informations par http rponses
6. Navigateur web affiche les donnes sous forme HTML au manager
- Application Mobile
a. Les chefs de chantier utilisent lapplication mobile pour envoyer les requtes
la base de donnes
b. Les APIs faire interaction avec la base de donne directement pour rcuprer
les informations ncessaires
b. La base de donnes envoyer les informations demands sous forme JSON
a. Les API va retourner les informations au lapplication mobile
Manager Navigateur Web
Base de Donne APIs
Chef de Chantier
Application Web
Application Mobile
Systme de
Gestion pour
les Chef de
Chantier
Serveur Web
1 2 3
4 5 6
a
b
b
a
29

7. Conception de base de donnes
Cette partie vous prsente la conception de la base de donnes et la figure suivante
indique le diagramme de Modle Conception de Donnes de notre base de donnes.
Ce diagramme est dvelopp par logiciel de BD-main qui nous permet de savoir la
relation en les tables ou entits.





















Note : on peut voir en dtail le schma de donnes dans lAnnexe B.
Figure 9: Conception de base de donn du Systme de Gestion des Sites de
Construction
8. Organisation de lIHM
30

On prsente dans cette partie le diagramme de lenchanement de fentre du produit. Ce
diagramme indique la relation entre les activits des vues de notre systme et comment
utilisateur peut aller dune page vers autre page.
On dcoupe le diagramme en trois sous diagramme selon les trois acteurs du systme.


























Figure 10: Diagramme de l'enchanement de fentre du manager


31

9. Implmentations du projet
9.1. Comment faire pour utiliser Google Maps sur votre site web ?
Les fonctions du Google Adresses JavaScript bibliothque permettre votre application
pour rechercher des lieux (dfini dans cette API comme des tablissements, lieux
gographiques, ou les points importants d'intrt) contenues dans une zone dfinie, tels
que les limites d'une carte, ou autour d'un point fixe. Pour inclure Google Maps sur
votre site web :
Nous devons d'entre de la principale API Google Maps code JavaScript de Dans la
page web. Exemple suivant :
Premirement, on doit mettre le API code dans mon JavaScript page.


Ensuite, vous utilisez fonction JavaScript :
Ajoutez la ligne suivante votre fichier JavaScript. Votre avis un peu et puis continu.
Exemple suivant :










32

Donc les tapes en haut, vous pouvez utiliser Google Maps sur votre site web comme










9.2. Comment afficher les informations sur le Google Map
Dans cette implmentation, on est intress comment on peut afficher les informations
sur la Google Map, comme marquer. Grce lexplication prcdant, on sait que
comment on peut utiliser le Google Map dans le site web.
Pour afficher un ou plusieurs marquer, on cre un ou plusieurs variables dans JavaScript
selon des nombre de marquer.








33

6.2. DataTables
DataTables est un plug-in pour la bibliothque JavaScript jQuery. C'est un outil trs
flexible, bas sur les fondements de l'amlioration progressive, qui va ajouter des
contrles d'interaction avances pour une table HTML.
- Utilisation
$(document).ready(function() {
$('#example').dataTable();
} );
9.3.Twitter boostrap
Twitter Bootstrap est une collection d'outils gratuits pour crer des sites et des
applications web. Il contient des modles de conception HTML et CSS-bas pour la
typographie, des formes, des boutons, des graphiques, de navigation et d'autres
composants de l'interface, ainsi que des extensions optionnelles JavaScript.







- Utilisation












34

9.4.Changer la langue entre langlais et le khmer
Cest lobligation que linterface du site web pourrait tre change entre khmer et
anglais. Pour raliser cet objectif, jai utilis un JQuery plug-in.
- Utilisation
Premirement, on incluse le ficher JQuery et le ficher langue.


En suite, on peut crer une slection pour changer la langue entre Khmer et Anglais.








Cest la code HTML pour crer une slection.



Le ficher kh.js a cre pour stocker les informations des langages.







35

10. Bilan du Systme des Gestion pour les Chefs de Chantier
10.1. Fonctionnalits ralises
Tche Oui Non
Visualiser la go location des chefs de chantier sur la Google Map en temps-
rel

9

Visualiser la go location des chantiers sur la Google Map en temps-rel 9
Gestion dutilisateur 9
Gestion du chantier 9
Gestion du produit 9
Gnrer le rapport des activits du chef de chantier 9
Gnrer le rapport des activits du chantier 9
Changer la langue entre langlais et le khmer 9

Tableau 3: Bilan du Systme de Gestion pour les Chefs de Chantier

10.2. Points forts et points faibles du produit
10.2.1. Points forts
Lapplication quon a cre a des points forts comme les suivants :
- Lapplication est facile utiliser car son interface graphique est cohrente pour
toutes les pages
- Il est facile grer ou dvelopper dans lavenir (il est facile de modifier ou mettre
jour).
Lapplication peut tre utilise dans deux langues : anglais et khmer
10.2.2. Points faibles
Lapplication possde aussi les points faibles tels que :
la performance est un peu lente quand on rcuprer les donnes de base de
donnes.






36

III. LE STORE MULTIMDIA POUR LA SOCIT
TC COMPUTER
On trouve dans cette partie lintroduction au premier projet du stage intitul le Store
Multimdia pour la socit TC Computer. Elle contient galement lintroduction au
projet de stage. On prsente aux lecteurs avec les problmatiques avant le
dveloppement du produit, lobjectif principal du projet et certains contraints relis. En
outre, cette partie contient la planification prvue du priode de chaque module et de la
squence des modules raliser. Finalement, on parle des fonctionnel raliss et
fonctionnel non-raliss de systme.
1. Prsentation du projet
Au Cambodge, utilisateurs des appareils intelligents comme Smart Phone sont les
utilisateurs novices, ce qui signifie que ils ont du mal tlcharger les applications, les
musiques, les vidos ou dinstaller les applications dans son appareil eux-mmes. Par
consquent, chaque magasin de tlphone, il est important d'avoir les techniciens qui
installent les applications, ou copient les musiques et les vidos pour les clients. En
analysant cette faon traditionnelle de fournir les services aux clients, on trouve quil ne
soit pas efficace et quil utilise plein de ressources.
Normalement, le magasin a besoin emploie beaucoup de techniciens afin dassurer le
service pour les clients. Les plus de services sont demands, les plus de techniciens sont
ncessaires. Un technicien peut seulement fournir le service un client la fois. En
consquence, les clients doivent passer du temps pour attendre leurs tours. Par exemple,
le client doit informer le technicien quelles applications il veut faire installer dans son
appareil ou quelle musique ou vido il veut avoir. Ensuite, le technicien doit trouver les
produits demands et installer ou copier pour le client. Ce processus est trs compliqu
et prend beaucoup de temps.
Ayant connu les problmes et les difficults, le magasin TC Computer, un magasin qui
vend les produits lectroniques comme les Smartphones, les tablettes, les ordinateurs,
etc., a propos la socit CamMob de dvelopper un systme qui permet aux clients de
facilement tlcharger, acheter, rechercher et installer les applications, les musiques, et
les vidos, disponibles dans le magasin, dans leurs Smartphones eux-mmes.

37

1.1. Problmatique
chaque magasin de tlphone, il est important d'avoir les techniciens qui installent les
applications, ou copient les musiques et les vidos pour leurs clients. En analysant cette
faon traditionnelle de fournir les services aux clients, on trouve quil ne soit pas
efficace et quil provoque plusieurs problmes.
Tout d'abord, il faut que l'entreprise dpense beaucoup d'argent pour acheter des
quipements tels que les ordinateurs pour les techniciens deffectuer leurs tches. En
plus, un technicien peut seulement fournir le service un client la fois. En
consquence, les clients doivent attendre leurs tours. Par exemple, le client doit
informer le technicien quelles applications il veut installer dans son tlphone ou quelle
musique ou vido il veut avoir. Ensuite, le technicien doit trouver les produits demands
et installer ou copier pour le client. Ce processus est trs compliqu et prend beaucoup
de temps. Par ailleurs, afin de trouver l'application, la musique ou la vido qu'ils
veulent, les clients passent du temps en regardant le catalogue. De plus, il est difficile
pour la boutique de promouvoir leurs produits tels que les applications, les musiques ou
les vidos aux clients.
cause de ces difficults, le Store Multimdia pour la Socit TC Computer a propos
ce systme au CamMob pour quil puisse viter ces problmes.

1.2. Objectif global du projet
Aprs avoir tudi les problmes existants, on peut dire que lobjectif principal de ce
projet est dveloppement une application sur le tlphone portable Androde et IOS
pour grer les achats des logiciels, des musiques, et des vidos soit vraiment essentielle
et utile. Donc, il a une application sur tlphone portable (Androde et IOS) et un
systme de gestion de contenu de lapplication TC.
Lapplication pour la plateforme Androde et IOS peut tre utilise pour :
- Afficher les produits disponibles du systme, y compris les applications, les
musiques, et les vidos
- Acheter ou tlcharger les produits
- Installer lapplication tlcharge
- Grer le compte dutilisateur
- Recharger le crdit (Il faut avoir assez de crdit pour acheter le produit)



Le

1.
























M
D
l'a
e systme d
- G
- G
- G
- G
- G
.3. Organis
Figure 11
M. SAY Vor
Dveloppeu
application
de gestion d
Gestion du pr
Gestion de ca
Gestion des p
Gestion de l'u
Gnrer du c
sation de l
1: Organisa
rtana
ur de
n web
e contenu d
roduit
atgorie
produits et c
utilisateur
code pour re
quipe
ation de l
Chef d
Dvel
m
38
de lapplicat
catgories r

echarger le c
quipe du S
M. Kong
du produit
M. KEM O
loppeur de
mobile sur A
tion TC peu
ecommand
compte du c
tore Multim
Kannika
et Scrum M
Oudom
l'applicati
Android
ut tre utilis
es
crdit
mdia pour
Master
on
e pour :
r TC Comp
M. TE
Dvel
l'applicati
puter
EAV Vibol
oppeur de
ion mobile
IOS
sur
39

2. Planification

Tche Semaine
1 2 3 4 5 6 7
tudes des nouvelles technologies et base de donnes
Sprint 1-5 S1 S2 S3 S4 S5 S6

Tableau 4: Planning du projet TC Magasin

Le stage est effectu environs deux mois (sept semaines en total). Le planning est donc
propos aprs que lon a identifi lobjectif principal de ce stage et que lon avait le
Product Backlog du projet :
- Sprint 1 = On tude les besoins et le scnario globale du systme pour savoir
quelles sont les technologies et les techniques de programmation utiliss dans
notre projet. En plus, on a tude la base de donnes de TC magasin.
- Sprint 2 = Il contient toutes les fonctionnalits concernant l'authentification de
utilisateur, CRUD (Create, Read, Update et Delete) utilisateur (utilisateur web et
utilisateur client), CRUD (Create, Read, Update et Delete) crdit et cre APIs
pour authentifier client mobile, rcuprer l'information de utilisateur et
catgorie.
- Sprint 3 = Il contient toutes les fonctionnalits concernant comment on peut
grer CRUD (Create, Read, Update et Delete) les informations du produit et
catgorie, rechercher des produits spcifiques dans la liste, couper la vido ou la
musique en fonction de la dure donne et cre APIs pour donner la liste des
applications et catgories client mobile.
- Sprint 4 = Il concentre sur la gestion des produits et catgories recommande
pour Androde et IOS dispositif et cre APIs pour donner la liste des
recommande.
- Sprint 5 = Il concentre sur la gnration du code pour recharger le crdit du
compte. Empreinte le code gnr.
- Sprint 6 : Il contient les fonctionnalits restantes de tous les Sprint avec quelques
fonctionnalits supplmentaires


40

3. Analyse et Spcification des Besoins
3.1. Besoins fonctionnels
Les Besoins fonctionnels sont les besoins demands par notre chef du produit et ces
sont les fonctions qui doivent tre implmentes. Il est trs important de bien dfinir des
besoins fonctionnels car ils doivent rpondre et garantir lobjective du projet. En
utilisant ces besoins et la rfrence de lobjective du projet, on peut dfinir des besoins
comme la prsente suivante:
3.1.1. Authentification
Lauthentification vous permet de prouver votre identit et, en retour, de vrifier que
votre interlocuteur est bien celui quil prtend tre. Le systme a besoin
d'authentification afin d'identifier et autoris autorisation pour chaque type d'utilisateur.
Il est important que l'application TC ait la scurit afin de protger les donnes et
empcher toute Hacking.

3.1.2. Gestion des applications
L'application est importante et les principales donnes pour le magasin. Application
pourrait tre l'application tlphone, musiques et vidos. L'application Web doit
permettre l'utilisateur de crer, lire (vue), mettre jour et supprimer des applications.
3.1.3. Gestion des catgories
Il est ncessaire pour que l'utilisateur puisse crer la catgorie qui prsente des
caractristiques de distingu. Catgorie pourrait avoir ses propres sous-catgories, et il a
trois catgories par dfaut, l'application, la musique et la catgorie vido. L'application
web doit permettre l'utilisateur de crer, lire (vue), mettre jour et supprimer des
catgories.
3.1.4. Gestion des utilisateurs
Le systme a divis les deux types d'utilisateurs, l'utilisateur du produit web et
l'utilisateur mobile.
- L'utilisateur du produit web
Il ya quatre groupes d'utilisateurs, administrateur, tlcharger et rceptionniste / caissier.
Le systme pourrait effectuer crer, lire (vue), modifier et supprimer sur chaque
utilisateur. En outre, il pourrait aussi changer le mot de passe de l'utilisateur ainsi.


41

- L'utilisateur mobile
L'accs client mobile au systme via les interfaces de programmation d'applications
(APIs) qui permettent client mobile Obtenez toutes les donnes ncessaires. Le systme
pourrait effectuer crer, lire (vue), modifier et supprimer sur chaque utilisateur.
3.1.5. Ajouter du crdit pour les clients manuellement
3.1.6. Autorisation de l'utilisateur
Comme indiqu dans la gestion des utilisateurs, il existe quatre types de groupes
d'utilisateurs, et chaque groupe sa propre autorisation pour diffrents modules.
L'autorisation de chaque groupe sera explique dans la partie de cas d'utilisation.
3.1.7. Gestion des produits et catgories recommand
Le systme pourrait crer recommandations qui consiste application et catgorie pour
Androde et les utilisateurs des dispositifs IOS. Recommandation pourrait tre la
principale recommandation (recommandation de la demande) ou de recommandation
dans chaque catgorie.

3.1.8. Gnrer du code pour recharger le crdit du compte
Afin d'accrotre la performance des ventes a la gestion du crdit facilittes, le systme a
besoin d'un module qui pourrait gnrer du code et de l'imprimer pour le client mobile
afin qu'il puisse recharger son crdit du produit sur Androde ou IOS.
3.1.9. Permettre lutilisateur dapercevoir pour la musique
3.1.10. Services Web
Service Web est une interface qui permet l'application TC magasin sur Androde et IOS
accs aux donnes ncessaires qui stockent sur base de donnes.









42

3.2. Besoins non fonctionnels
Les besoins fonctionnels sont nots dans la partie prcdente, alors il existe aussi un
autre type besoin appeles besoins non-fonctionnels. Les besoins non-fonctionnelles
sont les besoins quon dfinit pour amliorer le systme. Ils sont:
- Ergonomie: le systme doit tre uniforme et facile utiliser avec une interface
agrable.
- Maintenance et extensibilit: le systme doit tre bien organis en modules
indpendants pour tre facilement maintenu et extensible.
- Performance: la vitesse rapide avec le droulement confiance sans erreurs.

3.3. Contraintes du systme
Il est absolument important de connatre toutes les contraintes du systme avant de
commencer le dveloppement. Donc aprs une analyse rigoureuse du projet, on sait qu'il
y a des contraintes telles que:
- Comme il n'existe pas de base de donnes conue pour ce systme, il faut
quon tudie le systme avec soin afin de concevoir la base de donnes pour
ce systme.
- Pour permettre la communication entre ce systme et le serveur, il faut avoir
des APIs. Par consquent, on a galement besoin de crer des APIs pour ce
systme.
Comme il existe de nombreux types des navigateurs web disponibles sur lordinateur,
ces jours-ci, il est obligatoire faire en sorte que le systme est compatible avec tous ou
la plupart de ces navigateurs.

43

3.4. Cas dutilisation
Un cas dutilisation dfinit une manire dutiliser le systme et permet den crire les
exigences fonctionnelles. Chaque cas dutilisation contient un ou plusieurs scnarios qui
dfinissent comment le systme devraient interagir avec les utilisateurs pour atteindre
un but ou une fonction spcifique dun travail.























Figure 12: Diagramme de case d'utilisation du systme TC Magasin
44

Aprs la capture de besoins, on trouve quil est ncessaire davoir 4 types dacteur
distingues : administrateur, rceptionniste/cassier, Uplader et client (mobile).
- Administrateur : utilisateur qui peut faire toutes les fonctionnalits
- Uploader : utilisateur suprieur qui fait les fonctionnalits concernant les
modules applications, catgories, crdits et produits recommands.
- Rceptionniste/cassier : utilisateur qui ne peut que faire la gestion sur client
mobile, le crdit, et gnr du code pour recharger le crdit du compte.
- Client Mobile : utilisateur qui ne peut quaccs sur les APIs pour attirer les
donnes.
3.4.1. Acteur
Dans cette partie on dfinit toutes les fonctionnalits de chaque acteur.
- Utilisateur mobile (Client)
Ils peuvent utiliser les APIs pour accs les informations ncessaire comme:
- Faire connexion sur lapplication TC Magasin
- Obtenir la liste principale catgorie
- Obtenir la liste des sous-catgories
- Obtenir la liste produit qui est le plus pay
- Obtenir la liste produit qui est le plus gratuit
- Obtenir la liste produit qui est le plus nouveau et pay
- Obtenir la liste produit qui est le plus nouveau et gratuit
- Obtenir les informations personnelles de lutilisateur
- Modifier les informations personnelles de lutilisateur
- Vrifier si lutilisateur a suffisamment du crdit pour acheter du produit
- Obtenir la liste principale des produits et catgories recommands
- Obtenir la liste sous-catgorie des produits et catgories recommands
- Dbit du crdit quand lutilisateur a achet un produit
- Dbit du crdit quand lutilisateur a achet un album de musique ou
vido
- Recherche le produit
- Tlcharger un album musique ou album vido
- Crer un nouvel utilisateur
- Augmenter le crdit de lutilisateur selon lentre du code de crdit

45

- Utilisateur Uploader
Gestion de crdit
1. Ajouter un nouvel crdit
No. 1 Ajouter un nouvel crdit
Acteurs Administrateur, Uploader, Rceptionniste/Cassier
Description Additionner une application
Donnes le nom du crdit
le prix du crdit
le nombre du crdit
Pr-condition Le crdit ne peut pas existe dans systme
Rsultat La nouvelle application est cre

2. Lire les crdits
No. 2 Afficher les crdits
Acteurs Administrateur, Uploader, Rceptionniste/Cassier
Description Afficher tous les crdits
Donnes Non
Pr-condition Il y a au moins un crdit
Rsultat Liste des crdits

3. Supprimer un crdit
No. 3 Supprimer un crdit
Acteurs Administrateur, Uploader, Rceptionniste/Cassier
Description Supprimer un crdit existant
Donnes Un crdit
Pr-condition Le crdit doit tre exist
Rsultat Le crdit est supprim

4. Modifier un crdit
No. 4 Modifier un crdit
Acteurs Administrateur, Uploader, Rceptionniste/Cassier
Description Changer les donnes du crdit
Donnes Le nouveau nom, le nouveau prix, ou le nouveau nombre du crdit
Pr-condition Le crdit doit tre exist
Rsultat Le crdit est modifi


46

Gestion de catgorie
5. Ajouter une nouvelle catgorie
No. 5 Ajouter une catgorie
Acteurs Administrateur, Uploader
Description Additionner une catgorie
Donnes le nom de la catgorie
la catgorie parente
le nombre du crdit
Pr-condition La catgorie ne peut pas existe dans la mme catgorie parents
Rsultat La nouvelle catgorie est cre

6. Lire les catgories
No. 6 Afficher les catgories
Acteurs Administrateur, Uploader
Description Afficher tous les catgories
Donnes Non
Pr-condition Il y a au moins une catgorie
Rsultat Liste des catgories

7. Supprimer une catgorie
No. 7 Supprimer une catgorie
Acteurs Administrateur, Uploader
Description Supprimer une catgorie existant
Donnes Une catgorie
Pr-condition La catgorie doit tre existe
Rsultat La catgorie est supprime

8. Modifier une catgorie
No. 8 Modifier une catgorie
Acteurs Administrateur, Uploader
Description Changer les donnes de la catgorie
Donnes Le nouveau nom, ou la nouvelle catgorie parent du crdit
Pr-condition La catgorie doit tre existe
Rsultat La catgorie est modifie








47

Gestion du produit
9. Ajouter une application
No. 9 Ajouter un produit
Acteurs Administrateur, Uploader
Description Additionner un produit comme application, musique et vido
Donnes le nom du produit
la catgorie parente
le fichier du produit
la photo du produit
le nombre du crdit du produit
Il a dure pour couper la musique et la vido
Pr-condition Lapplication ne peut pas existe
Rsultat La nouvelle application est cre

10. Lire les produits
No. 10 Afficher les produits
Acteurs Administrateur, Uploader
Description Afficher tous les produits
Donnes Non
Pr-condition Il y a au moins un produit
Rsultat Liste des produits

11. Supprimer un produit
No. 11 Supprimer un produit
Acteurs Administrateur, Uploader
Description Supprimer un produit existant
Donnes Un produit
Pr-condition Le produit doit tre exist
Rsultat Le produit est supprim

12. Modifier un produit
No. 12 Modifier un produit
Acteurs Administrateur, Uploader
Description Changer les donnes du produit
Donnes Le nom du produit
la catgorie parente
le fichier du produit
la photo du produit
le nombre du crdit du produit
Il a dure pour couper la musique et la vido
Pr-condition Le produit doit tre exist
Rsultat Le produit est modifi


48

13. Couper la vido ou musique selon de la dure
No. 13 Couper la vido ou musique selon de la dure
Acteurs Administrateur, Uploader
Description Couper la vido ou musique selon de la dure donne par utilisateur
Donnes La dure
Pr-condition Non
Rsultat La dure de la musique et vido est coup

Gestion des produits et catgories recommandes
14. Ajouter un nouvel recommande
No. 14 Ajouter une recommande
Acteurs Administrateur, Uploader
Description Additionner une recommande
Donnes Les catgories
Les produits (les applications, les musiques, ou les vidos)
Pr-condition Il y a seulement une recommande principal
Il peut avoir une ou plusieurs recommandes des catgories
Rsultat La recommande est cre

15. Lire les recommande
No. 15 Afficher les recommande
Acteurs Administrateur, Uploader
Description Afficher tous les recommandes
Donnes Non
Pr-condition Il y a au moins une recommande
Rsultat Liste des recommandes

16. Supprimer un recommande
No. 16 Supprimer une recommande
Acteurs Administrateur, Uploader
Description Supprimer une recommande existant
Donnes Une recommande
Pr-condition La recommande doit tre existe
Rsultat La recommande est supprime

17. Modifier un recommande
No. 17 Modifier une recommande
Acteurs Administrateur, Uploader
Description Changer les donnes de la recommande
Donnes Les catgories
Les produits (les applications, les musiques, ou les vidos)
Pr-condition La recommande doit tre existe
Rsultat\ La recommande est modifie

49

- Rceptionniste/caissier
- Gestion de client mobile
18. Ajouter un nouvel client mobile
No. 18 Ajouter un client mobile
Acteurs Administrateur, Rceptionniste
Description Additionner un client mobile
Donnes Le nom dutilisateur
le nom du client
le courriel lectronique
le mot de passe
Pr-condition Le client mobile ne peut pas existe
Rsultat Le nouveau client mobile est cre

19. Lire les clients
No. 19 Afficher les clients mobiles
Acteurs Administrateur, Rceptionniste
Description Afficher tous les clients mobiles
Donnes Non
Pr-condition Il y a au moins un client
Rsultat Liste des clients

20. Supprimer un client
No. 20 Supprimer un client
Acteurs Administrateur, Rceptionniste
Description Supprimer un client existant
Donnes Un client
Pr-condition Le client doit tre exist
Rsultat Le client est supprim

21. Modifier un client
No. 21 Modifier un client
Acteurs Administrateur, Rceptionniste
Description Changer les donnes du client
Donnes Le nom dutilisateur
le nom du client
le courriel lectronique
le mot de passe
Pr-condition Le client doit tre exist
Rsultat Le client est modifi




50

22. Changer le nombre de crdit de certain client
No. 22 Changer le nombre de crdit de certain client
Acteurs Administrateur, Rceptionniste
Description Changer le nombre de crdit directement
Donnes Le crdit
Pr-condition Le client doit tre exist
Il y a au moins un crdit
Rsultat Le nombre de crdit du client est chang

- Gnrer du code pour recharger le crdit du compte
23. Gnrer le code alatoire de certain crdit pour recharger le
compte du crdit
No. 23 Gnrer le code alatoire de certain crdit pour recharger le
compte du crdit
Acteurs Administrateur, Rceptionniste
Description Gnrer le code de crdit que client veux vendre. Le code est gnr
automatiquement alatoire
Donnes Le crdit
Pr-condition Il y a au moins un crdit
Rsultat Le code alatoire du crdit est gnr

24. Empreinte le code alatoire
No. 24 Empreinte le code alatoire
Acteurs Administrateur, Rceptionniste
Description Empreinte le code alatoire utilisateur pour incrmenter le nombre du
crdit
Donnes Le code alatoire
Pr-condition le code alatoire est dj gnr
Rsultat Un papier qui contient le code alatoire, le nombre de crdit et le date
expir

- Gestion de crdit
- Ajouter un nouvel crdit
- Lire les crdits
- Supprimer un crdit
- Modifier un crdit





51

- Administrateur
Pour ladministrateur du produit, il peut faire toutes les tches comme lutilisateur
normal plus les fonctionnalits suivantes :
- Gestion dutilisateur du systme
25. Ajouter un nouvel utilisateur
No. 25 Ajouter un utilisateur du systme
Acteurs Administrateur
Description Additionner un utilisateur du systme
Donnes Le groupe de lutilisateur du systme
Le nom de lutilisateur
le nom
le courriel lectronique
le mot de passe
Pr-condition Lutilisateur du systme ne peut pas existe
Rsultat Le nouveau utilisateur du systme est cre

26. Lire les utilisateurs
No. 26 Afficher les utilisateurs du systme
Acteurs Administrateur
Description Afficher tous les utilisateurs du systme
Donnes Non
Pr-condition Il y a au moins un utilisateur du systme
Rsultat Liste des utilisateurs du systme

27. Supprimer un utilisateur
No. 27 Supprimer un utilisateur du systme
Acteurs Administrateur
Description Supprimer un utilisateur du systme existant
Donnes Un utilisateur du systme
Pr-condition Lutilisateur du systme doit tre exist
Rsultat Lutilisateur du systme est supprim

28. Modifier un utilisateur
No. 28 Modifier un utilisateur du systme
Acteurs Administrateur
Description Changer les donnes de lutilisateur du systme
Donnes Le groupe de lutilisateur du systme
Le nom de lutilisateur
le nom
le courriel lectronique
le mot de passe
Pr-condition Lutilisateur doit tre exist
Rsultat Lutilisateur est modifi
52

29. Changer mot de passe
No. 29 Changer le mot de passe de certain utilisateur du systme
Acteurs Administrateur
Description Changer le mot de passe de lutilisateur
Donnes Lutilisateur, le vieux mot de passe et le nouvelle mot de passe
Pr-condition Lutilisateur doit tre exist
Rsultat Le mot de passe de lutilisateur du systme est chang

3.4.2. Spcification de chaque cas dutilisation
Gestion du crdit
Un crdit est une composante en TC magasin qui est utilis pour lachat produits. Il y a
trois informations important, le nom du paquet, le nombre du crdit et le prix du crdit.
On peut faire toutes les oprations CRUD (Create, Read, Update, et Delete) pour
chaque crdit. Les crdits sont utiliss dans autre module, gestion des produits et
catgories recommandes.
- Gestion de la catgorie
Chaque produit (application, musique et vido) est divis en catgories. Il y a trios
catgorie racine, application, musique et vido. Une catgorie ne suit que dans une
catgorie parent. Donc, on peut faire toutes les oprations CRUD (Create, Read,
Update, et Delete) pour chaque catgorie.
- Gestion du produit
Il y a trois types des produits, les applications, les musiques et les vidos. Les
applications peuvent appartient de androde ou IOS. En outre, quand on ajoute ou
modifier la vido ou musique, il a un dure spcifi pour couper en certain dure
donne. Dans la liste de musique il a une fonction qui nous permettre un aperu de la
musique. On peut faire toutes les oprations CRUD (Create, Read, Update, et Delete)
pour chaque produit.
- Gestion des produits et catgories recommandes
Il y a deux type de recommandes, le recommande principal et les recommande de
catgories. Androde et IOS ont recommands distingues. Pour chaque recommande il
y a ne que maximum deux catgories et plusieurs produits. Chaque produits et
catgories dans recommandes ont la date commencer et la date expirer. Seulement
ceux qui ne sont pas prims seront affichs.
53

- Gestion du client mobile
Un client mobile ne pouvait pas se connecter au site, mais le client mobile pourrait
obtenir des donnes de base de donnes via des APIs. Une fois la connexion du client
dans le TC de l'application sur le tlphone, le client recevrait un jeton (token) utilis
pour authentifier le client afin d'obtenir des donnes de base de donnes. On peut faire
toutes les oprations CRUD (Create, Read, Update, et Delete) pour chaque produit. Par
ailleurs, il y a une fonction qui pourrait complter crdit client directement.
- Gnrer du code pour recharger le compte du crdit
Pour faciliter la vente, il ya un module, vente rapidement. L'objectif de ce module est de
vendre rapidement le crdit au client. Il y a la liste des crdits, et il ya un bouton pour
gnrer un code alatoire pour chaque crdit. Le code gnr se compose des
informations comme le code, le nombre de crdit et la date a expir. En outre, le code
gnr peut tre imprim pour le client afin qu'ils puissent facilement remplir le code
dans le TC application qui est installe dans le tlphone.
- Gestion dutilisateur du systme
Outre client mobile, il existe trois types d'utilisateurs qui sont administrateur, uploader
et rceptionniste / caissier. Contrairement client mobile, ils peuvent se connecter au site
web de TC. Ce module est gr par l'administrateur du groupe, et les utilisateurs de
l'administrateur du groupe pourrait effectue quatre oprations de base CRUD pour
chaque utilisateur. En outre, il y a une fonction pour changer le mot de passe de
l'utilisateur.
Cette partie porte sur le cahier de charge du projet. On liste tous les besoins et on donne
des spcifications en bref pour chaque fonctionnalit. Aprs avoir lit ce chapitre, on
peut savoir plus clairement de quoi lapplication sagit. La partie suivant parlera en
dtail la conception du systme et les technologies qui ont utilis pour le
dveloppement.






54

4. Choix de Technologie et Conception
4.1. Choix de technologie
Cette partie parle de la technologie que lon a utilise pour raliser notre projet. Elle
porte aussi sur les langages et les outils qui aident au dveloppement du produit.
4.1.1. Technologies utilises
Le Framework CakePHP est propos par notre maitre de stage pour raliser le projet.
On va discuter en bref les composants, le droulement et lintrt de ce Framework dans
la partie suivante.
4.1.1.1. Cest quoi CakePHP ?
Selon le site officiel de CakePHP (http://cakephp.org) :
CakePHP est un Framework pour le dveloppement dapplication web bas sur le
langage PHP. Il est un ensemble de codes sources, de bibliothques, de classes, et de
environnement dexcution qui aide le dveloppeur crer lapplication web plus
rapidement. Lide principale de CakePHP est que lon peut utiliser les fonctionnalits
et la structure de base existante avec lesquelles on dveloppe notre application en
particulier le structure MVC avec le CRUD opration.

Les raisons pour lesquelles on a choisi CakePHP comme la technologie de
dveloppement sont :
- Comme le CakePHP a group quelques fonctionnalits et les structures qui sont
souvent utiliss dans la cration page web, le dveloppeur na pas besoin de
recrer son site web en partant de zro. Donc on peut ajouter quelques dautres
fonctionnalits que notre projet a besoin spcifiquement.
Il se compose particulirement des solutions pour nous aider dans le
dveloppement web comme Active Record, Association Data Mapping, Front
Controller et MVC qui est la mthode la plus importante dans CakePHP.
En basant sur notre connaissance de PHP avec les concepts de MVC, cest plus
facile pour nous comprendre comment a marche.
CakePHP est une open-source, donc il est gratuit pour tout le monde
Il est recommand par notre matre de stage



55

4.1.1.2. MVC (Modle Vue Contrleur)
Le Modle-Vue-Contrleur est une architecture et une mthode de conception qui
organise logiquement l'IHM d'une application en 3 parties principales. Ils sont un
modle (modle de donnes), une vue (prsentation, interface graphique dutilisateur) et
un contrleur (gestion des vnements, synchronisation). Chacun ayant un rle prcis
pour faire marcher lapplication web dans le modle MVC.
- Modle
Dans CakePHP, un modle est une classe ou un objet qui reprsente une table
particulire dans la base de donnes pour quon en puisse rcuprer les donnes et
reprsente sous forme le page web. Tous les code qui concerne les oprations sur
laccs, laddition, la modification ou la suppression les donnes dans une table, se
trouve dans le modle correspondant. De plus, le modle contient galement le code qui
dfinit sa relation associe avec autres modles.
- Vue
La vue correspond l'interface graphique avec laquelle l'utilisateur interagit avec le
systme. La tche principale est de prsenter les rsultats renvoys par le modle sous
forme page web que lutilisateur peut comprendre. En plus, il est responsable de
recevoir toutes les actions de l'utilisateur (clic de souris, slection d'une entre, taper les
boutons, etc.) et envoyer au contrleur correspondant. La vue n'effectue aucun le
traitement, elle affiche les rsultats des traitements effectus par le modle. La
prsentation des informations est faite sous forme le code html normalement. La couche
Vue nest pas seulement limite au HTML ou la reprsentation en texte de donnes.
Elle peut aussi tre utilise pour offrir une grande varit de formats en fonction de vos
besoins, comme les vidos, la musique, les documents et tout autre format auquel vous
pouvez penser.
- Contrleur
Le contrleur prend en charge la gestion des vnements de synchronisation pour mettre
jour la vue ou le modle et les synchroniser. Il reoit tous les vnements de
l'utilisateur de la vue et les effectuer. Si une action ncessite un changement des
donnes, le contrleur demande la modification des donnes au modle mais certains
vnements de l'utilisateur ne concernent que la vue donc le contrleur demande la
vue de modifier. Il analyse la requte du client et se contente d'appeler le modle
adquat et de renvoyer la vue correspondant la demande.
56














Figure 13: Droulement de la conception MVC

Le diagramme au-dessus illustre comment fonctionne la conception MVC :
1. La requte est envoye au contrleur avec les donnes de lutilisateur (par
mthode POST ou GET)
2. Le contrleur traite la requte et appelle le modle pour accder les donnes
3. Le modle rpond lappel du contrleur en envoyant ou stockant les donnes
4. Le contrleur en suite envoie les rsultats la vue
5. La vue sort les rsultats sous forme comprhensible et approprie
lutilisateur
4.1.1.3. Moins de configurations et plus de conventions
Les configurations sont toujours ncessaires afin de faire sinstaller correctement un
systme. Pour le CakePHP Framework, pour faire marcher le page web on doit faire
quelques configurations particulirement la connexion la base de donnes. En plus, on
doit respecter strictement la convention de CakePHP comme les noms de tables dans la
base de donnes, les noms et les lieus o se trouvent nos modles, nos contrleurs et nos
vues. Sil situe correctement selon la convention, le CakePHP va les trouver
automatiquement et les utiliser proprement selon nos besoins.



(1)
(2)
(3)
(4)
(5)
57

4.1.2. Langages utiliss
Maintenant, on va parler en bref tous les langages que lon a utiliss pour dvelopper
lapplication :
PHP : un langage de scripts libre principalement utilis pour produire des pages
Web dynamiques via un serveur http. Comme le CakePHP est le Framework de
PHP, donc le langage PHP est utilis couramment dans la cration de page web.
JavaScript : le script pour tracer laccs la bannire sur la cot client pour quil
est interactif. En plus, il est utilis pour faire la validation de donnes de ct
client avant denvoyer vers le serveur.
jQuery est une bibliothque javascript libre (on parle galement de framework
javascript libre)
HTML : est un langage trs clbre pour reprsenter les pages web. Cest un
langage de balisage qui permet dcrire de lhypertexte, de structurer
smantiquement, de mettre en forme le contenu des pages et dinclure des
ressources multimdias comme des images, des formulaires de saisie, et des
lments programmables tels que des applets.
CSS : est un langage informatique qui sert ajouter les styles et les couleurs la
prsentation des documents HTML.
SQL : est un langage utilis pour envoyer la requte structure au serveur de
base de donnes pour sauvegarder et rcuprer les donnes.

58

4.1.3. Outils utiliss
Tout au long de notre projet, on peut raliser le travail laide des outils au-dessous :
- Serveur Web Apache : est un logiciel pour faire marcher le serveur ou service
HTTP. Il joue le rle comme le serveur web de notre application
- MySQL : est un systme de gestion de base de donnes (SGBD).
- Lamp : est une plateforme de dveloppement Web, permettant de faire
fonctionner localement (sans se connecter un serveur externe) des scripts PHP.
Il est un logiciel contenant 2 serveurs (Apache et MySQL) avec un interprteur
de script PHP. En plus pour faciliter ladministration de la base de donnes,
PhpMyAdmin est un outil qui est l pour vous aider.
- Navigateur web : Firefox et Google Chrome sont utiliss pour faire la recherche
et galement pour tester notre application.
- Microsoft Word 2007 : est utilis pour la rduction de document concernant le
projet spcialement le rapport.


4.2. Architecture du systme
4.2.1. Architecture physique
Larchitecture physique donne lide globale comment le systme fonctionne et elle
prsente les composants physiques participant.









Figure 14: Architecture physique du systme


Trois composants principaux sont illustrs dans limage au-dessus :
59

Navigateur Client : le client utilise le navigateur web pour communiquer avec le
serveur web (rception et transmission de donnes sous forme de requte
HTTP).
Serveur Web Apache : le serveur web reoit la requte et excute le processus
de PHP correspondante consultant la base de donnes sil est ncessaire. Il
stocke lapplication web que lon dveloppe.
Base de Donnes MySQL : la base de donnes stocke toutes les informations et
elle va les rechercher et les envoyer au serveur web quand il lui demande.

4.2.2. Architecture logique
Le graphe au-dessous vous prsente larchitecture logique de notre application.



















Figure 15: Architecture logique du systme

60

Lutilisateur clique sur un lien dans lapplication, et son navigateur envoie une
requte votre serveur web.
Le Dispatcher analyse l'URL afin d'en extraire les paramtres de cette requte
comme le contrleur, l'action et tout autre argument qui affecteront le logique
mtier au cours de cette demande.
Le contrleur peut utiliser des modles pour accder aux donnes demands
l'application.
Aprs le modle a rcupr les donnes de la base de donnes correspondantes,
il est retourn vers le contrleur.
Le contrleur peut utiliser des Components d'affiner les donnes ou effectuer
d'autres oprations (par exemple, gnrer le fichier PDF).
Une fois que le contrleur a utilis des modles et des Components pour
prparer les donnes suffisamment, ces donnes sont remises la vue en
utilisant le contrleur. La logique de vue est effectue, ce qui peut inclure
l'utilisation des Elements et/ou des Helpers. Par dfaut, la vue est l'intrieur
d'un Layout.
La rponse HTML de la vue est envoye au navigateur client.

61

4.3. Conception de base de donn
Cette partie vous prsente la conception de la base de donnes et la figure suivante
indique le diagramme de Modle Conception de Donnes de notre base de donnes.
Ce diagramme est dvelopp par logiciel de BD-main qui nous permet de savoir la
relation en les tables ou entits.
























Note : on peut voir en dtail le schma de donnes dans lAnnexe B

Figure 16: Conception de base de donn du systme TC Magasin

62

4.4. Organisation de lIHM
On prsente dans cette partie le diagramme de lenchanement de fentre du produit. Ce
diagramme indique la relation entre les activits des vues de notre systme et comment
utilisateur peut aller dune page vers autre page.
On dcoupe le diagramme en trois sous diagramme selon les trois acteurs du systme.


























Figure 17: Diagramme de l'enchanement de fentre dadministrateur
63














Figure 18: Diagramme de l'enchanement de fentre duploader














Figure 19: Diagramme de l'enchanement de fentre de la rceptionniste

Cette partie porte principalement sur les technologies, les langages et les outils utiliss
pendant le dveloppement du projet et pourquoi on a les choisi. Elle parle galement de
larchitecture du systme et la conception de base de donnes. La partie suivant
prsentera comment on a utilis ces technologies pour raliser le projet et le rsultat que
lon a obtenu.


64

5. Implmentation
Cette partie prsente toutes les techniques dimplmentation aprs avoir trouv des
solutions qui permettent de rsoudre les problmes. On ne prsente que les parties
importantes du systme et limplmentation des composants de larchitecture logique.
5.1. Cration de modles, contrleurs et vues
Comme on savait, MVC est la plus importante conception dans CakePHP. Toutes les
requtes (URL) sont sous la forme suivante :
http://nom_de_domaine/nom_de_application/nom_de_contrleur/nom_de_action
5.1.1. Modle
Dans CakePHP, chaque table dans la base de donnes doit avoir un modle
correspondant. Le modle est responsable daccder ou de modifier les donnes dans la
table. Un Modle est la fois votre modle de donnes et, en programmation oriente
objet, un objet qui reprsente une chose, comme une voiture, une personne ou une
maison. Le modle est cr comme une classe dans un fichier correspondant. Tous les
fichiers de modles sont stocks dans /app/models. Au-dessus, cest un exemple dune
classe de modle.

















65


5.1.2. Contrleur
Le mme concept est appliqu pour contrleurs. Un contrleur est utilis pour grer la
logique dune partie de votre application. En rgle gnrale, les contrleurs sont utiliss
pour grer la logique dun seul modle. On cre une classe pour reprsenter un
contrleur. Tous les fichiers de contrleur sont mis dans /app/controllers. Dans
CakePHP, les contrleurs peuvent inclure un nombre quelconque de mthodes qui sont
gnralement appeles actions. Les actions sont les mthodes du contrleur utilises
pour afficher des vues. Une action correspond une seule mthode dun contrleur.
Lexemple suivant dmontre une classe de contrleur contenant une action form .









66

5.1.3. Vue
La couche vue de CakePHP cest la faon dont vous parlez vos utilisateurs. Il relie
seulement avec le contrleur qui correspond une action dans un contrleur. Aprs
avoir excut une action, le systme va nous afficher le contenu de la vue
correspondant. Les fichiers de vues de CakePHP sont crits en pur PHP et ont comme
extension par dfaut .ctp (Cake Template Page). Le contenu de ce fichier est dcrit par
le code HTML.























67

5.2. Conventions dans CakePHP
Quand on parle de conventions dans CakePHP, a veut dire comment on peut nommer
nos lments de MVC et nos tables dans la base de donnes et o ils se trouvent. En
suivant exactement cette convention, CakePHP peut faire presque toutes les tches
automatiquement.
Les conventions importantes dans CakePHP sont :
Le nom de modle (nom de classe) doit tre le nom singulier de sa table et
respecte le CamelCased (ex : MyApplication). Son fichier est nomm tout en
minuscule et spar par _ sil contient plusieurs mots (ex : app_application).
Le nom de contrleur (nom de classe) est pluriel, respecte le CamelCased
avec le post-fixe Controller (ex : ApplicationsController). Le nom de son
fichier est en minuscule et a de post-fixe _controller (ex :
applications_controller).
Le nom de chaque table dans la base de donnes est toujours pluriel et crit en
minuscule (ex : app_applications). Il faut que la cl primaire soit nomme id .
le nom de vue est en minuscule et identique au nom de laction quelle
reprsente. Les fichiers de vue se trouvent dans /app/views/nom_de_contrleur.

5.3. Couper la musique et la vido
FFMpeg est un logiciel de lecture et encodage de vido. Il assure en ligne de commande
la possibilit de convertir les fichiers vido d'un format un autre.
FFMpeg s'utilise en ligne de commande dans un terminal. Il faut passer des instructions
au programme pour fonctionner. Une instruction est un texte, le plus souvent prcd
d'un tiret, qui permet d'expliquer un programme en ligne de commande ce que l'on
veut de lui.
- Installation
Il suffit d'installer le paquet ffmpeg une fois les dpts Univers activs.
sudo apt-get install libavcodec-unstripped-52 libavdevice-unstripped-52
libavformat-unstripped-52 libavutil-unstripped-50 libpostproc-unstripped-51
libswscale-unstripped-0 ffmpeg


68

- Utilisation
FFMpeg peut effectuer de nombreuses oprations li avec la vido et la musique. Nos
objectifs sont de coupe de la musique et de la vido des produits en fonction de la dure
donne par les utilisateurs. Pour atteindre ces objectif, on a cre deux fonctions,
createTmpFileMp3 et createTmpFileMp4.
Comme je l'ai mentionn ci-dessus, FFmpeg est utilis comme une ligne de commande,
Pour excuter cette ligne de commande en PHP, nous utilisons fonction PHP exec.
Syntax:
String exec(string $command [, array &$output [, int &$return_var ]] )
On peut couper la musique avec FFMpeg en utilisant la command :
ffmpeg t [length] i musique_path acodec copy output_path




On peut couper la musique avec FFMpeg en utilisant la command :
ffmpeg ss 00:00:00 t [length] i video_path acodec copy vcodec copy async 1
output_path






69

6. Bilan du Store Multimdia pour la Socit TC Computer
6.1. Fonctionnalits ralises
Tche Oui Non
Authentification 9
Gestion du produit 9
Gestion de la catgorie 9
Gestion des produits et catgories recommandes 9
Gestion de lutilisateur 9
Gnrer du code alatoire pour recharger le compte du crdit 9
Cr les services web pour clients mobile 9
Couper les musiques et vidos 9

Tableau 5: Bilan du Store Multimdia pour la Socit TC Computer

6.2. Points forts et points faibles du produit
6.2.1. Points forts
Lapplication quon a cre a des points forts comme les suivants :
- Lapplication est facile utiliser car son interface graphique est cohrente pour
toutes les pages
Grce CakePHP, lapplication est divise en modules qui sont faciles grer
dans lavenir (modifier ou mettre jour)
6.2.2. Points faibles
Lapplication possde aussi les points faibles tels que :
la performance est un peu lente






70

IV. CONCLUSION
Finalement, ces projets ont considr comme succs, puisque toutes les tches et
fonctionnalits de base sont ralises. Toutefois, lapplication a encore des points qui
sont obligs d'amliorer et de modifier pour tre parfait.
1. Exprience acquise
Au cours de ce stage, jai beaucoup appris et jai gagn pas mal dexpriences.
Ces expriences sont :
- Nouvelle connaissance sur le framework CakePHP
- Communication sociale avec les autres personnes qui travaillent dans la mme
entreprise
- capacit de travailler sous la pression
2. Difficults
En vrit, cest normal que le dveloppeur toujours rencontre les points difficiles
pendant le processus de dveloppement. a mest gal, javais aussi la confrontation
avec les difficults pendant mon travail. Quelques problmes son mineur mais quelques
sont grandes et je dois trouver les solutions appropris pour les rsoudre. Parmi tout, jai
confront deux problmes qui sont les plus graves.
Le premier est que je nai jamais travaill avec CakePHP. Bien que ce framework soit
facile apprendre, il a pris de temps pour tudier toutes ses fonctionnalits et sa
structure.
Le deuxime porte sure la structure de bases de donnes existantes. Puisquelles sont
tropes grands et compliqus, jai perdu beaucoup de temps pour les comprendre et les
analyser.
3. Perspective
A cause de la limitation de temps, on na mis que les objectifs principaux pour le
dveloppement du produit. Ces objectifs ne sont pas suffisants pour perfectionner le
projet. Par consquence, on souhaite pour lextensibilit de projet dans les parties
suivantes :
- Perfectionner toutes les fonctionnalits
- Amliorer la performance des produits particulirement optimisation SQL
71

REFERENCES BIBLIOGRAPHIQUES
1. Livres
- Bari, A. & Syam A. (2008). CakePHP Application Development. Birmingham :
Pack Publishing.
- Sklar, D. & Trachtenberg, A. (2006). PHP Cookbook. USA : OReilly
2. Internet
- CakePHP : The Manual. Document tlaccessible ladresse
http://book.cakephp.org
- Modle-Vue-Contleur. Document tlaccessible ladresse
http ://fr.wikipedia.org/wiki/Modle-Vue-Contrleur
- dataTables. Document tlaccessible ladresse http://www.datatables.net/
- Twitter Boostrap Document tlaccessible ladresse
http://twitter.github.io/bootstrap/

72

ANNEXE A : SCHEMA DE DONNS
1. Systme de Gestion pour les Chefs de Chantier
1. Tableau company
No. Attributs Type de donnes
1 idCompany Int
2 Name varchar(50)
3 Address varchar(100)

2. Tableau worker
No. Attributs Type de donnes
1 idWorker Int
2 Name varchar(50)
3 Address varchar(100)
4 dateOfBirth Date
5 imageUrl varchar(200)
6 idCompany Int
7 Username varchar(100)
8 Password varchar(100)
9 Status varchar(100)
10 Telephone varchar(100)

3. Tableau locationHistory
No. Attributs Type de donnes
1 idLocation Int
2 Latitude Double
3 Longitude Double
4 dateTime Timestamp
5 #idWorker Int



73

4. Tableau project
No. Attributs Type de donnes
1 idProject int
2 Name varchar(50)
3 Street varchar(100)
4 City varchar(100)
5 Country varchar(100)
6 Latitude double
7 Longitude double
8 imageUrl varchar(150)
9 callingName varchar(100)
10 tel1 varchar(30)
11 tel2 varchar(30)
12 tel3 varchar(30)
13 Email varchar(50)
14 Website varchar(100)
15 last_update timestamp
16 Active tinyint
17 expect_finish_date date
18 estimate_finish_date date
19 #idCompany int

5. Tableau problem
No. Attributs Type de donnes
1 idProblem int
2 Status varchar(50)
3 dateTimeOccur dateTime
4 Reason varchar(300)
5 Degree int
6 dateTimeReport datetime
7 imageUrl varchar(256)
8 Title varchar(100)

74

6. Tableau object
No. Attributs Type de donnes
1 idObject Int
2 Name varchar(50)
3 imageUrl varchar(256)
4 last_update Timestamp
5 Active Tinyint
6 Description varchar(500)

7. Tableau visit
No. Attributs Type de donnes
1 idVisit Int
2 dateTimeCheckin dateTime
3 dateTimeCheckout dateTime
4 checkedOut Tinyint

8. Tableau responsible
No. Attributs Type de donnes
1 #idWorker Int
2 #idProject Int

9. Tableau useObject
No. Attributs Type de donnes
1 #idProject Int
2 #idObject Int
3 Quantity Int




75

10. Tableau reportProblem
No. Attributs Type de donnes
1 #idWorker int
2 #idProblem int
3 #idProject int

11. Tableau activitiesLog
No. Attributs Type de donnes
1 #idWorker int
2 #idObject int
3 #idVisit int
4 oldValue int
5 newValue int
6 dateTimeChange datetime
7 Action varchar(100)

12. Tableau visitSite
No. Attributs Type de donnes
1 #idWorker int
2 #idProject int
3 #idVisit int









76

2. Store Multimdia pour la Socit TC Computer
1. Tableau app_applications
No. Attributs Type de donnes
1 Id Int
2 Name Varchar(256)
3 #Category_id Int
4 Extension_type Varchar(10)
5 Used_on Varchar(256)
6 Filesize
7 Filename Varchar(256)
8 Photo Varchar(256)
9 Number_credit Int
10 Number_downloads Int
11 Create_date Datetime
12 Modified_date Timestamp
13 Created_by Int
14 Status Tinyint
15 File_measure Varchar(11)
16 Thumbnail Varchar(256)
17 #Os_id Int
18 Preview_media Varchar(256)
19 Preview_length Int

2. Tableau app_categories
No. Attributs Type de donnes
1 Id Int
2 Name Varchar(128)
3 #Parent_id Int





77

3. Tableau app_features
No. Attributs Type de donnes
1 Id Int
2 #Category_id Int

4. Tableau app_application_features
No. Attributs Type de donnes
1 Id Int
2 #Application_id Int
3 Started_date Timestamp
4 Ended_date Datetime

5. Tableau app_category_features
No. Attributs Type de donnes
1 Id Int
2 #category_id Int
3 #Feature_id Int
4 Started_date Timestamp
5 Ended_date Datetime

6. Tableau app_user_group
No. Attributs Type de donnes
1 Id Int
2 Name Varchar(100)
3 Alias_name Varchar(100)
4 allowRegistration Int
5 Created dateTime
6 Modified dateTime





78

7. Tableau app_users
No. Attributs Type de donnes
1 Id Int
2 #User_group_id Int
3 Username Varchar(100)
4 Password Varchar(256)
5 Salt Text
6 Email Varchar(100)
7 First_name Varchar(100)
8 Last_name Varchar(100)
9 Email_verified Int
10 Active Int
11 Ip_address Varchar(50)
12 Created DateTime
13 Modified DateTime
14 Gender Varchar(16)
15 Dateofbirth Date
16 Telephone Varchar(20)
17 Address Varchar(256)
18 Photo Varchar(256)
19 Remain_credit Int
20 Lastest_login dateTime
21 Status tinyInt
22 Created_by Int









79

8. Tableau app_login_tokens
No. Attributs Type de donnes
1 Id Int
2 #User_id Int
3 token Char(32)
4 duration Varchar(32)
5 used tinyInt
6 created DateTime
7 expired DateTime

9. Tableau app_user_group_permissions
No. Attributs Type de donnes
1 Id Int
2 #User_group_id int
3 Controller Varchar(50)
4 Action Varchar(100)
5 allowed tinyInt

10. Tableau app_user_applications
No. Attributs Type de donnes
1 Id Int
2 #User_id int
3 #Application_id int
4 Application_credit int
5 Downloaded_date DateTime

11. Tableau app_os
No. Attributs Type de donnes
1 Id Int
2 Os Varchar(100)



80

12. Tableau app_codes
No. Attributs Type de donnes
1 Id Int
2 Code Varchar(100)
3 Credit Int
4 Status Tinyint
5 #User_id Int
6 Expired_date DateTime

13. Tableau app_user_codes
No. Attributs Type de donnes
1 Id Int
2 #User_id Int
3 #Code_id Int
4 Added_date Timestamp


14. Tableau app_credits
No. Attributs Type de donnes
1 Id Int
2 Name Varchar(128)
3 Price double
4 Number Int

15. Tableau app_user_credits
No. Attributs Type de donnes
1 Id Int
2 #User_id Int
3 #Credit_id int
4 Added_date DateTime
5 Added_by int


81

ANNEXE B : CAPTURE DECRAN
1. Systme De Gestion pour les Chefs de Chantier






Figure 20: Page log in










Figure 21: la carte de Google








Figure 22: Gestion du projet
82











Figure 23: Gestion dutilisateur














Figure 24: Gestion du produit




83








Figure 25: le rapport dactivits de lutilisateur









Figure 26: la rsultt dactivits de lutilisateur dans ce mois














Figure 27: dactivits dtailler de lutilisateur
84

2. Le Store Multimdia pour la Socit TC Computer







Figure 28: Page log in


















Figure 29: Gestion de lapplication



85








Figure 30: Gestion de la catgorie









Figure 31: Gestion du crdit










Figure 32: Gestion dutilisateur



86








Figure 33: Gestion du client








Figure 34: Ajouter crdit certain client









Figure 35: Vendre le crdit

87








Figure 36: le code gnr du crdit











Figure 37: Gestion du code gnr

Vous aimerez peut-être aussi