Académique Documents
Professionnel Documents
Culture Documents
Option
Web Full Stack.
Groupe :204.
Projet de Stage :
t t t
Abderrahmane EL JAMALI
Khadija TOURABI.
1
Table des Matières.
Table des figures………………………………………………………………4
Dédicace…………………………………………………………………………6
Remerciement…………………………………………………………………7
Chapitre I : Introduction……………………………………………………8
1-Le Contexte de stage………………………………………………….8
2-L’entreprise…………………………………………………………………9
2
Chapitre III : Conception du projet…………………………………..16
I -Choix de langage de Modélisation:………………………………….16
1- UML……………………………………………………………………………16
II -Diagrammes UML :…………………………………………………………17
1- Diagramme de cas d’utilisation…………………………………..17
2- Diagramme de Séquence…………………………………………….22
3- Diagramme de classe………………………………………………….28
Chapitre VI : Conclusion
1- Conclusion générale……………………………………………………47
3
Table des Figures.
4
Figure 23 : Nv projet……………………………………………………………………43
Figure 24 : Nv Task(tache)…………………………………………………………..44
Figure 25 : Facture……………………………………………………………………….45
Figure 26 : interface messagerie…………………………………………………..46
Figure 27 : action des tables…………………………………………………………46
5
Dédicace.
6
Remerciement.
7
Chapitre I : Introduction.
8
2-L’entreprise WEB AGENCY
WEB AGENCY Agence web experte en Développement Informatique WEB AGENCY est
une agence de communication créative à la fois une agence web offshore, implantée
à Casablanca Maroc. Fondée en 2010. Et spécialisée dans la création, la maintenance
et la refonte de site Internet ainsi que la programmation des logiciels Desktop et
Mobile. N’en oublie pas les designs graphiques, les montages vidéo, référencement
naturel et campagnes publicitaire. Et aussi l'équipe de WEB AGENCY travaille avec
tout type de clients allant de sites e-commerce vendant des bijoux de luxe ou des
sites vitrine des PME à Logiciel de gestion et développement complexe des logiciel
GMAO (Logiciel de Gestion de Maintenance assistée par Ordinateur). WEB AGENCY
l’agence Web est assurer le développement des projets des clients et proposer les
solutions adéquates, dans les domaines d’interventions suivantes :
9
Chapitre II : Présentation de projet.
I-Etude de projet :
Le système permet de rationaliser les tâches administratives et de gestion,
d'améliorer la productivité et de prendre des décisions plus éclairées grâce à
des données en temps réel.
1-Objectif du projet :
L'objectif principal d'un système de gestion d'entreprise et de facturation est
d'optimiser les opérations commerciales en rationalisant les tâches administratives et
en améliorant l'efficacité de la gestion financière. Les principaux objectifs incluent :
Faciliter la gestion des tâches administratives telles que la facturation, la
gestion des stocks et des fournisseurs, la gestion des ressources humaines, etc.
Permettre un suivi en temps réel des finances et de la performance de
l'entreprise grâce à des tableaux de bord et des rapports détaillés.
Améliorer la communication entre responsable et les employés [La présence
de l fonctionnalité da chat]
Améliorer la productivité en réduisant le temps et les coûts associés aux
tâches administratives.
Assurer la conformité aux réglementations fiscales et légales en vigueur.
Fournir une expérience client de qualité grâce à des factures et des devis
professionnels.
2-Les Acteurs :
Administrateur.
Employé.
Responsable.
10
3-Etude des besoins Fonctionnels
Les besoins fonctionnels sont les attentes spécifiques que chaque utilisateur ou
acteur a envers la future plateforme. Ces besoins sont liés aux fonctionnalités
de la plateforme et sont considérés comme essentiels pour répondre aux
objectifs
Administrateur :
S‘authentifier : L’utilisateur doit s'authentifier pour accéder à son
compte.
Employé :
S'authentifier.
11
Responsable :
S'authentifier.
12
Le menu doit être bien organisé.
13
Utilisateur
14
Base de données : stocke les informations relatives à l'entreprise, les produits et
services proposés, les clients, les fournisseurs, les factures et les paiements.
15
Chapitre III : Conception du projet.
Crest vrai que UML n'est pas choisi automatiquement pour la conception mais
il est déjà plus Connu que merise et merise n'est pas orientée objet.
Pour les applications web, je pense que UML exprime mieux la vue statique et
dynamique du système d'information : il propose je presque 13 diagrammes
qu'on peut exploiter pour définir les fonctionnalités du système (use case) et
les objets y intervenant (modèle de domaine) ... Donne une application web
nécessite vraiment une analyse très approfondie pour pouvoir dégager les
nécessités de développement ainsi que quelques scénarios d'exécution.
16
II-Diagramme UML :
1- Diagramme de cas d’utilisation.
17
1.2- Diagramme de cas d’utilisation Administrateur :
18
1.3- Diagramme de cas d’utilisation Employé :
19
L'employé peut mettre à jour ses informations personnelles. Il peut également
gérer les messages ou conversations qu'il a avec d'autres utilisateurs de
l'application. En outre, l'employé peut ajouter des compétences ou des
diplômes à son profil, générer son CV et demander des congés. Enfin, il peut
accéder à sa fiche de paie pour consulter ses revenus et ses retenues
20
1.4- Diagramme de cas d’utilisation Responsable :
21
et supprimer des messages et accepter ou refuser les compétences et
diplômes des employés.
2- Diagramme de séquence.
2.1- Diagramme de séquence Authentification :
22
Scénario de Diagramme de Séquence authentification :
23
2.2- Diagramme de séquence Demande conge :
24
Scénario de Diagramme de Séquence Demande congé :
10. Si la demande est refusée, l'employé reçoit une notification de refus avec
des explications.
25
2.3 Diagramme de séquence Facturation :
26
Scénario de Diagramme de Séquence Facturation :
27
3- Diagramme de classe
28
Chapitre IV : Les technologies utilisées.
I- Les Framework :
1- Qu’est-ce qu’un Framework ?
Un framework désigne un ensemble de composants logiciels formant le squelette
d'un programme, conçu pour aider les développeurs informatiques dans leur travail
de programmation et leur offrir une base de travail réutilisable sur plusieurs projets.
d'applications.
29
1-1 Front-End Framework :
Composants de site Web prédéfinis tels que les panneaux latéraux, les
boutons et les barres de navigation.
En fonction du cadre spécifique que vous choisissez, ils sont également beaucoup
plus capables de le faire. Voici quelques-uns des Framework front-end le plus connus:
Bootstrap
Semantic-Ul
Foundation
Materialize
30
1-2 Back-End Framework (PHP) :
Un framework PHP est une plateforme de base qui nous permet de développer des
applications web. En d'autres termes, il fournit une structure. En utilisant un
framework PHP, vous gagnerez du temps, vous éviterez de produire du code répétitif
et vous pourrez créer des applications rapidement (RAD). Sans un framework PHP en
place, il est beaucoup plus difficile de créer des applications car vous devrez coder de
manière répétée beaucoup de PHP.
Vous devrez également établir la connexion entre votre base de données et
l’application que vous développez à partir de rien. Pendant ce temps, utilisation d’un
framework PHP vous permet d’assurer plus facilement cette connexion. Voici
quelques-uns des frameworks back-end le plus connus :
Laravel
CakePHP
Symfony
Zend Framework
31
2- Pour quoi un Framework ?
32
Twitter Bootstrap est un framework CSS très puissant, permettant de développer
et concevoir des frontends/backends très rapidement sans avoir à passer par de
I’intégration.
Comme les autres frameworks CSS que I’ on peut trouver sur internet, il dispose
d’une Grid qui permet de placer les éléments avec beaucoup plus de facilité.
Mais Bootstrap se démarque des autres frameworks car il a l'avantage de :
2- Back-End
33
Laravel a été choisi pour plusieurs raisons. Tout d’abord, il répondait aux critères de
la société, à savoir la mise en place de toutes les fonctionnalités désirées. Ensuite,
bien documenté qui permet de faire gagner du temps face à ces concurrents. Il
possède une communauté importante, ce qui nous donne la possibilité de trouver
rapidement une réponse en cas de doute. Laravel est un framework s’inspirant de ce
qui existe de mieux, il reprend le système de routage de Symfony en I ’étendant de
manière efficace, il utilise la bibliothèque SwiftMailer pour l’envoi de mail, et bien
d’autre encore. Tout en ajoutant ces propres composants originaux pour former au -
final Laravel.
Git est un système de contrôle de version distribué gratuit et open source conçu pour
gérer tout type de projet, des petits aux très grands, avec rapidité et efficacité. Git est
facile à apprendre et a une faible empreinte avec des performances ultra-rapides. Il
surclasse les outils SCM tels que Subversion, CVS, Perforce et ClearCase grâce à des
fonctionnalités telles que des branches locales peu coûteuses, des zones de transit
pratiques et des flux de travail multiples."
34
Chapitre V : Avancement des travaux
du projet.
1- Installation Laravel
L'installation de Laravel a tout d'abord été réalisée sur un serveur local à l'aide du
logiciel Composer, qui est un gestionnaire de dépendances libre écrit en PHP. Il
permet aux utilisateurs de déclarer et d'installer les bibliothèques nécessaires au
projet principal. Avant d'installer et de configurer Laravel, il a été nécessaire de
mettre en place un serveur Web et de créer une base de données. Pour cela, Xampp
a été téléchargé et installé. Le serveur Web utilisé est Apache, et la base de données
utilisée est MySQL.
Une fois l'installation terminée, vous pouvez créer un nouveau projet Laravel en
utilisant la commande suivante :
35
2- Avancement du projet :
Jusqu’à ce moment-là nous n’avons pas terminer le projet parce que on a toujours
des modifications, ajouter des fonctionnalités, changer le Template …etc.
Toutefois, nous aimerions vous présenter une version actuelle du site :
36
L'interface générale du site de gestion d'entreprise et de facturation est la page
principale qui offre un aperçu complet et intuitif de toutes les fonctionnalités et
sections du système. C'est la porte d'entrée où les utilisateurs peuvent accéder à
toutes les informations et actions nécessaires pour gérer efficacement l'entreprise et
le processus de facturation.
Une fois que l'utilisateur saisit ses informations d'identification (adresse e-mail et
mot de passe) sur la page de connexion, le site vérifie ces informations pour s'assurer
de leur validité. Ensuite, en fonction du rôle de l'utilisateur, il est redirigé vers une
interface spécifique correspondant à son rôle : responsable, employé ou
administrateur
37
Figure 17 : Le tableau de bord (Dashbord)
38
Table client
Figure 18 : Nv client
La page "Ajouter un nouveau client" est une interface dédiée aux responsables et les
employés de l'entreprise pour faciliter l'ajout de nouveaux clients dans le système.
Elle offre une fonctionnalité centralisée et conviviale permettant de collecter et de
stocker les informations essentielles relatives aux clients.
39
Table employe
La page "Ajouter un nouvel employé" est une interface spécialement conçue pour les
responsables d'une entreprise afin de faciliter l'ajout de nouveaux employés au sein
de l'organisation. Cette page offre un moyen centralisé et convivial de collecter et de
stocker les informations essentielles liées à l'embauche d'un nouvel employé.
40
Table responsable
Figure 20 : Nv responsable
41
Table département
Figure 21 : Nv département
42
Table conge
Figure 22 : Nv conge
La page d'ajout de nouveaux congés est une interface permettant aux employés et
aux responsables du site de gestion d'entreprise de demander et de gérer les congés
Table projet
Figure 23 : Nv projet
43
La création de nouveaux projets pour les clients est une fonctionnalité essentielle du
système de gestion d'entreprise. Cette fonctionnalité permet aux responsables et aux
administrateurs d'ajouter de nouveaux projets et de les associer à des clients
spécifiques.
Chaque projet est identifié par un ID unique, qui permet de le différencier des autres
projets. Il possède également un nom, qui décrit brièvement le sujet ou l'objectif du
projet.
L'équipe de projet est constituée de membres qui sont responsables de la réalisation
des tâches et des activités associées. Le projet est également associé à un client
spécifique, ce qui permet de lier le projet aux besoins et aux attentes du client.
Table task
Figure 24 : Nv Task(tache)
la fonctionnalité de gestion des tâches permet de créer, assigner, suivre et mettre à
jour les différentes activités nécessaires à la réalisation d'un projet. Les informations
clés telles que l'ID de la tâche, son statut, la personne assignée, la date de création et
la date d'échéance facilitent la coordination et la collaboration entre les membres de
l'équipe et contribuent à la réussite du projet dans les délais prévus.
44
Table Facture
Figure 25 : Facture
La facture est un élément essentiel du processus de facturation dans le système de
gestion d'entreprise. Elle est utilisée pour documenter et formaliser une demande de
paiement pour les biens ou services fournis à un client
45
Figure 26 : interface messagerie
46
Chapitre VI : Conclusion
1- Conclusion générale :
47
48
49
50
51
52
53
54
55
56
57