Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

RAPORT SFE Abderrahmane V2

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 48

ENCADREM

THÈME

Conception et développement d’un site web


dynamique

FILIÈRE

Ingénierie informatique et réseaux

OPTION

Méthodes informatiques appliquées à la gestion des entreprises

RÉALISÉ PAR Encadrant

Abderrahmane Manouni M. Rachid OULAD HAJ THAMI

Encadrant

M. Mohamed ACHILIJ

ANNÉE

2020-2021

LOGO
ENTREPRISE
2
Dédicace

À mes chers parents, en témoignage de ma Gratitude, si grande qu’elle puisse


être, pour
Tous les sacrifices qu’ils ont consentis pour
Mon bien être et le soutien qu’ils m’ont Prodigué tout le long de mon éducation.
Que Dieu vous protège...Je vous aime très fort ; À tous mes amis qui ont toujours
été là Lorsque j’en avais besoin… À mes professeurs Pour leurs efforts qu’ils
n’ont cessé de fournir, Pour le savoir qu’ils ont partagé avec nous et pour leurs
conseils précieux. A toutes les personnes que j’aime et qui m’aiment Je dédie ce
travail…

Remerciements

Tout d’abord, je tiens à remercier mon encadrant M. Rachid OULAD HAJ THAMI

3
qui a été auprès de moi, pour me guider et suivre l’évolution de mon travail. Sa
contribution m’a permis de me remettre en cause, de chercher le meilleur en moi-
même afin d’améliorer mes compétences.

Mes remerciements s’adressent également à Monsieur Mohamed Achilij mon


encadrant professionnel : Business Unit Manager au sein de Salafin groupe BMCE,
pour sa générosité et la grande patience dont il a su faire preuve malgré ses charges
professionnelles. J’exprime ma gratitude à tous les responsables au sein de Salafin
qui m’ont donné l’opportunité de réaliser ce stage En particulier,

Je remercie les membres du jury, pour avoir accepté de juger mon travail, ainsi que
tous mes enseignants qui m’ont soutenu pendant ma formation. Mes plus vifs
remerciements s’adressent aussi à tout le cadre professoral et administratif de
l’EMSI.

Finalement, je remercie et je témoigne encore une fois ma reconnaissance à tous ceux


qui m’ont soutenu et aidé tout au long de mon parcours pédagogique, ses hauts et
ses bas. Je pense particulièrement à mes parents, ma famille et mes ami(e)s qui m’ont
été d’un grand soutien moral

RÉSUMÉ

4
Le présent rapport synthétise le travail effectué dans le cadre de mon projet de fin d’études au
sein de la société ORUS services le département informatique de la société SALAFIN. Pour optimiser son
efficacité, et plus précisément l’équipe Orus Service a formulé le besoin d’une site web dynamique qui
permettra présenter et valoriser leurs services, afin que le client pouvant accéder aux informations dont
ils sont besoin et ils peuvent entrer directement en contact avec Orus Services

Pour mener les objectifs fixés à bien, il a été convenable de choisir la méthode de conduite du
projet Scrum., c’est le bon choix pour avoir un produit de qualité.

En ce qui concerne les technologies de développement, j’ai travaillé avec les outils déjà existants à
savoir : la plateforme PHP, le Framework Symfony 5, SGBD Mysql.

ABSTRACT
This report summarizes the work carried out as part of my graduation project within the company ORUS
services the IT department of the company SALAFIN. To optimize its efficiency, and more specifically the
Orus Service team has formulated the need for a dynamic website that will present and enhance their
services, so that the customer can access the information they need and they can get in direct contact
with Orus Services

To achieve the objectives set, it was appropriate to choose the method of conducting the Scrum project.
It is the right choice to have a quality product.

5
Regarding the development technologies, I worked with the already existing tools namely: the PHP
platform, the Symfony 5 Framework, Mysql DBMS.

GLOSSAIRE

Abréviation Signification

6
LISTE DES FIGURES

LISTE DES TABLEAUX

7
TABLE DES MATIERES

8
Introduction générale

La banque est un acteur fondamental dans l’économie moderne et un levier important pour financer
l’économie. Et, devant l’évolution des sociétés et l’utilisation des technologies informatiques, les
banques sont obligées de suivre cette évolution et de proposer des solutions digitalisées à leurs clients.

La banque SALAFIN consciente de ces enjeux a créé une filiale ORUS SERVICES dédiée à la conception et
au développement des applications bancaires.

Mon stage de fin d’étude s’est déroulé justement dans la filiale ORUS SERVICES au sein de la direction
Digital Synergie BOA et ma mission consistait en la conception et le développement d’un site web
dynamique, multi-plateformes, aux services des clients de ORUS SERVICES. Il s'agit en réalité plus qu’un
simple site qui présente les produits et les solutions bancaires développées par ORUS SERVICES. En effet,
le site doit être également un support auprès des clients de la société.

