Vous êtes sur la page 1sur 42

DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

REMERCIEMENTS

La production d’une œuvre véritable ne saurait être qu’un seul effort personnel.
C’est pour cette raison que nous exprimons une profonde gratitude à ceux qui de près ou
de loin nous ont soutenu pendant ces moments difficiles, et ont contribué à la réalisation
de ce travail.

SUR LE PLAN ACADÉMIQUE


 Monsieur GUIMEZAP Paul le président fondateur de l’Institut Universitaire de la
Côte (IUC) et son personnel administratif.
 Nous démontrons notre affection à tout le corps enseignant de la filière CS2I
 Mon encadreur académique Monsieur

SUR LE PLAN FAMILIAL


Nous remercions nos parents pour les multiples sacrifices qu’ils ont fait et
continus de faire pour nous jusqu´aujourd´hui.

rédigé par: EKEU Marina ET EBA Tatiana i


DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

ABREVIATION

PHP : HyperText Préprocesseur

SGBD : Système de Gestion des Bases de Données

SQL : Structured Query Language

UML : Unified Modeling Language

IUC : Institut Universitaire de la Côte

IHM: Interface Homme Machine

HTML: Hyper Text Markup Language

MVC: Model View Controller

SI : Système d’information

OS : Operating System

HTTP : Hyper Text Transfert Protocol

rédigé par: EKEU Marina ET EBA Tatiana ii


DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

SOMMAIRE

remerciements.................................................................................................................................................... i
Sur le plan académique.......................................................................................................................... i
SUR LE PLAN FAMILIAL......................................................................................................................... i
abreviation........................................................................................................................................................... ii
resume................................................................................................................................................................... v
abstract................................................................................................................................................................ vi
INTRODUCTION generale.............................................................................................................................. 1
chapitre 01 : etude de l’art............................................................................................................................ 2
introduction.................................................................................................................................................... 2
I- presentation du projet....................................................................................................................... 2
II- Méthodologie de Conception...................................................................................................... 3
chapitre 02 : etude prealable des systemes existants........................................................................7
I- Quelques systèmes existants.......................................................................................................... 7
A- le plagiat direct............................................................................................................................ 7
B- payer pour le travail de quelqu´un d´autre......................................................................7
C- l´auto-plagiat................................................................................................................................. 7
D- paraphraser sans citer la source........................................................................................... 8
E- plagiat copier-coller................................................................................................................... 8
II- Cahier des charges.......................................................................................................................... 8
chapitre 03 : conception des modeles fonctionnels, statiques et dynamiques.....................13
I- Modèle fonctionnel........................................................................................................................... 13
1- Spécification des fonctionnalités....................................................................................... 13
2- Acteurs du système................................................................................................................. 14
3- diagramme de cas dutilisation............................................................................................ 14
4- Description textuelle des cas d’utilisation.....................................................................15
II- Modèle dynamique....................................................................................................................... 17
1- diagramme de sequence........................................................................................................ 17

rédigé par: EKEU Marina ET EBA Tatiana iii


III- Modèle statique............................................................................................................................. 18
DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

A. diagramme de classe............................................................................................................... 18
Chapitre 04 : implementation................................................................................................................... 21
I- Environnement, Langages et technologies utilises.............................................................21
1- environnement de travail..................................................................................................... 21
2- Langages utilisés....................................................................................................................... 21
3- Technologies.............................................................................................................................. 22
4- application web......................................................................................................................... 24
II- Implémentation du serveur/ base de données / frontend..........................................26
1- implementation......................................................................................................................... 26
III- Rendu de l’application................................................................................................................ 28
conclusion generale....................................................................................................................................... 31
TABLE DE MATIERE..................................................................................................................................... 32
Références bibliographiques..................................................................................................................... 33
Références webographiques..................................................................................................................... 34
Annexe A : Diagramme de GANTT........................................................................................................... 34

rédigé par: EKEU Marina ET EBA Tatiana iv


DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

RESUME

Dans l´environnement universitaire actuel fortement domine par la concurrence du


quotient intellectuel en milieu scolaire, le plagiat ou encore communément appelé
(copier-coller les expressions d’une personne), chaque université cherche à se doter d
´outil informatique pour mieux gérer et Controller cela. C´est le cas également pour IUC
qui ont eu un besoin de mettre sur pied un système qui permettra de gérer cela.

C’est pour répondre à cette préoccupation que nous avons développé une application
web qui pourrait être utilisée au sein de notre établissement. Pour ce faire, nous avons
pensé au fonctionnement du processus de dépôt de rapport a IUC de par nos 2 ans
expérience en tant qu´étudiantes, ce qui nous a permis de spécifier clairement les
besoins avant d’élaborer un cahier des charges technique.

Ensuite, le langage UML nous a permis la modélisation des cas d’utilisation et des classes
du nouveau système. Pour programmer, le Framework Laravel, le langage PHP et le
SGBD MySQL ont été les principaux outils mobilises avec l’éditeur Visual Studio Code.

L’application qui en est le résultat n’est qu’à la phase analyse plus tard nous allons
passer à implémentation et aux tests.

rédigé par: EKEU Marina ET EBA Tatiana v


DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

ABSTRACT

In the current university environment, which is strongly dominated by the


competition of intelligence quotient in schools, plagiarism or commonly called (copy-
paste the expressions of a person), each university seeks to equip itself with computer
tools to better manage and Controller this. This is also the case for IUC who have had a
need to set up a system that will manage this.

It is to answer this concern that we have developed a web application that could
be used within our institution. To do this, we thought about how the IUC reporting
process works through our 2 years of experience as a student, which allowed us to
clearly specify the needs before developing a technical specification.

Then, the UML language allowed us to model the use cases and classes of the
new system. To program, the Laravel Framework, the PHP language and the MySQL
DBMS were the main tools used with the Visual Studio Code editor.

