Académique Documents
Professionnel Documents
Culture Documents
TIC
Technologie &Ingénierie
Année Universitaire 2021-2022
RAPPORT DE STAGE
CANDIDAT :
Introduction générale 1
1 Etude préalable 3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1 Présentation du cadre de projet . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Les modes classiques de financement . . . . . . . . . . . . . . . . . 3
1.1.1 Les fonds nationaux . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Les fonds internationaux . . . . . . . . . . . . . . . . . . . 4
1.1.3 Les fonds privés . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Présentation de sujet . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Objectifs à atteindre . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Étude de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1 Solutions existantes sur le marché . . . . . . . . . . . . . . . . . . 5
2.1.1 Humaid . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 Kickstarter . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.3 Innovi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3 Analyse des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1 Spécification des besoins fonctionnels . . . . . . . . . . . . . . . . . 9
3.1.1 Identification des acteurs . . . . . . . . . . . . . . . . . . . 9
3.1.2 Spécification des besoins fonctionnels . . . . . . . . . . . . 10
3.2 Spécification des besoins non fonctionnels . . . . . . . . . . . . . . . 11
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 Conception 13
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1 Description de la méthodologie . . . . . . . . . . . . . . . . . . . . . . . . 13
i
2 Étude conceptuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1 Diagramme de cas d’utilisation . . . . . . . . . . . . . . . . . . . . 13
2.2 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Les diagrammes de séquence . . . . . . . . . . . . . . . . . . . . . 16
2.3.1 Diagramme de séquence objet « s’inscrire » . . . . . . . . 17
2.3.2 Diagramme de séquence objet «S’authentifier» . . . . . . 18
2.3.3 Diagramme de séquence objet «Ajouter un Projet» . . . . 19
2.3.4 Diagramme de séquence «Contribuer à un projet » . . . . 20
2.3.5 Diagramme de séquence objet «Bloquer un utilisateur » . 21
2.4 Les diagrammes de d’activité . . . . . . . . . . . . . . . . . . . . . 22
2.4.1 Diagramme de activite «internaute » . . . . . . . . . . . . 22
2.4.2 Diagramme de activité «utilisateur authentifié » . . . . . . 24
2.4.3 Diagramme d’activite «Modérateur» . . . . . . . . . . . . 26
2.5 Les diagrammes d’état/transition . . . . . . . . . . . . . . . . . . . 28
2.5.1 Diagramme d’état/transition «Projet» . . . . . . . . . . . 28
2.5.2 Diagramme d’état/transition «Compte» . . . . . . . . . . 29
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3 Réalisation 32
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1 Architecture de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.1 Architecture logicielle . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.2 Architecture logique . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.1 Choix des technologies de développement et de SGBD . . . . . . . . 33
2.2 Outils de développement . . . . . . . . . . . . . . . . . . . . . . . . 34
3 Interfaces graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.1 Inscription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2 Authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.3 Gestion du profil . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3.1 Information compte : . . . . . . . . . . . . . . . . . . . . . 36
3.3.2 Liste des projet ajouter . . . . . . . . . . . . . . . . . . . 37
3.3.3 Liste des contribuer projet . . . . . . . . . . . . . . . . . . 37
3.4 Liste des catégories . . . . . . . . . . . . . . . . . . . . . . . . . . 37
ii
3.5 Liste des Projet selon catégories . . . . . . . . . . . . . . . . . . . 38
3.6 Ajouter Projet : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.7 Découvrir la Liste des Projets . . . . . . . . . . . . . . . . . . . . . 39
3.8 Rechercher soûlant nom . . . . . . . . . . . . . . . . . . . . . . . . 39
3.9 Profile projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.10 Commenter un projet . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.11 Investir à un projet . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.12 Gestion modérateur du plate-forme . . . . . . . . . . . . . . . . . . 42
3.12.1 Liste Comptes . . . . . . . . . . . . . . . . . . . . . . . . 42
3.12.2 Liste des catégories . . . . . . . . . . . . . . . . . . . . . . 42
3.12.3 Ajouter catégorie . . . . . . . . . . . . . . . . . . . . . . . 43
3.12.4 Liste Comptes porteurs . . . . . . . . . . . . . . . . . . . 43
3.12.5 Liste Comptes contributeurs . . . . . . . . . . . . . . . . 44
Conclusion générale 45
iii
Table des figures
iv
TABLE DES FIGURES
v
Liste des tableaux
vi
Introduction générale
u cours de la première moitié des années 2019, l’investissement des entreprises est
A demeuré faible et en dessous du niveau que les modélisations macro-économiques
permettaient de prévoir à cause de la pandémie de COVID-19. Ce ralentissement des
investissements tient à la difficulté d’établir les relations entre les investisseurs et les por-
teurs d’idées de projet.
1
Introduction générale
ding". Il s’agit de l’une des méthodes de financement modernes pour les petits projets et
les projets émergent, où le propriétaire du projet présente son idée en détail sur certaines
plate-formes Web spécialisées, pendant un certain temps, puis les personnes intéressées
par l’idée contribuent par des investissements. Ces dernières années, ce concept se mul-
tiplient sur Internet et de plus en plus d’entreprises ont recours à ce mode de financement.
Dans ce contexte et dans le cadre de notre projet de fin d’études, nous nous sommes
proposé de réaliser une application web implémentant le concept de financement partici-
patif ou "crowdfunding" en anglais. Notre plate-forme se compose de deux espaces web :
(i) Un espace pour le client, qui peut être porteur ou contributeur, permettant d’ajouter
un projet ou bien d’investir dans un projet , (ii) un deuxième espace pour l’administra-
teur, lui permettant de gérer toutes les fonctionnalités du site web,
Ce rapport synthétise la mise en œuvre du projet. Il décrit la démarche que nous avons
suivi tout au long de notre stage et il s’étalera sur trois chapitres :
Le premier chapitre «Présentation générale du projet et Analyse et spécifica-
tion des besoins», est un chapitre introductif dans lequel nous intéressons à faire une
étude préalable qui mettra en évidence les analyses des spécifications ainsi que la solution
proposée..
Le seconde chapitre nommé «Conception», il sera consacré à la modélisation de
la solution retenue. Cette conception utilisera le langage UML pour décrire les aspects
dynamiques et statiques.
Le troisième chapitre «Réalisation», nous allons présenter l’architecture sur laquelle
nous avons développé notre application, les différents outils utilisés ainsi que les compo-
santes applicatives réalisées..
Finalement, nous clôturons notre travail par une conclusion générale qui prend en
considération les perspectives prévues dans le cadre des extensions futures.
2
Chapitre
1
Etude préalable
Introduction
e chapitre introductif est consacré à l’étude préalable qui est une phase obligatoire
c pour la réalisation de chaque système informatique. Cette phase vise à clarifier notre
projet et permettre de comprendre son cadre général. Ainsi nous pouvons identifier notre
problématique et fixer nos objectifs inhérents à la solution adoptée.
Le financement des projets et l’innovation est un vrai défi pour la Tunisie. Jusque là
l’état participe à travers des programmes de financements et d’appuis consommant des
fonds considérables sans réaliser pour autant un retour sur investissement positif. Nous
pouvons citer ces programmes qui sont, essentiellement, sous tutelle de l’état à travers des
agences nationales telle que l’Agence Nationale pour l’Emploi et le Travail Indépendant[1].
Nous prenons exemple les fonds publics d’appui à la création ou l’extension des entreprises
innovantes [1] :o
— In’ Tech (SAGES Capital) : est un FCPR doté d’un capital de 23 MDT qui prend
des participations dans le capital des nouvelles sociétés dans la limite de 49[3]
3
CHAPITRE 1. ETUDE PRÉALABLE
Des fonds d’investissement privés sont également disponible. Ces fonds sont en majorité
des banques privées ou des sociétés de micro-finance. nous citons : Amen Bank, Banque
de Financement des Petites et Moyennes Entreprises, Advans Tunisie.
4
CHAPITRE 1. ETUDE PRÉALABLE
2 Étude de l’existant
L’étude des projets existants est au cœur de la phase d’analyse des projets. Cette
étape est essentielle pour le démarrage de tout projet informatique ou autre. Il peut
définir l’environnement d’exploitation ou le processus métier et identifier divers défauts
du système actuel à des fins de correction..
Humaid est une plate-forme de crowdfunding par le don, dédié au handicap En effet,
Humaid vous permettra de donner un peu de votre argent pour aider financièrement une
personne en situation de handicap à bénéficier d’un meilleur confort de vie. La plate-forme
garantit aux donateurs que leur participation financière sera utilisée à bon escient.[6]
2.1.2 Kickstarter
Kickstarter est une plate-forme de financement participatif Qui aidera les artistes
à réaliser leurs projets ? Plus de 11 millions de personnes dans le monde ont soutenu
un projet sur Kickstarter. Les contributeurs recevront des cadeaux gratuits en retour.
Kickstarter est l’une des plates-formes qui offre un espace de travail ouvert aux personnes
qui vous connaissent, aiment votre travail et vous soutiennent.[7]
5
CHAPITRE 1. ETUDE PRÉALABLE
2.1.3 Innovi
— Améliorer l’offre de services pour les startups et les entrepreneurs à travers le sou-
tien des structures d’accompagnement dans les domaines de l’entrepreneuriat et de
l’innovation.
6
CHAPITRE 1. ETUDE PRÉALABLE
Après avoir fait le tour des solutions existantes, plusieurs anomalies nous ont parue et
que nous devons prendre en considération lors du montage de notre solution. De ce fait,
nous allons essayer de faire un récapitulatif comparatif de ces solutions pour en déduire
par la suite une solution robuste et améliorée bénéficiant des expériences menées par les
autres plate-formes.
Le tableau suivant (1.1) récapitule les avantages et les inconvénients des solutions pré-
sentées.
7
CHAPITRE 1. ETUDE PRÉALABLE
Innovi une plateforme de fi- - selle plateforme tuni- -ne fonctionner pas.
nancement participa- sienne. -Absence de commen-
tif tunisienne.Son vise - Nombre d’utilisa- ter ou projet
à accompagner le ren- teurs illimité. -pas des vote a projet.
forcement, la structu- - Absence de méthode
ration et la péren- rechercher du projet
nisation de l’écosys- -Payons
tème de l’innovation
et de l’entrepreneuriat
en Tunisie
8
CHAPITRE 1. ETUDE PRÉALABLE
2.3 Solution
our résoudre ces problèmes, nous proposons de développer une plate-forme de finance-
ment participatif tunisienne. Cette plate-forme offrira, d’une coté, à un porteur d’idée de
projet, des interfaces pour qu’il puisse expliciter son idée et la publier au grand public et
de suivre l’opération de levée de fond enligne. De l’autre coté, elle offrira à un investisseur
la possibilité d’investir dans un projet prometteur via des interfaces lui permettant de
suivre ses investissements et l’état d’avancement des projets auxquels il contribue. Notre
solution permettra à un modérateur d’orchestrer les différents acteurs et se soucier de leur
fiabilité via un jeu de blocage/déblocage de leur compte. Ce jeu là est déterminé par le
comportement de chacun.
Un acteur est une entité externe qui interagit avec le système. Une étude de l’interac-
tion du système avec son environnement extérieur nous a permis de dégager principale-
ment les acteurs suivants :
• Internaute :
L’internaute et un utilisateur non connecté qui a des fonctionnalités limitées sur la
plat-forme.
• Utilisateur inscrit :
Chaque utilisateur qui s’inscrit sur le plat-forme est un porteur de projet ou un
contributeur potentiel, Il peut alors déposer ses idées de projet ou investir dans des
projets existants.
9
CHAPITRE 1. ETUDE PRÉALABLE
• Modérateur :
le modérateur est l’administrateur du plat-forme. Il peut gérer toutes les données
comme les inscriptions des internautes, les catégories, les comptes, etc.
Parmi les besoins fonctionnels que cette application doit principalement couvrir, nous
citons :
• Utilisateur Inscrit :
— Gérer un projet (ajouter, supprimer, consulter) : Chaque porteur de pro-
jet peut ajouter, supprimer et consulter son projet.
— Consulter son profile : Chaque porteur peut consulter ses informations per-
sonnelles.
— Consulter une fiche d’un projet : Chaque porteur doit être capable de consul-
ter tous les détails concernant un projet.
— Investir projet : Le contributeur doit être capable d’investir sur des projets
publiés et ouverts aux contributions.
— Voter un projet par (intéressé, Non intéressé) : le porteur doit être ca-
pable de votre sur les projets en choisissant une des deux options (intéressé, non
intéressé).
10
CHAPITRE 1. ETUDE PRÉALABLE
• Un internaute :
— Consulter un projet :Les internautes peuvent voire touts les détails d’un projet
donné.
— Consulter une liste des projets :Les internautes peuvent voire toute la liste
des projets publiés.
Après avoir étudié les besoins fonctionnels de notre système, nous exposons dans cette
section les besoins non fonctionnels.qui représentent les exigences techniques auxquelles
le système doit répondre pour fournir une application performante pouvant faire face à
des risques de non-fonctionnement et dans le but d’améliorer sa qualité
11
CHAPITRE 1. ETUDE PRÉALABLE
• Facilité d’intégration : Notre module doit être facilement intégré avec les autres
modules de REIS. Par conséquent, il pourra facilement exposer ses services et consom-
mer ceux qui sont exposés par d’autres modules.
• Fiabilité : L’application doit être bien testée avant de la livrer aux clients afin de
fournir des résultats corrects.
Conclusion
ans ce premier chapitre, nous avons mis en contexte notre idée de projet de fin
D d’étude à travers une description de l’état des lieux du financement pour l’inno-
vation et le développement et nous avons montré les difficultés et les limites des modes
classiques de financement. Ensuite, nous avons présenté le concept de financement parti-
cipative avec ses avantages comme un nouveau mode de financement décentralisé et facile
à réaliser. Pour élaborer notre solution, nous avons étudié quelques solutions existantes
pour en dégager les principaux axes sur lesquelles notre projet va reposer. Les forces et
les faiblesses de chaque système nous fait prendre conscience de l’importance du choix
de notre solution qui sera finalement sous forme d’une application Web. Naturellement,
la prochaine étape sera une étape complètement conceptuelle, elle saura transformer en
notre solution en éléments visuels (diagrammes conceptuels) reposant sur un langage de
modélisation standard faciles à lire pour implémenter le système.
12
Chapitre
2
Conception
Introduction
ans ce chapitre, on va s’intéresser à la phase de conception, où on va transformer la
D description détaillée de notre solution en diagrammes UML décrivant avec précision
tous les aspects du future système. Ensuite, nous aboutirons à un schéma relationnel sur
lequel nous nous basons pour créer la base de données.
1 Description de la méthodologie
UML est un langage de modélisation formel et standardisé, dérivé de l’intégration
de plusieurs langages Méthodes existantes. Il permet la modélisation informatique d’un
ensemble d’éléments du modèle Une partie du monde réel devient un ensemble d’entités
de calcul. Nous commencerons notre phase conceptuelle par des cas d’utilisation pour
décrire les fonctionnalités du système. Ensuite, nous expliciterons tous les objets à travers
un diagramme de classe entités, qui nous permettra d’avoir une compréhension précise
du modèle relationnel de la base de données. Nous ajouterons un diagramme de séquence
à la fin de chaque cas d’utilisation. Et enfin, nous utiliserons également des diagrammes
d’activités pour décrivez les interactions entre les différents acteurs et notre système.
2 Étude conceptuelle
2.1 Diagramme de cas d’utilisation
Les spécifications des fonctions d’un système sont représentées en UML par le dia-
gramme des cas d’utilisation. Ce diagramme permet de schématiser les interactions entre
les acteurs et les fonctions de l’application d’une part, et les relations entre les fonctions
internes de l’application d’autre part. Ce qui permet d’expliciter les besoins de l’utilisa-
teur d’une manière claire. certains cas sont directement déclenchés par l’acteur et d’autres
sont inclus ou étendent des Cas principaux.
13
CHAPITRE 2. CONCEPTION
Ce diagramme des cas d’utilisation montre que notre plate-forme est destinée à être
utiliser par 3 types d’utilisateurs, le premier a le rôle « internaute » et le deuxième a le
rôle « Utilisateur Inscrit » (cet acteur est à la fois porteur de projet et contributeur) et
le troisième a le rôle « Modérateur».
14
CHAPITRE 2. CONCEPTION
Le diagramme de classes est un schéma utilisé en génie logiciel pour modéliser les
classes qui sont nécessaires pour assurer le bon fonctionnement du système et les rela-
tions entre eux. Ce diagramme est un élément de la branche statique d’UML car il fait
une abstraction des aspects temporels et dynamiques ce qu’il permet d’afficher les liens
structurels entre les classes qui le composent.
D’après l’étude du système existant et le diagramme de cas d’utilisation cités, nous
avons pu dégager les principales classes illustrées dans la figure 2.2 pour avoir une vue
plus claire du système étudié.
15
CHAPITRE 2. CONCEPTION
16
CHAPITRE 2. CONCEPTION
grammes des séquences. Dans ce qui suit, nous présentons le diagramme de séquences
pour les fonctionnalités les plus importantes.
Pour avoir le rôle d’un Utilisateur ou d’un modérateur, un utilisateur doit s’inscrire
dans une première étape et il attend l’activation de son compte par le modérateur .qui
envoie un E-mail "votre compte a été active" L’utilisateur aura un formulaire d’inscription
où il saisira toutes ses informations. Une partie de ces informations sera représentée par la
classe « Compte» et l’autre partie qui est plus particulière sera représentée par la classe
« PorteurDeProjet»,ou bien « Contributeur». Si l’utilisateur a inséré correctement ses
paramètres d’accès et son compte est actif alors son accès est accepté et il sera rédiger
vers son espace (profil). Dans le cas d’échec, un message d’avertissement lui sera affiché.
17
CHAPITRE 2. CONCEPTION
18
CHAPITRE 2. CONCEPTION
19
CHAPITRE 2. CONCEPTION
20
CHAPITRE 2. CONCEPTION
Dans des cas particulier, le Modérateur peut être amené à interdire l’accès à un utilisa-
teur (porteur de projet ou bien contributeur). Dans ce cas, l’état du compte utilisateur est
changé en «bloqué». Pour bloquer un utilisateur, le Moderateur commence par consulter
la Liste des utilisateurs où il clique-ra sur le bouton «bloquer» associé à l’utilisateur en
question. Le système demande la confirmation de l’opération en affichant une boite de
dialogue ayant deux boutons «ok» et «annuler».
21
CHAPITRE 2. CONCEPTION
Les diagrammes d’activités sont utilisés pour décrire les changements dans les objets
ou les états des objets Composants en réponse à des interactions avec d’autres objets /
composants ou participants. L’état se caractérise par sa durée et sa stabilité, il représente
Valeur d’attribut d’objet La transition signifie le passage instantané d’un état à un autre.
Dans notre travail, nous nous limitons aux propositions de trois diagrammes d’activités.
Utilisateur non authentifié, internaute(porteur et contributeur) et modérateur.
22
CHAPITRE 2. CONCEPTION
23
CHAPITRE 2. CONCEPTION
24
CHAPITRE 2. CONCEPTION
25
CHAPITRE 2. CONCEPTION
26
CHAPITRE 2. CONCEPTION
27
CHAPITRE 2. CONCEPTION
Nous allons nous attarder un peu sur l’objet « Projet » puisque l’objet "projet" passe
par plusieurs états possibles. Tout d’abord, rappelons que l’état d’un objet est l’ensemble
des valeurs pris par ses attributs à un moment donné. Dans notre cas, l’objet « Projet »
une fois créé, il est dans l’état suivant : Projet : enabled = false Dans cette situation, un
porteur de projet possède toujours un projet mais il ne peut effectuer aucune action dans
l’application avec ce projet. Initialement un projet est désactivé . Le Modérateur , après
vérification des informations du projet, il l’active. Son état devient alors, comme suit :
Projet : enabled = true Dans le cas où le Modérateur décide de supprime un projet,le
projet sera supprimé de la liste des projets et sera détruit du système.
Ci-dessous un diagramme d’état/transition décrivant les différents états de l’objet
«Projet».
28
CHAPITRE 2. CONCEPTION
En ce qui concerne les états de l’objet « Compte », l’objet une fois créé, il est dans
l’état suivant : utilisateur : enabled = false, blocked = false Initialement un compte d’un
utilisateur est désactivé et non bloqué. Le modérateur, après vérification de l’identité de
l’utilisateur, il active son compte. Son état devient alors comme suit : Compte : enabled
= true, blocked = false Dans le cas où le modérateur décide de bloquer un compte, l’état
29
CHAPITRE 2. CONCEPTION
du compte deviant : Compte : enabled = true, blocked = true Dans cette situation,
l’utilisateur possède toujours un compte mais il ne peut effectuer aucune action dans
l’application. Ci-dessous un diagramme d’état/transition décrivant les différents états de
l’objet «CompteEtudiant».
30
CHAPITRE 2. CONCEPTION
Conclusion
ans ce chapitre, nous avons présenté l’architecture globale de notre application.
D Ensuite, la conception préliminaire de notre système en montrant son architecture
logique et physique, suivi de la conception détaillée en expliquant le déroulement de
quelques fonctionnalités les plus importantes en se basant sur le langage de modélisation
orienté objet UML. Dans le chapitre qui suit, nous allons passer à l’étape finale du projet
qui s’intéresse à la réalisation et la mise en place de notre système.
31
Chapitre
3
Réalisation
Introduction
ans ce chapitre, nous visons à mettre en œuvre notre projet sur la base des éléments
D suivants Résultats produits lors de la phase d’analyse et de conception. Pour cela,
nous avons commencé tout d’abord, spécifiez l’environnement de production d’un point
de vue logiciel, puis Matériel. Ensuite, nous écrivons l’architecture de l’application. Enfin
nous Montrons quelques captures d’écran des différentes interfaces implémentées.
1 Architecture de l’application
1.1 Architecture logicielle
Pour mettre en œuvre notre application nous avons choisi l’architecture 3-tiers c’est
une méthode qui permet de résumer une application en trois couches Différentes, de sorte
32
CHAPITRE 3. RÉALISATION
que chaque couche assure une responsabilité ´e bien précise pour L’application :
La couche métier : Elle est en charge d’appliquer et de respecter les actes de gestion.
C’est dans celle-ci qu’est implémentée la logique applicative et la sécurité dans ce modelé
d’architecture.
La couche DAO (Data Access Object) : : Elle assure la persistance des données qui
doivent être conservées.
2 Environnement logiciel
2.1 Choix des technologies de développement et de SGBD
• Spring boot est un framework qui facilite la création des applications basées sur
Spring. Il nous offre des outils permettant de développer des applications Java pou-
vant être démarre à l’aide de Jar ou de d ´eploiements plus traditionnels comme
War. La plupart des applications Spring Boot n ´ecessitent très peu de configuration
Spring. [9]
• React est une bibliothèque JavaScript déclarative, efficace et flexible pour construire
des interfaces utilisateurs (UI). Elle vous permet de composer des UI complexes à
partir de petits morceaux de code isolés appelés « composants ».[10]
• Mysql est un serveur de base de données relationnelles Open Source. C’est-à- dire
qu’il est capable d’enregistrer, modier et rechercher rapidement des données.[11]
33
CHAPITRE 3. RÉALISATION
• Visual Studio Code est un éditeur de code source léger mais puissant qui s’exécute
sur votre bureau et est disponible pour Windows, macOS et Linux. Il est livré avec
un support intégré pour JavaScript, TypeScript et Node.js et dispose d’un riche
écosystème d’extensions pour d’autres langages.[13]
• Postman rend le développement d’API plus rapide, plus simple et plus per-formant.[14]
3 Interfaces graphiques
Dans cette section, nous allons présenter les principaux fonctionnalités de notre appli-
cation à travers quelques captures d’écran.
3.1 Inscription
34
CHAPITRE 3. RÉALISATION
3.2 Authentification
Pour pouvoir accéder à l’application, l’utilisateur doit remplir les champs correspon-
dants aux email d’utilisateur et le mot de passe affichés dans la figure 3.3. L’accés sera
autorisé si ces champs sont valides sinon un message d’erreur sera afficher.
35
CHAPITRE 3. RÉALISATION
La figure 3.4 présente l’interface de gestion du profil utilisateur, grâce à laquelle l’uti-
lisateur pourra voir ses informations personnelles, représentées comme suit : information
compte, liste de ses projets et Liste des projets auxquels il a contribué.
L’utilisateur capable de voir ses informations personnels par exemple, nom, prénom,
e-mail ect
36
CHAPITRE 3. RÉALISATION
Le porteur de projet pourra consulter ses projets et les contrôler, il peut voir toutes in-
formations du projet et pourra suivre l’avancement de ses projets, prix courant, nombre de
votes. Si l’un des projets reste sans investissement, le porteur est capable de le supprimer.
La figure 3.7 présente la liste des catégories, chaque catégorie contient un ensemble de
projets. nous citons comme exemple de catégories : santé, commerce. . .
37
CHAPITRE 3. RÉALISATION
A l’ajout d’un nouveau projet, le porteur choisit la catégorie convenable à son projet
pour le classifier.
Pour créer un projet, il faut saisir les informations nécessaires telles que le nom,la
description..., chaque projet crée est en attende de son activation par le modérateur pour
être afficher sur la plat-forme.
38
CHAPITRE 3. RÉALISATION
La figure 3.10 représente la liste de tous les projets qui sont crées avec le porteur et
activé par le modérateur. le contributeur peut aussi investir dans un projet avec un seul
clic sur le bouton "Investir". Il est capable aussi de réagir à un projet en cliquant sur
l’icône "j’aime".
39
CHAPITRE 3. RÉALISATION
Chaque projet créé a un profil bien détaillé. Il consiste en un Nom du projet, une
date de création, un prix, un montant collecté et un État de projet. Il contient aussi les
informations sur son propriétaire. Cet profil utilisé pour connaître les avancements du
projets et ses qualités et permet d’assurer la communication avec le contributeur via des
commentaires.
40
CHAPITRE 3. RÉALISATION
Chaque utilisateur connecté peut voir la liste des commentaires et aussi capable d’ajou-
ter un ou plusieurs commentaires.
41
CHAPITRE 3. RÉALISATION
Le modérateur est l’acteur qui a tous les privilèges d’accès. Il a le droit de gérer la
plate-forme.
Le modérateur peut consulter la liste des comptes pour valider ou invalider un compte
.
Le modérateur peut voir la liste des catégories et il est capable de supprimer une.
42
CHAPITRE 3. RÉALISATION
Si un utilisateur crée un projet il est ajouté directement au liste porteur d’une part
d’autre part le modérateur a le choix de bloquer ou débloquer le porteur en cas où le
porteur est bloqué, il est automatiquement dans la liste noir donc il peut pas accéder à
la plate-forme.
43
CHAPITRE 3. RÉALISATION
Conclusion
out au long de ce dernier chapitre, nous avons concrétisé tout le travail conçu lors des
T phases précédentes. Nous avons expliqué la configuration nécessaire pour démarrer
notre projet. Nous avons aussi présenté les outils que nous avons utilisé pour réaliser
notre système. Enfin, nous avons exposé les différentes fonctionnalités en présentant des
captures d’écran de notre système réalisé.
44
Conclusion et perspectives
e présent rapport est réalisé dans le cadre de notre projet de fin d’étude en vue de
L l’obtention du diplôme de licence fondamental en sciences informatique et multimé-
dia.
Dans le premier chapitre, nous avons commencé par présenter le cadre général du pro-
jet. Nous avons effectué une analyse minutieuse des solutions apparentés à notre idée. Ce
cette analyse nous avons dégagé des besoins utilisateurs. Une critique des solutions ana-
lysées nous a permis de cerner les difficultés inhérentes à l’idée. Puis, nous avons présenté
une étude comparative des différentes méthodes de développement de projets. Ensuite,
nous avons décrit la méthode adoptée pour ce projet
Le deuxième chapitre consiste à identifier les acteurs et à collecter les besoins fonction-
nels et les besoins non fonctionnels.après nous avons une conception afin de mener à bien
notre projet. Nous avons utilisé UML comme un langage de modélisation MVC comme
patron de conception.
45
CHAPITRE 3. RÉALISATION
charte graphique autour du thème "financement participatif" apportera une valeur ajoutée
à notre système. Nous pourrons aussi envisager d’améliorer et ajouter quelques fonctionna-
lités. Nous citons ici un système de notifications concernant les nouveaux investissements
créés.
46
Bibliographie
47
CHAPITRE 3. RÉALISATION
Résumé
Abstract
48