Dans cette perspectives, le site à concevoir et à développer doit offrir les fonctionnalités suivantes :

● Gestion des solutions et demande démo : Dans cette Partie a pour l’objectifs de gérer les
solutions bancaires proposé par la société.et les demandes des démos déposer par les visiteurs
● Gestion des accès utilisateurs du site : Dans cette Partie a pour l’objectifs de gérer les rôles et
des profils pour les utilisateurs.
● Gestion des Ticket : Dans cette Partie a pour l’objectifs de gérer les demandes des Ticket par les
Client et état de ses demandes
Afin de bien mener mon projet, j’ai choisi Scrum comme une méthodologie de mise en œuvre, vu :
l’absence d’un cahier des charges exhaustif, l’éloignement du client et le nombre réduit des
développeurs.

En ce qui concerne la mise en œuvre du projet j’ai respecté l’architecture Symfony 5 et le SGBD MySQL.

9
Ce rapport qui synthétise ma mission au sein de ORUS SERVICES est structuré autour de 3 chapitres.
Même si nous avons opté pour la méthode SCRUM, nous avons fait le choix pour des raisons de lisibilité
et facilité de lecture, de présenter dans ce rapport la synthèse de notre travail et non les différents
sprints. Ainsi :

Dans le premier chapitre intitulé Le projet et le management du projet, je vais présenter le contexte
général du projet à travers l’identification de la problématique, la présentation du projet ainsi que la
conduite adoptée et l’architecture utilisée pour la mise en œuvre du projet. Le deuxième chapitre
comportera l’analyse et la conception du projet à savoir les différents diagrammes pour la réalisation de
ce dernier.la dernière partie comportera l’architecture de l’application, ensemble des langages et outils
utilisé pour la réalisation de ce projet, ainsi que quelques interfaces de l’application réalisé.

10
Chapitre 1 : Projet et Management du projet

« L’étude de projet et son management est une démarche stratégique visant à organiser le bon
déroulement d’un projet et d’assurer la conduite de toutes les phases qui le constituent. Une étude
complète et efficace conduit généralement à la réussite d’un projet.

Cette étude fera donc l’objet de notre premier chapitre qui sera consacré tout d’abord à l’identification
de la problématique, puis la présentation du projet et nous terminons par la conduite adoptée pour la
mise en œuvre du projet »

1. Introduction

Durant ce premier chapitre, je vais présenter mon projet d’une manière générale afin d’avoir une vision
complète et éclairée sur celui-ci.

Ce Chapitre va traiter les sections relatives à la présentation de l’organisme d’accueil, l’étude et les
critiques de l’existant, la solution proposée, le language de modélisation et la méthode adoptée.

11
2. Cadre du projet

Le présent projet s’intitule « conception et développement d’un site web dynamique » pour la société
ORUS Service. Il a été proposé comme un projet de fin d’étude en vue de l’obtention du diplôme en
ingénieur en informatique. Ce stage a été effectué au sein de la société ORUS Service filiale de SALAFIN.

2.1 ORUS Services : Présentation de l’organisme d’accueil

SALAFIN a décidé de filialiser son activité informatique en créant une société de service et d’ingénierie
Dénommée ORUS SERVICES. Détenue à 100% par SALAFIN et rattachée hiérarchiquement à SALAFIN.

ORUS SERVICES travaille en collaboration avec l’assistance et maîtrise d’ouvrage pour accomplir les
missions suivantes :
 Réaliser ou acquérir, intégrer, puis tester et livrer des solutions informatiques répondant aux
besoins des utilisateurs et pour lesquels un projet a été approuvé en conformité avec les normes
de qualités, de coûts et de délais.
 Garantir l’application rigoureuse de la structure logique des données de l’institution.
 Réaliser les modifications nécessaires aux applications existantes en termes d’adaptations
réglementaires ou fonctionnelles, de performance, de qualité de sécurité et de facilité
d’utilisation.

2.2 Problématique

De plus en plus les entreprises ont besoin plus qu’un site, qui joue le rôle de la vitrine d’un
portail qui joue un support de présentation de l’entreprise et les services proposés et de communication
avec ses clients à la fois pour leur proposer des solutions selon leur profil ou de traiter leur requête et de
répondre à leur question.

La société ORUS SERVICES, filiale de la banque SALAFIN, où j’ai effectué mon stage de fin d’études, elle
n’échappe pas à cette nouvelle exigence et tendance et elle n’a aucun moyen pour mettre à disposition
ses services. Et les clients ne peuvent pas entrer directement en contact avec ORUS services.

3. Etude Préliminaire 
3.1 Etude de l’existant

L’étude de l’existant est une étape très importante, voir essentielle lors de la réalisation d’un
projet, elle se définir par la recherche des applications qui sont similaires ou semblables à la nôtre en
vue d’avoir une idée sur ce qui existe actuellement

