Vous êtes sur la page 1sur 13

REPUBLIQUE DU SENEGAL

Un peuple – un but – une foi

Ministère de l’enseignement supérieur, de la recherche et de l’innovation

Direction générale de l’enseignement supérieur

Direction de l’enseignement supérieur privé

Ecole supérieure de technologie et de management

Mémoire de fin de cycle pour l’obtention de la licence en


Téléinformatique

Option : Génie logiciel et Administration réseaux

Intitulé

CONCEPTION ET REALISATION D’UNE


APPLICATION DE VOTE ÉLECTRONIQUE :
Cas de l’élection présidentielle 2019 au Sénégal

Présenté et soutenu par : Sous la direction de :

Adiouma SECK Mme CISSE


Aissata BA
Souad Hassan SOUKAYA Spécialité : Ressource Humaine
Thierno DIOP
Abdoul Wakhab lamine Mbaye
Fraise YABOUI

Année académique : 2018-2019


Avant-Propos
L’Ecole Supérieure de Technologie et de Management a été créée en 2002.
Spécialisée entre autres dans les domaines de l’informatique, de la télécommunication et
du management des entreprises, elle a pour missions de former les étudiants qui ont
toujours su se faire distinguer sur le marché du travail, de par leurs connaissances et
compétences acquises à l’issue de leur formation. Forte de son expérience, elle a toujours
su se hisser parmi les meilleures écoles de la place évoluant dans le même secteur
d’activité. Les diplômes délivrés sont la licence et le master homologués par les institutions
académiques (CAMES) africaines.

Pour l’obtention de la licence en téléinformatique, l’ESTM exige l’élaboration d’un


mémoire de fin de cycle. C’est dans cette optique que nous avons rédigé ce document qui
s’intitule : Conception et Réalisation d’un système de vote électronique

La réalisation de ce système consistera tout d’abord à faciliter les élections


présidentielles (éviter les longues files, diminuer la durée des délibérations), ensuite à les
rendre plus fiable (limité voir même éliminer les risque de fraude) et enfin à assurer une
élection libre et transparente. Le système sera équipé un dispositif de comptage pour
chaque candidat qui s’incrémentera à chaque fois que le candidat aura un vote.

Ce document représente notre premier travail de recherche. A cet effet nous


sollicitons de la part du jury beaucoup d’indulgence quant à l’évaluation.
Plan détaillé

Introduction générale

I. Cadre théorique et méthodologique

1.1 Cadre théorique

1.1.1 limites du vote papier


1.1.2 Système de vote électronique
1.2 Cadre méthodologique
1.2.1 Recherche documentaire
1.2.2 Enquête

II. Analyse et conception

2.3 Etude analytique

2.3.1 Analyse fonctionnelle

2.3.2 Analyse technique

2.4 Conception

2.4.1 Diagramme de cas d’utilisation

2.4.2 Diagramme de classe

III. Mise en place et présentation

3.5 Mise en place

3.5.1 Outils de développement et technologie

3.5.2 Architecture du système

3.6 Présentation de la solution

3.6.1 Présentation de l’application

3.6.2 Test l’application


Introduction générale

Dans toute société bien organisée, une personne ou un groupe de personne est
choisie pour représenter celle-ci. C’est un choix qui se fait par vote des membres qui la
composent et qui donne raison à une majorité. Avant il se faisait à main levée, ensuite par
vote papier. Mais avec le développement de l’informatique, elle se fait dans plusieurs pays
de manière électronique, toujours dans le souci d’améliorer l’exactitude, la fiabilité et
l’égalité du vote.

Dans un pays démocratique comme le Sénégal, le président de la république est


élu au suffrage universel par vote de la population. Pour se faire, cette dernière se regroupe
dans des centres de vote. Les électeurs forment de très longues files presque toute une
journée pour voter. Dans le processus de dépouillement, on observe un problème de
transparence (enveloppe non échangée lors du comptage ou escroquerie), un problème
d’efficacité du comptage, du temps mis pour le vote et de la déclaration de résultats
effectifs et fiables. C’est dans cette logique qu’on se pose la question à savoir quelle
solution électronique pouvons-nous mettre en place pour un bon déroulement de ce
dernier ?

L’objectif principal de notre travail est de faciliter le vote pour les électeurs même
non-instruits. Pour cela est important de produire une application simple et facile
d’utilisation pour fluidifier le passage et raccourcir le temps d’attente du citoyen, de
renforcer la transparence du vote en certifiant la présence de l’électeur par des
informations confidentielles, en sécurisant le vote pour qu’il ne soit pas fraudé et en
facilitant le comptage qui sera sans erreur pour diffuser le plus tôt des informations
fiables.

L'élection présidentielle sénégalaise de 2019, la onzième depuis l'indépendance du


