Application Web Sécurisée pour ABS
Application Web Sécurisée pour ABS
Porte-parole du Gouvernement
Présenté par :
MANLAN AHOUA NATHAN
Période de stage : du 21/02/2022 au 18/05/2022
DEDICACE
A ma grande famille, pour tous les efforts qu’elle a effectués pour me hisser jusqu’ici, en ce jour de
réjouissance.
3
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
REMERCIEMENTS
4
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
SOMMAIRE
INTRODUCTION
PREMIERE PARTIE : GENERALITES
Chapitre 1 : L’ENTREPRISE D’ACCUEIL
I. PRESENTATION D’ABS
II. ORGANIGRAMME
I. PRESENTATION DE REACT
Conclusion partielle
DEUXIEME PARTIE : ETUDE TECHNIQUE
Chapitre 4 : ETUDE DE L’EXISTANT
I. PRESENTATION DE L’EXISTANT
5
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Conclusion partielle
TROISIEME PARTIE : RESULTATS ET DISCUSSION
Chapitre 7 : RESULTATS
I. OUTILS DE DEVELOPPEMENT
II. PRESENTATION DE L’APPLICATION
Chapitre 8 : DISCUSSION ET VALOIR ECONOMIQUE
CONCLUSION
6
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
SIGLES ET ABREVIATIONS
DD : Dictionnaire de Données
DF : Dépendance Fonctionnelle
JS : JavaScript
PC : Personnal Computer
SI : Système Informatisé
7
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
8
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
9
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
INTRODUCTION
Cela fait maintenant près de 10 ans que la Côte d’Ivoire prend à cœur l’avancée technologique et
le progrès scientifique. Elle met et propose au maximum l’automatisation et l’intégration de solutions
informatiques dans tous ses secteurs d’activités notamment l’Education Nationale. Hélas, malgré tout
ce bon vouloir et ce désir de s’améliorer, l’ivoirien ne reste pas moins attaché à certains vices tels que la
fraude, la corruption et la lenteur dans le travail qui, grâce à l’informatique seraient évidemment
éradiqués. En effet, la Direction de l’Encadrement des Écoles Privées(DEEP), en collaboration avec le
ministère de l’Education Nationale, le ministère de l’Enseignement Technique, de la Formation
Professionnelle et de l’Apprentissage et le ministère du Budget ont révélé que le comptage physique des
élèves affectés de l’Etat dans les écoles privés était un travail fastidieux et que le nombre exact d’élèves
affectés donné au préalable, subissait une falsification qui au final alourdissait les dépenses de l’Etat
lors des paiements de subventions des écoles. Ainsi, pour pallier à ce problème, un appel d’offre en
2020 a été lancé. Et donc c’est dans l’optique d’aider l’Etat que Africa Biometrics Security (ABS) s’est
portée volontaire pour ce projet.
Afin donc de promouvoir son activité informatique, dans maintes domaines d’activités,
d’apporter d’amples informations de la structure aux institutions scolaires et autres entreprises, Africa
Biometrics Security (ABS) nous a remis cette tache durant notre stage pour notre projet de fin d’étude à
travers le thème suivant : << Etude et mise en place d’une application web sécurisée pour
l’information et la promotion de l’entreprise : Africa Biometrics Security >>.
A cet effet, toute une problématique se pose à savoir : ce qu’est une application web
sécurisée, comment la mettre en place, quelles en seraient les étapes et fonctionnalités ?
Pour répondre à ces questions, il conviendra pour nous dans la première partie de faire
une présentation générale de notre structure d’accueil et de notre projet. Puis notre deuxième partie
sera consacrée à l’étude de l’existant, l’analyse et la conception du projet à l’aide des outils
10
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
informatiques et technologiques à notre disposition. Enfin dans la dernière partie, nous présenterons
les résultats attendus du projet et nous les discuterons.
11
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
12
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
I. PRESENTATION D’ABS
Société d’intégration de solutions informatiques, Africa Biometrics Security a été créée en 2020
pour répondre au besoin de l’Etat d’automatiser le comptage physique des élèves du littoral ivoirien.
Elle est spécialisée en développement de logiciels appliqués aux besoins des écoles, des entreprises, des
organisations. Elle propose également des solutions performantes pour la création, le déploiement et la
maintenance de progiciels. Africa Biometrics Security (ABS) a son siège social à Abidjan, Cocody 2
plateaux, vallons Rue des jardins. Elle fournit de nombreuses prestations notamment :
Et comme toute bonne entreprise qui se respecte et se veut compétitive, ABS a des principes tels que :
13
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
II. ORGANIGRAMME
L’organigramme de ABS comporte trois (03) principaux départements dont la tête est la DIRECTION
GENERALE, voir la Fig.1 ci-dessous :
DIRECTION
GENERALE
SECRETARIAT
GENERAL
DIRECTION SERVICE
TECHNIQUE PROJETS
Et dans le cadre donc de notre stage de fin de cycle, nous avons été affectés au Service Projets. Ce
service est dirigé par M. TAMEGNON JEAN-BAPTISTE, directeur technique et responsable du pilotage
des projets c’est-à-dire de la phase d’étude jusqu’à la réalisation.
14
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
15
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
1. LE WEB
Le web désigne en anglais une toile d’araignée. C’est une technologie permettant de consulter des
pages regroupées sur des sites afin d’obtenir l’information que l’on recherche à partir d’un navigateur. .
2. L’APPLICATION WEB
Une application web désigne une partie logicielle qui peut être accéder à partir d’un navigateur.
On peut également considérer une application web comme un serveur2 web puisqu’il peut héberger
plusieurs applications web en son sein. Voici cités 4 caractéristiques d’une application web qui vous
aideront à la différencier des autres types d’applications :
16
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Une application web sécurisée ou autrement dit sécurité des applications web décrit les mesures
de sécurité au niveau des applications web qui aident à empêcher le vol ou le détournement de données
ou de code contenus dans les applications. Cette sécurité vise à répondre et à remplir les quatre
conditions de sécurité, également appelées principes de sécurité :
Confidentialité: stipule que les données sensibles stockées dans l'application Web ne doivent
en aucun cas être exposées.
Intégrité: indique que les données contenues dans l'application Web sont cohérentes et ne sont
pas modifiées par un utilisateur non autorisé.
Disponibilité: indique que l'application Web doit être accessible à l'utilisateur authentique
dans un délai spécifié en fonction de la demande.
17
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Non-répudiation: indique que l'utilisateur authentique peut ne pas refuser de modifier les
données contenues dans l'application Web et que l'application Web peut prouver l’identité de
l'utilisateur authentique.
Et dans notre cas, l’outil qui nous garantit au mieux d’accéder à ces 4 points est la bibliothèque React.
Nous en parlerons dans la suite de notre travail.
I. PRESENTATION DE REACT JS
Conçue par Jordan Walke, un ingénieur de Facebook et publiée en Open-source2 depuis 2013,
React est une bibliothèque permettant de concevoir des applications web et mobiles très performantes
et qui peuvent modifier les données, sans avoir à recharger la page. Son approche est de considérer une
page web comme un ensemble de composants, c’est à dire de parties unitaires que l’on va pouvoir faci-
lement exploiter, réutiliser et tester. L'objectif principal de React est d'être rapide, évolutive et simple.
18
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
performance d’exécution
souplesse de conception
flexibilité
(Atouts : [Link])
Prenons en compte que bien que ce soit des mots différents, il va s’en dire qu’ils ont des points en
commun. Et par abus de langage, l’on prononce Framework là où très souvent il s’agirait d’une
bibliothèque et vice-versa.
Le développeur utilise une bibliothèque en appelant le code de cette dernière, tandis que le rôle du
Framework (cadre applicatif) est d’exécuter le code du développeur. Le Framework donne un
cadre, une organisation, un squelette, une méthode de travail. Tandis que la librairie, elle, offre des
fonctionnalités multiples à l’utilisateur pour son code.
Selon StackOveflow, environ 40,14 % des 67.000 répondants en 2021 ont choisi React, tandis que 22,96
% ont gardé la main sur Angular.
19
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Sur GitHub, React a 175.000 étoiles sur son dépôt, alors que les autres n’atteignent même pas la barre
des 150.000.
Le caractère sécurité de React réside dans le fait que ses modules parcellaires et sa qualité
d’évolution sont à la pointe de la technologie. Les applications créées avec cette bibliothèque en disent
long : YouTube, Facebook, Instagram, Netflix… Il est même possible, qu’une fois hébergé sur internet,
qu’on n’ait pas accès au code source du site comme on le voit communément.
20
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Toutes ces plateformes combien sécurisées, sont la conséquence d’une seule et même bibliothèque,
React.
Au terme de notre première partie, nous retenons donc que ces chapitres nous ont permis d’avoir
un aperçu de l’entreprise qui nous a accueillie. Juste après nous avons eu à parler du cahier de charge
remis pour le dudit projet pour ensuite découler sur l’explication de certains de ces termes et de l’outil
de conception qui sera utilisé. Dans la suite de notre travail, nous ferons une étude technique du projet
afin de bien repérer le système d’information à mettre en place.
21
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
22
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
I. PRESENTATION DE L’EXISTANT
23
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
A la suite de ce qui précède, nous pouvons dire qu’il n’existe pas réellement de failles dans ce
logiciel excepté des informations importantes, relatives et propres à l’entreprise. Il a aussi que les mises
à jour de ce système sont difficiles d’accès.
Et donc pour pallier à ce qui a été mentionné plus haut nous avons décidé de mettre en place une
application web sécurisée et qui correspondra bien évidemment aux exigences du cahier de charge
donné en amont.
Quand l’on parle de modélisation, particulièrement en informatique, nous faisons allusion à l’ana-
lyse préalable des informations sur le projet suivie d’une représentation de la structure de ces informa-
tions. Tout comme l’architecte conçoit ses plans avant toute construction physique, il en est de même
pour l’informaticien aguerri. Et donc en génie logiciel, les outils de modélisation ou d’analyse les plus
utilisés sont UML et MERISE.
1. Présentation de MERISE
24
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
MERISE est un sigle qui se traduit par Méthode d’Etude et de Réalisation Informatique par Sous-En-
sembles. C’est une méthode de conception, de développement et de réalisation de projets informa-
tiques. Elle possède des avantages et des inconvénients qui sont :
AVANTAGES INCONVENIENTS
2. Présentation d’UML
UML est également un sigle qui signifie Unified Modeling Langage ; en français, langage de
modélisation unifié. Contrairement à MERISE, UML est un langage de conception graphique et orienté
objet. Et tout comme MERISE, elle possède des avantages et des inconvénients :
25
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
AVANTAGES INCONVENIENTS
Capable de modéliser les données Approche objet moins intui-
à caractère sémantique
tive
Indépendante vis-à-vis de la tech-
Diagramme souvent difficile
nologie
d’adaptation
Rend l’analyse plus aisée
Temps de gestion des dia-
Langage normalisé clair et précis
grammes souvent long
MERISE UML
26
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
A la vue de tout ce qui précède, depuis la présentation des deux (02) outils jusqu’à leur comparaison,
notre choix va être porté sur la méthode MERISE pour son caractère relationnel et pour le fait que l’ap-
préhension de cette méthode nous est plus aisée.
A ce stade de notre mémoire nous décrirons les étapes recommandées par la méthode MERISE.
Dans son cours sur cette méthode, M. KABORE RAOGO scinde en six (06) le processus MERISE qui
eux-mêmes sont régis par trois (03) cycles fondamentaux dont nous ferons mention maintenant.
1. Le cycle de vie
Le cycle de vie comporte trois grandes périodes :
2. Le cycle de décision
Tout au long de l'étude et de la maintenance, des décisions sont à prendre, très générales d'abord
puis de plus en plus détaillées. C’est la liste de tous les moments où une décision est prise sur le pro-
27
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
jet (décision de faire le projet après une étude préalable, décision de valider l’analyse fonctionnelle et
de passer à l’architecture, validation de la recette, etc.)
Exemple : La décision de créer un téléphone portable ne doit pas se faire sans l’accord de celui qui
passera ses heures à l’utiliser.
3. Le cycle d’abstraction
Le cycle d’abstraction concerne le système de spécification d'un système informatisé (SI) :
La mémoire du SI est décrite sur le plan conceptuel, puis logique et enfin physique.
Les processus de traitements sont décrits sur le plan conceptuel, puis organisationnel et enfin
opérationnel.
Chaque couche est décrite sous la forme d'un modèle. Lorsque les paramètres des couches inférieures
évoluent, la couche décrite n'est pas altérée, et elle ne le sera que si ses propres paramètres seront
modifiés.
Chaque modèle est décrit à travers un formalisme reposant sur des règles et des principes, un voca-
bulaire et une syntaxe. Des règles de transition permettent de passer plus ou moins automatiquement
d'un modèle à un autre, ce que nous montrerons dans la suite de notre travail et que nous détaille -
rons de façon spécifique à notre projet.
28
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
L’objectif est de répondre à la question quoi? De comprendre la nature du problème. Et c’est au tra-
vers d’un ensemble de règles de gestion que vont se traduire les objectifs et les contraintes qui pèsent
sur l’entreprise.
Exemple de règles de gestion :
Dans note contexte estudiantin à priori et générale à postériori, il s’en suit les règles de gestion sui-
vantes :
Le dictionnaire des données est un document qui permet de recenser, de classer et de trier toutes
les informations collectées lors des entretiens ou de l’étude des documents. Voici présenté ci-dessous
notre dictionnaire de données :
29
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Type Règle
Nom de la Règle de
Format Longueur Elémentaire Calculé de Document
donnée gestion
calcul
adresséco Alphanumérique 30 OK
codeéco Numérique 10 OK
OK
drenéco Alphabétique 20
noméco Alphabétique 40 OK
adressentrep Alphanumérique 30 OK
fonctioentrep Alphanumérique 30 OK
nomentrep Alphanumérique 40 OK
typeentrep Alphabétique 30
OK
lieu Alphanumérique 40 OK NEANT NEANT NEANT
Alphabétique OK
but 100
Alphanumérique
adressprof 30 OK
mailprof 30 OK
Alphanumérique
OK
nomprof Alphabétique 40
prenomprof Alphabétique 50 OK
Numérique OK
salairedemprof 10
miseajourlogic Numérique 100 OK
Alphabétique OK
nomservice 40
typeservice Alphabétique 30 OK
30
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Lorsqu’on parle de dépendance fonctionnelle entre deux propriétés lorsque la connaissance d'une
valeur d'une propriété P1 permet de déterminer une et une seule valeur d'une autre propriété P2. On dit
que P2 dépend fonctionnellement (ou est en dépendance fonctionnelle) de P1. La dépendance
fonctionnelle est notée P1 --> P2;
Dans notre cas on note :
Codeéco --> noméco
Codeéco --> drenéco
Fonctioentrep --> typeentrep
Adressentrep --> nomentrep
Le graphe des dépendances fonctionnelles épure le dictionnaire en ne retenant que les données
non déduites et élémentaires et il permet une représentation spatiale de ce que sera le futur modèle
conceptuel des données. On a donc :
31
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
32
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
33
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
s’inscrire(#idService, #idEntreprise)
34
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
A la suite de la présentation de nos deux outils de conception que sont UML et MERISE, nous avons
opté pour MERISE. En effet il nous a permis d’accomplir un travail assez rigoureux en amont avant
implémentation logicielle et d’être bien situé sur les spécificités et fonctionnalités de notre application.
Pour ce qui est du développement à proprement dit, et nous l’avons mentionné plus haut, la
bibliothèque REACT sera évidemment au rendez-vous. Ainsi dans le prochain chapitre nous
montrerons les résultats du travail effectué.
35
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
36
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
Chapitre 7 : RESULTATS
2. Node JS
37
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
[Link] Designer
2. Présentation de
3. Présentation de
38
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
39
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
I. DISCUSSION
Les différentes fonctionnalités de l’application ont été testées et approuvées par l’entreprise mais
pas encore mise en production sur Internet. Il s’en est suivi au bout de quelques essais que notre
40
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
application répond aux exigences fonctionnelles. On parle en effet de la disponibilité d’une mise à jour
des firmes détenant des applications et logiciels octroyés par l’entreprise, des informations nécessaires
à la meilleure compréhension des services de l’entreprise, de formulaires pour inscrire école, entreprise
et professeur recherchant un travail dans des écoles.
41
Réalisé par Ahoua Nathan MANLAN, étudiant en systèmes informatiques et génie logiciel
CONCLUSION
Pour conclure nous pouvons dire que l’élaboration du projet étant la création d’une application web
sécurisée ne s’est hélas pas fait sans encombre; depuis l’apprentissage de la bibliothèque React jusqu’à
la conception dudit projet. L’application se voulant sécurisée, nous avons pu atteindre cet objectif-là;
des tests sont faits et pour l’instant rien à signaler. Et pour mener à bien tout ceci nous sommes passés
par une méthode de conception très pratique et soft appelée MERISE avant l’implémentation de notre
application.
Grâce à notre application l’entreprise ABS aura un plus grand marché et fournira aux entreprises et
écoles tierces des informations sur elle notamment son fonctionnement, ses points forts et ses
différents services. Ainsi, l’application assurera la promotion de l’entreprise aux yeux du monde.
Nous restons néanmoins à l’écoute pour d’éventuelles modifications et perspectives sécuritaires. Mais
plutôt qu’opter pour une bibliothèque qui peut être manipulée par tous pourquoi pas songer à mettre
un langage de programmation dont la structure et la conception serait faite avec nos langues locales ?
42
BIBLIOGRAPHIE ET WEBOGRAPHIE
BIBLIOGRAPHIE :
[1] TRAORE ZIE ABASS «Etude et mise en place d’une application de gestion de clinique privée : la
grande clinique du dokui», Mémoire de fin de cycle Licence en Système Informatique Génie Logiciel,
ESATIC, 56 pages, 2019-2020.
[2] KEÏTA M. « Etude et mise en place d’une application web de sondage en ligne », Mémoire de fin de
cycle Licence en Système Informatique Génie Logiciel, ESATIC, 59 pages, 2018-2019.
WEBOGRAPHIE :
Annexe 1 :
Annexe 2 :
3
Fig.23 : Module Pédagogie
Annexe 3 :
3
Fig.24 : Module Finance
3
TABLE DES MATIERES
DEDICACE .............................................................................................................................III
REMERCIEMENTS ............................................................................................................. IV
SOMMAIRE.......................................................................................................................... V
SIGLES ET ABREVIATIONS.............................................................................................VII
LISTE DES FIGURES .........................................................................................................VIII
LISTE DES TABLEAUX .....................................................................................................IX
INTRODUCTION..................................................................................................................X
PREMIERE PARTIE : GENERALITES................................................................................XII
Chapitre 1 : L’ENTREPRISE D’ACCUEIL……………………………………………………………………..XIII
I. PRESENTATION D’ABS……………………………………………………………………………………………..XIII
II. ORGANIGRAMME………………………………………………………………………………………………………XIV
3
I. PRESENTATION DE L’EXISTANT…………………………………………………..XXIII
3
RESUME
Ce mémoire nous présente la création d’une application web sécurisée pour la promotion et
l’information sur l’entreprise Africa Biometrics Security. Cette application vise toutes les autres boites
et entreprises désirant s’informatiser ou acquérir les services de l’entreprise ABS. Pour atteindre donc
cet objectif, nous avons premièrement établie, par la méthode MERISE un plan de conception puis
nous l’avons mis en exécution à l’aide d’outils de conception matériels et logiciels. Elle est
intégralement faite avec la bibliothèque React et Node JS représente le serveur sur lequel toutes les
données seront recueillies.
ABSTRACT
This memory presents the creation of a safe and secure web application for the promotion and the
information on the entrance of Africa Biometrics Security. This application aims at all other companies
wishing to put computer science in their works and acquire the services of ABS. For reaching this goal,
firstly, we have used a design method called MERISE to establish a plan before the coding,
implemented with a library called React and we have also used a server called Node JS for saving data
of our application.