12
Deux cas peuvent se présenter :

 Le produit existe déjà : il faut donc chercher comment améliorer ses fonctionnalités.
 Le produit est inexistant :il faut donc le créer.

Pour moi, je n’ai pas trouvé un produit existant déjà chez l’organisme d’accueil sur lequel je vais dégager
les différents points négatifs et par conséquent tenter de l’améliorer.

Je vais donc créer un nouveau produit, pour ce faire, je dois chercher ailleurs les applications similaires
et qui portent sur le même thème pour dégager les fonctionnalités de base communes.

3.2 Solution Proposée

Le but du projet est de concevoir et réaliser un site web dynamique destiné en premier lieu pour toutes
ses relations avec le monde extérieur.

 D’être une source d’information concernant la société ORUS Service.


 Un portail qui joue le rôle de vitrine pour ses produits commercialisés, ses annonces et leurs
gestions.
 Développer une partie qui fournira des informations accessibles seulement au client d’ORUS
Service.

4. Etude des besoins


Dans cette section du chapitre, je m’intéresse aux besoins des utilisateurs traités dans mon projet
c’est à dire l’authentification des utilisateurs, le choix de menu, et de bénéficier de toutes les
fonctionnalités de mon site pour aboutir à un site de qualité qui répond aux besoins des utilisateurs.

4.1 Besoins fonctionnels

Les fonctionnalités que doit intégrer l'application à développer sont :

13
Gestion des solutions: notre système doit permettre la gestion des produits proposé par ORUS
avec la possibilité d’ajout, de modification et de la suppression.
Gestion des démos et des newsletters : notre système doit permettre de gérer les demandes des
démos demandées par les visiteurs et des envoie des newsletters.
Gestion des accès pour l’objectif de gérer les rôles et des profils pour les utilisateurs (client ou
administrateur).
Gestion des Ticket : notre système doit gérer les demandes des clients qui ont un compte client
dans notre système.

4.2 Besoins techniques

Les besoins non fonctionnels sont des besoins qui ont un aspect visible pour l’utilisateur, mais qui
ne sont pas reliés directement au comportement du système. Les besoins non fonctionnels de notre
système se décrivent comme suit :

 Sécurité :

Assurance de la confidentialité et sécurité des données.

 Les Rapidité :

Les traitements doivent être optimisés pour avoir un court temps de réponse.

 Efficacité :

Le site doit être fonctionnelle indépendamment de toutes circonstances pouvant entourer


l’utilisateur couleurs.

 Maintenabilité :

14
La solution doit être facile à maintenir.

F IGURE 1: BESOINS TECHNIQUES

5. Etude Technique

5.1 Architecture Applicative du projet

La figure ci-dessus représente le schéma applicatif du projet.

15
FIGURE 2 : ARCHITECTURE APPLICATIVE DU PROJET

6. Conduite du projet

La conduite de projet est consacrée pour définir les premiers pas dans la mise en marche de mon

processus de travail, il se comporte sur les outils ainsi que la méthodologie suivie.

6.1 Méthologie Adopté

Dans le domaine de gestion des projets, il existe principalement deux types de méthodologies  :
classique et agile. Selon les approches traditionnelles, tout est planifié avant le début du projet.
Une fois le cahier de charge créé et le contrat signé, les développeurs ont la responsabilité de
livrer ce qui est prévu.
À l’opposé des approches traditionnelles, la gestion des projets Agiles propose de vérifier au fur et
à mesure que le projet évolue dans la bonne direction. Son principe est simple : il s’agit de découper le
projet en plusieurs étapes ou petits projets. Chacune de ces étapes doit aboutir à la création d’un
élément fonctionnel de l’ensemble, qui s’inscrit dans les objectifs du projet.
Ci-dessous une étude comparative entre la méthode choisie (SCRUM) et d’autres méthodologies :

16
TABLEAU ETUDE :COMPARATIVE DES PROCESSUS DE DÉVELOPPEMENT

6.2 Pourquoi Méthode Agile Scrum

Dans ce projet, la méthode la plus adaptée est la méthode agile vu qu’elle s’adapte au fur
et à mesure avec les besoins du client.
Ce choix revient également aux raisons suivantes :
 L’absence d’un cahier des charges exhaustif qui aurait pu m’aider à déterminer les
objectifs de façon plus précise.

17
 Equipe réduite.

Le principe de base de Scrum est le suivant :


 Dégager dans un premier lieu le maximum de fonctionnalités à réaliser pour former le
backlog du produit
 En second lieu définir les priorités des fonctionnalités et choisir lesquelles seront
réalisées dans chaque itération.
 Par la suite focaliser l'équipe de façon itérative sur l’ensemble de fonctionnalités à