The application that is the result is only the analysis phase later we will move to
implementation and testing.

rédigé par: EKEU Marina ET EBA Tatiana vi


DEVELOPPEMENT D´UNE APPLICATION WEB ANTI-PLAGIAT

rédigé par: EKEU Marina ET EBA Tatiana vii


INTRODUCTION GENERALE

De nos jours, le monde des technologies informatiques (TI) évolut très rapide et vue son
expansion, on entend souvent parler du plagiat communément « copier-coller » qui peut
se définir comme l’action de s’approprier le travail créatif de quelqu’un et de le
présenter comme le sien sans mentionner la provenance.

C’est dans l’optique de minimiser le plagiat de document académique dans l


´environnement éducatif, fortement dominé par la concurrence du quotient intellectuel,
que nous décidé de mettre sur pied une plateforme antiplagiat pour permettre de
surveiller cela. Les établissements éducatifs cherchent à se doter d´outil informatique
pour mieux gérer et Controller cela. C´est le cas pour IUC qui voudrais contrôler les
rapports de projet des étudiant.

C’est pour répondre à cette préoccupation que nous avons développé une application
web antiplagiat qui pourra être utilisée au sein de notre université. Le présent thème
soumis à notre étude entre dans le cadre de notre projet tutoriel. Ce rapport s’articulera
autour de quatrechapitre essentielles à savoir : premier chapitre Etude de l’art,
deuxième chapitre Etude préalable des systèmes existant,troisième chapitreConception
des modèles fonctionnels, statiques et dynamiques enfin le quatrième chapitre
l’implémentation de l’application.
CHAPITRE 01 : ETUDE DE L’ART

INTRODUCTION

Le projet est une application qui doit gère le plagiat d’un document entre autre
rapport de stage. Le plagiat se produit lorsque des auteurs, intentionnellement ou non,
présentent un travail comme étant le leur alors qu’il provient d’une autre personne. Le
plagiat est une violation de la propriété intellectuelle d’autrui.

Ses objectifs sont de respecter les propriétés intellectuelles d’autrui, en facilitant


la comparaison des mots, en boostant le quotient intellectuel des étudiant et en
sauvegardant les rapports des étudiants.

Dans un premier temps, la comparaison des rapports de stages au seins de notre


application est la seule partie qui est concernées par ces travails. Mais au fur et à mesure
du développement de l’application.

I- PRESENTATION DU PROJET

L’Institut Universitaire de la Côte est une universitaire qui forme l’homme dans
sa globalité. C’est ainsi que les développeurs de IUC pour aider et faciliter la gestion des
étudiants et autres qu’ils ont mis sur pied l’application myIUC et le portail captif
myiuc.com qui permet aux étudiants et enseignants d’avoir les informations les
concernant en rapport avec leur activité à IUC.

L’Institut Universitaire de la Côte, dans son émergence continue d’améliorer ses


technologies mise sur pied. C’est dans cette optique que nous allons mettre sur une
application web qui va permettre de faire une vérification des documents des étudiants
qui ont été copié par d’autres, en d’autre terme le plagiat.

Toutes ces multiples migrations montrent combien l’informatique dans sa


globalité est aussi importante. Ainsi pour aider l’IUC dans la gestion des rapports
d’étudiant pour éviter le plagiat, c’est pour cela que nous avons pensée à une application
permettant de faire une comparaison entre les différents rapports pour pouvoir punir le
plagiat surtout dans les cas de rapport de stage.

Lorsqu’on transcrit une partie ou l’intégralité d’un texte sans citer comme source
l’auteur de l’ouvrage duquel on s’est inspiré, cela signifie qu’on s’est approprié les
travaux des autres : cela définit le plagiat. Peut être considéré comme plagiat l’utilisation
d’une photographie, d’une image, des tableaux extraits d’un ouvrage, sans référence à
l’auteur ou à la source. De ce fait il existe plusieurs formes de plagiat à savoir entre autre
le plagiat direct, payer pour le travail de quelqu´un d´autre, l´auto-plagiat, paraphraser
sans citer la source et plagiat copier-coller.
Les raisons qui poussent les étudiants à plagier sont nombreuses mais les plus évoquées
sont :
 Le manque de temps, pour avoir attendu au dernier moment pour commencer la
rédaction
 L’incapacité à formuler ses propres phrases
 La fumisterie pour faire croire qu’on a travaillé dur
 L’ignorance

Dans le but d’apporter une aide aux écoles, nous avons pensé à mettre sur pied une
application web qui facilitera la découverte du plagiat de document pour cela nous
allons utiliser le plagiat copier-coller.

II- MÉTHODOLOGIE DE CONCEPTION


1. ÉTUDE COMPARATIVE ENTRE MERISE ET 2TUP

MERISE (Méthode d’Étude et de Réalisation Informatique pour les Systèmes


d’Entreprise) est une méthode d'analyse et de réalisation des systèmes d'information
qui est élaborée en plusieurs étapes: schéma directeur, étude préalable, étude détaillée
et la réalisation. Par contre 2TUP (2 tracksunifiedprocess, prononcez
« toutiyoupi » /tu.ti.ju.pi/), ou T2UP, est un processus de développement logiciel qui met
en œuvre la méthode du processus Unifié.Le processus s'articule ensuite autour de trois
phases essentielles :une branche technique ;une branche fonctionnelle et une phase de
réalisation.

2. CHOIX DE LA MÉTHODE

Après cette étude comparative, il est certes que nous adoptons 2TUP comme méthode
de modélisation puisque nous allons utiliser le concept de l’orienter objet, à travers le
Laravel Framework qui est basé sur HTML, CSS&PHP. A travers le choix de la méthode
2TUP, le langage de modélisation qui va de soi est le langage UML.
3. QU’EST-CE QUE C’EST QUE UML ?

UML (UnifiedModeling Langage), est un langage de modélisation des systèmes standard,