pays à une grande ampleur dans la presse sénégalaise, raison pour laquelle notre choix
s’est porté sur ce sujet. Il sera question de mettre à la disposition de la population une
solution pour ce devoir civil. Contrairement au vote papier, une application de vote
électronique permet de se prémunir de l’imprécision du « marquage ». Il permet de faire un
dépouillement automatisé. Il permet également de réduire les impacts de la dispersion
géographique des points de vote.

Pour matérialiser notre projet nous pouvons considérer les hypothèses suivantes :
d’une part qu’on centralise les votes dans des bureaux de votes avec dans chaque bureau
trois à cinq équipements de votes (machine pour voter). Lesquelles machines se
connecteront à un serveur qui va gérer l’authenticité, la validité ainsi que le comptage des
résultats. D’autre part, on adopterait le BYOD qui permettrait à chaque citoyen de voter ou
qu’il puisse se trouver et avec n’importe quels équipements pouvant accédés a l’internet de
voté en toute confidentialité via une plateforme qui pourrait collecter les votes en toute
sécurité.

Afin de prendre en compte la réalité des besoins d’une élection libre et transparente,
la placer dans une perspective de développement cohérent et permettant de garantir une
réponse adéquate sur cette question, nous nous sommes appuyés sur une base assez
conséquente de documents fiables provenant des autorités d’organisation de ce domaine
mais aussi sur le web. Aussi, nous nous sommes basés sur des idées novatrices tirées
d’échanges entre plusieurs acteurs de la société sénégalaise.

Ainsi notre travail s’articulera autour de trois chapitres. Nous commencerons par
faire la présentation générale en définissant les cadres théorique et méthodologique.
Ensuite nous passerons à l’analyse et la conception de notre système. Enfin nous
terminerons par sa mise en place en abordant sa réalisation, son test et son déploiement.
I : cadre théorique et méthodologique

Les cadres théoriques et méthodologiques feront l’objet de notre première partie qui
sera consacrée à la présentation générale du système proprement dit, son architecture et à
sa contextualisation.

1.1 : cadre théorique

Vu l’avancée de la société humaine à l’heure actuelle, il est maintenant intolérable


d’accepter de continuer à fonctionner avec les limites que présentent certains systèmes
utilisés dans le cadre social. Cela est donc nécessaire de chercher à contourner ces limites
ou à mettre en place de nouveaux systèmes, qui corrigent ces limites. Pour ce faire, nous
allons voir les limites présentes dans le système de vote existant ainsi que la solution
envisageable pour les corriger.

1.1.1 Limites du vote papier


Le vote papier est le système de vote actuellement utilisé au Sénégal et même dans
beaucoup d’autres pays. Cependant, celui-ci présente des limites inquiétantes par rapport à
l’évolution actuelle de la société humaine. On peut citer les longues files d’attente aux
bureaux de vote, un problème de transparence (enveloppe non échangée lors du comptage
ou escroquerie) lors du dépouillement, un problème d’efficacité du comptage, le temps
mis pour le vote et la déclaration de résultats effectifs et fiables.

Nous avons pu souligner les limites inquiétantes du système de vote existant, qui
ouvrent la voie à l’adoption d’un système bien plus meilleur à savoir le vote électronique,
qui fera l’objet de la deuxième section de ce chapitre.

1.1.2 Système de vote électronique


Il s’agira de mettre en place une application réseau sécurisée utilisable sur un
terminal mobile ou un ordinateur, pour ainsi permettre à un électeur d’avoir la possibilité
d’élire le candidat de son choix sans être obligé de se déplacer au centre de vote. Ce choix
sera alors stocké dans une base de données, qui sera elle stockée dans un serveur de base
de données. De plus, l’électeur aura la possibilité de suivre l’évolution du scrutin en temps
réel, et de voir les résultats finaux à la fin du scrutin directement sur son terminal.

Nous avons pu constater l’énorme apport de ce système de vote électronique en ce


qui concerne les limites présentes dans celui du vote papier.

Dans ce chapitre, nous nous sommes intéressés au cadre théorique. Dans le chapitre
suivant, nous allons parler du cadre méthodologique de notre sujet.

1. 2 : Cadre méthodologique
Une application émane en général d’un réel besoin. Ainsi, il devient fondamental d’étudier
celui-ci de manière précise et concise pour bien réaliser notre application tout en respectant
les exigences des utilisateurs. Cela fait l’objet d’une approche méthodologique qui
constitue une pierre fondamentale pour notre application. Pour ce faire, nous allons adopter
un ensemble de méthodes d’investigation pour collecter le maximum d’informations
concernant le besoin.

1.2.1 Recherche documentaire