réaliser, dans des itérations appelées Sprints.
 Un sprint aboutit toujours à la livraison d’un produit partiel fonctionnel appelé
incrément.

FIGURE : MÉTHODOLOGIE SCRUM

Cette figure représente les valeurs du Scrum :

18
FIGURE : LES VALEURS DU SCRUM

Répartitions des rôles dans Scrum :


Le Scrum Master :
* S’assure que les principes et les valeurs de Scrum sont respectés.
* Facilite la communication au sein de l’équipe.
* Cherche à améliorer la productivité et le savoir-faire de son équipe.
* Pas de rôle bien déterminé : architecte, développeur, testeur
Tous les membres de l’équipe apportent leur savoir-faire pour accomplir les tâches
taille de 6 à 10 personnes en général et pouvant aller jusqu’à 200 personnes.
Le Product Owner :
* Expert métier, définit les spécifications fonctionnelles.
* Etablit la priorité des fonctionnalités à développer ou corriger.
* Valide les fonctionnalités développées.
* Joue le rôle du client.

6.3 Extrait du Backlog Produit

Dans cette section je vais présenter les sprints avec leurs différentes tâches et burndowns charts.

19
Fonctionnalité USES CASE PRIORITE Risque SPRINT
En tant qu’utilisateur , je veux
m’authentifier via mon email et mot
de passe en toute sécurité.
En tant que qu’utilisateur je veux
récupérer mon mot de passe en cas
Gestion des d’oublis.
accès En tant qu'utilisateur je veux accéder 1
utilisateurs à mon profit.
En tant qu' Administrateur je veux
authentifier pour accéder au back
office de site.

En tant qu’administrateur , je veux


lister les Solution d’ORUS
Gestion des En tant qu’administrateur , je veux
solutions ajouter un ou plusieurs Module 2
Et Demande appartenant à une solution
démo En tant que visiteur je veux
demander un démo d’une solution

En tant que client je veux faire Une


demande Ticket d’une solution
En tant que client je veux je veux
Gestion des savoir état de mon demande
Ticket En tant qu’administrateur , je veux 3
modifier l’état des demandes

TABLEAU : BACKLOG PRODUIT

20
6.4 Equipe et rôle 

Pour notre application les rôles sont repartis comme suit :

Rôles Scrum Personnes Affectés


Product Owner MOHAMED ACHILIJ
Scrum Master KOUTAR LOUTFI
Team ABDERRAHMANE MANOUNI
TABLEAU EQUIPE ET RÔLE

7. Planification du projet

La gestion de projet fait partie des disciplines incontournables dès lors que l’on doit faire
face à une multitude de tâches et d’intervenants. La planification de ces charges est une phase
indispensable qui assure le bon déroulement de projet. Elle consiste à ordonnancer les tâches à
réaliser, estimer les charges associées et déterminer les profils nécessaires à leur réalisation. En
conséquence, la mise en place d’une solution logicielle adaptée à ce besoin s’impose

FIGURE 3 PLAN D'ACTION

Le plan d’action adopté pour ce projet comprend 5 phases clés :


La phase d’analyse : Cette phase a pour objectif d’établir un cadrage des besoins du
projet. Il s’agit d’établir une étude comparative entre les solutions existantes sur le
marché et un benchmarking des Framework et langages de développement pour choisir
les mieux adaptés pour le projet, puis de déterminer les spécifications fonctionnelles.

21
La phase de conception : Cette phase a pour but de définir l’architecture générale du
projet et de présenter la conception détaillée.
La phase de documentation : Cette phase nous a permis d’appréhender les outils de
développement et de préparer l’environnement de travail.
La phase de réalisation : Cette phase consiste au développement l’IHM, Web Service
éditique et Web Service BO-FO.
La phase de Test : cette Phase a pour but de faire des tests unitaires et intégrations

8. Le Planning

Sur la base des principes de la démarche décrite précédemment, notre projet de fin
d’études a été réalisé suivant la planification présentée dans la figure ci-dessous sous forme
d’un diagramme de Gantt qui montre les étapes de réalisation du projet dans l’ordre
chronologique ainsi que les tâches réalisées.
8.1 Plan Prévisionnel

FIGURE : PLAN PRÉVISIONNEL

22
9. Conclusion

Le présent chapitre nous a permis de voir l’aspect de management de projet, le


chapitre suivant va présenter la conception du projet avec le formalisme UML.

23
Chapitre 2 : Analyse et Conception

La conception est une étape primordiale dans le cycle de vie d’une application.
Dans ce chapitre, nous allons présenter les différents diagrammes UML, diagramme des
cas d’utilisation, diagramme de séquence, diagramme d’activité, ainsi que le diagramme de
classe.

24
1. Introduction

La phase d’analyse et de conception, constitue l’étape la plus importante dans un projet