qui utilise des diagrammes pour représenter chaque aspect d'un système c’est-à-dire :
statique, dynamique, ...en s'appuyant sur la notion d'orienté objet qui est un véritable
atout pour ce langage.

4. C’EST QUOI 2TUP ?

2TUP (2 tracksunifiedprocess, prononcez « toutiyoupi  » /tu.ti.ju.pi/), ou T2UP,


est un processus de développement logiciel qui met en œuvre la méthode
du processus Unifié.

Le 2TUP propose un cycle de développement en Y, qui dissocie les aspects


techniques des aspects fonctionnels. Il commence par une étude préliminaire qui
consiste essentiellement à identifier les acteurs qui vont interagir avec le système
à construire, les messages qu'échangent les acteurs et le système, à produire
le cahier des charges et à modéliser le contexte (le système est une boîte noire, les
acteurs l'entourent et sont reliés à lui, sur l'axe qui lie un acteur au système on
met les messages que les deux s'échangent avec le sens). Le processus s'articule
ensuite autour de trois phases essentielles :

Une branche technique ;


Une branche fonctionnelle ;
Une phase de réalisation.

La branche fonctionnelle capitalise la connaissance du métier de l’entreprise.


Cette branche capture des besoins fonctionnels, ce qui produit un modèle focalisé
sur le métier des utilisateurs finaux.

La branche technique capitalise un savoir-faire technique et/ou des contraintes


techniques. Les techniques développées pour le système le sont indépendamment
des fonctions à réaliser.

La phase de réalisation consiste à réunir les deux branches, permettant de mener


une conception applicative et enfin la livraison d'une solution adaptée aux
besoins.
Les "méthodologues" disent qu'une méthode, pour être opérationnelle, doit avoir
3 composantes:

Une démarche (les étapes, phases et tâches de mise en œuvre),


Des formalismes (les modélisations et les techniques de transformation),
Une organisation et des moyens de mise en œuvre.

A. DÉMARCHE

Le cycle en Y ou processus 2TUP présente une branche fonctionnelle et


une branche technique bien distincte durant la phase de capture des besoins
et d'analyse préalable. La figure 2.1 ci-dessous vont nous présenter la
démarche utilisée par la méthode 2TUP qu’on va utiliser.

Figure 1 : 2TUP présentée en cycle en Y

B. LES MODÈLES

Nous utiliserons ici la méthode 2TUP avec le langage UML, dont chaque étape de tous le
cycle en Y de la branche fonctionnelle, branche fonctionnelle a la branche du milieu
permettant de former le Y, doivent correspondre aux diagrammes UML d’après leurs
spécifications d’utilisation.
Voici la figure 2.2 ci-dessous, qui énumère chaque étape du cycle en Y avec les
diagrammes UML correspondants.

Figure 2 : 2TUP avec les diagrammes UML correspondants


CHAPITRE 02 : ETUDE PREALABLE DES SYSTEMES EXISTANTS

I- QUELQUES SYSTÈMES EXISTANTS

Le plagiat se produit lorsque des auteurs, intentionnellement ou non, présentent un


travail comme étant le leur alors qu’il provient d’une autre personne. Le plagiat est une
violation de la propriété intellectuelle d’autrui. La plupart des universités ont leur
propre déclaration définissant le plagiat.

Il existe de nombreux types de plagiat, mais les formes les plus courantes sont le plagiat
direct, le fait de payer quelqu’un, l’auto-plagiat , la paraphrase sans source et le plagiat
« copier-coller ».

Tous les types de plagiat ont un point commun en commun : le fait d’utiliser le travail de
quelqu’un d’autre et de le faire passer pour le vôtre. Il y a différentes manières de plagier
quelqu’un, mais elles sont toutes malhonnêtes et éthiquement inacceptables.

A- LE PLAGIAT DIRECT
Le plagiat direct est la forme de plagiat la plus évidente. Cela signifie que vous prenez
les idées ou le travail de quelqu’un d’autre et les revendiquer comme étant les vôtres
sans citer les auteurs. Même si vous supprimez ou modifiez quelques mots ici et là, si la
majorité de la structure et des mots sont les mêmes, c’est du plagiat direct.

Le plagiat direct est l’un des pires types de plagiat. Il en résulte souvent une expulsion et,
s’il y a violation du droit d’auteur, d’éventuelles poursuites judiciaires.

B- PAYER POUR LE TRAVAIL DE QUELQU´UN D´AUTRE


Ce type de plagiat est explicite. Si vous payez quelqu’un pour écrire un mémoire,
une thèse ou une dissertation pour vous, c’est du plagiat.

Les mots ne sont pas les vôtres et sont donc plagiés. Cela inclut également le fait d’avoir
un ami ou un membre de la famille qui va écrire votre texte pour vous et le remettre
avec votre nom dessus.

C- L´AUTO-PLAGIAT
L’auto-plagiat est plus difficile à comprendre et est souvent involontaire.Il existe
deux versions différentes de l’auto-plagiat, la version la plus commune étant le fait
d’utiliser un document que vous avez déjà remis pour un autre cours. Parce que vous
avez déjà écrit ce travail, ce n’est plus un travail nouveau et original.
Cela peut également se produire lorsque vous utilisez des idées ou des
expressions tirées de vos documents ou de vos devoirs précédents. Par exemple, si vous
utilisez des morceaux d’essais que vous avez déjà terminés.

Pour plus d’informations sur l’éthique de l’auto-plagiat, vous pouvez consulter


notre article sur l’ auto-plagiat.

D- PARAPHRASER SANS CITER LA SOURCE


Paraphraser n’est pas un type de plagiat tant que vous citez correctement vos
sources. Cependant, la paraphrase devient du plagiat lorsque vous lisez différentes
sources, sortez quelques points clés et réécrivez ces points comme s’ils étaient vos
propres idées.

Si vous ne citez pas vos sources pour toutes les idées non originales référencées dans
votre article, alors vous commettez du plagiat.

Le plagiat accidentel est souvent causé par la paraphrase sans source. C’est simple et
facile à éviter. N’oubliez pas de citer correctement votre source.

E- PLAGIAT COPIER-COLLER
Le plagiat copier-coller est similaire à la paraphrase avec une différence très
importante : c’est quand vous copiez et collez différents textes ensemble pour créer un
nouveau texte qu’il s’agit de plagiat. Cela inclut parfois la reformulation des parties
d’origine tout en conservant la structure des textes originaux.

Ce type de plagiat nécessite un peu plus d’effort et est plus insidieux que de
simplement paraphraser une source. Mais cela n’en vaut finalement pas la peine puisque
les scanners de plagiat peuvent facilement détecter ce genre de plagiat.

II- CAHIER DES CHARGES


1. OBJECTIFS

Nous pouvons tous simplement spécifier que, l’objectif pour nous est de pouvoir
contrôler la rédaction des rapports de stage en vérifiant que sa été un travail personnel,
contrôle les pourcentages de plagiat et faire régné le droit d’auteur sur un rapport de
stage déposer par un étudiant au sein de l’établissement. Du coup, nous attendons de
cette application les buts tel que :

 Faciliter la gestion des plagiats ;


 Faciliter la gestion de stockage des documents ;
 Mieux manager les critères des plagiats ;
Dans notre projet nous avons différents acteurs qui interagissent avec le système qui
sont :

 Les enseignants ;
 Les élèves ;

2. PRÉSENTATION DU PROJET

«NelTat-system» est une plateforme applicative web dont le but est de permettre le suivi
et la vérification du travail personnel d’un étudiantlors de la rédaction de son rapport ou
mémoire.

3. CIBLE

Ladite plateforme «NelTat-system»est destinée à être utilisé par les utilisateurs finaux
qui sont entre autres : l’administration, encadreurs etétudiants.

4. SPÉCIFICATIONS FONCTIONNELLES

Nous avons choisi de décomposer l’ensemble des besoins fonctionnels en module,


permettant ainsi d’appliquer la notion de programmation orienté fonctionnalité. Après
un découpage, nous avons comme modules :

a. Gestion d’authentification(administration, étudiants, …) : Il est question


dans ce module de gérer les utilisateurs du système et de définir leur
niveau d’accès dans la plateforme.
b. Gestion de paramétrage : Il est question dans ce module que les
administrateurs du système déterminent les paramètresde comparaison des
documents :
c. Gestion des documents : Il est question dans ce module de l’archivage des
différents documents et fichiers analysés et comparés.

5. SPÉCIFICATIONS NON FONCTIONNELLES

Les interfaces de notre future plateforme doivent respecter la charte graphique d’une
application Web, elles doivent donc inclure des onglets, des menus compactes et doivent
être conviviales.
L’utilisateur doit être guidé lors de la saisie de certaines informations, afin de
respecter les formats des champs de notre base de données.

6. RESSOURCES

A. RESSOURCES MATÉRIELLES

Tableau 1 : Liste des ressources matérielles pour le projet

Désignation Quantités Prix (en XAF)


Ordinateurportablecore i5 16 Go RAM 2 1.300.000
Clés USB (16Go) 2 16.000
Souris USB 2 3.000
Modem internet + abonnement mensuel sur 4 1 200.000
mois
Total 6 1.519.000

B. RESSOURCES LOGICIELS ET TECHNOLOGIES

Tableau 2: Liste des ressources logiciels et technologies pour le projet

Désignation Version Prix(FCFA)


Microsoft office 2016 450.000
Wamp server 64 bits 3.1.3 Free
Serveur Laravel 5.1.5 Free
PHP 7.2.4 free
MySQL 5.7.2 Free
PhpStorm 18.1 250.000
PHPMyAdmin Free
Visual Studio Code Free
Total 700.000

C. RESSOURCES HUMAINES
Tableau 3 : Liste des ressources humaines pour le projet

Désignation Quantités Durée (en Affectation Coût (en XAF/


semaine) jour)
Analyste 2 5 Mm EBA METENDE 12.000
Tatiana et Mm EKEU
GADEU Marina
Concepteur 1 6 Mm EBA METENDE 15.000

web Tatiana et Mm EKEU


GADEU Marina
Test 1 2 Mm EBA METENDE 25.000
Tatiana et Mm EKEU
GADEU Marina
Total 5 16 1.560.000

7. PLANIFICATION DU TRAVAIL

La réalisation d’un tel projet requière des compétences profondes et diverses car les
nombreuses tâches qui en découlent sont toutes aussi diverses que difficiles pour les
non-initiés. Chacune des tâches représentes ici une étape dans le projet. Elles sont les
suivantes

 Elaboration du cahier de charges


 Conception des différents diagrammes d’analyse
 Correction et validation de l’analyse
 Création de la base de données
 Implémentation et réalisation du projet
 Correction et validation au fur et à mesure que l’on avance
 Test, amélioration et validation
 Déploiement et formation

A. GANTT
Le diagramme de Gantt est un outil utilisé (souvent en complément d'un réseau
PERT) en ordonnancement et en gestion de projet et permettant de visualiser dans le
temps les diverses tâches composant un projet. Il s'agit d'une représentation d'un
graphe qui permet de représenter graphiquement l'avancement du projet.

Voir dans l’Annexe A.

B. ÉVALUATION FINANCIÈRE DU PROJET


Le cout total du projet s’élève à : 3.189.000XAF.
CHAPITRE 03 : CONCEPTION DES MODELES FONCTIONNELS, STATIQUES ET
DYNAMIQUES

I- MODÈLE FONCTIONNEL

1- SPÉCIFICATION DES FONCTIONNALITÉS


Nous voulons mettre sur pied une application web qui pourra récupérer le
document entrer par un étudiant le comparer à celui qui existe déjà dans le système et
ressortir les paragraphes s’il y´a eu une éventuelle copie, le système renvoi un message
en spécifiant s’il y´a plage si non, renvoyez un message de confirmation qu’il renvoi a
l’étudiant en le spécifiant que son rapport peut être dépose à l´administration.

On veut réaliser l’informatisation du contrôle des rapports de stages pour éviter toute
forme de plagiat au sein d’une école qui migre vers le monde numérique. L’application
sera donc capable de faire la :

 Gestion d’utilisateurs (enseignants, élèves, …) et leurs droits d’accès ;


 Logiciel bilingue : Français & Anglais (mais dans un premier temps en français) ;
 Gestion des vérifications ;
 Gestion de stockages ;
 Historique des vérifications ;
 Gestion des documents

A- BESOINS FONCTIONNELS
NelTat-System est une application web qui devra êtresimple a utilisé. Ces besoins
déterminent le fonctionnement du système :

 Créer un compte pour se connecte en tant qu’utilisateur visiteur un login et un


mot de passe vous sont générer automatiquement et vous pouvez les modifier ;
 Vous pouvez insérer un ou plusieurs documents pour analyse et comparaison ;
 Vous pouvez effecteur une tache en fonction des fonctionnalités qui vous sont
proposé à l’interface ;
 Vous pouvez vous déconnecter ;

B- BESOIN NON FONCTIONNELS


Une fois les besoins fonctionnels sont bien définis, les besoins non fonctionnels
doivent être pris en compte tout au long du processus de développement de l’application
à savoir :

 L’ergonomie : la disposition des éléments dans l’application devra


permettre à l’utilisateur de mieux le manipule.
 La sécurité : le système doit être sécurisé pour éviter toute tentative
d’utilisation non appropriée. Il devra offrir une sécurité totale au niveau
de l’accès au résultat d’une élection.
 La rapidité de traitement : il sera nécessaire que la durée de traitement
des informations au sein de notre application se rapproche le plus
possible d’une exécution en temps réel.

2- ACTEURS DU SYSTÈME
Un acteur représente un rôle joué par une entité externe (utilisateur humain,
dispositif matériel ou autre système) qui interagit directement avec le système
étudié.Les acteurs qui interagissent avec l’application à concevoir sont :

Administrateur :
 Gestion des utilisateurs et connexion ;
 Gestion des critères de comparaison ;
 Gestion de l’archivage des documents et fichiers.
Utilisateur :
 Se connecter ;
 Insérer un document ou fichier ;
 Modifier son profil ;
 Lancer la comparaison.

3- DIAGRAMME DE CAS DUTILISATION


Ce diagramme de cas d’utilisation est un diagramme UML que nous allons utilises
pour donner une vision globale du comportement fonctionnel du système de notre
application. Ce diagramme sera utile pour la présentation auprès des acteurs du projet,
mais pour le développement, le cas d’utilisation est plus approprié. Un cas d'utilisation
représente une unité discrète d'interaction entre un utilisateur et un système.
Figure 3: DIAGRAMME DE CAS D´UTILISATION GLOBAL

4- DESCRIPTION TEXTUELLE DES CAS D’UTILISATION


Nous allons désormais parler de l’interaction entre les acteurs et le système : il s’agit de
décrire la chronologie des actions qui devront être réalisées par les acteurs et par le
système lui-même. On parle d’ailleurs de scénarios. La description d’un cas d’utilisation
permet de :

 Clarifier le déroulement de la fonctionnalité ;


 Décrire la chronologie des actions qui devront être réalisées ;
 Identifier les parties redondantes pour en déduire des cas d’utilisation plus
précises qui seront utilisées par inclusion, extension
ougénéralisation/spécialisation. Et oui, dans ce cas nous réaliserons des
itérations sur les diagrammes de cas d’utilisation ;
 D’indiquer d’éventuelles contraintes déjà connues et dont les développeurs vont
devoir tenir compte lors de la réalisation du logiciel. Ces contraintes peuvent être
de nature divers.

A- DESCRIPTION TEXTUELLE DU CAS D’UTILISATION«AUTHENTIFICATION »


Tableau 2 : Description du cas d’utilisation « Authentification »

Numéro du cas
Nom du cas d’utilisation
d’utilisation
Titre Authentification
Ce cas d’utilisation permet à l’utilisateur de se connecter
But
au système.
Acteurs L’administrateur et le client
L’administrateur / client saisit les informations de
Pré conditions connexion (login et mot de passe).

 L’administrateur / client demande une connexion


au système.
 Le système demande le login et le mot de passe.
 L’administrateur / client remplie le formulaire et
Enchainements
valide. Le système vérifie la validité des données.
Le système affiche l’interface d’accueil
correspondante à l’administrateur / client.

Dans le cas où L’administrateur / client fournit un login


Alternative et/ou un mot de passe erroné, le système lui affiche un
message d’erreur.
Besoin d’IHM Formulaire d’authentification.

B- DESCRIPTION DU CAS D’UTILISATION « GESTION DES CRITERES DE


SCANNE »
Tableau 3 : Description du cas d’utilisation « Gestion des chambres »
Numéro du cas d’utilisation Nom du cas d’utilisation
Titre Gestion des critères de scanne
But Permet à l’admin de gérer la gestion des critères.
Acteurs L’administrateur
Pré conditions L’administrateur doit s’authentifier.
 L’administrateur doit s’authentifier ;
 L’administrateur demande l’ajout, modifier ou
supprimer d’un critère ;
 Le système affiche formulaire ou la liste des
Enchainements critères ;
 L’administrateur remplie le formulaire et valide ;
 L’administrateur choisit le critère, modifier ou
supprimer et valider ;
 Le système enregistre et confirme.
Le système affiche un message d’erreur lorsque
Alternative l’utilisateur fournit des données incomplètes ou
erronées (ajout et modification).
Besoin d’IHM Les Formulaires des critères.

II- MODÈLE DYNAMIQUE

1- DIAGRAMME DE SEQUENCE
Les diagrammes de séquences sont la représentation graphique des interactions entre
les acteurs et le système selon un ordre chronologique dans la formulation UML. Le
diagramme de séquence si dessous nous permettra de montre les interactions d’objets
dans le cadre d’un scenario du cas utilisation enregistrement d’un élève dans le système.
Dans un souci de simplification nous avons représenté l’acteur principal à gauche du
diagramme, et les acteurs secondaires éventuels à droite du système car le but étant de
décrire comment se déroulent les actions entre les acteurs ou objets.

A. DIAGRAMME DE SÉQUENCE « S’AUTHENTIFIER » 


Figure 4: DIAGRAMME DE SEQUENCE D’AUTHENTIFICATION

III- MODÈLE STATIQUE

A. DIAGRAMME DE CLASSE
Le diagramme de classe est un schéma utilise en génie logiciel pour présenter les
classes et les interfaces du système ainsi que les différentes relations entre celle-ci. Ce
diagramme fait partie de la partie statique d’UML cat il fait abstraction des aspects
temporels et dynamiques. Notre classe décrit les responsabilités, le comportement et le
type d’ensembles d’objet que renferme notre projet. Et les éléments que contiennent nos
classes sont des instances de ces classes. Les classes sont utilisées dans la
programmation orientée objet. Elle nous a permis de modéliser notre programme et
ainsi de découper une tâche complexe en plusieurs petits travaux simples. Le
diagramme de classes est considéré comme le plus important de la modélisation orienté
objet. Il s'agit d'une vue statique du fait qu'on ne tient pas compte du facteur temporel
dans le comportement du système. Le diagramme de classe permet de modéliser les
classes du système et leurs relations indépendamment d'un langage de programmation
particulier. Le diagramme de classe retenue à la fin de la conception est le suivant :
Figure 5: DIAGRAMME DE CLASSE

DESCRIPTION TEXTUELLE DUNE CLASSE


Dans le diagramme de classe de notre application plagiat Management System,

Document est une classe qui permet de crée tous un fichier avec son type c’est à dire un

fichier avec des différentes extensions. Cependant, un étudiant là le droit de crée son
propre document selon les normes fixe par l’administrateur. Comme nous distinguons 2

type d’utilisateurs du système, nous devons attribuer les privilèges selon utilisateur.

La classe utilisateur est lie à la classe Rôle pour pouvoir différencié les utilisateurs qui

manipulent le système d’où la liaison Rôle.

CHAPITRE 04 : IMPLEMENTATION

I- ENVIRONNEMENT, LANGAGES ET TECHNOLOGIES UTILISES

1- ENVIRONNEMENT DE TRAVAIL
Pour la réalisation d’un projet informatique, il est obligatoire de se munir autour
de soi des environnements permettant la naissance de celui-ci. En effet, certains sont
obligatoires à l’exécution du travail et d’autres sont là pour facilités l’exécution du
travail. Cependant, nous avons eu besoin :

 D’un ordinateur portable dont la performance minimale est de : CORE I3, 1,6 GHZ
de processeur et 4 Go de RAM ;
 D’un IDE pouvant éditer les langages liés au web (HTML, CSS, JavaScript, PHP…)
tel quePhpStorm, Visual Studio Code, SubilmeText, Komodo, etc ;
 D’un environnement de gestion de base de données.

Pour implémenter la plateforme ANTIPLAGIAT, il nous fallait, configurer et installer les


différents logiciels et environnements :

 Visual Paradigm : c’est un outil UML CASE prenant en charge UML 2, SysML et


la notation de modélisation des processus métier (BPMN) de Object Management
Group (OMG). Outre la prise en charge de la modélisation, il fournit des
fonctionnalités de génération de rapports et d'ingénierie de code, y compris la
génération de code. Il permet de procéder au reverse engineering de diagrammes
à partir de code et de fournir une ingénierie aller-retour pour différents langages
de programmation.

2- LANGAGES UTILISÉS

PHP est unlangage de programmationlibreprincipalement utilisé


pour produire despages Web dynamiquesvia unserveur HTTP, mais
pouvant également fonctionner comme n'importe quellangage

interprétéde façon locale. PHP est unlangage impératiforienté objet.PHP a permis de créer un
grand nombre de sites web célèbres, comme Facebook, Wikipédia, etc. Il est considéré
comme une des bases de la création de sites web dits dynamiques mais également des
applications web tell que le nôtre.

3- TECHNOLOGIES

A. ARCHITECTURE MVC
Après l'évaluation de la technologie, les sites web et les applications ont
progressivement évolué, les attentes des utilisateurs et des clients également. De ce fait,
notre application utilise l'architecture MVC. L'architecture MVC (modèle, vue et
contrôleur) est un concept très puissant qui intervient dans la réalisation d'une
application ou un site web. Son principal intérêt est la séparation des données (modèle),
de l'affichage (vue) et des actions (contrôleur).

 Le Modèle représente le comportement de l'application : traitements des


données, interactions avec la base de données, etc. Il décrit les données
manipulées par l'application et définit les méthodes d'accès.
 La Vue correspond à l'interface avec laquelle l'utilisateur interagit. Les résultats
renvoyés par le modèle sont dénués de toute présentation mais sont présentés
par les vues. Plusieurs vues peuvent afficher les informations d'un même
modèle. Elle peut être conçue en html, ou tout autre " langage " de présentation.
La vue n'effectue aucun traitement, elle se contente d'afficher les résultats des
traitements effectués par le modèle, et de permettre à l'utilisateur d'interagir
avec le système.
 Le Contrôleur prend en charge la gestion des évènements de synchronisation
pour mettre à jour la vue ou le modèle. Il n'effectue aucun traitement, ne modifie
aucune donnée, il analyse la requête l’utilisateur et se contente d'appeler le
modèle adéquat et de renvoyer la vue correspondante à la demande.

B. CHOIX DE LARCHITECTURE DE DEVELOPPEMENT


Nous avons choisi de travailler avec l'architecture MVC, car elle permet de bien séparer
la logique de la présentation. La vue n'aura aucune logique d'imbriquer. Aussi, étant
donné que tout est très bien séparé, il est très facile d'ajouter et de modifier au code sans
que le reste ne s'effondre. C'est un pattern qui se prête très bien au développement. Le
schéma suivant résume la structure générique d'une architecture MVC :
Figure 6: ARCHITECTURE MVC

Laravel est un Framework web open source écrit en PHP


respectant le principe modèle vu contrôleur et
entièrement développé en programmation oriente objet.
Laravel est distribué sous licence MIT avec ses sources
hébergées sur GitHub.

er est une plate-forme de développement Web sous


Windows pour des applications Web dynamiques à l’aide du serveur
u langage de scripts PHP et d’une base de données
Il possède également PHPMyAdmin pour gérer plus
Facilement vos bases de données.

phpMyAdmin (PMA) est


uneapplication Webde gestion pour
lessystèmes de gestion de base de
donnéesMySQLréalisée
principalement enPHPet distribuée sous licenceGNU GPL.
MySQL est unsystème de gestion de bases de
donnéesrelationnelles (SGBDR). Il est distribué sous
une double licenceGPL. Il fait partie des logiciels de
gestion debase de donnéesles plus utilisés au monde,
autant par le grand public (applications web
principalement) que par des professionnels, en concurrence avecOracle,InformixetMicrosoft
SQL Server.

Chrome est un navigateur web nous permettant d’ouvrir


l’application

UML est un langage de modélisation graphique. Il est


couramment utilisé en développement logiciel et en
conception orienté objet.

4- APPLICATION WEB
Une application web est une application manipulable directement en ligne grâce à
un navigateur web et qui ne nécessite donc pas d’installation sur les machines clientes.
De la même manière que les sites web, une application web est généralement installée
sur un serveur et se manipule en actionnant des widgets à l’aide d’un navigateur web,
via un réseau informatique (internet, intranet, réseau local etc). Il existe plusieurs types
d’application web à savoir entre autre :

A. APPLICATION WEB STATIQUE


La première chose à savoir sur ce type d’application est qu’elle contient peu
d’informations et, en général, son contenu n’évolue pas ou très peu. Le développement
d’applications web se fait habituellement en HTML et CSS. Il peut, néanmoins y avoir des
objets animés tels que bannières, GIF, vidéos, etc. Ces applications peuvent être
développées avec jQuery et Ajax. Comme exemple nous avons le curriculum vitae
numérique

B. APPLICATION WEB DYNAMIQUE


Les applications web dynamiques sont plus complexes sur le plan technique. Elles
utilisent des bases de données pour charger des informations, et le contenu est mis à
jour à chaque fois que l’utilisateur se connecte à l’application. En général, elles ont un
panneau d’administration (appelé CMS) depuis lequel l’administrateur peut corriger ou
modifier le contenu. Il existe de nombreux langages de programmation pour le
développement d’applications web dynamiques. PHP et ASP sont les plus répandus, car
ils facilitent l’organisation du contenu.

C. APPLICATION WEB DE TYPE E-SHOP ET E-COMMERCE


Si l’application web est un e-shop (commerce numérique), son développement
sera plus complexe, car elle doit permettre les paiements électroniques par carte de
crédit, PayPal, orange money ou autre mode de paiement. Le développeur doit
également créer un panel de gestion pour l’administrateur afin que ce dernier puisse
mettre en vente des produits, faire des mises à jour et gérer les commandes.

D. APPLICATION WEB PORTAIL


Il s’agit d’une application dont la page d’accueil permet d’accéder aux différentes
sections ou catégories. Son contenu peut être très varié : forums, chats, e-mail, moteurs
de recherche, formulaire d’enregistrement, contenu le plus récent, etc

E. APPLICATION WEB ANNIME


La technologie FLASH est indispensable pour le développement d’applications
web animées. Elle sert à créer le contenu avec des effets d’animation. Permettant un
design plus créatif et moderne, FLASH est l’une des technologies les plus utilisées par les
designers. L’inconvénient des applications web animées est le risque d’un
référencement faible, car la technologie utilisée empêche les moteurs de recherche de
lire correctement les informations.
F. APPLICATION WEB CONTENT MANAGER
Pour les applications web dont le contenu doit être souvent mis ajour, vous
pouvez installer un système de gestion de contenu (content management system, CMS) à
travers lequell’administrateur aura la possibilité d’apporter des modifications. Ces
systèmes de gestion sont intuitifs et très faciles à gérer.

II- IMPLÉMENTATION DU SERVEUR/ BASE DE DONNÉES / FRONTEND

1- IMPLEMENTATION

A. ARCHITECTURE DE L’APPLICATION

En informatique, l’architecture désigne la structure propre à un système


informatique, l’organisation des différents éléments du système (logiciels, matériels,
humains et/ou informations) et des relations existantes entre ces systèmes.
L’architecture des systèmes informatiques est représentée sous forme graphique tel que
les diagrammes entités associations.

Figure 7: ARCHITECTURE DE L´APPLICATION


B. PRESENTATION DES NIVAUX DE VOTRE APPLICATION
 Couche présentation (premier niveau)

Elle correspond à la partie de l’application visible et interactive avec les


utilisateurs. On parle d`interface homme-machine. On conçoit facilement que cette
interface peut prendre de multiples facettes sans changer la finalité de l`application. La
couche présentation relaie les requêtes de l`utilisateur à destination de la couche métier,
et en retour lui présente les informations renvoyées par les traitements de cette couche.
Il s`agit donc ici d`un assemblage de services métiers et applicatifs offerts par la couche
inferieure.

 Couche métier (second niveau)

Elle correspond à la partie fonctionnelle de l’application celle qui implémente la «


Logique », et qui décrit les opérations que l`application opère sur les données en
fonction des requêtes des utilisateurs, effectuées au travers de la couche présentation.
Les différentes règles de gestion et de contrôle du système sont mises en œuvre dans
cette couche. La couche métier offre des services applicatifs et métier à la couche
présentation. Pour fournir ces services, elle s`appuie le cas échéant, sur les données du
système, accessibles au travers des services de la couche inferieure. En retour, elle
renvoie à la couche présentation les résultats qu`elle a calculé.

 Couche d’accès aux données(troisième couche)

Elle consiste en partie gérant l’accès aux données du système. Ces données peuvent être
propres au système, ou gérées par un autre système. La couche métier n’a pas à s
´adapter à ces deux cas, ils sont transparents pour elle, et elle accédé au données de
manière uniformes.

III- RENDU DE L’APPLICATION


1- INTERFACE DE CONNEXION

Figure 8 : interface de connexion

2- INTERFACE D’ACCUEIL

Figure 9: Interface d’accueil

3- INTERFACE DE LISTE DES UTILISATEURS


Figure 10: Interface de la liste des utilisateurs

4- INTERFACE D’INSCRIPTION

Figure 11 : Interface d’inscription


5- INTERFACE DE GESTION DES DOSSIERS ET FICHIERS

Figure 12 : Interface de gestion des dossiers et fichiers

CONCLUSION GENERALE
Rendu au terme de l´analyse de notre projet tutoriel, nous voulons concevoir et
développé une application web anti-plagiat. De plus, nous nous sommes confrontés aux
difficultés réelles du a l´analyse liées au projet et de la gestion des projets informatiques
afin de nous imprégner totalement de la rigueur du monde de l’emploi.

En effet, ce projet est pour le cas de nos projet tutoriel présente au niveau 3 en
vue d’obtention de notre Bachelor. Les projets tutoriels sont réalisé en groupe de 2 et ce
fait en 2 phases analyse et implémentation. Ici nous n’en somme qu’a la phase d’analyse.
Pour éviter le copier-coller en milieu universitaire c’est pour cela que pardon
d’application web anti-plagiat.

Ce projet tutoriel constitue pour nous une expérience en technologie et


encourageante pour l´avenir qui nous attend dans le domaine informatique.

TABLE DE MATIERE

abreviation........................................................................................................................................................... ii
resume................................................................................................................................................................... v
abstract................................................................................................................................................................ vi
INTRODUCTION generale.............................................................................................................................. 1
chapitre 01 : etude de l’art............................................................................................................................ 2
introduction.................................................................................................................................................... 2
I- presentation du projet....................................................................................................................... 2
II- Méthodologie de Conception...................................................................................................... 3
chapitre 02 : etude prealable des systemes existants........................................................................7
I- Quelques systèmes existants.......................................................................................................... 7
A- le plagiat direct............................................................................................................................ 7
B- payer pour le travail de quelqu´un d´autre......................................................................7
C- l´auto-plagiat................................................................................................................................. 7
D- paraphraser sans citer la source........................................................................................... 8
E- plagiat copier-coller................................................................................................................... 8
II- Cahier des charges.......................................................................................................................... 8
chapitre 03 : conception des modeles fonctionnels, statiques et dynamiques.....................13
I- Modèle fonctionnel........................................................................................................................... 13
1- Spécification des fonctionnalités....................................................................................... 13
2- Acteurs du système................................................................................................................. 14
3- diagramme de cas dutilisation............................................................................................ 14
4- Description textuelle des cas d’utilisation.....................................................................15
II- Modèle dynamique....................................................................................................................... 17
1- diagramme de sequence........................................................................................................ 17
2- Diagramme d’activité......................................................Error! Bookmark not defined.
III- Modèle statique............................................................................................................................. 18
A. diagramme de classe............................................................................................................... 18
Chapitre 04 : implementation................................................................................................................... 21
I- Environnement, Langages et technologies utilises.............................................................21
1- environnement de travail..................................................................................................... 21
2- Langages utilisés....................................................................................................................... 21
3- Technologies.............................................................................................................................. 22
4- application web......................................................................................................................... 24
II- Implémentation du serveur/ base de données / frontend..........................................26
1- implementation......................................................................................................................... 26
2- Implémentation de la base de données....................Error! Bookmark not defined.
3- Implementation du frontend........................................Error! Bookmark not defined.
III- Rendu de l’application................................................................................................................ 28
conclusion generale....................................................................................................................................... 31
TABLE DE MATIERE..................................................................................................................................... 32

RÉFÉRENCES BIBLIOGRAPHIQUES

Ouvrages utilisés

è
UML 2 par la pratique.pdf, Paris, EYROLLES 5 édition, 364 pages, 2007 de Pascal
Roques ;
Conception et Réalisation d’une Plateforme de réservation de services hôteliers,
Rapport de fin de cycle TIC, Promotion 2017/2018, de TADJADINE Haroun
Mahamat;

RÉFÉRENCES WEBOGRAPHIQUES

Liens utilisés

https://pdfparser.org/demo, consulter le 20 mars 2019 à 14h30 ;

https://www.reddit.com/r/laravel/comments/5hx34f/pdf_or_doc_parser_for_laravel/,
consulter le 17 mars, à 11h53 ;

https://e4d.com/planscan-complete-system/, consulter le 12 mars à 14h02 ;

ANNEXE A : DIAGRAMME DE GANTT


Figure 13 : Diagramme de Gantt

Vous aimerez peut-être aussi