Cette technique est la plus importante, la plus difficile et la plus complexe dans un projet
informatique. Elle nous permet de respecter les procédures et normes existantes.

La recherche documentaire nous a permis de bien cadrer notre champ de vision en prenant
en compte certains aspects, notamment la prise en main des utilisateurs de notre
application. Sans doute, cela devient important de s’imprégner de l’avis et des attentes des
utilisateurs.

1.2.2 Enquête
Cette technique est couramment utilisée parce qu’elle renseigne suffisamment sur les
besoins des utilisateurs. Ici, nous allons orienter nos enquêtes aux niveaux des
professionnels informatiques, des demandeurs de voix, mais surtout des électeurs
L’enquête nous a permis de bien fixer nos objectifs. Il nous a édifiés sur ce à quoi nous
devons nous attendre pour le coté sécurité et coté fonctionnalité de notre système.

Ce chapitre faisait l’objet d’une recherche d’informations concernant notre système. Il


passe en revue l’ensemble des notions indispensables à considérer.

Cette partie est consacrée à tout ce qui est pertinence, problématique et information.
Elle nous a permis de détailler le cadre général de notre solution. Aussi, elle nous a éclairés
sur l’ensemble des notions à prendre en compte. Nous allons sans plus tarder nous lancer
dans l’étude analytique et la conception. Ceci fera l’objet de la deuxième partie intitulée
analyse et conception.

II : ANALYSE ET CONCEPTION

Dans cette partie nous allons nous intéresser au système proprement dit. C’est la partie la
plus importante du projet car une implémentation réussie repose sur une bonne analyse et
une bonne conception.

2.3 ETUDE ANALYTIQUE

Nous allons faire une analyse fonctionnelle pour recenser les différentes méthodes de
conception afin de voir la plus appropriée à nos fonctionnalités. Par la suite, nous ferons
une analyse technique afin de faire le choix le plus approprié pour la réalisation de la
solution.

2.3.1 ANALYSE FONSTIONELLE

Cette rubrique dédiée à l’analyse fonctionnelle est fondamentale pour tout projet
informatique. Il s’agit ici de mettre l’accent sur les résultats attendus en termes de
fonctionnalités, de performances, de maintenance, de sécurité etc…
L’analyse approfondie des besoins d’une application permet de savoir les besoins de cette
dernière en termes d’outils (matériels et logiciels). Ainsi cela devient nécessaire de choisir
des outils bien adaptés à notre solution. Ceci sera la suite de ce chapitre.

2.3.2 Analyse technique

Cette partie fera l’objet de présentation de divers outils et modèles. Nous allons en même
temps faire le choix de l’architecture, du langage/Framework de développement et du
serveur de base de données.

A l’issue de cette analyse nous avons fait des choix qui nous permettront de mettre en
œuvre notre application.

Apres avoir fait l’analyse de notre application et de faire un choix de Framework,


architecture et base donnée. Nous pouvons donc passer à la conception. Ceci fera sujet de
la suite de ce chapitre.

2.4 CONCEPTION :

La conception de logiciel est un art qui nécessite de l'expérience, et elle consiste à


traduire les besoins en spécifiant comment l'application pourra les satisfaire avant de
procéder à sa réalisation. En effet, dans ce chapitre nous essaierons d'étendre la
représentation des diagrammes effectués au niveau de l'analyse et d'exprimer les besoins
attendus du futur système Informatique à développer.

2.4.1 Diagramme de cas d'utilisation

Le diagramme de cas d'utilisation décrit les grandes fonctions d'un système du point
de vue des acteurs, mais n'expose pas de façon détaillée le dialogue entre les acteurs et les
cas d'utilisation. C'est un diagramme du modèle UML, il assure la relation entre
l'utilisateur et une interface que le système met à sa disposition.

A travers le diagramme de cas d’utilisation nous avons pu spécifier l’utilisation de


notre application de manière générale pour chaque groupe d’utilisateurs. A présent, nous
allons passer à la conception objet en l’occurrence le diagramme de classe.
2.4.2 Diagramme de classe

Le diagramme de classes de conception est un document indispensable qui représente


la vue de la conception statique d'un système. En conception, le diagramme de classes
représente la structure d'un code orienté objet.

Grace au diagramme de classe, les objets de notre application sont bien relier entre
eux pour former un ensemble logique. Cette étape capitale à la modélisation reste
incontournable pour tout programme informatique.

Dans ce chapitre, nous avons décrit brièvement le processus de réalisation de notre


application de vote électronique. En effet, nous avons illustré le diagramme de classes du
système et le diagramme des cas d’utilisations ouvrant ainsi la porte à la troisième partie de
notre travail « Mise en place et Implémentation », que nous allons détailler dans la partie
qui suit.

III : Mise en place et présentation