informatique. C’est la colonne vertébrale dans chaque application, car dans cette étape nous
allons définir le fonctionnement et le déroulement de notre future application, en commençant
par l’identification des acteurs, puis la définition et la description détaillée des fonctionnalités
du système, enfin la présentation du diagramme de classe.

2. Analyse

2.1 Identification des fonctionnalités 

Ces diagrammes de cas d’utilisation vont comprendre le regroupement des


fonctionnalités sous forme de cas d’utilisation, les interactions entre les acteurs et le système
ainsi que la structuration des cas d’utilisation et leurs interdépendances.
Pour le visiteur : Ce sont des personnes qui accèdent au site pour consulter les informations
générales sur la société Orus Service
 Consulter les activités et nouveaux actualité de la société.
 Consulter La liste des solutions informatique proposés par ORUS Service.
 Demander une démo pour une solution.
Pour le client : C’est un visiteur membre qui peuvent accéder à des services privés bien
spécifique
 Gérer mon profil.
 Envoyer un ticket on cas d’une anomalie.
 Consulter l’état des tickets envoyés.
Pour l’administrateur : C’est un acteur qui va accéder au back office
 Lister les solutions et des modules.
 Consulter les demandes des démos des visiteurs.
 Gérer les clients
 Gérer l’état des tickets envoyés par les clients

25
2.2 Diagramme de cas d’utilisation

La différence entre un visiteur et un client, ce dernier, il peut s'authentifier au site Web pour demander
un ticket afin de traiter une anomalie dans ses solutions. Un administrateur a plusieurs cas d'utilisations,
il peut gérer les demandes des clients, suivre l'état des tickets (en cours, résolu, non résolu, bloqué) et il
permet aussi de lister les solutions en détail sur le site Web pour valoriser les services de la société pour
que le visiteur regarde bien les détails de chaque solution et de demander une démo.

2.3 Description détaillée de cas d’utilisation

La description détaillée est assimilée à la description textuelle des cas d’utilisation. Il s’agira donc
de donner pour chaque cas d’utilisation son nom, son objectif, les acteurs qui y participent, les
préconditions et les scénarios. Cependant, on distingue trois types de scénarios : les scénarios nominaux
et les scénarios alternatifs.

 Cas d’utilisation « S’authentifier » :

26
Nous commençons par la description textuelle puis le diagramme de séquences système du cas
« s’authentifier »

 Description textuelle du cas d’utilisation « s’authentifier »

Acteur Client, Administrateurs


Nom S’authentifier
Post condition Accéder à l’espace personnel et utiliser ses
fonctionnalités
Pré condition Le membre dispose d’un compte
Description du scénario principal 1- le système affiche le formulaire de
connexion.
2- le membre saisit son login et son MDP
3- le système vérifie le login et MDP saisi
avec le login et MDP stocké dans la base de
données.
4- le système récupère les informations
d’user connecter.
5- le système affiche l’interface approprié
selon le type d’acteur.
Exception Un message erreur est affiché si l’email et ou
le mot de passe est erroné

TABLEAU 1 :DESCRIPTION TEXTUELLE DU CAS D’UTILISATION " S'AUTHENTIFIER"

27
 Diagramme de séquences système du cas d’utilisation « s’authentifier »

Chaque utilisateur doit saisir son email et son mot de passe afin d’accéder aux espace prive de
site, Ces identifiants seront chargés dans le système qui les vérifier si les identifiants sont
validés, l’utilisateur accédé en toute sécurité aux différents services dont il est autorisé selon
son rôle, Dans le cas contraint, un message d’erreur est affiché indiquant que les identifiants
saisis sont invalides
Cas d’utilisation « Récupération mot de passe » :

Nous commençons par la description textuelle puis le diagramme de séquences système du cas
« Récupération mot de passe »
 Description textuelle du cas d’utilisation « Récupération mot de passe »

Acteur Utilisateur(Client/Administrateurs)
Nom Récupérer mot de passe
Post condition Email de récupération envoyé à l’utilisateur

28
concerné
Pré condition Le membre dispose d’un compte
Le membre Oublié le mot de passe
Description du scénario principal 1 Le système affiche le formulaire de
récupération de mot de passe
1. 2 L’utilisateur saisi son adresse email et valide le
formulaire
2. 3 Le system vérifie l’adresse email introduite
par l’utilisateur
3. 4 Le système affiche un message indiquant
qu’un email de récupération a été envoyé à
l’adresse indiquée
Exception Un message d’erreur est affiché si aucun
compte n’est associé à l’adresse email
introduite
Un message d’erreur est affiché si le champ
d’adresse email est vide et /ou invalide

 Diagramme de séquences système du cas d’utilisation « Récupération mot de passe »

