Rapport 1.0 PDF
Rapport 1.0 PDF
Rapport 1.0 PDF
GUINEE
RAPPORT DE STAGE
P a g e 1 | 47
A MA FAMILLE
P a g e 2 | 47
REMERCIEMENTS
Ce rapport est l’aboutissement d’un travail qui nous permet de pouvoir exprimer toute
notre gratitude à tous ceux ayant soutenu et participé de près mais aussi de loin à
l’élaboration de ce rapport à travers leurs conseils que leur sollicitude. Nous pensons
particulièrement à :
P a g e 3 | 47
AVANT - PROPOS
Dans le souci de proposer ainsi une solution, en termes d’urgence mais aussi de
nécessité, au problème se posant d’une formation pratique et dynamique pour un
entreprenariat de pointe dans un contexte économique caractérisé par les nouvelles
exigences du marché du travail toujours ouvert et en constante modernisation et
évolution, il était en fait devenu impérieux de prendre en compte le secteur privé alors
en plein essor. Il fallait donc à ce problème et ces nouvelles exigences, une réponse
palliative et se voulant graduelle et pour cela le gouvernement camerounais par
l’intermédiaire du ministère de l’enseignement supérieur a permis l’ouverture de
P a g e 4 | 47
plusieurs institutions privées offrant des enseignements de niveau supérieur, leur
permettant ainsi de contribuer en adéquation avec le monde professionnel, une
formation académique et professionnelle de qualité.
C’est à travers ce processus que fut fondée en 1993, l’Institut Universitaire du Golfe de
Guinée située dans la région du Littoral, département du Wouri, arrondissement de
Douala 4ème, au quartier PK8. A ce jour, l’Institut Universitaire du Golfe de Guinée
(IUG) compte actuellement trois établissements d’enseignement supérieur basé dans le
même campus à Douala – Bassa. Ces trois grands établissements sont :
1. L’Ecole Supérieure de Gestion (ESG)qui forme ses étudiants dans les filières
de gestion et de communication qui sont :
Action Commerciale (AC)
Banque (BQ)
Comptabilité et Gestion des Entreprises (EG)
Commerce International (CI)
Gestion des Systèmes d’Information (GSI)
Secrétariat de Direction et Bureautiques Bilingues (SD et SBB)
Logistique et Transport (LT)
Communication d’Entreprise (CE)
Journalisme (JO)
Droit des Affaires (DA)
Marketing Commerce Vente (MC)
Comptabilité et Finance (CF)
2. L’Institut Supérieur des Sciences Appliquées (ISA) qui forme ses étudiants
dans les domaines des sciences paramédicales qui sont :
Sage-Femme (SF)
Sciences Infirmières (SI)
Kinésithérapie (KT)
Technologies de Laboratoire et d’Analyse Numérique (TL)
Radiologie et Imagerie (RI)
P a g e 5 | 47
3. L’Institut Supérieur des Technologies Avancées, ISTA qui forme ses
étudiants dans les domaines informatiques mais aussi ceux industriels. Ce
sont :
Electrotechnique (ET)
Maintenance des Equipements Industriels (MEI)
Maintenance des Systèmes Electrotechniques (MSE)
Bâtiment (BAT)
Travaux Publics (TP)
Maintenance Après-Vente Automobile (MAVA)
Mécatronique (MK)
Maintenance Industrielle et Productique (MIP)
Froid et Climatisation (FC)
Génie Logiciel (GL)
Maintenance des Systèmes Informatiques (MSI)
Informatique Industrielle et Automatisme (II)
Télécommunications (TEL)
Réseaux et Sécurité (RES)
P a g e 6 | 47
INTRODUCTION GENERALE
Depuis plusieurs années, on observe un grand flux migratoire des populations vers
les zones urbaines pour diverse raisons. Ce déplacement massif de la population entraine
une pénurie en logement dans nos villes. C’est dans l’optique de palier à ce problème
que l’Etat, les hommes d’affaires, les entrepreneurs et certains particuliers ont décidé de
lancer une vaste campagne de construction des logements sociaux pour abriter ce surplus
de population. Mais face au nombre sans cesse croissant de logement, un autre problème
est né celui de la gestion de ces logements puisque celle-ci est un travail exclusivement
réservé aux professionnels et solliciter leur assistance n’est pas toujours une mince
affaire.
Dès lors on se demande donc comment sont gérés ces logements au quotidien sans
assistance des cabinets de gestion locative ? plusieurs informaticiens ont développé des
applications de gestion locative pour venir en aide aux propriétaires des logements, et
certains entrepreneurs ce qui facilite correctement le travail. Mais ces applications
posent plusieurs problèmes tout aussi grave : la plupart de ces applications ne sont ni
gratuit, ni open source se sont les applications propriétaires taillées sur mesure et
payante. Dès lors on peut donc se demander si la situation des propriétaires de logements
a réellement changé dans la mesure où ses applications de gestion locative ne sont plus
à la portée de tout le monde ? Quelle solution nous proposons pour la résolution de ce
problème ? Quels sont les moyens, méthodes et techniques que nous allons utiliser pour
cette résolution ?
P a g e 7 | 47
PREMIERE PARTIE : CADRE DU
STAGE
P a g e 8 | 47
CHAPITRE I : PRESENTATION GENERALE DE
L’ENTREPRISE ET DEROULEMENT DU STAGE
P a g e 9 | 47
maintenance et offre les formations dans le domaine du développement de logiciels, site
web. Elle a déjà à ce jour crée plus de 50 sites web, plus de 40 applications, 10 logiciels,
plus de 100 personnes déjà formées, plus 500 clients satisfaits. Aujourd’hui, BRIOK
compte en son sein plus de 10 experts. Site officiel de BRIOK www.briok.fr .
P a g e 10 | 47
1- Organigramme
DIRECTEUR GENERAL
DIRECTEUR DIRECTEUR
COMMERCIAL TECHNIQUE
2- Fonctionnement
BRIOK a en son sein un ensemble de directions et de services aujourd’hui qui lui
permettent de fonctionner de manière optimale.
Directeur General
Directeur Commercial
P a g e 11 | 47
Directeur Technique
Service Commercial
Service Marketing
Le rôle du service marketing est avant tout de tisser un lien entre l’entreprise et les clients
ou prospects. Il propose aux clients ou prospects l’ensemble des produits et services
dont dispose l’entreprise. Son rôle principal est la recherche des futurs clients pour
l’entreprise.
Service Développement
Service Formation
Le service de formation est un service qui consiste à former les apprenants sur les outils
de bureau tel que MS Word, Excel, power point. A créer les feuilles de styles
personnalisées. Sur les langages de développement, Framework comme par exemple
JAVA, PHP, JQUERY, BOOTSTRAP.
Service Maintenance
P a g e 12 | 47
Ce service est en charge de la maintenance des équipements et des outils dans
l’entreprise. Ce service stocke également les pièces de rechange.
P a g e 13 | 47
III- DEROULEMENT DES ACTIVITES DU STAGE
1- Activités formations
Ce département est dirigé par le responsable des formations qui gère plusieurs unités
de formations. C’est un département qui est divisé en deux parties :
La partie formation externe : ici les formateurs travaillent plus à l’extérieur cas ils
s’occupent de la formation du personnel des entreprises qui utilisent les logiciels
développés par BRIOK. Cette formation consiste à adapter le personnel de
l’entreprise au nouveau logiciel de travail.
P a g e 14 | 47
3- Activités Programmations
C’est l’unité la plus importante de l’entreprise. Elle est constituée de plusieurs sous
unités :
P a g e 15 | 47
2- Justification du thème de stage
A notre arrivé à BRIOK, il existait déjà un grand thème qui portait sur la création d’une
application web de gestion locative et/ou de vente. Cette application contenait plusieurs
modules parmi lesquels la gestion locative module sur lequel nous avons effectivement
travail en travaillant sur ce module nous avons pris pour référence la gestion des
logements.
P a g e 16 | 47
CHAPITRE II : ETUDE DU SYSTEME EXISTANT
P a g e 17 | 47
Elles n’intègrent pas les nouveaux moyens de paiement comme
par exemple le paiement mobile.
I- CONTEXTE
La gestion des logements est une tâche extrêmement complexe dans le monde en
générale et au Cameroun en particulier cas les spécialistes du domaine et les cabinets de
gestion coûtent extrêmement cher. Face à cette situation, plusieurs développeurs ont mis
en place des applications de gestion locative pour aider les propriétaires, les spécialistes
et les cabinets de gestion locative à mieux s’exercer. Mais le problème qui se pose est
que la plupart de ces applications de gestion locative ne sont pas libres ni open source
et présentent aussi certaines failles sur le plan technique ce qui rend le problème de la
gestion locative plus difficile cas la plupart des propriétaires de logement n’ont pas accès
de moyens pour se procurer ces applications.
P a g e 18 | 47
III- FONTIONNALITES FUTURE DE L’APPLICATION
A la fin, notre application sera capable de :
Gérer des logements
Ajouter un nouveau logement
Modifier un logement
Supprimer un logement
Consulter la liste des logements
Gérer les contrats de location
Modifier un contrat de location
Supprimer un contrat de location
Ajouter un nouveau contrat
Consulter la liste des contrats
Imprimer un contrat
Valider une location
Gérer des factures de location
Ajouter une facture de location
Modifier une facture
Supprimer une facture
Consulter la liste des factures
Imprimer une facture
Gérer les locataires
Ajouter un locataire
Modifier un locataire
Supprimer un locataire
P a g e 19 | 47
IV- ESTIMATION DES RESSOURCES ET DU BUDGET
PREVISIONNEL DU PROJET
1- Ressources matérielles
Les ressources matérielles nécessaires pour la mise en place de l’application de gestion
des logements sont décrites dans ce tableau ci-dessous.
2- Ressources logicielles
LOGICIEL QUANTITE PRIX UNITAIRE Montant Total
POWER AMC 1 65.000 65.000
GANTT PROJET 1 - -
XAMPP 1 - -
P a g e 20 | 47
MICROSOFT 1 50.000 50.000
OFFICE 2016
TOTAL 115.000
3- Ressources humaines
Ressource Rôle Unité Rémunérat Durée Montant
humaine ion de
En mois travail
(en
mois)
Concepteur( Conception de 2 299.000 2 1 196 000
s) l’interface * 2
graphique du
logiciel
Analyste Analyste et 2 500 000 * 2 1 1 000 000
conception de
solution
Programme Codage et test 5 200 000 * 4 4 000 000
ur(s) d’intégration et 5
test d’assurance
qualité
Imprévue(s) 300 000
P a g e 21 | 47
4- Coût total du projet
RESSOURCES MONTANT
Ressources humaines 6 496 000
Ressources matérielles 400.500
Ressources logicielles 115.000
TOTAL 7 011 500
Tableau 2 : estimation du cout du projet
P a g e 22 | 47
DEUXIEME PARTIE : MISE EN
ŒUVRE (DE LA MISSION)
P a g e 23 | 47
CHAPITRE III : DOSSIER D’ANALYSE
L’analyse est un procédé qui a pour objectif de permettre la formation des étapes
préliminaires du développement d’un système afin de rendre ce développement plus
fidèle aux besoins du client. Cette étude consistera à mettre en œuvre un certain nombre
d’outils d’analyse qui permettront de modéliser le besoin et de le rendre compréhensible
par ceux qui vont le couvrir. Nous allons décrire la méthode utilisée pour la réalisation
de l’application, puis viendra la description des diagrammes associés.
Nous proposons ici une démarche d’application d’UML qui prend appui sur une des
méthodes agiles.
L’équipe, soit des individus et des interactions plutôt que des processus et des
outils ;
P a g e 24 | 47
L’application, c’est-à-dire des fonctionnalités opérationnelles plutôt que de la
documentation exhaustive ;
La collaboration avec le client plutôt que la contractualisation des relations ;
L’acceptation du changement plutôt que le suivi d’un plan ;
Méthode Scrum
Agile compte plusieurs méthodes parmi lesquelles Scrum. SCRUM est considéré
comme un cadre ou « Framework » de gestion de projet. Ce cadre est constitué d'une
définition des rôles, de réunions et d'artefacts.
La vie d'un projet Scrum est rythmée par un ensemble de réunions clairement définies
et strictement limitées dans le temps (timeboxing).
P a g e 25 | 47
II- PRESENTATION DU LANGAGE DE
MODELISATION
Gain de précision
Gage de stabilité
Encourage l'utilisation d'outils
Il cadre l'analyse.
Il facilite la compréhension de représentation
Abstraites complexes. ?
Son caractère polyvalent et sa souplesse en font un langage universel.
P a g e 26 | 47
III- ACHITECTURE DE DEVELOPPEMENT
Le modèle MVC décrit une manière d’architecturer une application informatique en la
décomposant en trois sous-parties :
la partie Modèle ;
la partie Vue ;
la partie Contrôleur.
Ce modèle de conception (design pattern) a été imaginé à la fin des années 1970 pour
le langage Small talk afin de bien séparer le code de l’interface graphique de la logique
applicative. Il est utilisé dans de très nombreux langages : bibliothèques Swing et Model
2 (JSP) de Java, Framework PHP, ASP.NET MVC, etc.
P a g e 27 | 47
La demande de l’utilisateur (exemple : requête HTTP) est reçue et interprétée par le
Contrôleur. Celui-ci utilise les services du Modèle afin de préparer les données à
afficher. Ensuite, le Contrôleur fournit ces données à la Vue, qui les présente à
l’utilisateur (par exemple sous la forme d’une page HTML).
3- Avantages et inconvénients
Le modèle MVC offre une séparation claire des responsabilités au sein d’une
application, en conformité avec les principes de conception déjà étudiés : responsabilité
unique, couplage faible et cohésion forte. Le prix à payer est une augmentation de la
complexité de l’architecture.
Dans le cas d’une application Web, l’utilisation du modèle MVC permet aux pages
HTML (qui constituent la partie Vue) de contenir le moins possible de code serveur,
étant donné que le Scripting est regroupé dans les deux autres parties de l’application.
P a g e 28 | 47
I- DIAGRAMME DES CAS D’UTILISATION ET DE
SEQUENCE
Un diagramme des cas d’utilisation capture le comportement d’un système, d’un sous-
système, d’une classe ou d’un composant tel qu’un utilisateur extérieur le voit.
1- Acteur
Un acteur est l’idéalisation d’un rôle joué par une personne externe au système
d’information à l’étude qui interagit avec le système.
Nom de l'acteur
2- Cas d’utilisation
Un cas d’utilisation est une unité cohérente représentant une fonctionnalité visible de
l’extérieur.
3- Une association
Une association est une relation entre éléments d’UML (classe, cas d’utilisation, etc…)
qui décrit un ensemble de lien. Elle est utilisée dans le cadre du diagramme de cas
d’utilisation pour relier les acteurs et les cas d’utilisation par une relation qui signifie
simplement :<<participer à>>
P a g e 29 | 47
Formalisme d’une association
P a g e 30 | 47
Diagramme 1 : cas d’utilisation gestion locative
P a g e 31 | 47
- Acteurs principaux : ils déclenchent le cas d’utilisation dans le but d’atteindre un
objectif et récupérer un résultat du système.
- Précondition : son rôle est de décrire les contraintes qui doivent être vérifiées
lorsque le cas d’utilisation est déclenché. En général une précondition indique
qu’une autre s’est déroulé auparavant.
- Post condition : permet de décrire les contraintes qui doivent être vérifiées
lorsque le cas d’utilisation est terminé.
- Scénario nominal : il décrit la séquence normal d’action associée au cas
d’utilisation.
- Scenario alternatif : il s’agit d’identifier toutes les autres situations possibles de
succès ou d’échec.
P a g e 32 | 47
Arrêt : l’utilisateur quitte l’application
LOCATAIRE
ref
authentification()
Condition (vraie)
P a g e 33 | 47
Cas d’utilisation effectuer une location
P a g e 34 | 47
SOUSCRIRE A UNE LOCATION
LOCATAIRE
ref
authentification()
requête d'enregistrement
Condition(condition = vraie)
demande de location enregistrée avec
succès et en attente de validation
P a g e 35 | 47
Cas d’utilisation ajouter une facture
P a g e 36 | 47
DIAGRAMME D'AJOUT D'UNE FACTURE
PROPRIETAIRE
ref
authentification()
verification
requête d'ajout
resultat(vrai ou faux)
Condition(condition = vrai)
P a g e 37 | 47
II- DIAGRAMME DE CLASSE
1- Définition
Un diagramme de classe UML décrit les structures d’objets et d’informations utilisées
sur notre site web, à la fois en interne et en communication avec ses utilisateurs. Il décrit
les informations sans faire référence à une implémentation particulière. Ses classes et
relations peuvent être implémentées de nombreuses manières, comme les tables de
classe de base de données, les nœuds XML ou encore les compositions d’objets logiciel.
- Les classes : une classe représente la description formelle d’un ensemble d’objets
ayant une sémantique et des caractéristiques communes. Elle est représentée en
utilisant un rectangle divisé en trois sections. La section supérieur est le nom de
la classe, la section centrale définie la propriété de la classe alors que la section
du bas énumère les méthodes de la classe.
- Les associations : une association est une relation entre deux classes (association
binaire) ou plus (association n-aire), qui décrit les connexions structurelles entre
leurs instances. Une association indique donc que les liens peuvent exister entre
des instances des classes associées.
- Les attributs : les attributs représentent les données encapsulées dans les objets
des classes.
Chacune de ces informations est définie par un nom, un type de données, une
visibilité et peut être initialisé. Le nom de l’attribut doit être unique dans la classe.
P a g e 38 | 47
typefacture
- idtype_facture : int
- name : char
- description : String
+ deleted () : char
+ add () : char
+ edited () : char
+ search () : char
0..*
0..1
Facture_logement
Paiement
- idfacture : int
- numero_facture : int - idpaiement : int
- date_creation_facture : Date 1..1 - mode : char
- description : String - date_paiement : Date
1..* - montant : float
- etat : boolean
- montant : float - date limite de paiement : Date
- typepaiement : char
+ deleted () : char
+ deleted () : char
+ add () : char
+ edited () : char + add () : char
+ search () : char + edited () : char
0..*
0..* + imprimer () : char + search () : char
1..1
Detail_Facture
- iddtlfacture : int 1..1 1..1 1..*
- name : char emplacement
- Description : char - idemplacement : int Detail_paiement
- quantité : float utilisateur - nom : char
- prix unitaire : float - idutilisateur : int - pays : char - iddtlpaiement : int
- name : char
+ deleted () : char - nom : char - ville : char
- prenom : char - quartier : char - description : String
+ add () : char
+ edited () : char - datenaissance : Date - rue : char + deleted () : char
+ search () : char - adresseactuelle : char - adresse : char + add () : char
- ville : char - description : String + edited () : char
- telephone : int + search () : char
+ deleted () : char
- email : char + add () : char
- nationalite : char + edited () : char
- profession : char + search () : char
+ deleted () : char ...
1..1 + add () : char
1..1
+ edited () : char
Type_logement
+ search () : char
- idtypelogement : int
- name : char
- discription : String
1..* 0..*
+ deleted () : char
1..* + add () : char
contrat_location + edited () : char
- idcontrat : int logement + search () : char
- date_etablissementcontrat : Date - idlogement : int 0..1
- date_but_contrat : Date - numero_logement : char 0..*
- date-fin-contrat : Date - etat logement : char
- usage : String - prix location : float
- duree_location : Date - photo : char
- detail_contrat : char
+ deleted () : char
- echeance_paiement : char
+ add () : char
- montant_echeance : float 0..*
+ edited () : char detailogement
+ deleted () : char 1..* + search () : char
+ add () : char 1..1 - iddtllogement : int
+ edited () : char - nombre de piéce : char
+ search () : char - superficie : float
0..1 - description : char
+ imprimer () : char
+ deleted () : char
+ add () : char
+ edited () : char
+ search () : char
P a g e 40 | 47
CHAPITRE IV : REALISATION DE
L’APPLICATION
I – LANGAGES UTILISES
HTML : Hyper Text Markup Language est un langage dit de balises dont le rôle est de
formaliser l’écriture d’un document avec des balises. Les balises indique la façon doit
être présenté. ?
P a g e 41 | 47
CSS : Cascading Style Sheets est un langage qui permet de gérer l’apparence de la page
web (l’apparence, décoration, positionnement, couleur, taille et police du texte…).
Le SQL
II-ENVIRONNEMENT LOGICIEL
LARAVEL
Laravel est un Framework web open source écrit en PHP respectant le principe modèle-
vue-contrôleur et entièrement développé en programmation orienté objet. Nous l’avons
utilisé pour la conception de notre API REST.
XAMPP
1- Logiciels utilisés
P a g e 42 | 47
LOGICIEL UTILITE
2- Sites visités
Openclassroom à l’adresse : www.openclassrom.com
Le site du zéro à l’adresse : www.siteduzero.com
Parmi les applications web on distingue deux types qui sont : application web
Statique et application web dynamique.
Statique
Voici ce qui se passe lorsqu’on visite une page HTML dite statique sur internet.
P a g e 43 | 47
Figure : Fonctionnement d’une application web statique.
Votre navigateur envoie l’adresse URL (Uniform Ressource Locator) que vous avez
tapé. Le serveur web est un « ordinateur » présent sur internet et qui héberge la page que
vous avez demandé. Ce serveur on trouve Apache
Le logiciel apte à traiter les requêtes HTTP que vous envoyez lorsque vous demandez
une page web. Apache va donc chercher le fichier demandé dans son arborescence et
renvoie à votre navigateur la page cherchée.
Votre navigateur interprète les différents langages se trouvant dans ce fichier (HTML,
CSS, JavaScript, etc.)
Dynamique
Maintenant voyons ce qui se passe lorsque notre page HTML contient du code PHP,
SQL, etc.
P a g e 44 | 47
Figure 12 : Fonctionnement d’une application web dynamique.
PHP analyse et exécute le code PHP qui se trouve entre les balise
< ?php…?> du fichier. Si le code contient les requêtes SQL, la base de
données renvoie les informations voulues au script qui peut les exploiter
(pour les afficher par exemples).
P a g e 46 | 47
CONCLUSION GENERALE
Ce stage nous a permis de voir comment fonctionne le monde professionnel à
travers l’entreprise Briok.
Durant notre période de stage, l’entreprise nous a attribué un thème de stage qui
portait sur la gestion locative en nous avons pris pour référence la gestion des
logements. En effet il était question pour nous de concevoir et développer une
application de gestion des logements qui viendra corriger les manquements des
applications déjà existant. Pour mener à bien notre mission nous avons divisé le
travail en quatre (4) chapitres et chaque chapitre avait un rôle spécifique. Nous
avons dans le cadre de notre développement présenté l’entreprise et son
fonctionnement, nous avons aussi présenté le système d’information donc il était
question et enfin nous vous avons montré les technique d’analyse, de conception
et de développement utilisées pour le développement du nouveau système. Donc
nous pouvons dire que notre mission a été accompli dans l’entreprise Briok cas
nous avons atteint notre objectif.
P a g e 47 | 47