Dans cette partie nous allons parler de la présentation et de la mise en place de


notre application.

3.5 Mise en place

Ce chapitre traite les aspects techniques liés aux stratégies de mise en œuvre de
notre système. Nous parlerons de sa réalisation, de son test et de son déploiement.

3.5.1 Outils de développement et technologie

Dans ce chapitre nous aborderons en détail les outils et technologies avec lesquelles
notre système peut être conçu. Aussi, on fera un choix pour mettre en place notre
application.

Avec un large choix de technologies et d’outils, nous avons pu faire un choix


adapté à nos besoins de développement. Nous allons à présent vous présenter l’architecture
de notre système.

3.5.2 architecture du système


De nos jours toute application informatique repose sur une architecture bien
définie. Ici nous allons préciser l’architecture qu’on a choisie, l’expliquer et dire la raison
de notre choix.

L’architecture d’une application informatique reste une étape non négligeable. Car,
sans la compréhension de cette dernière la maintenance et le suivi d’une application
devient un vrai casse-tête. Après avoir détaillé l’architecture nous allons présenter notre
solution.

Ce chapitre est assez technique et demande une bonne maitrise en informatique.


Après mise en place de notre solution faite nous allons sans plus tarder vous la présenter.

3.6 Présentation de la solution

Ce chapitre est dédié à la présentation de quelques interfaces de l’application finale


que nous présenterons sous forme de capture.

3.6.1 Présentation de l’application

Dans cette partie nous allons présenter les captures de l’application qui seront
accompagnées de commentaires.

Une fois l’application présentée nous allons passer à son test dans la section
suivante.

3.6.2 Test de l’application

En informatique, un test désigne une procédure de vérification partielle d’un


système. Son objectif principal est d’identifier des comportements problématiques du
logiciel afin d’augmenter la qualité. C’est un procédé qui permet d’assurer le
fonctionnement correct d’un système. Ainsi notre application a subi une pile de test qu’on
peut catégoriser en deux groupes : test fonctionnel et test de vulnérabilité.

A la suite de ces tests, viendra la phase de déploiement du système afin que


l’application soit accessible. Cette étape sera la phase finale du projet.

Voilà qu’on est arrivé au bout de la présentation et la mise de notre application.


Nous allons passer à présent à la conclusion générale.
Conclusion générale

Au terme de ce travail, nous avons pu exploiter nos connaissances théoriques et


pratiques pour mettre en place une application de vote informatique.

Notons que ce travail nous a permis de nous rendre compte des difficultés de
comptage des bulletins et voix de chaque candidat aux élections.

Pour arriver à résoudre un problème de ce genre, en informatique, on procède à


plusieurs phases d'essai et jusqu'à la solution finale, c'est ainsi qu'après notre analyse, nous
avons réalisé une application adéquate pour simuler quelques parties du déroulement de
notre domaine d'étude. Nous pouvons ainsi souligner que l'implémentation que nous avons
faite est à titre illustratif et nous laissons le travail ouvert à toutes personnes pouvant en
faire l’objet d'une étude approfondie.

Néanmoins, nous pouvons dire que les solutions que nous avons proposées dans notre
travail d'analyse, répondent aux questions soulevées par notre problématique et optimisent
les résultats des opérations de vote.

Cependant, étant donné qu'il s'agit d'un travail scientifique, nous ne pouvons pas
estimer avoir tout épuisé en ce qui concerne ce sujet vu le domaine dans lequel il est traité,
sa complexité et l'intérêt qu'il présente.

Ainsi, nous laissons le libre arbitre à toutes personnes qui se sentiraient intéressées de
traiter encore davantage ce sujet en vue d'une quelconque amélioration.
Bibliographie

I. Ouvrages

~ BRIMO Albert, Les Méthodes en sciences, Ed. D'ALLUR, Paris, 1972

~ ROQUES Pascal, UML 2 Modéliser une application web, Ed. EYROLLES

~ SOUTOU Christian, UML 2 pour les bases de données, Ed. EYROLLES

II. Mémoires

~ KAZADI K.T, cours de Méthodes de recherche scientifique, G2 Info, UCSV

2013-2014

~OKALA M.Roland-Brice, Réalisation d’un site de vente en ligne : cas DecoHome, Ecole
Supérieure de Technologie et de Management, Dakar, 2017-2018, 49 pages.

~ RAMAZANI T, cours de Conception Orienté Objet II, G3 Info, UCSV 2014-2015

Webographie
~ www.wikipedia.org : 22/12/2018 à 11h30

~ www.memoireonline.com : 05/01/2019 à 15h00

~ www.commentcemarche.com : 17/01/2019 à 15h24

~ www.sql.sh : 22/01/2019 à 10h45

Vous aimerez peut-être aussi