29
Chaque utilisateur doit saisir son email et son mot de passe afin d’accéder aux espace prive de
site, Ces identifiants seront chargés dans le système qui les vérifier si les identifiants sont
validés, l’utilisateur accédé en toute sécurité aux différents services dont il est autorisé selon
son rôle, Dans le cas contraint, un message d’erreur est affiché indiquant que les identifiants
saisis sont invalides
 Cas d’utilisation « Gerer mon Profil » :
Nous commençons par la Raffinement du cas d’utilisation puis la description textuelle puis le diagramme
de séquences système du cas « s’authentifier »

 Raffinement du cas d’utilisation « Gérer mon profils »

 Description textuelle du cas d’utilisation « Gérer mon Profil »

Cas d’utilisation Gerer Profil

30
Acteur Utilisateur(Client/Administrateurs)
Post condition Afficher mon profil.
Modifier Profil.
Description du scénario principal 1 Le système affiche l’ensemble des
informations personnels dans un formulaire
4. 2 l’utilisateur modifie un ou plusieurs
champs de son profil
5. 3 Le système vérifie les Données saisie par
l’utilisateur
6. 4 le système affiche un message au
utilisateur indiquant que son profil est mis à
jour
Exception Un message d’erreur est affiché si l’un des
champ obligatoire est vide et /ou invalide

 Diagramme de séquences système du cas d’utilisation « Gerer mon Profil »

31
Cas d’utilisation « Gerer les Client  » :
Nous commençons par la description textuelle puis le diagramme de séquences système
du cas « Gerer les Clients »

 Raffinement du cas d’utilisation « Gérer les clients »

32
 Diagramme de séquences système du cas d’utilisation « Gerer les clients »

33
 Cas d’utilisation « Lister les Solution de crédit » :

Nous commençons par la Raffinement du cas d’utilisation puis la description textuelle puis le
diagramme de séquences système du cas « Lister les Solution de crédit »

 Raffinement du cas d’utilisation « Lister les Solution de crédit »

 Description textuelle du cas d’utilisation « Lister les Solution »

Cas d’utilisation Gerer les Solution


Acteur Administrateurs
Pré condition L’administrateur s’est authentifié
Liste des Solution de Crédit

Post condition Lister Les Solution de Crédit dans le site


web

Description du scénario principal 1 -l’administrateur clique sur l’onglet


« Solution »
2- l’administrateur choisie la tache
souhaitée : Déposer Une Solution, Modifier
Une Solution, Supprimer Une Solution
3- le système rédige l’administrateur vers la
page « liste des Solutions »
Exception

34
 Diagramme de séquences système du cas d’utilisation « Lister les solutions »

Cas d’utilisation « Demander Un démo » :


Nous commençons par la description textuelle puis le diagramme de séquences système du cas

« Demander Un démo »

 Description textuelle du cas d’utilisation « Demander un démo »

Cas d’utilisation Demander Un démo


Acteur Visiteur
Pré condition Visualiser le site
Remplir Un formulaire

Post condition Demander une démo pour tester une


application
Description du scénario principal 1- Le visiteur clique sur « planifier Une
démo »
2- Le système affiche le formulaire

35
d’ajouter une démo
3- Le visiteur remplit le formulaire
4- le système affiche un message
indiquant que la demande va être
traite
5- Une notification envoyée dans un
boite gmail pour indiquer qu’il y a
une nouvelle demande

Exception Un message d’erreur est affiché si l’un des


champs obligatoire est vide et /ou invalide

 Diagramme de séquences système du cas d’utilisation « Demander Un démo »

Cas d’utilisation « Gestion des Tickets » :

Nous commençons par la description textuelle puis le diagramme de séquences système du cas «
Demander Un démo »

 Raffinement du cas d’utilisation « Gestion des Tickets »

36
 Description textuelle du cas d’utilisation « Gestion des Ticket »

Cas d’utilisation Envoyer une ticket


Acteur Client ,Admin
Pré condition Le Client, l’admin s’est authentifié.
Post condition Déposer une Ticket, Annuler un ticket,
Gérer l’état des Tickets

Description du scénario principal Pour le client


1- Le client clique sur l’onglet « Ajouter
Ticket »
2- Le système affiche le formulaire de
d’ajout d’un ticket.
3- Le client remplit le formulaire.
4- Le système affiche un message
indiquant que votre demande est
envoyée avec succès.
5- Le système envoyé une notification
au adresse email de l’admin

Pour l’admin : Gérer l’état


1- L’administrateur clique sur l’onglet «
Ticket »
2- Le système affiche les informations
du ticket envoyés dans un
formulaire
4- L’administrateur modifie état d’une
ticket (résolu, non résolu) et valide
le formulaire
5- Le système affiche un message
indiquant que le ticket est modifié
avec succès.

Exception Un message d’erreur est affiché si l’un des


champs obligatoire est vide ou invalide

 Diagramme de séquences système du cas d’utilisation « Gestion des Tickets»

37
2.4 Diagramme de classe 

La modélisation des concepts (ou des domaines) permet d'identifier les objets importants dans
une application. Ce processus nous permettra d'identifier les futurs problèmes et de mieux comprendre
le fonctionnement de l'application. Ces concepts sont représentés dans le diagramme de classes. Le
diagramme de classes est la clé de la conception orientée objet. Ce diagramme représente la structure
du code à développer. Certaines applications UML permettent même d'exporter du code à partir de
diagrammes de classes. Cela permet d'unifier le travail de plusieurs programmeurs au sein d'une même
équipe, en plus de sauver du temps. Le diagramme de classes se base sur les concepts suivants :
 Classe : description formelle d’un ensemble d’objets ayant une sémantique, des propriétés et
un comportement commun.
 Association : relation sémantique entre deux ou plusieurs classes.
 Propriété (attribut) : élément permettant de décrire une classe ou une association.

38
 Méthode : opération réalisée par les objets d’une classe.Le diagramme ci-dessous nous donne
une idée sur l’implémentation de différentes classes constituantes notre application.

39
Chapitre 3 : Réalisation de l’application

Dans ce chapitre, nous présentons les outils et la couche applicative où on mettra l’accent
sur les interfaces produites pour mettre en œuvre ce module.

1. Introduction

40
Cette partie contient les outils et les technologies utilisés pour la réalisation de mon projet.

2. Technologie de développement 

PHP est un langage de script et de programmation open-source, côté serveur, qui est

Principalement utilisé pour le développement web, Sites web desktop responsive design

Sites mobiles, Web service SOAP/ REST (communication avec d’autres applications) en XML.

Les exécutables en PHP sont subdivisés en assemblées, en namespaces,en classes et en membres


de classe. Un assembly est la forme compilée, qui peut être un programme (un exécutable) ou
une bibliothèque de classes (une dll). Un assembly contient le code exécutable en MSIL, ainsi
que les symboles.

Le] Framework Symfony est un ensemble un ensemble de composants PHP ainsi qu'un
Framework MVC libre écrit en PHP. Il fournit des fonctionnalités modulables et adaptables qui
permettent de faciliter et d’accélérer le développement d'un site web.

Symfony propose entre autres :

 Une séparation du code en trois couches, selon le modèle MVC pour une plus grande
maintenabilité et évolutivité
 Des performances optimisées et un système de cache afin d’assurer des temps de réponse
optimaux
 Une gestion des URL parlante, permettant à une page d’avoir une Url distincte e sa position dans
l’arborescence
 Le support d’Ajax
 Un système de configuration en cascade utilisant pleinement le language Yaml
 Une architecture extensible permettant créations et utilisations de plugins

Symfony fournit une interface en ligne de commande pour améliorer la productivité en créant un code
de base modifiable à volonté »

Le Gestionnaire ORM :

Un ORM est une technique de programmation informatique qui crée l’illusion d’une base de donnée
orienté objet à partir d’une base de données relationnel en définissant des correspondances entre cette

41
base de donné et les objets du language utilisé. On pourrait le désigner par « correspondance entre
mode objet et monde relationnel

3. Outils de développement 

Visuel Studio Code est une suite de logiciels de développement pour Windows, Unix,
MacOs, conçu par Microsoft permettant de générer des applications, des Services Web, des applications
bureautiques et des applications mobiles. Plusieurs langages tels que PHP,Javascript,C#, utilisent tous le
même environnement de développement intégré, qui leur permet de partager des outils et facilite la
création de solutions faisant appel à plusieurs langages.

est un système de gestion de base de données (abrégé en SGBD ou SGBDR pour « Système
de gestion de base de données relationnelles») développé et commercialisé par la société Oracle et
MySQL.

WampServer est une plateforme de développement Web de type WAMP, permettant de


faire fonctionner localement des scripts PHP. WampServer n'est pas en soi un logiciel, mais un
environnement comprenant trois serveurs, un interpréteur de script, ainsi que phpMyAdmin pour
l'administration Web des bases MySQL.

4. Outils de Modélisation

POWER AMC [8] est l’un des premiers outils qui permet d’élaborer des modèles de
données que cela soit MERISE, UML ou autre, de manière graphique et de les implémenter quel que soit
le SGBD et ce de manière automatique. De même, l’outil permet de modéliser les processus
métiers. Le lien entre la modélisation des données et la modélisation des processus peut être
effectué, offrant ainsi aux entreprises qui possèdent POWER AMC / AMC Designor
l'opportunité de mettre un œuvre un référentiel unique des développements et des processus que
ceux-ci soient informatisés ou non.

42
Le logiciel git est utilisé notamment par les développeurs du noyau Linux. Il
s'agit d'un logiciel de contrôle de version, comme Subversion, Il permet ainsi de travailler tout en
gardant une trace des modifications apportées successivement, et de retrouver ainsi l'état antérieur de
ses données.
À titre d'exemple, git est le logiciel utilisé par les Tuteurs pour gérer cette documentation.
Il permet également, comme beaucoup de ses congénères, de travailler à plusieurs sur un même
projet. Mais contrairement à CVS ou Subversion, par exemple, Git ne fait pas de différence entre
un dépôt principal et les copies locales chez les différents contributeurs.
Ce système permet également une organisation hiérarchisée de gros projets, comme c'est le cas
du noyau Linux, en rendant complètement naturelle l'existence de dépôts alternatifs pour chaque
sous-projet, avec une granularité de modifications très fine, et à plus grande échelle, une faible
granularité du dépôt principal qui reçoit périodiquement les modifications par paquets.
À l'inverse, pour travailler à deux, git évite le casse-tête des droits d'accès dans le dépôt de
l'autre. On peut en effet travailler de manière totalement symétrique, chacun recopiant les
modifications de l'autre : il suffit d'un accès en lecture aux fichiers de ses collaborateurs.
Git ne stocke pas ses données comme une série de modifications ou de différences successives
mais plutôt comme une série d’instantanés (appelés snapshots).
Lorsqu’ on fait un commit, Git stocke un objet commit qui contient un pointeur vers l’instantané
(snapshot) du contenu que vous avez indexé. Cet objet contient également les noms et prénoms
de l’auteur, le message que vous avez renseigné ainsi que des pointeurs vers le ou
les commits qui précèdent directement ce commit : aucun parent pour le commit initial, un
parent pour un commit normal et de multiples parents pour un commit qui résulte de la fusion
d’une ou plusieurs branches.

43
5. Outils de Communication

Outlook est un logiciel de la suite Microsoft Office qui permet la réception et


l'envoi d'emails, de les classer, mais aussi la gestion d'un carnet d'adresses complet, la
gestion de tâches et de votre temps. En entreprise, Outlook peut être connecté afin que vous puissiez
consulter les disponibilités des autres en vue de caler un rendez-vous.Outlook est un logiciel très fourni
en fonctionnalités, très utile pour ceux qui doivent gérer énormément de mails, avec un besoin de les
catégoriser et de les retrouver facilement, gérer un gros carnet d’adresse…

Microsoft Teams est une plateforme collaborative personnalisable qui intègre la visioconférence, le
stockage et le transfert de fichiers avec SharePoint. La messagerie instantanée permettant d'échanger
en équipe ou par groupe de
travail tout en conservant une trace de tous les échanges. Son intégration avec Microsoft
Outlook permet de planifier les réunions en équipe et de partager emails et contacts. C'est un
logiciel de Microsoft disponible de manière autonome ou dans le cadre d'une offre Office 365.

6. L’architecture de l’application

L’acronyme MVC signifie Modèle Vue Controller, pour certains ce sont des bonnes pratiques lors de la
phase développement, pour d’autres ce sont des Framework qui imposent une manière d’organiser son
code. Dans les deux cas se servir d’un design pattern permet une bonne maintenabilité et testabilité de
l’application développée.

C’est un modèle un modèle architectural qui sépare une application en trois composants logiques
principaux : modèle, vue et contrôleur. 

Le pattern MVC est particulièrement utilisé pour les interfaces utilisateur graphiques (GUI) de bureau.

Les avantages d’utiliser un design pattern sont nombreux :

44
 Les développeurs et les designers peuvent travailler indépendamment et simultanément sur la
même application.
 Il possible de repenser le visuel d’une application sans modifier la coucher logique et métier de
l’application.
 Le développement de modules permet la réutilisabilité du code et le développement de tests
unitaires.

 Tous les objets classés et sont indépendants les uns des autres afin que vous puissiez les tester
séparément.

Model : Le composant de modèle stocke les données et la logique associée. Il représente les
données qui sont transférées entre les composants du contrôleur ou toute autre logique métier
connexe.

Par exemple, un objet Controller vous aide à récupérer les informations client de la base de
données. Il manipule les données et les renvoie à la base de données ou les utilise pour restituer les
mêmes données.

45
View : La vue est responsable de définir la structure et le design des informations affichées à
l’utilisateur. Pour certains cas simples il est possible d’afficher des données directement depuis le
modèle

Controller : Le contrôleur est la partie de l'application qui gère l'interaction de l'utilisateur. Le


contrôleur interprète les entrées de la souris et du clavier de l'utilisateur, informant le modèle et la vue
de changer le cas échéant et envoie des commandes au modèle pour mettre à jour son état (par
exemple, enregistrer un document spécifique). Le contrôleur envoie également des commandes à sa vue
associée pour modifier la présentation de la vue (par exemple, faire défiler un document particulier).

1 Réalisation du projet

46
Bibliographie et Webographie

47
48

Vous aimerez peut-être aussi