WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Essai de conception et d'implémentation d'une plateforme web d'aide à l'orientation des étudiants dans leurs recherches de travaux de fin de cycle


par Eloi AGANZE ZIHALIRWA
ISP/Bukavu  - Licence 2019
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

IN MEMORIUM

A notre très regrettée grand-mère MUKONE BASUBI, une grande âme ; qui de son vivant n'a jamais cessé d'être une vraie guide pour ses fils, filles, petit-fils et petites-filles. Nous garderons de vous toutes les bonnes qualités que vous nous avez inculquées.

DEDICACE

A nos très chers parents, Monsieur ZIHALIRWA MUYANGE Gédéon et Madame MASOKA BASUBI Francine ;

A nos chers frangins AKONKWA ZIHALIRWA Lebon et Israël ZIHALIRWA ;

A notre frangine, l'unique Sharon-rose ZIHALIRWA ;

A nosgrandessoeurs Charline WAMUNZILA BASUBI et Espérance LUTUNGU,

A notre grande soeur Irène BIRHALIBYANDI Minange, son mari et au petit Gabriel ;

A notre tante Rebecca BASUBI.

AGANZE ZIHALIRWA Eloi

REMERCIEMENTS

Arriver à ce stade de la vie, on ne peut que s'émerveiller en regardant en arrière : tant d'efforts, tant de sacrifices, les nôtres mais aussi et surtout ceux des personnes qui nous sont chères, des amis et même des anonymes.

Dorénavant, nous tenons à remercier tous ceux qui se reconnaitront d'une manière ou d'une autre ; car, qu'on se le dise, il est impossiblede citer nommément tout le monde.

Nous citerons juste cet échantillon représentatif :

-Remerciements, honneurs et louanges à Jésus-Christ dans les lieux très haut, Dieu unique et véritable.

-Beaucoup des considérations à nos géniteurs, véritables cadeaux du ciel pour nous, Papa Gédéon et Maman Francine, Dieu vous comble richement.

-Beaucoup de gratitudes au C.T. MUKAMBA MUKANDAMA Vicky qui a déjà été le directeur de notre T.F.C. et a maintenant accepté la lourde responsabilité de nous accompagner pour la réalisation de notre mémoire. Notre profonde gratitude aussi à toute sa famille et particulièrement à Maman Elisée MBILA BWAMI.

-Sincères remerciements à notre chère soeur Irène BIRHALIBYANDI Minange dont la sagesse et l'endurance nous ont toujours marquées.

-Au Pasteur Jean SHINDANO et à son associé MAROBE WA MAROBE Deruch ; pour l'encadrement et l'accompagnement spirituels.

-A tou(te)s les bien-aimé(e)s frères et soeurs de l'Assemblée Chrétienne de Bukavu pour leurs prières en faveur des étudiants, particulièrement les familles KABEMBA LOLO et MUSAMPU Anthony.

-A tous les anonymes ayant contribués même par un verre d'eau fraiche à rendre ce rêve possible.

AGANZE ZIHALIRWA Eloi

SIGLES ET ABBREVIATIONS

C.V : Curriculum Vitae

I.G.E : Informatique et Gestion des Entreprises

I.H.M : Interface Homme-Machine

I.R.S : Initiation à la Recherche Scientifique

I.S.P : Institut Supérieur Pédagogique

Internet : International Network

M.V.C : Modèle-Vue-Contrôleur

M.V.T : Modèle-Vue-Template

OMG : Object Management Group

ORM : Object Relational Mapping

P.O. : Professeur Ordinaire

P.S.F : Python Software Foundation

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

T.F.C : Travail de Fin de Cycle

T.F.E : Travail de Fin d'Etude

UNIKIN : Université de Kinshasa

UP (2TUP) : Unified Process / 2Track Unified Process

LISTE DES TABLEAUX ET FIGURES

A. LES TABLEAUX

Tableau 1. Authentification 3

Tableau 2. Consulter les thématiques - 49 -

Tableau 3. Consulter les modèles - 50 -

Tableau 4. Télecharger - 51 -

Tableau 5. Gestion des membres/specialistes - 51 -

Tableau 6. Poster/Disponibiliser - 52 -

B. LES FIGURES

Figure 1. Le processus de développement en Y 3

Figure 2. Logos d'UML - 44 -

Figure 3. Logo de l'OMG - 45 -

Figure 4. Cas d'utilisation - 47 -

Figure 5. Diagramme de cas d'utilisation - 48 -

Figure 6. Diagramme de séquence "S'authentifier" - 53 -

Figure 7.diagramme de séquence « Consulter thématique » - 54 -

Figure 8.diagramme de séquence « Consulter modèle » - 54 -

Figure 9.Diagramme de séquence « Télécharger » - 55 -

Figure 10.Diagramme de séquence « Disponibiliser/Proposer/Poster » - 55 -

Figure 11.Diagramme de séquence « Gérer membres/spécialistes » - 56 -

Figure 12.Diagramme d'activité « S'authentifier » - 56 -

Figure 13.Diagramme d'activité « Consulter thématique » - 57 -

Figure 14.Diagramme d'activité « Télécharger fichier » - 57 -

Figure 15.Diagramme d'activité « Poster modèle » - 58 -

Figure 16.Dictionnaire des données - 59 -

Figure 17. Diagramme de classe - 60 -

Figure 18.Diagramme des composants logiciels - 60 -

Figure 19. Icône du langage Python - 62 -

Figure 20. Console interactive se Python - 65 -

Figure 21. Logo du framework Django - 66 -

Figure 22. Fonctionnement du Framework MVT - 71 -

Figure 23. Capture de l'écran de l'éditeur « Sublime Text » - 73 -

Figure 24. Icône de Visual Paradigm for UML 10.2 - 75 -

Figure 25. Fenêtre de Visual Paradigm for UML 10.2 - 76 -

Figure 26. La racine du répertoire en Django - 77 -

Figure 27. Lancement du serveur de développement de Django - 78 -

Figure 28. Authentification Admin Django - 79 -

Figure 29. Espace Admin Django - 79 -

Figure 30. La table « Membres » - 80 -

Figure 31. La table « thématiques » - 81 -

Figure 32. La table « Commentaires » - 81 -

Figure 33. La table « Spécialistes » - 82 -

Figure 34. Page d'authentification - 83 -

Figure 35. Le Menu - 83 -

Figure 36.Image tableau de bord - 84 -

Figure 37. Tableau de bord : « ce que vous allez découvrir » - 84 -

Figure 38. Le tableau de bord : les sections - 85 -

Figure 39. Le tableau de bord : Aperçu des spécialistes - 86 -

Figure 40. Les tags - 87 -

Figure 41. Thématiques tagées - 88 -

Figure 42. Les thématiques - 88 -

Figure 43. Commenter une thématique - 89 -

Figure 44. Aperçu des modèles - 90 -

Figure 45. Cas d'un modèle - 91 -

Figure 46. Plan du modèle - 91 -

Figure 47. Lien vers les thématiques à partir d'un modèle - 92 -

Figure 48. Vue d'une thématique, dépuis un modèle - 93 -

Figure 49. La page de télechargements - 94 -

Figure 50. Fichier télechargeable - 95 -

0. INTRODUCTION

0.1. PREAMBULE (CONTEXTE)

La science dans son essence est une démarche rationnelle qui, par la recherche et l'expérimentation ; c'est-à-dire, par l'étude scientifique, ambitionne de trouver une explication « scientifique » ou « démontrable » aux phénomènes et à l'état d'être des choses dans l'univers.

Selon l'encyclopédie Microsoft Encarta, collection 2009 :

`' La science dérive du latin « scientia », de scire, « connaitre » et signifie dans son sens large, connaissance systématisée ; dans un sens plus restreint, tout savoir considéré comme objectif et, par conséquent, vérifiable. `'

La même encyclopédie précise aussi quechaque domaine de connaissance donne lieu à une science qui lui est propre. En conséquence la science est plus précisément un ensemble cohérent de lois, considérées comme valables jusqu'au moment où de nouvelles découvertes viendraient les infirmer, ou de conventions, décrites de manière que tous les spécialistes de ce domaine puissent partager un langage, des expériences et des résultats (Microsoft Encarta, 2009).

En d'autres termes, la science pourrait être considérée comme étant une conception selon laquelle tout peut ou devrait avoir une explication rationnelle, formalisable et prévisible. Le hasard existe mais n'est pas une explication acceptable, ni une cause pouvant expliquer des conséquences. Notons juste au passage cette citation de Descartes :

« Toute connaissance qui peut être rendue douteuse ne doit pas être appelée du nom de science. »

Le reste, c'est-à-dire le surnaturel, le paranormal, le mystique et le divin ne rentrent pas dans une réalité, une conception qu'on peut qualifier de « scientifique ».Par conséquent, on ne peut y accorder que trop peu ou pas du tout de crédit.

Cette conception du tout rationnel, de la logique comme sentier unique de la vérité ne fait pas l'unanimité du simple fait qu'elle exclut d'emblée d'autres réalités dépassant la conception logique des choses établies ; mais ceci est un autre débat.

Quoi qu'il en soit, la science est une grande source de connaissances et de savoir qui aide à son niveau l'homme à se connaitre et à connaitre son milieu. Elle l'aide à découvrir de nouvelles choses, de nouvelles techniques et un certain nombre d'explications concrètes aux phénomènes. L'encyclopédie Encarta citée plus haut complète : « Connaissance, savoir, science, ces termes se renvoient l'un l'autre dans un cadre général appelé théorie de la connaissance ».

Pour cela, la science utilise un moteur très puissant à savoir la recherche ; une technique (démarche) rigoureuse au bout de laquelle une conclusion et un résultat sont trouvés.

A ce stade, il serait quand même intéressant de rappeler un point important : Avec l'évolution et le temps, avec l'expérience et les moyens multiples employés par l'homme ; on peut facilement tracer deux grandes branches ou conceptions de la recherche.

On parle de la recherche fondamentale quand on fait allusion à la recherche qui se fait dans le but d'augmenter la connaissance scientifique dans une branche (domaine) scientifique précise. Ce type de recherche se fait généralement dans les laboratoires avec un ou plusieurs chercheurs travaillant ensemble. Actuellement, on a même de cas de figure avec des dizaines ou des centaines des chercheurs éparpillés sur le globe mais qui travaillent sur un même projet de recherche tout en restant les uns et les autres dans leurs propres laboratoires. On a ici, des résultats généralement globaux.

On parle de la recherche appliquée lorsque les spécialistes dans un certain domaine particularisent les résultats généraux issus de la recherche fondamentale. Il s'agit de l'application des résultats de la première. C'est à ce niveau qu'on trouve les ingénieurs et les techniciens de toute sorte.

Toutefois, cette classification « classique » tend sérieusement à s'éroder car, il est de plus en plus question d'interdisciplinarité des sciences avec des sciences dites hybrides ou frontalières.

Faire de la recherche scientifique n'est pas chose aisée mais plutôt une tâche pour les intrépides. Comme nous pouvons le constater au travers de ce passage (ZIULU, 2018) : «La recherche scientifique ou investigation scientifique, est un effort hardi, astreignant, de compréhension provoquée par un besoin ou une difficulté dont on a pris conscience s'attachant à l'étude d'un phénomène complexe, dont l'intérêt dépasse les préoccupations personnelles et immédiates, le problème étant posé sous-forme d'hypothèses. »

On ne peut donc pas parler de recherche « scientifique », s'il n'y a pas de problème à résoudre et si la résolution du problème ne nécessite pas un effort important de la part des chercheurs.

Ainsi donc, le chercheur devra passer beaucoup de temps à collecter des données avant de les comparées entre elles (et avec des données déjà trouvées par des chercheurs avant lui), mettre en oeuvre plusieurs méthodes, construire des modèles et parfois mener des expérimentations. Toujours est-il qu'il n'est déjà pas très aisé de formuler correctement un sujet de recherche avec ses hypothèses. Il faut ensuite choisir des outils de travail et dresser un calendrier des activités.

Enfin, il faut faire sérieusement bouillonner la cervelle dans l'agencement des idées tout en veillant à tout un tas de minuscules petits détails et en évitant des couacs.

0.2. PROBLEMATIQUE

Durant tout notre parcours au sein du département d'informatique de gestion à l'ISP/BUKAVU, il est un fait que nous avons constaté : une difficulté réelle pour les étudiants en général à bien s'orienter dans le cadre de leurs recherches ; surtout quand il s'agit de la préparation d'un travail de fin de cycle.

D'abord, il y a l'angoisse liée à la recherche d'un sujet de recherche ; car, contrairement aux apparences, il n'est jamais aisé d'identifier clairement un problème susceptible de faire l'objet d'une recherche scientifique.

Ensuite, une fois le sujet formulé, la question de l'orientation des recherches se pose : quelles sont les sources et ressources à consulter en premier? Comment agencer les idées tourbillonnant dans la tête du chercheur? Comment faire ensuite pour mixer les idées du chercheur et celles tirées de différentes ressources consultées ?

En Informatique en général et en Informatique de gestion en particulier, il est souvent question d'identifier un problème, le modéliser et ensuite y pallier en proposant un outil informatique (solution informatique) pour corroborer ou non les hypothèses de départ.

En partant de toutes ces difficultés évidentes liées à l'orientation des étudiants en Informatique dans leurs recherches de fin de cycle particulièrement, nous nous sommes posé les questions suivantes :

- Quels sont les problèmes qui gangrènent les étudiants dans la rédaction de leurs TFC et Mémoires ?

- Serait-il possible de pallier aux problèmes de l'orientation des étudiants-chercheurs en Informatique dans leurs travaux de recherche ?

- Une solution purement informatique s'impose-t-elle ou faut-il aussi y adjoindre une solution adjuvante ?

- Y aurait-il moyen de concevoir et mettre en place une plate-forme web d'aide à l'orientation des étudiants en Informatique dans leurs recherches de fin de Cycle ?

0.3. HYPOTHESES

Dans un travail de recherche scientifique, le chercheur initialise toutes ses assertions en proposant des réponses « provisoires » au départ que les résultats des recherches vont valider ou infirmer. D'où, nous proposons les réponses provisoires ci-après :

· Les problèmes majeurs que rencontrent les étudiants résideraient plus dans l'orientation à prendre dans la recherche, la méthodologie à utiliserainsi que la rédaction ;

· Il serait possible de pallier le problème d'orientation des étudiants en Informatique dans leurs travaux de recherche ;

· Une solution purement informatique devrait suffire pour pallier cette difficulté ;

· Il pourrait être possible de concevoir et de déployer une plate-forme web d'aide à l'orientation des étudiants en Informatique dans leurs recherches de fin de cycle.

Seuls les résultats des recherches vérifieront ou pas la validité de ces allégations sommaires.

0.4. ETAT DE LA QUESTION

Le célèbre chimiste français Antoine DE LAVOISIER (1743-1794) est l'auteur de la citation suivante devenue très célèbre par la suite : « Rien ne se crée, rien ne se perd ; tout se transforme ». La citation est d'autant plus vraie en Informatique où on a l'impression, d'après une certaine opinion, que nous n'avons exploité que trop peu d'énormes potentialités de celle-ci ; mais d'une autre opinion, on a l'impression en même temps que tous les aspects de la discipline ont déjà été traités par quelqu'un, quelque part et que tout ce qu'il reste à faire, c'est d'adapter les résultats précédents au contexte de notre milieu, en les améliorant.

Sans nier la pertinence de la première opinion, la seconde nous parait toutefois plus à propos dans le cadre de ce travail. En fouillant, en cherchant beaucoup ; nous avons identifiés un certain nombre des travaux pouvant s'apparenter au notre, certes à des degrés différents :

Ø BARHEGINE MUDEKUZA Espoira, dans son mémoire intitulé : « Développement et mise en place d'une base de données WEB d'exposition et consultation des compétences » (2014-2015) constaté qu'il y avait des difficultés évidentes des experts à faire connaitre leur C.V. en dehors des périodes de recrutement. Le mémoire a été reçu au département d'IG à l'ISP/BUKAVU.

Il a proposé une application web pour aider les personnes avec des compétences à les exposer afin d'être facilement repérables par les recruteurs.

Ø Charly BALEKE LWABOSHI, dans son mémoire intitulé : « Elaboration et adaptation du modèle PMB à la gestion de la mini-bibliothèque du département d'informatique de gestion de l'ISP/BUKAVU. »(2008-2009) ; a clairement isolé le fait que la bibliothèque départementale était difficilement accessible et sa consultation problématique par les étudiants.

De ce fait, il a élaboré une application web basée sur le modèle PMB pour pallier ce problème. Le mémoire a été reçu au département d'IG/ISP-BUKAVU.

Ø Alexandre ROSATI, dans son TFE, intitulé : « Utilisation/exploitation des données ouvertes dans le domaine de l'accessibilité en Wallonie » (2014-2015), part de la problématique d'accès aux informations pour l'aide et l'accompagnement des personnes à mobilité réduite dans leurs déplacements et leur accès à différents endroits.

Ces informations proviennent surtout du milieu d'organismes privés et ne sont donc pas accessibles au grand public et de partout. L'usage du binôme Python/Django grâce au modèle MVT qu'il a fait pour son application nous a inspirés.

Le chercheur a donc mis en place une application qui permet d'avoir accès à ces données depuis n'importe quel endroit du monde. Le TFE a été reçu au Département d'informatique de Gestion à la haute-école Provinciale du Hainaut Condorcet en Belgique.

L'originalité de notre travail ressort en quelques lignes : notre travail compte s'argumenter autour de la problématique des recherches pour la réalisation des travaux de fin de cycle par les étudiants du département d'Informatique de gestion de l'ISP/BUKAVU en particulier et tous les étudiants en général. Ceci devra être concrétisé par une application web conçue grâce au langage Python par l'entremise du Framework Django via le modèle MVT.

0.4. OBJECTIFS

0.4.1. OBJECTIF GENERAL

Notre travail s'inscrit dans un cadre général de la résolution des problèmes de la vie de tous les jours par des applications informatiques et particulièrement, des applications web. Préfaçant le Livre (PORTENEUVE, 2006)de Christophe PORTENEUVE, Tristan NITOT-Président de Mozilla Europe- écrit :

« On pourrait croire que ce qui est important dans le titre, c'est `'Web 2.0 `'.Certes, c'est bien le cas. La participation grandissante des utilisateurs, qui est l'une des deux particularités du Web 2.0, est importante. Vitale, même. Paradoxalement, cette notion d'un Web où chacun pourrait à la fois lire et écrire, consommer et produire, est celle de son inventeur, Tim Berners-Lee, même si peu d'internautes ont réalisé cela. »

Tout le monde doit pouvoir à son niveau être capable de profiter les bienfaits du web.

0.4.2. OBJECTIFS SPECIFIQUES

Dans le cadre du présent travail, on se fixera comme objectifs spécifiques :

- Mettre en évidence la problématique de l'orientation des étudiants dans leurs travaux de recherche de fin de cycle.

- Proposer une solution web pour l'aide à la dite orientation pour les étudiant-chercheurs en Informatique et les autres.

0.5. CHOIX ET INTERET DU SUJET

Nous situons notre intérêt pour ce travail à deux niveaux :

- D'abord, comme étudiant finaliste en Informatique ; nous avons éténous-même confrontés à la problématique que nous traitons dans celui-ci.

- Ensuite et enfin, durant notre documentation et notre apprentissage dans le monde de la programmation, nous avons été attirés par le langage de programmation Python ainsi que son Framework pour le développement web Django.

0.6. DELIMITATION DU SUJET

Délimitation spatiale, chronologique et analytique du sujet

Ce travail a été réalisé dans le cadre de l'assistance aux étudiants finalistes en Informatique de Gestion du département d'IG de l'ISP/BUKAVU dans leurs recherches.

Il sera présenté au département d'IG de l'ISP/BUKAVU à l'issue de l'année académique 2018-2019. Il ne concerne que l'implémentation d'une plateforme web au service de la recherche des étudiants dudit département.

0.7. METHODES ET TECHNIQUES

0.7.1. METHODES

Pour réaliser un travail scientifique, il faut disposer de bonnes manières de procéder c'est-à-dire, des méthodes efficaces et utiles.

Dans le cadre du présent travail, un certain nombre des méthodes a été mis en oeuvre :

A/ La méthode analytique

En vue de la réalisation de notre travail, nous avons été amenés à faire une analyse approfondie sur la problématique qui nous a préoccupés. L'analyse est comme une torche allumée par le chercheur afin de visualiser la structure à problème.

B/ La méthode comparative

Elle est intervenue à chaque fois qu'il a été question d'opérer un choix, d'opter pour une solution plutôt que pour une autre ; de confronter les données issues de la recherche des idées reçues et des préjugés ou encore de choisir le type d'outils à utiliser.

C/ La méthode descriptive

Une de meilleures façons d'effectuer un travail scientifique consiste à décrire le milieu d'étude, les outils utilisés, la structure concernée, .... Tel a été l'apport de cette méthode à notre travail.

D/ La méthode historique

Elle nous a aidés à remonter dans le temps pour trouver l'origine des outils et comprendre l'évolution de ces derniers ou des structures et organisations créatrices.

E/Le processus unifié(UP) et particulièrement le 2TUP concrétisé par le langage UML

Il s'agit d'un processus de développement de logiciels orienté objets, basé sur le processus guidé par les cas d'utilisation, un processus itératif et incrémental, processus centré sur l'architecture, un processus orienté par la réduction des risques.

Ces principes sont à la base De l'UP décrit par les auteurs d'UML. Ce dernier est un langage de modélisation.

UP fait partie des méthodes informatiques dites « agiles » et non « rigides » comme MERISE.

F/ L'architecture MVC/MVT

Le MVC est une méthode de conception d'interface homme-machine très prisée surtout pour la programmation web.

L'architecture ou patron Modèle-Vue-Contrôleur est composée de trois entités distinctes, chacune ayant son propre rôle à remplir.

Le patron modèle-Vue-Template quant à lui, est une spécificité de Django. Nous y reviendrons avec force détail un peu plus loin.

0.7.3. TECHNIQUES

Ci-après sont reprises les différentes techniques utilisées pour la réalisation du présent travail :

1/ La navigation sur internet

Nul besoin d'une pléthore d'explications car aucun travail scientifique n'échappe à ces jours à cette source moderne de savoir que constitue le réseau des réseaux.

2/ La technique documentaire

Que ce soit pour sonder les travaux de recherches antérieurs que pour étayer les assertions avancées, les ouvrages et les documents disponibles en librairie nous ont été utiles.

3/ La technique d'observation libre

Les livres et ouvrages ne reflètent toujours pas toute la réalité, parfois on ne vous dit pas tout ou encore il arrive qu'on ne puisse pas tout saisir, ...mais jamais on ne peut tout camoufler.

Parfois, il suffit de rester calmer et d'observer : « Sachez écouter et observer, vous verrez alors que le silence produit souvent le même effet que la science.»(A. Einstein)

0.8. DIFFICULTES RENCONTREES

Comme nous l'avons soulignés plus haut, mener un travail scientifique revient à mobiliser des ressources multiples comme le cerveau, le sens, des moyens financiers intérieurs et extérieurs et aussi le concours d'autres personnes ressources. Autrement dit, c'est loin d'être une tâche facile.

On est ainsi sensiblement touché autant sur le plan affectif que sur celui psychologique.

Tout cela, ajouté parfois aux problèmes financiers et le souci du moindre détail, n'auront pas rendu la tâche facile.

Des difficultés liées à l'environnement social, notamment la crise qui a paralysée l'ISP/Bukavu et qui a causée l'interruption de toute activité pendant plus de deux mois.

0.9. SUBDIVISION DU TRAVAIL

Introduction et conclusion mise à part, le travail a quatre chapitres, qui sont respectivement :

- Le premier chapitre est une plongée dans notre milieu d'étude et a été intitulé « GENERALITES SUR LA RECHERCHE».

- Le deuxième chapitre est axé sur le processus unifié 2TUP avec la formalisation du système grâce au langage UML. Il a été intitulé « MODELISATION AVEC LE PROCESSUS UP ».

- Le troisième chapitre est une considération sur la programmation web avec Python et Django. Nous sommes revenus entre autre sur les architectures MVC et MVT. Il a été intitulé « EBAUCHE SUR LA PROGRAMMATION WEB AVEC PYTHON/DJANGO ».

- Le dernier chapitre a été intitulé « ESSAI DE MISE EN PLACE DU SYSTEME » et a porté sur la présentation de l'application web.

CHAPITRE PREMIER :GENERALITES SUR LA RECHERCHE

Introduction

Dans la partie qui va suivre, nous allons passer en revue la littérature sur la recherche scientifique. Il s'agira de définir les différents concepts, de comprendre le processus de recherche et les termes qui y sont liés.

Nous allons essayer de distinguer tous ces concepts clés dans l'ordre et dégager la solution privilégiée.

I.I. DEFINITION DES CONCEPTS

1. LA SCIENCE

De tous les sens de l'homme, la vue est le plus remarquable. Quand l'homme ouvre les yeux pour la première fois, au matin de la création, à en croire la Sainte Bible, il contemple la nature et nomme tout ce qui passe devant ses yeux émerveilleux(LA BIBLE, Genèse 2 :7-23).

Par le canal de ses yeux, la perception de la nature et de l'environnement émerveille le corps entier mais crée en même temps de la curiosité, le besoin de connaître le pourquoi et le comment des choses. L'homme comprend très vite, grâce à l'intelligence dont il est pourvu, que derrière toute cette façade mirobolante se cache une structure beaucoup plus complexe, une organisation harmonieuse qu'il ne peut percevoir directement. La première connaissance qu'a l'être humain, c'est donc la connaissance intuitive par les sens. Celle-ci est innée.

L'homme ignorant dans un premier temps comment procéder, se met d'abord à la méthode par essai et l'apprentissage par l'expérience. Cela conduit parfois à des drames : avant de connaitre l'usage du feu par exemple, combien de fois l'homme s'est-il brûlé ? bien plus, la connaissance issue de l'expérience ne se limite la plupart du temps qu'à la description du phénomène et non à une véritable explication de celui-ci.

C'est ainsi que l'homme commence à faire des efforts intellectuels pour répertorier et inventorier les connaissances à sa disposition et qui avaient déjà fait leur preuve. Nous sommes à l'antiquité et le premier peuple à véritablement faire la science pour la première fois (THUND'OLELA, 2015-2016), c'est le peuple égyptien. Ce peuple dont la brillante civilisation a influencer la plupart des civilisations postérieures si pas toutes, aura développé jusqu'à un certain niveau les branches comme les Mathématiques, la Médecine, la Géographie et l'Astronomie.

La curiosité et le raisonnement humains, poussent celui-ci à creuser d'abord superficiellement, ensuite ; de plus en plus profondément les faits, à la recherche d'explications et des réponses à ses questions. C'est la naissance de la science. Celle-ci a pour principale activité : la recherche ou l'étude approfondie. Il ne s'agit pas d'une démarche aventureuse menée à l'aveuglette, ni d'une simple fouille dans le tas des faits et des phénomènes de la nature,...mais plutôt une procédure, un processus méthodique.

L'être humain développe des activités inhérentes à trois domaines d'activités (Tshund'olela) :

- Le domaine cognitif : relatif à tout ce qui est connaissance, savoir. On parle des activités cognitives.

- Le domaine psychomoteur ou de l'action : relatif au savoir-faire. On parle des activités psychomotrices.

- Le domaine socio-affectif ou affectif : relatif au savoir-être. On parle des activités affectives ou socio-affectives.

La science est du domaine cognitif. Ainsi, les activités scientifiques, notamment la recherche ; font partie des activités cognitives.

Notons cependant, que tous les trois domaines cités précédemment sont liés et s'influencent mutuellement.

1.1. Définition :

Etymologiquement, le terme science provient du latin scientia «  connaissance  », de scire «  savoir  ».

Ensemble de connaissances ayant un objet déterminé et reconnu, et une méthode propre; domaine du savoir (opposé à art.).C'est l'ensemble de connaissances, d'études d'une valeur universelle, caractérisées par un objet et une méthode déterminés, et fondées sur des relations objectives vérifiables(Le Grand Robert de la langue française 2.0, 2005).

1.2. Fonction :

La science est une activité cognitive de l'être humain qui vise la connaissance. Connaitre c'est :

Ø Décrire, c'est-à-dire présenter fidèlement les éléments constitutifs d'un objet, mais aussi les caractères de l'objet ou ses éléments.

Ø Expliquer, c'est-à-dire déterminer ce qui est à la base. Eclairer le déterminant (facteur) et aussi le conditionnant (ce qui influence) et enfin, le déterminé.

Ø Prédire, c'est-à-dire dire à l'avance le caractèredéterminant et le conditionnant.

Ø Prescrire, c'est-à-dire recommander, dire à l'avance ce qui pourrait arriver.

A ce niveau, il ne faut pas confondre la prédiction (science) et la prophétie (religion). La première se base sur la prévisibilité des évènements (probabilité), la vérifiabilité (démarche) et fait des recommandations (conclusion) alors que la seconde est fondée sur la certitude absolue (la foi), la non-vérifiabilité et l'espérance (puisque la foi est une ferme assurance des choses qu'on ne voit pas).

1.3. Mission :

Elle vise six activités principales :

§ Le modèle descriptif (description),

§ Le modèle explicatif (explication),

§ Le modèle prédictif (prédiction),

§ Le modèle prescriptif (prescription),

§ Le modèle interrogatif (interrogation),

§ Le modèle formulatif (formulation).

Elle recherche ce qui est vrai et efficace, en partant de ce qui est faux et inefficace. La connaissance ordinaire part d'abord de ce qui est utile dans l'immédiat.

La science classique n'avait que deux critères : la vérité et la fausseté.

La science contemporaine a ajouté à la vérité et la fausseté, l'efficacité et l'inefficacité.

La science se fonde sur l'étude d'autant qu'il n'y a pas véritablement de connaissance en science sans étude. Celle-ci en effet, est plus sûre et plus efficace par rapport aux autres moyens existants comme la révélation, le hasard ou l'expérience. La connaissance n'est pas seulement nécessaire mais est absolument indispensable si pas vitale parfois.

Notons enfin, qu'on peut distinguer deux sortes des connaissances :

La connaissance rationnelle, basée sur la raison et la réflexion. Elle est dite indirecte car elle passe par la raison et non par le sens.

La connaissance irrationnelle, connaissance directe passant par les sens. Elle est sentimentale.

1.4. Champ d'application ou matière :

La science a pour objet d'étude la réalité. Il s'agit de la réalité sociale ou naturelle. Par conséquent, tout ce qui est irréel ne fait pas partie de la science.

Nous ne parlons pas à ce niveau de la réalité brute mais de ce qu'on appelle `phénomène', c'est l'image que se fait notre esprit de la réalité sociale ou naturelle, un fait que va vérifier l'expérimentation.

Pour être un objet d'étude scientifique, un phénomène doit répondre à un certain nombre des critères :

La pertinence scientifique : il doit être en mesure d'apporter quelque chose de nouveau en matière de connaissance. On peut trouver une solution avec des moyens disponibles.

Le phénomène doit être problématisable : on doit pouvoir être en mesure de poser un problème précis sur le phénomène.

1.5. Objectifs :

La science vise la production des connaissances. La connaissance est le résultat de l'étude scientifique. On entend donc que les connaissances soient acquises, produites et communiquées ; elles doivent constituées un tout cohérent.

Les connaissances scientifiques sont des connaissances rationnelles (fruits de la raison), des connaissances sélectionnées dans le tas, des connaissances méthodiques (obtenues par des méthodes purement scientifiques), des connaissances critiques (dont on a et on peut vérifier la véracité par des instruments scientifiques). Ces connaissances sont contestables, réfutables, objectives, impartiales (en connaissance des causes), analytiques (descriptives et explicatives), intelligibles (compréhensibles), perfectibles (susceptible d'être améliorer ou perfectionner car, en science rien n'est parfait), universelles, renouvelables, communicables, vraies (exactes) et efficaces.

On peut enfin dire que les connaissances que produit la science, sont synthétiques c'est-à-dire réductibles et sont des réponses aux questions posées. Etant donné qu'analyser ne signifie pas détailleret synthétiser ne signifie pas non plus résumer. Résumer, dans son essence revient à conclure.

1.6. Méthode :

La science recours à une manière méthodique. La méthode est une voie à suivre, une façon d'organiser, une manière d'agir, une façon de procéder afin d'atteindre un objectif. On peut résumer cette définition en trois points :

1/ Une manière de procéder

2/ Des étapes successives

3/ Des points de vue à considérer

La méthode est définie en fonction des approches ou points de vue. Elle est descriptive et communicable de façon systématique. Ce sont donc des lois, des règles et des principes qui déterminent la manière de procéder.

Les lois sont des normes à respecter, elles sont de ce fait générales. Par exemple, dire que l'informatique c'est une science est une loi car ceci est un fait bien établi et connu.

Les règlessont aussi des normes mais sont beaucoup plus particulières que les lois. Par exemple : l'informatique doit respecter les exigences scientifiques. Renvoi à une particularité et non une règle générale à toutes les branches.

Les principes sont des vérités générales évidentes, vérifiées par l'expérience. Ce sont en fait des formules généralement courtes. Par exemple : l'informatique doit procéder par des méthodes scientifiques.

Donc, par la méthode, on est amenés à trouver :

- La manière d'interroger

- La manière de décrire

- La manière d'expliquer

- La manière de prédire

- La manière de formuler

1.7. Nature :

La science est une activité scientifique différente des activités ordinaires (expérience, tâtonnement).

1.8. Utilité :

La science est un instrument de compréhension du monde, mais surtout, il s'agit du moyen le plus sûr, le plus rapide, le moins risqué, le plus efficace pour l'obtention des résultats.

L'esprit scientifique est un ensemble des caractères fondé sur les caractères de la science. Il est caractérisé par la curiosité scientifique.

1.9. Classification :

Il existe plusieurs classifications des sciences. Sans pour autant entrer dans les détails, ni être exhaustifs ; nous revenons sur les principales (TSHUND'OLELA, Op.cit.):

1.9.1. PREMIERE CATEGORISATION

A ce niveau, on distingue les sciences dites empiriques de celles dites formelles.

Les sciences empiriques sont des sciences des phénomènes concrets, sensibles ; ceux qui concernent la réalité qu'on peut saisir par les sens. Exemple : la sociologie.

Les sciences formelles (abstraites) sont des sciences des phénomènes abstraits. Ex : les mathématiques.

Il faut noter cependant qu'on préfère parler des sciences empiri-formelles et des sciences formelo-empiriques étant donné que même si chaque science ne privilégie qu'une dimension à la fois, elle n'exclut pas pour autant l'autre.

1.9.2. DEUXIEME CATEGORISATION

Elle distingue de son côté :

Les sciences positives : sciences des faits concrets. Par exemple : la Chimie.

Les sciences normatives : sciences des faits abstraits. Par exemple : l'informatique.

1.9.3. TROISIEME CATEGORISATION

Elle se base sur l'observation et l'expérimentation et distingue :

Les sciences qui se fondent sur des faits concrets établis grâce à l'observation. C'est l'examen fait sur un objet dans le contexte de son milieu.

Les sciences se fondant sur l'examen fait sur un objet sortis de son milieu naturel.

1.9.4. QUATRIEME CATEGORISATION

On distingue :

Les sciences sectorielles sont celles qui développent une seule dimension des phénomènes. Par exemple : la sociologie ou encore l'économie.

Les sciences multisectorielles qui s'étendent sur plusieurs dimensions des phénomènes. On peut citer comme exemple l'informatique, les mathématiques, etc.

1.9.5. CINQUIEME CATEGORISATION

C'est la classification classique et est de loin la plus répandue. Elle distingue :

Les sciences appliquées : comme nous l'avons déjà dit, elles visent à appliquer les connaissances pour résoudre des problèmes pratiques. Par exemple les biotechnologies.

Les sciences fondamentales : elles visent l'acquisition des connaissances théoriques. On parle aussi parfois des sciences pures ou dures. On peut donner comme exemple la topologie générale en mathématique.

1.9.6. SIXIEME CATEGORISATION

Elle répertorie aussi deux catégories :

Les sciences monothéiques : elles cherchent à connaitre les lois, les normes, les règles. Elles sont plus prescriptives.

Les sciences idiographiques : elles cherchent à connaitre les particularités, elles sont moins prédictives et plus efficaces.

On retiendra que pratiquement toutes ces classifications soulèvent des points qui s'avèrent communs partout.

2. LA RECHERCHE

Comme on peut le constater, les activités autour de la science sont sérieusement encadrées et bien ordonnées : « Le travail de recherche est la construction d'un `objet scientifique'. Il permet à l'auteur d'explorer un phénomène, de résoudre un problème, de questionner ou réfuter des résultats fournis dans des travaux antérieurs ou une thèse, d'expérimenter un nouveau procédé, d'une nouvelle solution, d'une nouvelle théorie ; d'application à une pratique, à un phénomène, de décrire un phénomène, d'expliquer un phénomène ou une synthèse de deux ou plusieurs de ses objets. (...)» (Etudier.com, 2018).

Ainsi, l'homme a commencé à comprendre de plus en plus correctement la nature qui l'entoure, le mécanisme de fonctionnement des organismes vivants, les lois qui régissent la nature ou le cosmos,... la recherche a ouvert la porte à la logique et à la rationalité : les choses visibles et invisibles, peuvent être étudiées et expliquées, en utilisant des méthodes ou des procédés concrets. Il est possible de déduire et d'inférer les résultats des recherches passées pour prédire avec un certain degré de confiance, les phénomènes à venir.

2.1. Définition :

Le terme « Recherche » vient du verbe « Rechercher ». Celui-ci est constitué de deux concepts : re-chercher. Ainsi, rechercher consiste à chercher une nouvelle fois, chercher encore pour connaitre plus et mieux.

Selon le dictionnaire Le Grand Robert de la langue française, la recherche est un nom féminin et signifie l'action de chercher, de rechercher, un effort pour trouver quelque chose, un effort de l'esprit pour trouver (une connaissance, la vérité...).

2.2. Types de recherches

Selon De KETELE et ROGIERS(1996) cité par Schwarz COULANGE MERONE (MERONE, 2008), il existe sept types des recherches qui sont :

1. La recherche scientifique : basée sur une démarche inductivo-hypothético-déductive ;

2. La recherche technologique : construisant des outils pour le praticien et orientée vers la prise des décisions ;

3. La recherche évaluative : avec une prévention prévisionnelle et prospective ;

4. La recherche-action : examinant une situation du point de vue des participants ;

5. La recherche exploratoire : phase heuristique permettant de générer des hypothèses ;

6. La recherche descriptive : lorsque la description et la classification sont un préalable ;

7. La recherche spéculative : axée sur la fonction prospective.

Sans entrer dans les détails, nous ne nous focaliseront que sur la premièrecatégorie des recherches dans le cadre de ce travail de mémoire.

3. LA RECHERCHE SCIENTIFIQUE

3.1. Définition :

Toujours selon le site étudier.com cité plus haut, on entend par « recherche scientifique », un processus dynamique ou une démarche rationnelle qui permet d'examiner des phénomènes, des problèmes à résoudre et d'obtenir des réponses précises à partir d'investigations.

Toujours est-il que, selon le Professeur Tshund'olela ; toute recherche n'est pas scientifique. La connaissance scientifique a pour but de trouver ce qui est vrai et efficace partant de ce qui est faux et inefficace pour arriver à la résolution d'un problème en s'appuyant sur une méthode.

La recherche scientifique comme activité centrale de la science, découle de la formalisation des méthodes, techniques et procédés de la recherche classique. Tout ceci dans un souci de normalisation de différents processus inclus dans la recherche. Il s'agit d'universaliser la pratique de la recherche pour garantir la véracité et surtout, la vérifiabilité des vérités scientifiques par les pairs.

Il s'agit aussi d'isoler et de limiter au maximum les risques inhérents à la mauvaise foi de certains, auxerreurs somme toutes humaines ou les conclusions hâtives. Sachant que la généralisation systématique des faits scientifiquement prouvés dans un milieu peut conduire à une catastrophique erreur d'appréciation, les milieux étant différents les uns des autres.

Sachant que l'erreur est inévitable et normale en science, il faut toutefois tout faire pour la réduire au maximum. C'est la cause de l'humilité scientifique, on ne doit pas se battre pour la science ni chercher à imposer son point de vue ou les résultats issus de ses propres recherches à d'autres. Il ne faut pas non plus prétendre avoir trouvé la panacée à tous les problèmes du monde.

La recherche scientifique ne s'arrête pas au niveau de la description. Bien plus, elle cherche des explications et des explications réellement rationnelles. Elle va encore plus loin en confrontant les préventions et les présomptions à l'épreuve des faits. Ainsi, la conclusion se déduit d'elle-même en confirmant ou en infirmant les présomptions.

La recherche scientifique procède par expérimentation pour reproduire dans un milieu simplifié, le comportement observé dans le monde réel. En manipulant à sa guise les différentsparamètres ou facteurs, le chercheur arrive à expliquer aisément des phénomènes mieux que dans le monde réel.

Grâce à la recherche scientifique, on arrive aussi à mettre en évidence des phénomènes nouveaux, non-perceptibles dans le monde réel car trop complexes en l'état ; mais plus sensibles à une plus courte échelle (comme le laboratoire).

La recherche scientifique est le poumon de la science telle qu'on la connait aujourd'hui. La quantité énorme des connaissances à notre disposition aujourd'hui, est due quasi-exclusivement à la recherche scientifique menée depuis des millénaires par d'illustres scientifiques et le travail continue. Que ce soit dans les livres ou ouvrages, sur les sites archéologiques, au sein des laboratoires ou dans des centres de recherche ; la recherche scientifique existe et continuera à exister tant que l'homme existera à la surface de la terre.

Car, on se rend compte qu'on ne connait pas aujourd'hui « un centime » des secrets de l'univers. Cela ressort clairement au travers de ces quelques lignes :

3.2. Fonction de la recherche scientifique

La recherche scientifique cherche à connaitre la vérité et l'efficacité. Elle cherche à étudier les objets pour la résolution des problèmes grâce à une étude approfondie.

3.3. Champ d'application de la recherche scientifique

Toujours selon le Professeur Tshund'olela, l'objet de la recherche scientifique est la connaissance scientifique des phénomènes.

Un phénomène est différent de la réalité brute qui n'intéresse pas la science. Un phénomène est une réalité telle que la conçoit l'esprit humain. Bien sûr comme nous l'avons soulignés plus haut, n'entrent pas dans les phénomènes considérés comme tels par la science ; les phénomènes mystiques, surnaturels, etc.

3.4. Objectif de la recherche scientifique

On entend de la recherche scientifique des explications concrètes, vraies et efficaces. Les résultats de la recherche scientifique doivent être de nouvelles connaissances susceptibles d'être communiquées, publiés ou défendues.

LA RESOLUTION D'UN PROBLEME SCIENTIFIQUE

La finalité attendue d'un travail de recherche scientifique c'est la résolution d'un problème scientifique. Nous parlons donc ici, d'une activité intellectuelle dans laquelle :

· Un problème d'étude scientifique précis à résoudre est posé. Comme nous l'avons déjà dit, tout problème n'est pas forcémentsusceptible de faire l'objet d'une étude scientifique. Par exemple, un problème portant sur le crédit à apporter à une prophétie, n'est pas du ressort de la science.

· On apporte et formule une solution scientifique en recourant à une méthode (scientifique) déterminée.

Par conséquent, trois éléments doivent être réunis pour parler d'une résolution scientifique d'un problème :

- L'Existence d'un problème à résoudre.

- La Résolution (scientifique) du problème.

- L'existence d'une méthode de résolution.

Il y a en plus une condition préalable (Tshund'Olela, 2016) : il faut qu'au moins un de ces trois éléments soit nouveau.

Tout naturellement, la catégorie des problèmes la plus complexe est celle dans laquelle, les trois éléments sont nouveaux ou inconnus jusque-là. Le chercheur aura alors un vrai casse-tête pour en venir à bout.

3.5. Subdivision de la recherche scientifique

D'après les différentescaractéristiques qu'on peut distinguer, il y a moyen de subdiviser ou classifier les types de recherches scientifiques. Notons au passage que plusieurs classifications ont été proposées par les auteurs et les spécialistes. Après avoir eu une vision d'ensemble sur la plupartdes classifications proposées, des éléments importants reviennent souvent et à quelques exceptions près ; on peut avoir une classification type.

De notre côté, nous avons préférés retenir la classification proposée par l'excellent site(etudier.com, 2018) etudier.com qui nous a beaucoup aidé au cours de nos recherches. Evidemment, cette classification n'a pas la prétention d'être la référence mais est représentative de la plupart des tendances.

Pour identifier une personne, des indices telles que le nom, l'âge, le sexe ou encore l'état civilsont autant des critères particuliers. De même, selon leur nature, on distingue plusieurs types de recherches scientifiques :

1° LA RECHERCHE FONDAMENTALE

Elle vise l'acquisition d'une meilleure compréhension d'un phénomène afin de faire avancer les connaissances sur le réel, sans se préoccuper des applications pratiques à court terme.Elle est de l'apanage des théoriciens et des « puristes ».

Comme nous l'avons déjà dit un peu plus haut, l'objectif de ce type de recherche scientifique est de traiter des notions théoriques et de faire progresser le savoir scientifique. Elle se fait généralement dans des espaces consacrés spécifiquement à cette fin comme les laboratoires.

2° LA RECHERCHE APPLIQUEE

C'est l'opposé de la première. Elle est d'abord centrée sur des problèmes présentant un intérêt pratique immédiat. Elle vise à trouver une application pratique aux connaissances renouvellement acquises et regroupe les travaux de recherche scientifique entreprises afin de résoudre les problèmes scientifiques d'usage pratique.

Cette catégorie de recherche scientifique est du ressort des ingénieurs, des techniciens, bref des spécialistes. Elle permet de remédier à un problème de la vie de tous les jours en adaptant les théories à la pratique. Parfois, cela se fait en violant certaines règles théoriques, ce qui ne va pas sans grincements de dents de la part des puristes.

3° LA RECHERCHE QUALITATIVE

Il s'agit d'un processus de collecte de données à caractère non-mesurable. Elle décrit une attitude, privilégie les faits qui particularisent un objet d'observation. Elle suppose que l'on ne s'interroge que sur un seul objet, qu'on ne s'intéresse qu'à un nombre limité d'objet ou à un collectif.

Ce type de recherche scientifique, ainsi que celui qui le suit dans cette liste, est très prisé par les statisticiens.

4° LA RECHERCHE QUANTITATIVE

C'est un processus de collecte des données à caractère mesurable et qui permettent des opérations de calculs. Elle s'intéresse aux aspects communs et récurrents des phénomènes ; aussi, elle vise à l'analyse statistique des données collectées (tableau et graphique) et à l'analyse descriptive ou mathématique (données chiffrées).

5° LA RECHERCHE SYNCHRONIQUE

Il s'agit d'une étude faisant abstraction du temps. Elle vise à étudier un objet à un moment unique. Par exemple, on étudie le rendement d'une entreprise durant l'année 2018.

6° LA RECHERCHE DIACHRONIQUE

C'est le contraire de son prédécesseur, elle est une recherche menée en tenant compte ou en se focalisant sur une période de temps. Par exemple : On veut étudier l'évolution du rendement de l'entreprise X durant la période comprise entre 2010 et 2018. On devra alors comparer dans le temps, le rendement obtenu pour chaque année par exemple.

7° LA RECHERCHE REGIONALE, NATIONALE, MONDIALE

Elle est une étude dont le champ s'étend sur une région, une nation ou le globe.

8° LA RECHERCHE COMPARATIVE

C'est une étude qui se fait dans une logique de comparaison des données et ou des faits en cherchant à étudier un aspect des choses.

9° LA RECHERCHE SUR TERRAIN

La recherche sur terrain est une démarche qui cherche à observer le phénomène étudié dans le milieu où celui-ci se produit. Le comportement produit dans son milieu par un individu est différent de celui qu'il produira dans un milieu qui ne lui est pas familier.

10° LA RECHERCHE BIBLIOTHEQUE

Elle se fait en se focalisant sur les ouvrages conservés en bibliothèque ou dans des librairies.

11° LA RECHERCHE EN LABORATOIRE

Ce type des recherches se fait en sortant un objet de son milieu d'évolution habituelle et le placer dans un milieu qui, tout en n'étant pas identique à elle, répondra à un certain nombre de critères et visera à obtenir un comportement quelconque. Elle sert à l'expérimentation.

12° LA RECHERCHE GLOBALE

Elle est une étude qui se fait autour d'un thème, un phénomène ou un sujet et qu'on veut étudier dans sa globalité ou son intégralité.

13° LA RECHERCHE ECHANTILLONNEE

Ici, comme il est difficile d'étudier une population dans son intégralité, on préfère travailler avec de petits échantillons représentatifs, c'est-à-dire ; de petits groupes sélectionnés de telle sorte que les comportements ou les principales caractéristiques de la population se retrouvent dans chaque groupe.

14° LA RECHERCHE MONOGRAPHIQUE

Elle est une étude approfondie (complète et détaillée) sur un sujet précis relativement restreint.

15° LA RECHERCHE DESCRIPTIVE

Comme son nom l'indique, c'est une étude centrée sur la description des faits. Elle vise l'énumération des caractères de quelque chose. La description consiste à déterminer la nature et les caractéristiques des phénomènes et parfois à établir les associations entre eux.

16° LA RECHERCHE CLASSIFICATRICE

Elle est une étude approfondie qui vise la distribution par classes ou catégories des objets ou individus hiérarchiquement selon une logique ou des critères bien déterminés. La classification consiste à catégoriser, regrouper, mettre en ordre pour permettre des comparaisons ou des rapprochements. Les faits observés, étudiés, sont ainsi organisés, structurés, regroupés sous des rubriques, sous des catégories pour être mieux compris.

17° LA RECHERCHE EXPLICATIVE

C'est une étude détaillée visant l'éclaircissement du sens de quelque chose. Elle cherche tout ce qui rend compte d'un fait, un phénomène.

Expliquer, c'est répondre à la question « POURQUOI? ». C'est faire voir comment un phénomène est né et comment il est ce qu'il est. L'explication(ASSIE, 2018) consiste à clarifier les relationsentre des phénomènes et à déterminer pourquoi ou dans quelles conditions tels phénomènes ou tels événements se produisent.

18° LA RECHERCHE COMPREHENSIVE

Elle vise à aboutir à ce que l'esprit humain puisse avoir la facilité de saisir quelque chose qui englobe d'autres idées ou objets.

19° LA RECHERCHE DISCIPLINAIRE

La recherche s'inscrit nettement et quasi-exclusivement dans une discipline bien déterminée. Cela on s'en rend compte au travers de l'objet et la méthode.

20° LA RECHERCHE INTERDISCIPLINAIRE

Elle s'inscrit dans le cadre d'une discipline mais elle ne s'enferme pas sur le plan méthodique dans une discipline, contrairement à la recherche disciplinaire.

Pour cela il faut :

- L'ouverture systématique et consciente à la méthodologie d'une autre discipline.

- L'ouverture doit toucher le niveau méthodologique.

- L'ouverture doit être repensée selon la discipline du départ. Car il ne faut pas dénaturer la discipline de départ.

21° LA RECHERCHE PLURIDISCIPLINAIRE

On peut l'aborder dans le sens de la recherche effectuée dans plusieurs disciplines.

22° LA RECHERCHE TRANS-DISCIPLINAIRE

Elle dépasse le cadre disciplinaire, de sorte qu'on a du mal à savoir dans quelle discipline la placer.

Il existe également, une fonction au sein des entreprises contemporaines appelée « fonction recherche et développement » ou tout simplement « fonction recherche-développement », connue sous sa célèbre abréviation « R&D ». C'est l'ensemble des processus qui, à partir de la recherche fondamentale ou d'une invention, permettent sa faisabilité industrielle. Schumpeter(dynamique-mag, 2019) en est le précurseur avec ses cinq types d'innovations(1912).

Elle est généralement constituée de trois phases consécutives(e-marketing, 2019) : recherche fondamentale, recherche appliquée et développement.

La dernière phase est suivie des tests et éventuellement du lancement des produits sur le marché. C'est ce qu'on appelle l'innovation ou la mise en application des techniques et découvertes de la recherche appliquée adaptées aux objectifs commerciaux de l'entreprise.

La R&D à elle seule pourrait faire objet d'un ouvrage entier tellement c'est un sujet vaste.

3.6. Etapes de la recherche scientifique

La recherche scientifique étant par essence une démarche ordonnée et bien organisée pour trouver la vérité, procède par une méthode rigoureuse et reconnue afin de parvenir à ses fins. La méthode à utiliser, doit être une méthode scientifique afin de valider les résultats obtenus par le chercheur.

Le Professeur Tshund'olela précise qu'une méthode est dite scientifique lorsqu'elle possède :

- Un objet scientifique,

- Une fonction scientifique,

- Une approche scientifique.

Nous précisons qu'une méthode est selon le dictionnaire Encarta Collection 2009 :

Un chemin qu'emprunte l'esprit pour atteindre la connaissance ou pour démontrer une vérité (dans les sciences)

Qui dit méthode, fait allusion aux étapes conduisant à la résolution d'un problème. La méthode scientifique fait quant à elle allusion aux approches (méthodiques, rationnelles, objectives, ...).

Voyons à présent, quelles sont les étapes d'une recherche scientifique. Dans son excellent cours d'I.R.S. dispensé en deuxième année de Graduat à l'I.S.P/Bukavu pendant l'année académique 2015-2016, le P.O. Tshund'olela de l'UNIKIN distingue cinq (5) étapes:

- La construction de l'objet d'étude,

- La construction de la stratégie,

- L'heuristique,

- L'élaboration des résultats partiels et enfin ;

- La synthèse et la formulation des résultats.

ETAPE 1 : LA POSTULATION OU LA CONSTRUCTION DE L'OBJET D'ETUDE SCIENTIFIQUE

Lorsqu'il entreprend un projet de recherche, le chercheur n'a que des idées vagues sur le champ de recherche qu'il compte embrasser. C'est pourquoi, il est pertinent qu'il s'asseye et qu'il réfléchisse sérieusement à ce qu'il veut faire.

1°/ Choisir le sujet (thème) d'étude :Bien évidemment, le chercheur devra avoir au départ une idée sur ce à quoi il veut arriver. Tout commence par le choix du sujet. Celui-ci devra remplir les conditions suivantes :

- Il doit être du domaine du chercheur et correspondre aux compétences de celui-ci.

- Il doit être pertinent. On ne mène pas un travail de recherche pour le simple plaisir de le mener, il doit y avoir une pertinence aussi bien scientifique que sociale.

La pertinence dont il est question ici, c'est par rapport aux moyens disponibles pour le chercheur et pas forcément par rapport aux moyens existants.

- Il doit être précis. Un sujet est précis quand il est bien défini et bien délimité, sans équivoque.

2°/ Explorer le sujet : Ceci se fait soit par :

- La consultationdes personnes ressources ou compétentes (des gens ayant des connaissances sur le sujet ou ceux ayant fait des études dans le domaine avant).

- La consultation documentaire, incontournable sur le plan scientifique.

Soit, en combinant les deux.

3°/ L'état de la question : Le chercheur doit synthétiser systématiquement ce qui a déjà été fait avant par d'autres chercheurs et ce qui reste à faire.

4°/ Préciser le sujet (Définir et délimiter): Pour délimiter le sujet, il faut :

- Il y a des critères spatiaux : le milieu concerné par le travail des recherches.

- Des critères chronologiques et temporaires : la délimitation dans le temps.

- Des critères analytiques ou domaniales : l'aspect dont traite le travail de recherche.

Tout cela dans le but de bien appréhender l'objet de recherche dans son ensemble.

5°/ Choisir le problème à poser sur l'objet : Le problème est choisi en fonction des intérêts personnels, scientifiques et sociétaux.

Intérêt scientifique car il faut fournir beaucoup d'effort intellectuel.

Intérêt personnel car suite à l'effort considérable à fournir, aux multiples corrections à apporter ou alors aux nombreux culs-de-sac auxquels on aboutit parfois, on peut être tenté de renoncer. C'est pourquoi, il faut aimer ce qu'on fait.

Enfin, intérêt sociétal car ce qu'on doit produire comme résultat des recherches devra profiter à toute la société.

Le problème doit être opérationnalisé c'est-à-dire préciser les objectifs à atteindre, poser le problème sous-forme des questions.

La problématique est un problème posé de façon à faire ressortir l'objectif et est posé sous-forme des questions. En d'autres termes, la problématique est un problème objectivé, opérationnalisé, intellectualisé et bien cerné.

Par exemple, on peut se poser la question de savoir quelles sont les causes financières de telle ou telle situation.

Ce n'est qu'après cette première étape qu'on peut véritablement dire qu'on a un objet d'étude scientifique.

ETAPE 2 : LA CONSTRUCTION DE LA STRATEGIE(STRATEGIFICATION)

Cette étape est aussi appelée étape de la définition de la stratégie de recherche ou encore l'étape de la construction des modèles.

C'est une étape qui n'existe pas dans la démarche de la vie de tous les jours. Elle permet de mettre au point une stratégie pour le règlement d'un problème. Tout comme la première étape, elle est complexe. Elle se construit d'après le plan suivant :

1°/ Le choix de l'hypothèse : C'est une solution provisoire dont la véracité devra êtreprouvée au cours de la recherche.

Qualités d'une bonne hypothèse 

Une bonne hypothèse doit être :

· Pertinente : c'est-à-dire qu'il faut qu'elle soit plausible (vraisemblable) et vérifiable scientifiquement avec les moyens disponibles, une fois de plus.

· Avoir une méthodologie : en d'autres termes, il s'agit de définir la méthodologie.

La méthodologie est l'ensemble des méthodes, techniques et des approches appropriées à mettre en oeuvre à un ensemble d'activités données.

La technique est l'ensemble d'opérations de collecte et de production des matériaux.

La méthode implique quant à elle la manière d'opérer. Elle dispose aussi d'une batterie d'opérations pour sa réalisation. Contrairement à la technique, la méthode intervient à toutes les étapes de la recherche scientifique.

2°/ Le choix de la méthodologie : une méthodologie doit être pertinente par rapport à la problématique et à l'état de la question, mais aussi par rapport à l'hypothèse.

3°/ La détermination (choix) des moyens documentaires et autres essentiels : un large éventail de documents s'offre au chercheur. Il doit effectuer un tri sélectif et explorer ceux qui l'intéressent pour son travail.

Il n'est toujours pas évident de trouver exactement ce qu'il faut avec la surabondance des sources et d'informations actuellement disponibles. Pour cela, on peut se faire aider par quelqu'un qui s'y connait et avoir ainsi des idées claires.

4°/ Le plan de travail : c'est lorsqu'on reprend dans l'ordre les différentes activités et le timing de ces activités aussi bien intellectuelles, techniques que matérielles.

A signaler que le plan de travail est différent du plan de rapport, ce dernier étant en fait le plan de rédaction du travail.

Les deux premières étapes, constituent la partie la plus difficile d'une recherche scientifique. Une fois achevées, l'on peut se féliciter d'avoir déjà fait la moitié du travail.

ETAPE 3 : L'HEURISTIQUE(AU SENS LARGE DU MOT)

Le dictionnaire Microsoft Encarta déjà cité plus haut dans ce travail, définit l'heuristique (nom féminin) comme « sciences des règles de la recherche scientifique et de la découverte». Le Grand Robert de la langue française quant à lui, définit le nom féminin heuristique comme : « Partie de la science qui a pour objet la découverte des faits ». En Informatique, on oppose l'heuristique à l'algorithmique. Le premier permet la résolution d'un problème petit à petit par évaluations successives et hypothèses provisoires, en tenant compte de ce que l'on a fait précédemment pour tendre vers la solution du problème. Le second est une succession d'étapes ou procédures, conduisant à la résolution d'un problème. A noter que, selon le dictionnaire du Jargon informatique, l'heuristique ne garantit pas du tout qu'on arrive à une solution quelconque en un temps fini alors que l'algorithme est une séquence d'opérations visant à la résolution d'un problème en un temps fini (on y mentionne une condition d'arrêt, un point d'arrêt de l'algorithme). L'heuristique est très utilisée en Intelligence artificielle et dans les antivirus.

On entend ici par « heuristique », la collecte, la production et le traitement des matériaux. C'est l'étape de la production des matériaux de recherche. En fonction de l'hypothèse, on va chercher les matériaux qu'il faut rassembler, produire et traiter.

Toutefois, les matières qui infirment l'hypothèse doivent toutes aussi être collectées, car on ne sait pas si l'hypothèse sera confirmée ou non ; mais aussi l'hypothèse peut être élargie. Les matériaux qui rétrécissent l'hypothèse ou qui limitent l'hypothèse seront également collectés de la même façon. En bref, toutes les matières en rapport avec la problématique trouvées, quelle que soit la source ;seront collectées et incluses dans les données brutes. Ce n'est qu'après traitement qu'on peut voir poindre un certain ordre dans la suite d'idées.

Sans matériaux, aucune recherche n'est possible. L'objectif ici, est de récolter l'ensemble de matériaux en qualité et en quantité pour commencer l'analyse et enfin passer à l'étape suivante.

ETAPE 4 : ELABORATION DES RESULTATS PARTIELS

On parle aussi de l'étude ou l'analyse et l'interprétation des résultats. L'analyse et l'interprétation nous amènent à mettre en relation les données. Les relations peuvent être, entre autres :

- Les liens de causalité : de causes à effets,

- Les liens de finalité : de moyens aux fins.

Analyser consiste aussi à décrire et non seulement à expliquer. L'analyse n'est pas la décomposition même si on ne peut analyser sans décomposer.

On peut distinguer à ce niveau, l'interprétation descriptive de l'interprétation explicative. La première cherche une signification appropriée, fidèle et réelle alors que la seconde cherche plutôt la compréhension.

L'analyse se fait sur les données, c'est-à-dire après traitement. L'objectif de cette étape est la présentation des résultats.

ETAPE 5 : SYNTHESE ET FORMULATION DES RESULTATS

La synthèse est différente de la conclusion. Elle consiste en :

· La récapitulation des résultats partiels(rappel en résumant les principaux points),

· La synthèse-évaluation : on évalue les résultats obtenus pour connaitre les lacunes et les forces,

· La synthèse supplétive : comblement des lacunes grâce au raisonnement proprement-dit (inférence).

· Le raisonnement inductif : généraliser les résultats.

· La synthèse interprétative : pour conclure (donner une réponse globale à des questions partielles),

· La synthèse intégrative : intégrer les conclusions trouvées dans des connaissances existantes et trouver des brèches vers des nouvelles.

La conclusion, quant à elle, est une prescription, la formulation des résultats.

La formulation consiste à communiquer (diffuser) les résultats. Elle a pour étapes ou principales activités :

Ø La composition du discours : c'est l'élaboration du plan de rédaction. Le plan de rédaction est la structure, la charpente du rapport (des recherches). Il est global et détaillé, il peut être géographique, chronologique ou thématique.

Il comporte les éléments ci-après :

o L'introduction

C'est ici qu'on précise le titre du sujet, la problématique, les hypothèses, l'état de la question, la méthodologie, les sources d'information, la subdivision du travail, les difficultés rencontrées ou encore la délimitation du sujet.

o Le corps (développement)

Développement des faits et des phénomènes observés ou étudiés durant les recherches effectuées. A ce niveau, on doit ressentir également le niveau scientifique du chercheur, sa capacité à mettre de la logique dans le tas de données qu'il a récolté et analysé.

o La conclusion

Elle comporte la synthèse des résultats partiels et une conclusion ou récapitulatif de la problématique et du ou des résultat(s) trouvés à l'issue du travail scientifique.

o L'appareil scientifique du travail

Ici, on retrouve :

§ La bibliographie ;

§ Les notes et références (sources) ;

§ La webographie ;

§ Les annexes ;

§ Les tableaux et les différentes tables ;

§ Etc.

L'appareil scientifique est un précieux outil permettant la vérification des affirmations avancées, la compréhension (complète) de l'actualité de l'étude et ainsi, la valeur du travail scientifique peut être facilement dégagée.

Ø La communication ou discours proprement-dit : la présentation devant un comité de lecture ou un jury des spécialistes suivie généralement d'une séance questions-réponses à l'épreuve des faits. Le discours du chercheur durant sa présentation doit être cohérent, logique et ordonné.

Il s'agit aussi à ce niveau de rédiger un rapport (ou une littérature) au travers duquel les pairs d'abord et les profanes par la suite, prendront connaissance des résultats des recherches menées ainsi que leur apport sur l'état des connaissances dans une branche donnée de la science, d'une part et de l'autre ; de diffuser ou communiquer celles-ci.

PUBLICATION SCIENTIFIQUE VERSUS LITTERATURE SCIENTIFIQUE(wikipedia, 2018)

L'expression « publication scientifique » regroupe plusieurs types de communications scientifiques et/ou techniques avancées que les chercheurs scientifiques font de leurs travaux en direction de leurs pairs et d'un public des spécialistes. Ces publications ayant subi une forme d'examen de la rigueur de la méthode scientifique employée pour ces travaux, comme l'examen par un comité de lecture indépendant constitué de pairs.

La notion de « littérature scientifique » désigne plus largement l'ensemble des publications scientifiques. Les publications scientifiques permettent de diffuser des informations techniques et scientifiques produites et utilisées notamment par les chercheurs. Une partie de cette littérature est réutilisée par les revues de vulgarisation scientifique.

On peut distinguer les publications scientifiques selon leur origine (académique, recherche privée...) ou selon support ou type de parution :

- les revues scientifiques à comité de lecture ;

- les comptes rendus de congrès scientifique à comité de lecture ;

- des ouvrages collectifs rassemblant des articles de revue ou de recherche autour d'un thème donné, coordonnés par un ou plusieurs chercheurs appelés éditeurs ;

- des monographies sur un thème de recherche

Seuls les travaux pouvant être classés dans les catégories ci-dessus entrent généralement en considération pour l'évaluation de la recherche scientifique et des chercheurs (et de leurs laboratoires parfois) et les études bibliométriques et scientométriques.

« Bibliométrie : Étude quantitative de la production, de la distribution, de la consommation de livres, de périodiques ou d'autres documents imprimés. Statistique historique, étude quantitative des publications (d'une époque déterminée). » (Le Grand Robert de la langue française version 2.0, Op.cit.)

4. TRAVAUX DE FIN DE CYCLE

Les étudiants qui terminent un cycle universitaire, effectuent une recherche scientifique menée par eux-mêmes et dont les résultats seront reproduits dans un document. Ce travail scientifique, appelé génériquement « travail de fin de cycle » est l'occasion pour l'étudiant de démontrer sa capacité à isoler une problématique, à l'analyser méthodiquement et à pouvoir développer une réflexion scientifique en utilisant des méthodes et techniques scientifiques pour pouvoir pallier la problématique soulevée.

Selon le cycle ou le système éducatif concerné, le nom du document produit peut changer. Cela ne change en rien la nature du travail et la façon dont le document sera rédigé.

· CAS DE L'ISP/BUKAVU

L'ISP/Bukavu, institution publique en République démocratique du Congo ;suit le programme qui régit l'enseignement supérieur et universitaire dans le pays. C'est ainsi que sont organisés le cycle de graduat ou premier cycle, celui de licence ou deuxième cycle et un troisième cycle en didactique des disciplines.

Pour le cycle de graduat qui dure trois années, les enseignements sont organisés au sein de différentes sections (comprenant les départements) et à la fin de celui-ci ; en troisième année de graduat (G3), chaque étudiant devra mener des recherches autour d'une problématique et produire un T.F.C sous la conduite d'un directeur de T.F.C. Ce travail est corrigé en interne par les enseignantsaffectés au niveau de chaque département et les cotes intégrées dans l'ensemble des points réalisés par l'étudiant pendant les stages et ceux des cours. Il n'y a aucune défense ou soutenance publique pour le T.F.C.

Pour le cycle de licence qui dure deux années, à la fin de deux années d'enseignements ; l'étudiant se met à réfléchir autour d'une problématique qu'il estime susceptible d'être étudier. Il formule un sujet de recherche et le dépose à son département en choisissant un directeur avec lequel il souhaite travailler. Une fois qu'il a reçu l'aval du département, il entreprend ses recherches et à la fin rédige le document qui est appelé « mémoire ». Contrairement au T.F.C., on ne se contente pas de remettre un mémoire. Après l'avoir déposé au département, il faut préparer une soutenance publique avec une séance questions-réponses entre l'étudiant et les enseignants spécialistes au sein du département (jury).

· LA RECHERCHE

Les étudiants de l'ISP/Bukavu en général et ceux du département d'informatique de gestion en particulier, mènent l'essentiel de leurs recherches au sein de la bibliothèque centrale de l'institution, qu'ils ne fréquentent d'ailleurs que très rarement en dehors de ces périodes où ils rédigent justement leurs travaux de fin de cycle. La bibliothèque centrale est certes garnie à un certain niveau, mais encore une fois ; c'est plus les T.F.C et mémoires déjà écrits qui sont consultés presqu'exclusivement.

Pour les étudiants en informatique particulièrement, une nouvelle source d'informations s'impose naturellement : l'Internet. Une très grande quantité d'informations circule sur le réseau des réseaux et il n'est pas évident que l'on s'y retrouve. En outre, les ouvrages électroniques pullulent mais malheureusement, la pratique de la lecture s'est estompée il y a longtemps même parmi les étudiants. Enfin, comment concrètement s'orienter sur la documentation par exemple en ne sachant pas où exactement on peut trouver ce dont on a besoin et dans les proportions qu'on souhaite.

L'orientation dans les recherches de fin de cycle est un grave problème, même si parfois les étudiants eux-mêmes n'en n'ont pas conscience. Il est pratique de se dire qu'on se contentera d'écrire, de trouver quelques idées par ci par là, feuilleter quelques mémoires ou T.F.C déjàrédigés en recopiant quelques passages, télécharger rapidement quelques articles pour ne pas manquer des citations, mixer le tout dans une sorte d'alchimie et boom : « de toutes les façons, le directeur lira et pourra combler toutes les petites lacunes. Après tout, je l'ai bien choisi pour cela !». C'est bien là, la philosophie de beaucoup.

On donne ainsi beaucoup des fils à retordre aux pauvres encadreurs qui ne sont que des êtres humains et n'ont absolument pas la mission de mettre de l'ordre dans tout ce qu'on pourra leur soumettre comme par coup de baguette magique. Ils n'ont pas de solution miracle. Si l'étudiant fait un travail scientifique à la fin d'un cycle, c'est qu'il a quand même une idée sur ce à quoi peut ressembler un travail rédigé par un scientifique et celui qui dirige a pour prérogative de corriger les imperfections, mieux reformuler une idée ou encore aider à une bonne présentation du travail.

Le département d'Informatique affiche toujours un canevas de rédaction de mémoire/T.F.C en début d'année académique. Ceci est une très bonne chose pour donner le cadre général. Toutefois, et c'est d'ailleurs un constat fait année après année, c'est très loin d'aider à une bonne orientation des recherches. La recherche scientifique menée pour produire un travail de fin de cycle est et devait être plus importante que tout le reste ; même plus que la soutenance publique d'un mémoire. En fait, comme nous le disions plus haut dans ce travail, la science a pour colonne vertébrale la recherche ou l'étude approfondie. Et celle-ci est l'une des activités humaines les plus coriaces et les plus exigeantes.

Une orientation en cela, ne consiste pas à dire à l'étudiant : « après telle partie, il faut une telle autre ». Au niveau de la recherche scientifique, il est question de savoir ; après une telle étape et avec une telle catégorie de données, il pourrait être mieux de ne pas directement passer au point suivant sans d'abord être sûr d'avoir terminé complètement l'exploration de tel point. Aussi, orienter c'est attirer l'attention de la personne sur le timing et les possibilités face aux ressources. Indiquer quel outillage convient à la situation. Il pourrait également être intéressant de bien indiquer au chercheur avant tout, à quels moments précis peut-on consulter telle source et encore, pour tel type de travail, quelle catégorie des sources privilégier.

Orienter en fin de compte, c'est également voir comment simplifier les opérations de rédaction. La qualité d'un travail scientifique ne se trouve pas seulement dans la formulation du sujet ou le déroulement des recherches ; elle réside aussi dans une bonne rédaction. On ne rédige pas n'importe quoi ni n'importe comment quand l'on se trouve dans l'univers de la science. Le soin passe aussi par une bonne préparation, c'est-à-dire qu'on doit avoir une idée générale sur quel aspect aura notre document. Ceci parce que, chaque document scientifique est unique et a ses exigences.

Nous allons dans les lignes qui suivent parler du mémoire et nous finirons en parlant du « guide de rédaction de mémoire » avant de passer à la modélisation.

5. LE MEMOIRE

Le mémoire est un document ou un travail scientifique, produit par un étudiant et qui est considéré comme le fruit de longues années d'études passées sur le banc de l'université.

Dans le cadre d'une formation diplômante, qu'elle soit de type universitaire ou professionnelle, le mémoire est défini comme étant l'aboutissement d'un travail individuel mené par l'étudiant, effectué sous les directives d'un directeur de mémoire et qui doit être évalué lors d'une défense orale ou une soutenance de mémoire publique (corep, 2018).

Ce travail devra traduire, à tous les niveaux, la capacité de l'étudiant à murir sa réflexion en développant autour d'uneproblématique ; une véritable connexion d'idées conduisant à la résolution du problème observé via des méthodes scientifiques, en d'autres termes, en effectuant une recherche scientifique.

Pour toutes ces raisons, le mémoire n'est pas qu'un simple document rédigé par un étudiant, c'est un travail scientifique complet d'où, la présence d'un directeur (et parfois d'un co-directeur) pour la supervision et la guidance de l'étudiant. C'est pour cette même raison qu'une séance de soutenance (publique) de mémoire est organisée, en présence des chercheurs et enseignants attitrés afin de jauger également la capacité du récipiendaire à argumenter autour d'un sujet et de répondre aux questions du jury constitué pour l'occasion.

« Un récipiendaire : terme qui désigne une personne admise dans une société au cours d'une cérémonie officielle ou qui reçoit un diplôme ou une distinction honorifique. » (Microsoft Dicos Encarta collection 2009, Op.cit.) C'est le premier sens qui est concerné ici.

Il faut préciser ici que le mémoire dans des systèmes éducatifs occidentaux comme le système français, a un sens plus global qu'un document produit à la fin de cinq années d'études universitaires comme c'est le cas dans notre pays. En effet, dans ce dernier, l'étudiant rédige un T.F.C. à la fin de trois années d'études universitaires (cycle de graduat) et un mémoire à la fin de deux années de licence. Ce n'est pas le cas sous d'autres cieux, dans la plupart de pays, un document est produit par l'étudiant à la fin de trois premières années d'études universitaires (cycle de licence) et un autre à la fin de deux années suivantes c'est-à-dire le master, dans le deux cas, le document produit est appelé mémoire avec une nuancepour la distinction entre les deux : on parlera respectivement de mémoire de licence et de mémoire de master.

« On distinguera parfois le mémoire rédigé à la fin du master 1(M1) de celui rédigé à la fin de la deuxième année de master (M2 ou qu'on appelait la DEA), ce dernier étant une étude de la faisabilité d'une thèse » (Corep, Op.cit.).

Par contre, la thèse est considérée comme bien volumineuse et se distingue du mémoire par le fait qu'un mémoire permet à l'étudiant d'exposer un fait, explorer un thème, mener une recherche dans un format bien réduittandis qu'une thèse reprend l'invention d'un nouveau concept ou une nouvelle théorie par celui qui la rédige, une originalité dans un format conséquent.

Le mémoire est un travail de longue haleine et de style artistique très exigeant. Rédiger un mémoire n'est pas un jeu d'enfants. Sa rédaction exige un guide de mémoire que l'étudiant devra avoir sur lui permanemment au cours de la rédaction de celui-ci.

a. Contenu d'un mémoire

Le mémoire est un vrai portrait des connaissances de l'étudiant et sert à les valoriser sur un sujet donné. Ainsi, il sera vital pour l'étudiant de traiter d'un thème qu'il maîtrise bien. La maîtrise dont il est pourvu transparait dans la capacité de l'étudiant à traiter la problématique de telle sorte que l'intérêt des professionnels et des praticiens en soit suscité.

Il en va de même pour les théoriciens et les profanes (ou du moins, ceux qui ne sont pas du domaine) qui eux aussi ont besoin d'être éveiller scientifiquement par la découverte des possibilités multiples d'un problème souvent vu sous un seul angle.

Particulièrement sensible : la minutie et le souci du détail. En fait, les membres du jury sont souvent très attentifs au moindre petit détail, à l'affut d'un défaut de quelque nature que ce soit (que le récipiendaire recevra en pleine figure) et n'hésitent souvent pas à mettre en évidence l'oubli d'une simple apostrophe, les ennuis sont donc à la portée des mains.

D'où, il est préférable d'avoir un guide mémoire pour éviter de rater l'essentiel ou de brûler les étapes ou encore de retenir des détails sans importance. Autant le fond que la forme, la mise en page, la structuration du mémoire, la qualité de la reliure, la bibliographie, etc. tout doit être à sa place et au mieux de ses connaissances (acquises à partir de nombreuses sources), l'étudiant devra s'assurer d'avoir veillé à ce que le moindre détail soit fixé.

En fin de compte, tout travail humain est imparfait et que donc, il sera impossible de trouver un mémoire à cent pour cent réussi. Cela aussi, l'étudiant devra en être conscient. C'est encore là que devra intervenir la notion de l'humilité scientifique. L'homme sera toujours derrière la perfection sans jamais l'atteindre, c'est vrai en religion mais aussi en science...c'est d'ailleurs l'un des points sur lesquels, scientifiques et religieux s'accordent sans toutefois consentir à une définition universelle des raisons conduisant à cela.

b. Les types de mémoire

Le mémoire, comme nous l'avons donc dit, est un terme générique désignant un document scientifique produit par un étudiant dans le cadre d'une formation diplômante. La classification reprise ci-dessous, provient du site www.corep.fr. Celui-ci nous précise qu'un mémoire de master est plus axé sur la recherche tandis qu'unmémoire de licence met l'accent sur la contribution personnelle de l'étudiant lors de son stage.

Il faut aussi noter, comme nous l'avons déjà précisé, que quel que soit le type de mémoire concerné ; il faut toujours se servir du guide de la rédaction du mémoire concerné afin de ne pas bâcler son travail.

On distingue :

A. Le mémoire de recherche

Il est rédigé à la fin de la formation suivie. Il s'agit d'un travail individuel rédigé par l'étudiant et qui est conduit sous le signe de la recherche scientifique. Sa rédaction est basée sur une démarche scientifique au cours de laquelle l'étudiant doit soulever une problématique, proposer des hypothèses ou des théories, vérifier leurs fondements et en déduire une conclusion.

Son but est de permettre l'évaluation de la capacité de l'étudiant à animer une discussion, à mener une réflexion scientifique.

B. Le mémoire de fin d'étude

C'est à la fin de ses études supérieures que ce type de mémoire est rédigé par l'étudiant. Il permet d'évaluer la capacité de l'étudiant à développer autour de la problématique du sujet. L'étudiant doit démontrer sa maîtrise ainsi que sa connaissance du sujet qu'il a choisi.

C. Le mémoire de stage

Dans notre système éducatif, à l'issue du stage qu'il a effectué au sein d'une entreprise ou une école, l'étudiant produit un document écrit appelé « Rapport de stage ». Cette appellation n'a pas lieu d'être et ce document devait donc être appelé « Mémoire de stage ».

Ce type de mémoire met en exergue les activités de l'étudiant lors de son stage en entreprise ou au sein d'une école. Cependant, ce type de mémoire n'est pas qu'un simple rapport de stage car il démontre la capacité d'analyse de l'étudiant, celui-ci devant soulever une problématique rencontrée, décrire les démarches scientifiques adoptées dans la recherche des solutions ainsi que les résultats obtenus.

D. Le mémoire de master

Rédigé à la fin d'un cursus universitaire de niveau master, le mémoire de master s'apparente à un mémoire de recherche. On s'attend à ce que l'étudiant mette l'accent sur sa capacité d'analyse et son esprit critique. La formulation de la problématique qui est à la base de l'élaboration des questions de recherche est donc une des étapes les plus importantes de la rédaction d'un mémoire de master.

L'élaboration d'un plan de mémoire cohérent est également la clé d'un mémoire de master réussi, sans parler de la phase préliminaire qui inclut la collecte des données.

E. Le mémoire universitaire

Rédiger un mémoire universitaire revient à entreprendre des recherches. En effet, ce type de mémoire est un passage obligé pour tout étudiant inscrit à un cursus universitaire et qui est au terme de sa formation. Il s'agit d'un exercice de style qui consiste à démontrer la capacité de l'étudiant à apporter des éléments de réponseselon une démarche scientifique.

C'est un travail minutieux qui demande de la cohérence et une bonne organisation. C'est pourquoi, il est préférable de consulter une aide à la rédaction de mémoire universitaire. L'étudiant doit en effet avoir une méthodologie de mémoire qui lui donnera l'opportunité de réussir sa rédaction.

F. Le mémoire de licence

Reflétant la capacité de l'étudiant à apporter sa contribution personnelle dans le cadre de la résolution d'une problématique d'une part, outil permettant au jury d'évaluer l'implication de l'étudiant au travail de recherche et ses connaissances de l'autre, le mémoire de licence est un document écrit, élaboré par tout étudiant au terme de ses trois années d'études supérieures. Comme il priorise les compétences de l'impétrant dans un domaine professionnel, sa rédaction ne se fait pas à la légère.

« En Droit, un impétrant est une personne à qui les autorités compétentes ont délivré une charge, un diplôme ou une fonction. » (TAUPIN, 1998)

Il faut veiller à ce que la qualité rédactionnelle du mémoire de licence, au niveau du fond et de la forme, reflète la capacité et le sérieux de l'étudiant.

G. Le mémoire marketing

Travail rédactionnel auquel tout étudiant en Marketing doit se soumettre à la fin de sa formation que ce soit en université ou en école de commerce, le mémoire marketing doit susciter l'intérêt des chefs d'entreprises.

En effet, ce type de mémoire consiste à mener un travail de recherche, selon des démarches scientifiques. Il met en exergue la capacité d'analyse de l'étudiant et son aptitude à apporter des éléments des réponses aux questions de recherches qui découlent de la problématique.

H. Le mémoire de droit

Travail d'écriture et d'exercice de style que chaque étudiant en droit en fin de formation doit entreprendre, le mémoire de droit démontre la capacité de l'étudiant à utiliser les ressources juridiques pour appuyer sa réflexion.

Pour n'importe quelle spécialité juridique choisie, l'étudiant doit faire appel à un raisonnement juridique pour faire une démonstration scientifique et organiser son argumentation.

I. Le mémoire scientifique

Quels que soient le domaine et l'objet d'étude, doit répondre à une démarche scientifique. L'étudiant aura alors à déterminer une problématique qui se traduit par une série des questionnements.

L'argumentation de l'étudiant se basera sur des démarches scientifiques qui consistent à énoncer une ou des théories, formuler un ou des hypothèses, dont la pertinence est à démontrer scientifiquement.

La rédaction d'un tel mémoire nécessite une bonne méthodologie qui englobe la recherche bibliographique, la collecte des données, l'analyse des données et la formulation des conclusions.

Cela exige une certaine rigueur et de la bonne organisation car le mémoire doit rester cohérent.

6. LE GUIDE DE REDACTION DE MEMOIRE

Voici un autre élément très important dans la rédaction de mémoire, le guide de rédaction de mémoire est un document établi normalement par les institutions universitaires ou de recherche en vue de faciliter la rédaction du mémoire. Il ne s'agit pas ici d'un simple plan de travail mais d'un véritable guide d'utilisateur.

Grâce au guide de rédaction de mémoire, on se repère facilement dans les différents niveaux du travail scientifique, de la revue de la littérature à la conclusion en passant par l'exploration documentaire en précisant à chaque étape les méthodes utilisées ainsi que la façon de procéder. D'autant plus que la rédaction d'un mémoire n'est pas une chose aisée.

Le guide de rédaction de mémoire est aussi un excellent indicateur du rôle du directeur de mémoire, la manière d'écrire les références bibliographiques, les annexes et même l'indication des normes régissant la référence bibliographique (les normes ISO 690 ou APA) et toute autre indication importante pour rédiger son mémoire.

Notons enfin que le guide de rédaction de mémoire met un accent particulier sur le plagiat. Cette notion est capitale car beaucoup d'étudiant ne maîtrisent vraiment pas la notion de plagiat en matière de littérature scientifique et surtout la rédaction de mémoire. Le plagiat est une notion complexe et a de nombreuses facettes, ce qui est naturellement à la base de beaucoup de problèmes.

Ceci nous pousse à nous interroger sur la pertinence de la rigueur et du sérieux que nous devons mettre dans la rédaction d'un mémoire. Toutes les citations, les références bibliographiques et tout le reste. Il faut non seulement citer toutes les sources mais encore bien les citer.

Conclusion partielle

Après cette revue de la littérature il ressort clairement que les étudiants qui veulent entreprendre leurs recherches en Informatique, sont véritablement confrontés à des difficultés pour se retrouver et partir du bon pied.

Et que donc, nous allons essayer de mettre en place un système informatique, plus exactement ; une plateforme web pouvant aider les étudiants dans l'orientation de leurs recherches.

CHAPITRE DEUXIEME : MODELISATION AVEC LE PROCESSUS UP

Introduction

Dans le but d'étudier et de comprendre le fonctionnement interne d'un système informatique ainsi que ses interactions avec le monde extérieur, il est impérieux voir même obligatoire de passer par une représentation abstraite qui, associée à un système réel ; permet d'en avoir une vue d'ensemble ainsi qu'une bonne maîtrise. Pour les différents modèles (diagrammes UML), nous avons utilisés le logiciel Visual Paradigm 10.2.

Parlons donc de la modélisation, celle de notre plate-forme :

II.1. MODELE

Un modèle est une simplification de la réalité qui permet de mieux comprendre le système à développer. (Robert Ogor)

Un modèle est une conception de la réalité telle qu'il devient facile ou du moins plus pratique de se le représenter à une plus courte échelle. Cette notion qui transcende largement le domaine de l'informatique, est née d'un souci de simplification et de compréhension complète ou partielle d'une structure complexe dans le but de l'analyser c'est-à-dire de l'étudier en profondeur en vue éventuellement de l'optimiser.

En informatique, on utilise les modèles aussi bien dans le chef des analystes programmeurs que dans celui des programmeurs purs et durs. Le modèle étant à un niveau élevé d'abstraction, il va aider celui qui l'utilise à s'affranchir des contraintes liées aux langages de programmation ou encore à la complexité du matériel tout en restant focaliser sur la logique intrinsèque.

On dit d'ailleurs qu'un dessin vaut mille mots (Confucius). Parce qu'en réalité, qu'on soit dans le domaine des bâtiments et travaux publics (BTP), dans les sciences dures (Mathématiques, physique, etc.) ou encore en Informatique, la plupart du temps ; les modèles sont graphiques. Et cela, même quand l'objet à créer n'est pas matériel.

Au sens plus large, un modèle représente une version simplifiée mais synthétique de la réalité. Il représente ce qu'il faut reproduire(MESANO, 2006).

Il faut toutefois nuancer la notion de « reproduction » ; car à ce niveau, le lecteur risque de penser que modéliser consiste en une reproduction à l'identique du système « dans ses moindres détails ». Voici d'ailleurs, une citation qui résume assez bien la situation :

« Le choix est toujours le même. Soit vous rendez votre modèle plus complexe et plus fidèle à la réalité, soit vous le rendez plus simple et plus facile à manipuler. Seul un scientifique naïf peut penser que le modèle parfait est celui qui représente parfaitement la réalité. Un tel modèle aurait les mêmes inconvénients qu'un plan aussi grand et détaillé que la ville qu'il représente, un plan indiquant chaque parc, chaque rue, chaque bâtiment, chaque arbre, chaque poteau, chaque habitant.

Si un tel plan était possible, sa précision irait à l'encontre de sa destination première : généraliser et résumer. Les cartographes soulignent ces caractéristiques auprès de leurs clients. Quelles que soient leurs fonctions, les cartes et les modèles doivent tout autant simplifier le monde que le reproduire.(Gleick, 1989)».

Ce relativisme est donc de rigueur, à chaque fois qu'il faut considérer un modèle en informatique ou dans un autre domaine. Il ne faut donc pas perdre de vue qu'un modèle reste un modèle et la réalité autre chose. L'unique but du premier est d'appréhender le mécanisme de fonctionnement du système.

Mais alors, qu'est-ce qu'un bon modèle ?

« A est un bon modèle de B si A permet de répondre de façon satisfaisante à des questions prédéfinies sur B. » (D.T. ROSS)

En confrontant cette affirmation de Monsieur ROSS avec les détails développés plus haut, on peut en conclure qu'un bon modèle est celui qui, sans prétendre être une représentation parfaite de la réalité ; apporte un bon niveau de détail suivant un bon point de vue(MESANO, op.cit.).

II.2. LANGAGE DE MODELISATION ET METHODE DE MODELISATION

Il existe deux concepts dont la compréhension porte souvent à confusion :

Ø Langage de modélisation : est une syntaxe commune, graphique pour modéliser un système. Par exemple : OMT, MERISE,...

Ø Méthode de modélisation : elle est un procédé permettant de construire un modèle aussi correct que possible et aussi efficacement que possible. Par exemple : UP, MERISE, ...

Les méthodes de modélisation sont souvent des méthodes de développement qui comportent une partie modélisation. Il faut aussi savoir que certaines méthodes comme le MERISE, sont associées à un langage de modélisation.

On distingue les méthodes dites « agiles » des méthodes dites « rigides ».

Les méthodes rigides, comme leur nom l'indique, ne permettent pas une grande flexibilité des modèles et ne s'adaptent pas facilement aux changements. C'est par exemple le cas de la méthode MERISE.

Les méthodes flexibles ou agiles, s'adaptent facilement aux nouveaux paradigmes, elles sont souples et conçues pour une bonne intégration des modifications éventuelles intervenues en cours de modélisation, sans perturber le reste de la structure, c'est-à-dire ; les étapes précédentes.

Les méthodes flexibles sont itératives (répétition d'un bloc d'instructions plusieurs fois), incrémentales (on débute par un noyau qui est enrichi au fur et à mesure) et adaptatives (acceptation des changements). Elles sont très largement plébiscitées aujourd'hui, surtout dans le contexte de la programmation orientée objet. On va alors parler des « méthodes orientées objet ».

II.3. LA METHODE DE DEVELOPPEMENT UP

L'UP ou `unified process' (processus unifiée) est une méthode agile, aboutissement des langages orientées objet comme l'OMT et OOSE. Un processus définit une séquence d'étapes, en partie ordonnées, qui concourent à l'obtention d'un système logiciel ou à l'évolution d'un système existant.

Un processus unifié est un processus de développement logiciel construit sur UML ; il est itératif et incrémental, centré sur l'architecture, conduit par les cas d'utilisation et piloté par les risques. La gestion d'un tel processus est organisée d'après les 4 phases suivantes:

Pré-étude (inception), élaboration, construction et transition.

Ses activités de développement sont définies par 6 disciplines fondamentales qui décrivent la modélisation métier, la capture des besoins, l'analyse et la conception, l'implémentation, le test et le déploiement(VALLEE, 2007).

L'UP est une méthode qui évolue surtout au gré des subtilités du langage UML et dont la première version date de l'année 1998. L'approche orientée objet de la méthode UP provient du fait qu'on perçoit le système informatique comme un ensemble d'objets en interaction systématique, c'est-à-dire que pour réaliser l'objectif qu'on se fixe, chaque objet dispose des propriétés lui fournissant la capacité de communiquer avec d'autres.

En conclusion, l'UP peut être compris comme un ensemble reconnu de bonnes pratiques de développement en informatique formalisant les étapes importantes d'une bonne modélisation. Là encore, il faut faire attention et ne pas comprendre par « processus unifié », un processus universel. Les termes doivent être bien choisis et utilisés à bon escient.

II.3.1. Le 2TUP

Le « Two Track - Unified Process » est l'une de nombreuses implémentations du processus UP mais paraît de loin la plus intéressante.

Le processus 2TUP apporte une réponse aux contraintes de changement continuel imposées aux systèmes d'information de l'entreprise. En ce sens, il renforce le contrôle sur les capacités d'évolution et de correction de tels systèmes. « 2 Track » signifie littéralement que le processus suit deux chemins. Il s'agit des chemins « fonctionnels » et « d'architecture technique », qui correspondent aux deux axes de changement imposés au système informatique (VALLEE, op.cit.).

Pour faire simple, le 2TUP formalise sa modélisation sur deux « branches » d'analyse qui se rejoignent à la fin de la modélisation et juste avant la conception préliminaire : la branche fonctionnelle à gauche et la branche technique à droite. Les deux forment un « Y », d'où l'appellation « processus de développement en Y ».

La branche gauche ou fonctionnelle, se rapporte aux attentes des utilisateurs par rapport au système. Elle va inclure l'ensemble de ce qu'on va appeler « métiers utilisateurs » afin de ne pas dévier des desiderata de ces derniers. Elle est indépendante des technologies à employer.

La branche droite ou technique quant à elle s'intéresse uniquement aux considérations techniques du système à modéliser : les outils ou matériaux de conception, les technologies à employer,... ainsi que la cohabitation de toutes ces composantes. Cette branche doit pouvoir garder une certaine indépendance vis-à-vis de la branche d'en face.

En se rejoignant, les deux branches ne forment plus qu'une seule branche qui part d'une conception préliminaire, étape délicate où doivent être conciliées les exigences de deux branches précédentes. Après, on passe à une conception détaillée pour réaliser chaque composante.

Ensuite, viennent le codage avec ses tests unitaires et enfin ; l'étape de recette qui consistera en la validation des fonctions du système développé.

Le livre « UML2 EN ACTION : De l'analyse des besoins à la conception » de P. Roques et F. Vallée est un excellent bouquin pour entrer dans les détails. Voici, à la page 14 du livre, un schéma reprenant toutes ces étapes :

Figure 1. Le processus de développement en Y

II.3.2. MODELISATION AVEC LE LANGAGE UML

II.3.2.1. UML en bref

Figure 2. Logos d'UML

UML est l'abréviation de « Unified Modeling Language », qu'on peut traduire par « Langage de modélisation unifié ».

UML se définit comme un langage de modélisation graphique et textuel destiné à comprendre et décrire de besoins, spécifier et documenter des systèmes, esquisser des architectures logicielles, concevoir des solutions et communiquer des points de vue.(VALLEE, op.cit.)

UML est un langage standard pour la modélisation des systèmes en informatique. Pour cela, il facilite l'analyse et la conception comme tout langage mais avec l'avantage d'être par essence dans une approche orientée objet.

Pour rappel, un langage est composé de deux éléments (SHEBLI, 2005):

- La syntaxe : règles selon lesquelles les éléments du langage (Ex. : les mots) sont assemblés en des expressions (Ex. : phrases, clauses).

- La sémantique : règles permettant d'attribuer une signification aux expressions syntaxiques.

Donc : Langage = Syntaxe + sémantique.

C'est l'OMG (Object Management Group) qui définit les spécifications (norme) UML. Il s'agit d'un groupe comprenant les grands noms de l'industrie de l'informatique comme IBM, Microsoft, etc.

Figure 3. Logo de l'OMG

Parmi les objectifs d'UML, il y entre autre le besoin de faciliter la modélisation et ainsi arriver à faire de la programmation sans programmer c'est-à-dire, créer un langage de modélisation utilisable à la fois par les humains et les machines.

UML est la notation standard pour documenter les modèles objets.

II.3.2.2. Capture des besoins des utilisateurs

Pour concevoir un nouveau produit logiciel en informatique, on part d'un cahier des charges. Celui-ci est fait en reprenant les desiderata du client ou des potentiels demandeurs. Après celui-ci, nous pouvons passer à la modélisation en connaissance de cause.

Dans cette section, nous allons pouvoir capturer les besoins des utilisateurs en suivant le schéma de développement logiciel avec la méthode 2TUP. Cette capture se fait en deux temps ; d'abord on va « capturer » les besoins fonctionnels ensuite, les besoins techniques.

A. CAPTURE DES BESOINS FONCTIONNELS

Les besoins fonctionnels sont des besoins liés aux fonctionnalités de l'application à mettre en place. Elles ressortent du récit narratif du futur utilisateur ou ses propres besoins, quelle que soit la façon dont il les exprime.

A ce niveau déjà, nous allons nous servir de nos premiers diagrammes UML pour formaliser les besoins fonctionnels. On va utiliser : le diagramme de cas d'utilisation et le diagramme de séquence.

Le diagramme de cas d'utilisation

C'est sans aucun doute le diagramme UML le plus important car, il constitue le point de départ de toute la modélisation. Le diagramme de cas d'utilisation est composé du système, des acteurs, des cas d'utilisation et des relations.

- Le système

Il représente dans notre cas, la plate-forme en ligne que nous voulons créer. Pour rappel, un système, c'est tout simplement un ensemble d'éléments interconnectés et concourant à un but précis.

Il sera donc constitué des cas d'utilisations et éventuellement des relations entre eux. Il est représenté par un grand rectangle.

- Les acteurs

Il s'agit de répondre à la question « qui ? ». On fait intervenir Les individus ou éléments qui vont déclencher la réalisation d'un cas d'utilisation. Les acteurs peuvent être humains ou d'autres systèmes.

On distinguera l'acteur dit « primaire ou principal » de celui dit « secondaire ». Le premier doit obligatoirement paraître dans un diagramme de cas d'utilisation. Il est donc celui qui initie la réalisation directe d'un cas d'utilisation. On le place généralement du côté gauche du système.

L'acteur secondaire est tout autre participant au système, sa présence n'est pas obligatoire (comme dans notre cas). On le place du côté droit du système.

Dans notre cas, on va distinguer les acteurs suivants :

· Le membre : L'étudiant ou la personne qui visitera la plateforme en ligne pour y chercher des informations.

· Le spécialiste : C'est lui qui publiera les thématiques, postera des fichiers à consulter et/ou à télécharger.

· L'administrateur : C'est le gestionnaire de la plateforme. A lui, incombe la tâche de la maintenance de la plateforme.

- Cas d'utilisation

Il s'agit ici de savoir ce que le système devra faire, sans tenir compte de comment il le fera. Donc, à ce niveau ; il s'agit de répondre à la question « quoi ? ».

Les cas d'utilisations, sont les différentes interactions métier entre l'utilisateur du système et le système lui-même. En d'autres termes, le concepteur prévoit quel sera le comportement de son système, les interactions entre celui-ci et les acteurs en présence et même les potentiels Scenarii alternatives.

Pour faciliter la lecture préalable de nos cas d'utilisation, plaçons ces derniers dans le tableau synthétique ci-après :

Cas d'utilisation

Acteur

S'authentifier

Membre

Consulter une thématique

Consulter le modèle

Télécharger les fichiers

S'authentifier

Spécialiste

Poster un modèle

Disponibiliser les fichiers

Proposer une thématique

S'authentifier

Admin

Gérer les membres

Gérer le spécialiste

Figure 4. Cas d'utilisation

- Les relations

Ce sont les liens entre utilisateurs et cas d'utilisation, entre utilisateurs eux-mêmes ou entre cas d'utilisations. Tout cela dans le but de rendre le fonctionnement du système clair.

Au vu de tout ce qui précède, nous proposons le diagramme de cas d'utilisation suivant :

Figure 5. Diagramme de cas d'utilisation

Description textuelle des cas d'utilisation

CU1

Authentification

Résumé Narratif

Pour accéder à la plateforme

Acteur (s)

Membre, spécialiste et admin

Pré-conditions

Soumettre le login et le mot de passe

Post-conditions

Le cas démarre après le point 03 du scenario nominal

Scenario nominal

<< DEBUT>>

01. Le système affiche la page d'authentification

02. Entrer login et mot de passe

03. Vérification des paramètres entrés

04. Ouverture de la plate-forme

<< FIN>>

Scenario alternatif

Login et mot de passe incorrects :

Commence au point 03

05. Message d'échec d'authentification

06. Retour en 01

Tableau 1. Authentification

CU2

Consulter les thématiques

Résumé Narratif

Permet l'accès et l'exploration des thématiques

Acteur (s)

Membre

Pré-conditions

Soumettre le login et le mot de passe

Post-conditions

Le cas démarre après le point 02 du scenario nominal

Scenario nominal

<< DEBUT>>

01. Entrer login et mot de passe

02. Vérification des paramètres entrés

03. Ouverture espace membre

04. Accéder aux thématiques

05. Commenter une thématique

<< FIN>>

Scenario alternatif

Login et mot de passe incorrects :

Commence au point 02

06. Message d'échec d'authentification

07. Retour en 01

Tableau 2. Consulter les thématiques

CU3

Consulter le modèle

Résumé Narratif

Permettre au membre de consulter le modèle

Acteur (s)

Membre

Pré-conditions

Soumettre le login et le mot de passe

Post-conditions

Le cas démarre après le point 02 du scenario nominal

Scenario nominal

<< DEBUT>>

01. Entrer login et mot de passe

02. Vérification des paramètres entrés

03. Ouverture espace membre

04. Accès au modèle

05. Télécharger le modèle

<< FIN>>

Scenario alternatif

Login et mot de passe incorrects :

Commence au point 02

06. Message d'échec d'authentification

07. Retour en 01

Tableau 3. Consulter les modèles

CU4

Télécharger

Résumé Narratif

Permettre le téléchargement des fichiers/du modèle

Acteur (s)

Membre

Pré-conditions

Soumettre le login et le mot de passe

Post-conditions

Le cas démarre après le point 02 du scenario nominal

Scenario nominal

<< DEBUT>>

01. Entrer login et mot de passe

02. Vérification des paramètres entrés

03. Ouverture espace membre

04. Ouverture page des téléchargements

05. Télécharger les fichiers/le modèle

<< FIN>>

Scenario alternatif

Login et mot de passe incorrects :

Commence au point 02

06. Message d'échec d'authentification

07. Retour en 01

Tableau 4. Télecharger

CU5

Gérer les membres/le spécialiste

Résumé Narratif

Permettre la gestion du fonctionnement de la plate-forme

Acteur (s)

Admin

Pré-conditions

Soumettre le login et le mot de passe admin

Post-conditions

Le cas démarre après le point 03 du scenario nominal

Scenario nominal

<< DEBUT>>

01. Le système affiche la page d'authentification

02. Fournir login et mot de passe

03. Vérification des paramètres entrés

04. Ouverture l'espace administrateur

05. Gestion de la plate-forme

<< FIN>>

Scenario alternatif

Login et mot de passe incorrects :

Commence au point 03

06. Message d'échec d'authentification

07. Retour en 01

Tableau 5. Gestion des membres/specialistes

CU6

Poster modèle/Disponibiliser fichiers/Proposer thématiques

Résumé Narratif

Permettre au spécialiste de poster un modèle, de disponibiliser les fichiers ou proposer une thématique

Acteur (s)

Spécialiste

Pré-conditions

Soumettre le login et le mot de passe spécialiste

Post-conditions

Le cas démarre après le point 03 du scenario nominal

Scenario nominal

<< DEBUT>>

01. Le système affiche la page d'authentification

02. Entrer login et mot de passe spécialiste

03. Vérification des paramètres entrés

04. Ouverture espace spécialiste

05. Choisir l'opération à réaliser

<< FIN>>

Scenario alternatif

Login et mot de passe incorrects :

Commence au point 03

06. Message d'échec d'authentification

07. Retour en 01

Tableau 6. Poster/Disponibiliser

B. CAPTURE DES BESOINS TECHNIQUES

Pour rappel, la méthode 2TUP suit un schéma de développement en Y. La branche gauche capture les besoins fonctionnels, c'est ce que nous venons de voir. A présent, intéressons-nous à la branche de droite qui concerne la capture des besoins techniques.

Elle concerne entre autre le choix de l'architecture. On distingue en général trois types d'architectures :

B.1. Architecture monoposte ou 1-tiers

Cet architecture consiste en l'élaboration d'une application fonctionnant sur un ordinateur unique c'est-à-dire, un poste unique ; d'où le « mono ».

Tous les services fournis par l'application sont inclus au sein d'une seule couche logicielle, dans une même machine.

B.2. Architecture client/serveur ou 2-tiers

On l'appelle encore « architecture client lourd/serveur ». Comme on peut déjà le deviner, elle est constituée de deux parties : un client « lourd » qui soumet une requête et le « serveur des données » qui fournit la réponse à la requête.

Ici, le serveur ou base des données est à part et le client aussi de son côté.

B.3. Architecture 3-tiers

Elle consacre la séparation complète entre « client », « serveur des données» et « serveur d'application ». Elle innove donc, en introduisant la notion de « serveur d'application » qui devient le troisième tiers.

De cette façon, le « client lourd » ; déchargé d'une partie des prérogatives qui lui été dévolues dans la précédente architecture devient un « client léger ». C'est-à-dire qu'il n'aura plus à faire qu'à l'interface graphique de l'application et ne s'encombrera plus avec les différents traitements.

C'est l'architecture qui va nous intéresser dans ce travail.

Le diagramme des séquences

Ces diagrammes mettent en évidence l'échange des messages entre les objets constitutifs du système selon les actions des acteurs.

1. Diagramme de séquence « s'authentifier »

Figure 6. Diagramme de séquence "S'authentifier"

2. Diagramme de séquence « Consulter thématiques »

Figure 7.diagramme de séquence « Consulter thématique »

3. Diagramme de séquence « Consulter modèle »

Figure 8.diagramme de séquence « Consulter modèle »

4. Diagramme de séquence « Télécharger »

Figure 9.Diagramme de séquence « Télécharger »

5. Diagramme de séquence « Disponibiliser/Proposer/Poster »

Figure 10.Diagramme de séquence « Disponibiliser/Proposer/Poster »

6. Diagramme de séquence « Gérer les membres/spécialistes »

Figure 11.Diagramme de séquence « Gérer membres/spécialistes »

Le diagramme d'activité

Celui-ci s'intéresse au processus de traitement du flux d'informations. On parle de l'exécution d'un processus, de l'enchaînement d'un ensemble d'opérations.

1. Le diagramme d'activité « Authentification »

Figure 12.Diagramme d'activité « S'authentifier »

2. Diagramme d'activité « Consulter thématique »

Figure 13.Diagramme d'activité « Consulter thématique »

3. Diagramme d'activité « Télécharger fichier »

Figure 14.Diagramme d'activité « Télécharger fichier »

4. Diagramme d'activité « Poster modèle »

Figure 15.Diagramme d'activité « Poster modèle »

Le diagramme de classe

Voici un diagramme de toute première importance, surtout avec la tendance actuelle du tout objet.

Une classe est un objet abstrait représentant les caractéristiques qu'aura tout autre objet concret. Il s'agit de la description formelle d'un ensemble d'objets ayant une sémantique et des caractéristiques communes.

On l'appelle un « moule à objet », car un peu comme dans la briqueterie ; la classe est la machine qui permet de façonner et de produire des objets.

Une classe est composée de (s) :

· Nom de la classe

· Attributs : sont des données dont les valeurs représentent l'état de l'objet.

· Méthodes : opérations possibles pour l'objet.

Nous reprenons d'abord l'ensemble des classes que nous avons utilisées ainsi que les méthodes :

Classe

Attributs

Méthodes

1

Membre

IdMember

NomMember

PseudoMember

Email

PassMember

PhoneMember

Avatar

Enregistrer ()

Modifier ()

Supprimer ()

2

Specialiste

IdSpec

NomSpec

PostNomSpec

Login

PassWord

AddrElec

Telephone

Photo

Ajouter ()

Modifier ()

Supprimer ()

3

Thematique

IdThem

TitreThem

AuteurThem

CategorieThem

ContenuThem

DatePub

Ajouter ()

Modifier ()

Supprimer ()

4

Commentaire

IdCom

Auteur

DateCom

Ajouter ()

Supprimer ()

5

Administrateur

Id

Nom

Postnom

Login

Pass

email

Connexion ()

Déconnexion ()

Figure 16.Dictionnaire des données

Le diagramme de classe pour notre projet sera donc le suivant :

Figure 17. Diagramme de classe

Le diagramme des composants

Ce diagramme montre les différents types de composants d'exploitation du système :

Figure 18.Diagramme des composants logiciels

Conclusion partielle

L'étape de la conception ou modélisation est une étape clef dans la réalisation d'un projet informatique. Nous venons donc de finir une partie capitale pour le reste de notre travail.

Par la suite, le développement ou le codage n'en sera qu'énormément faciliter.

CHAPITRE TROISIEME : EBAUCHE SUR LA PROGRAMMATION WEB AVEC PYTHON/DJANGO

Introduction

« Pour moi, la programmation est plus qu'un art appliqué important. C'est aussi une ambitieuse quête menéedans les tréfonds de la connaissance. »

Grâce Hopper, inventeur du compilateur

Le langage Python m'a marqué profondément en tant qu'outil de développement orienté objet. Tout comme Grâce Hopper, je crois que programmer en Python, est une expérience unique. Nous allons voir tout cela en profondeur.

III.1. LE LANGAGE PYTHON

Figure 19. Icône du langage Python

III.1.1. Présentation du langage

Python est un langage de programmation de haut-niveau. Ce puissant langage est l'oeuvre d'un pionnier du monde de l'open software (logiciels ouverts) en la personne du génie hollandais Guido VAN ROSSUM en 1989. Depuis 1991 et la sortie de la première version du langage, des milliers des volontaires dans le monde entier, collaborent au maintien et au perfectionnement du langage.

On appelle « Open software », un logiciel à accès libre. C'est-à-dire que le code source du logiciel est accessible à tous, à la portée de tous. On parle aussi de « free software », car ; ces logiciels sont souvent gratuits et on donne à celui qui y accède la possibilité de modifier le code source pour ses propres fins. Une autre caractéristique majeure de l'open software est que sa réalisation se fait par des milliers des programmeurs éparpillés sur le globe. Un exemple type de logiciels libres est le célèbre système d'exploitation GNU/Linux.(LORENT, 2013)

En 2001, est créée la Python Software Foundation (PSF), une organisation à but non-lucratif dont la mission est la poursuite et la mise à jour de l'aventure « Pythonesque ». L'organisation en question est composée des milliers des programmeurs, des passionnés, etc. éparpillés dans le monde entier et qui constituent une communauté très active. C'est l'un des points forts de Python : une communauté d'internautes très large et très active, prête à fournir toute aide nécessaire en ligne à tout potentiel demandeur.

Le langage Python est un langage facile à apprendre, portatif, multiplateforme (pouvant fonctionner sur tous les systèmes d'exploitation), extensible (utilisation de nombreuses bibliothèques externes) et interprété (exécution à la volée). Avec Python, on peut aussi bien travailler en mode interactive (console) qu'avec les scripts (lignes de codes écrites dans un éditeur et exécutées à la fin).

Le langage Python est un très bon langage pour faire la programmation orientée objet. De par sa syntaxe, sa souplesse et sa clarté, elle permet, une bonne compréhension de la logique objet.

III.1.2. Caractéristiques

On peut citer les caractéristiques suivantes(SWINNEN, 2012):

- Python est portable aussi bien sur les variantes d'UNIX que sur les systèmes d'exploitation propriétaires.

- Python est gratuit.

- Comme Scheme ou SmallTalk, Python est dynamiquement typé. Tout objet manipulable par le programmeur possède un type bien défini à l'exécution, qui n'a pas besoin d'être déclaré à l'avance.

- Python convient aussi bien à des scripts d'une dizaine de lignes qu'à des projets complexes de plusieurs dizaines de milliers de lignes.

- La syntaxe de Python est très simple et, combinée à des types de données évolués (listes, dictionnaires...), conduit à des programmes à la fois très compacts et très lisibles. À fonctionnalités égales, un programme Python (abondamment commenté et présenté selon les canons standards) est souvent de 3 à 5 fois plus court qu'un programme C ou C++ (ou même Java) équivalent, ce qui représente en général un temps de développement de 5 à 10 fois plus court et une facilité de maintenance largement accrue.

- Python gère ses ressources (mémoire, descripteurs de fichiers...) sans intervention du programmeur, par un mécanisme de comptage de références (proche, mais différent, d'un garbage collector).

- Il n'y a pas de pointeur explicite en Python.

- Python est orienté-objet. Il supporte l'héritage multiple et la surcharge des opérateurs. Dans son modèle objets, et en reprenant la terminologie de C++, toutes les méthodes sont virtuelles.

- Python intègre, comme Java ou les versions récentes de C++, un système d'exceptions, qui permettent de simplifier considérablement la gestion des erreurs.

- Python est dynamique (l'interpréteur peut évaluer des chaînes de caractères représentant des expressions ou des instructions Python), orthogonal (un petit nombre de concepts suffit à engendrer des constructions très riches), réflectif (il supporte la métaprogrammation, par exemple la capacité pour un objet de se rajouter ou de s'enlever des attributs ou des méthodes, ou même de changer de classe en cours d'exécution) et introspectif (un grand nombre d'outils de développement, comme le debugger ou le profiler, sont implantés en Python lui-même).

- Python est extensible : comme Tcl ou Guile, on peut facilement l'interfacer avec des bibliothèques C existantes. On peut aussi s'en servir comme d'un langage d'extension pour des systèmes logiciels complexes.

- La bibliothèque standard de Python, et les paquetages contribués, donnent accès à une grande variété de services : chaînes de caractères et expressions régulières, services UNIX standards (fichiers, pipes, signaux, sockets, threads...), protocoles Internet (Web, News, FTP, CGI, HTML...), persistance et bases de données, interfaces graphiques.

- Python est un langage qui continue à évoluer, soutenu par une communauté d'utilisateurs enthousiastes et responsables, dont la plupart sont des supporters du logiciel libre. Parallèlement à l'interpréteur principal, écrit en C et maintenu par le créateur du langage, un deuxième interpréteur, écrit en Java, est en cours de développement.

- Enfin, Python est un langage de choix pour traiter le XML.

III.1.3. INSTALLATION ET DEPLOIEMENT

Python est un langage qui évolue très rapidement grâce à sa brillante communauté en ligne. Les toutes premières versions de Python (après la création de la PSF en 2001), ont été regroupées sous l'appellation générique de Python 2.x ou encore la branche 2.x ou simplement Python 2 (Il y avait eu avant cela, la branche Python 1.x). Ainsi, on avait par exemple Python 2.3, Python 2.5, Python 2.6, etc.

Depuis le 13 février 2009, est sortie la version 3.0.1. C'est le début de la branche 3.x ou Python 3. Le passage de Python 2 à Python 3 n'est pas systématique, c'est-à-dire ; la version 3 a cassé la compatibilité ascendante(Prolixe, 2013) de la version 2. Pour faire simple, un programme écrit en Python 2, ne marchera pas automatiquement sous Python 3.

Tenez, par exemple : une différence majeure qu'apporte Python 3 est le fait que l'instruction d'affichage print, devient une fonction. Ainsi, l'instruction print `Bonjour le monde' (Python 2), s'écrira print (`Bonjour le monde') sous Python 3.

Téléchargement et Installation

Sous Windows

Pour télécharger Python, il suffit de se rendre sur le site officiel de Python ( http://www.python.org) et choisir la dernière version en cours. A l'heure où ces lignes sont écrites, la dernière version en cours est la version 3.7.1 pour la branche 3x. Cliquer sur « Download » et choisissez la version correspondant à votre architecture matérielle. En cas de doute, choisissez la version compatible avec l'architecture « x86 », sinon choisissez celle que votre machine acceptera.

Enregistrer et exécuter le programme d'installation de Python. Contentez-vous de suivre les instructions étape par étape (n'oubliez pas de cocher l'option « Add Python to the path »). L'installation terminée, vous pouvez aller dans le menu Démarrer et lancer python ou alors, ouvrir votre invite de commande et taper « python » puis valider.

Normalement, vous devez être amenés dans la console interactive de Python. Celle-ci :

Figure 20. Console interactive se Python

Si vous avez un message d'erreur, ce que vous devez encore aller dans votre variable d'environnement et ajouter le path (chemin d'accès) à Python. Par exemple : C:/Python3x.

Si vous êtes sous un système d'exploitation de type Linux (comme Ubuntu) ; il est fort probable que vous ayez déjà Python installé dans votre système. Il suffira seulement de vérifier si vous avez la dernière version active, sinon ; vous pouvez la télécharger directement de votre terminal(GABORY, 2013).

Et c'est tout, vous pouvez à présent programmer en Python à partir de l'invite de commande. Lorsque vous aurez à écrire vos premiers scripts, vous pouvez choisir entre les nombreux éditeurs qui permettent le développement avec Python.

Parmi ces derniers, on trouve IDLE (Integrated DeveLopement Environment), c'est un environnement de développement intégré dans Python. Aussitôt que vous installez Python, vous avez celui-ci. Vous pouvez également utiliser un éditeur comme Sublime Text3, Atom, Gedit, Anaconda, etc.

III.2. LE FRAMEWORK DJANGO

Figure 21. Logo du framework Django

III.2.1. Présentation

Django est un Framework qui a pour rôle d'aider les développeurs à concevoir efficacement et en un temps raisonnable, des applications web dynamiques puissants. Django est écrit entièrement en Python et est donc le premier choix (mais pas le seul) pour ceux qui veulent réaliser leur projet web avec Python.

Mais, qu'appellent-t-on un « framework » ?

Un framework est un ensemble d'outils qui simplifie le travail d'un développeur. Traduit littéralement de l'anglais, un framework est un « cadre de travail ». Il apporte les bases communes à la majorité des programmes ou des sites web. Celles-ci étant souvent identiques (le fonctionnement d'un espace membre est commun à une très grande majorité de sites web de nos jours), un développeur peut les réutiliser simplement et se concentrer sur les particularités de son projet(LORENT, 2013).

Un framework demande qu'on prenne le temps de le maîtriser, une fois que cela est fait ; la rapidité de conception qu'il fournit devient très vite un atout majeur pour le programmeur. Il existe actuellement plusieurs Framework sur le marché, on peut citer : Ruby on Rails, Pyramid (un frangin de Django), Symfony, cakePHP, Code Igniter, Zend, kohana, laravel, yii Framework,...

Django est un famework web basé sur Python comme Pyramid, web2py, TurboGears, CherryPy, ou encore Zope. Mais contrairement à ses compagnons, Django est tout à l'image de Python ; très exhaustif (la documentation livrée avec Django est détaillée comme pas possible), automatisant beaucoup des tâches et est doté d'une très grande communauté en ligne.

Django a été créé en 2003 par Adrian Holovaty et Jacob Kaplan-moss dans une agence de Presse aux Etats-Unis pour développer des sites web rapidement. Son nom lui a été donné en hommage au célèbre guitariste de jazz Django Reinhardt (1910-1953). Considéré comme le meilleur guitariste de tout le temps, il a beaucoup changé la vision du monde sur le jazz.

`'Certains auteurs accordent plutôt la paternité de Django à Adrian Holovaty et Simon Willison.''

En 2005, l'agence de presse Lawrence-Journal-World publie Django au grand public jugeant que celui-ci avait fait ses preuves et pouvait servir dans d'autres contextes.

En 2008 est créé la Django Software Foundation pour la maintenance et l'encadrement de l'énorme communauté internet qui s'est fondée autour du Framework. Et depuis, le succès est total.

Juste à titre d'information, il faut savoir que Django est utilisé par de grands noms pour leurs sites internet. Les plus connus sont les célèbres réseaux sociaux Instagram (Photos) et Pinterest (centres d'intérêt) et même la célèbre agence américaine d'aérospatiale à savoir la NASA ou encore Mozilla.

III.2.2. Philosophie Django

La popularité de Django repose sur sa philosophie. L'une de plus grande et de plus populaire « des philosophies »Django est le principe DRY (Don't Repeat Yourself), traduire « Ne vous répétez pas » !!

Cela se voit concrètement par exemple, par le fait que Django génère automatiquement l'administration du site. Cette dernière peut être après très facilement adaptée par le concepteur. Django ne vous demandera pas de passer trop de temps à écrire des requêtes SQL compliquées pour la communication avec la base de données, etc.

Nous l'avons mentionné plus haut, Django compte une communauté bien établie et hyperactive qui fournit une documentation en ligne très fournie. Sur docs.djangoproject.com La documentation en ligne dépend de la version de Django (Chaque version a sa propre documentation), vous allez trouver une documentation à jour traitant de tous les aspects de la programmation web avec Django. Evidemment, tout est en anglais.

Les « Snippets » sont des portions des codes réutilisables. On part du principe selon lequel, tout ce que vous voulez faire, quelqu'un quelque part, a fait quelque chose de semblable. Ainsi, la communauté de Django met en ligne des snippets ( http://djangosnippets.org) prêt à être réintégrer dans votre projet au cas où vous rencontrez des problèmes à écrire du code.

III.2.3. Téléchargement et installation

Django est téléchargeable depuis le site officiel de Django Project ou directement depuis la ligne de commande MS DOS (Sous Windows), à condition d'être connecté.

Toutefois, la façon la plus pratique reste de télécharger directement le fichier archive (.tar.gz), le décompresser et puis simplement de l'extraire (grâce à WinRar, par exemple) dans un dossier à part à partir duquel vous allez lancer l'installation de Django.

La dernière version de Django en cours actuellement, est la version 2.1.7.

Une fois la décompression terminée, ouvrez votre console (invite des commandes) et placez-vous à l'intérieur de votre dossier Django-X.Y.Z (par exemple « Django-2.1.7 ») grâce à la commande `cd'. Par exemple, si vous avez décompressé l'archive au niveau des téléchargements, taper :

C:\utilisateur\nomutilisateur> cd Download

C:\utilisateur\nomutilisateur\Download> cd Django-2.1.7

La commande pour installer Django est la suivante :

C:\utilisateur\nomutilisateur\Download\Django-2.1.7> python setup.py install

Après la validation, vous devriez voir plein des lignes bizarroïdes défiler toutes seules pendant plusieurs minutes sur votre console. Pas de panique, Django est en pleine installation. Dès qu'il a fini, il vous ramènera le prompt non sans vous avoir affiché avant un petit message du succès de l'installation. Et tout est bon, enfin presque !

Attention : pour toutes les versions de Django supérieures à 1.8, il est impératif d'être connecté sur Internet durant la phase d'installation. C'est essentiellement à cause d'un module particulier qui s'occupe des zones de temps, le fameux Pytz. Celui-ci est recherché automatiquement en ligne par le programme d'installation avant la clôture de l'installation de Django. Il est aussi possible de l'installer plus tard, mais ce n'est pas recommandé.

Au fait, il manque un tout petit détail : il faut ajouter notre Framework au path de la machine. Pour faire simple, il s'agit de faire reconnaitre Django comme un programme interne à notre ordinateur. Procédez comme suit (sous Windows 10) :

- Ouvrez l'explorateur des fichiers (Touche Windows+E) ;

- Dans le menu « Ordinateur », choisir « Propriétés système » ;

- Allez dans les « paramètres système avancés » ;

- Cliquer sur les « variables d'environnement » ;

- Dans « variables système », cherchez la ligne « Path » et ajoutez ceci à la fin de la ligne (celle-ci commence avec C :\ProgramData\...) :

;C:\Python34\;C:\Python34\Lib\site-packages\django\bin\

Faites bien attention à la version de Python que vous avez. Les points virgules permettent de différencier votre nouveau chemin d'accès de ceux préexistants.

Notez que l'installation en question, consiste seulement à placer votre dossier décompressé Django-X.Y.Z dans C:\Python3x. Ainsi, vous pouvez très bien le faire manuellement, sauf que ça ne sera pas si consistant ni aussi amusant !

Voilà, enfin vous en avez fini avec l'installation. Il faut tout de même en avoir le coeur net. Nous allons vérifier, ouvrez encore votre invite de commande (Ctrl+r puis taper « cmd » et valider) :

C:\user\nomutilisateur> python

Dans le Shell python, taper :

>>> import django

Si après validation, vous n'avez aucun message d'erreur ; c'est un très bon signe. Taper ensuite (sous Python 3x) :

>>> print (django.get_version())

Après validation, vous devriez voir la version de votre Django, par exemple :

2.7.1 # Django 2.7.1 est installé sur votre ordinateur

Et vous pouvez à présent vous frotter les mains car Django est désormais à votre disposition 

III.2.4. FONCTIONNEMENT DE DJANGO : LE MODELE MVC/MVT

Le Model-View-Controller (MVC pour les intimes)

La plupart de Framework, offrant une interface graphique, utilisent ce qu'on appelle « architecture MVC ». Le MVC ou design pattern, est un modèle de développement utilisé par plusieurs Framework web. Il consiste en la séparation des tâches à effectuer selon les différentes couches de développement.

Le « MVC » est donc décomposé en trois couches :

- Modèle : le modèle représente une information stockée quelque part, dans une base de données ou simplement dans un fichier comme c'est le cas de SQLite.

- Vue : la vue est la présentation de cette information à l'utilisateur. Il s'agit donc de ce que l'utilisateur voit, quelles actions effectue-il sur l'interface ?

- Contrôleur : il prend en charge tout évènement de l'utilisateur comme une requête, interroge le modèle et puis se charge de renvoyer le résultat à la vue correspondante afin que l'utilisateur aperçoive le résultat.

Pour bien comprendre la logique MVC, il suffit de se représenter un cas simple : une simple recherche sur le site de Google, par exemple. L'utilisateur tape au clavier l'adresse www.Google.com. En fait, il s'agit d'une requête utilisant le protocole http que le navigateur installé sur la machine (appelé Client) envoi au contrôleur. A ce moment, le contrôleur se charge d'aller chercher la page d'accueil (vue) correspondante dans la base de données (modèle) de Google. S'il la trouve, il la renvoi immédiatement au client. Celui-ci voit alors s'afficher la page d'accueil de Google sur son écran.

Django et son Model-View-Template (MVT ou MTV)

Django, fidèle à son esprit innovateur n'a pas apprécié la philosophie MVC et a préféré créer son propre modèle ; l'architecture MVT. Le truc c'est que dans les faits, il n'y a pas vraiment beaucoup des différences entre le MVT et le MVC.

En effet, Django s'est seulement approprier la partie « Controller ». Django est donc le contrôleur dans l'architecture MVT. Pour les développeurs de Django, la vue ne représente pas la présentation des données affichées. En d'autres termes, elle s'occupe des données à affichées et non de quelle façon les affichées.

Ainsi, avec Django ; la vue est simplement une fonction Python appellée par une adresse URL particulière. Alors que la présentation ou affichage concrète se fait dans une couche à part appelé « template ». Ainsi, le contenu est séparé de la présentation.

Donc, Django sera considéré comme un Framework MVT ou MTV :

- Modèle : le modèle décrit la structure de données (base de données, etc.) ;

- Vue : la vue contrôle ce que l'utilisateur voit ;

- Template : s'occupe de la présentation de l'information.

Figure 22. Fonctionnement du Framework MVT(LORENT, op.cit.)

Un template est aussi appelé « gabarit ». Il s'agit simplement d'un fichier Html que la vue récupérera avant de l'envoyer à l'utilisateur par le truchement de Django.

On en revient donc au modèle MVT. Le développeur se doit de fournir le modèle, la vue et le template. Une fois cela fait, il suffit juste d'assigner la vue à une URL précise, et la page est accessible. Si le template est un fichier HTML classique, un modèle en revanche sera écrit sous la forme d'une classe où chaque attribut de celle-ci correspondra à un champ dans la base de données. Django se chargera ensuite de créer la table correspondante dans la base de données, et de faire la liaison entre la base de données et les objets de votre classe. Non seulement il n'y a plus besoin d'écrire de requêtes pour interagir avec la base de données, mais en plus le Framework propose la représentation de chaque entrée de la table sous forme d'une instance de la classe qui a été écrite. Il suffit donc d'accéder aux attributs de la classe pour accéder aux éléments dans la table et pouvoir les modifier, ce qui est très pratique !

Projet VS Application

Pour finir, parlons un tout petit peu de cette spécificité intéressante de Django.

Un projet est diffèrent d'une application. En fait, lorsque vous concevez un site web avec Django, vous êtes en train de concevoir un projet Django. Un projet peut être constitué d'une ou des plusieurs applications.

Une application Django est un ensemble des fichiers des codes Python, Django, Css, etc. qui sont obligatoirement subdivisés de telle sorte que chacun puisse avoir un rôle relatif à un aspect de l'architecture MVT.

Concrètement, vous concevez un blog avec Django. Votre blog constitue du point de vue de Django, un projet. Maintenant, pour avoir un blog, on suppose qu'on aura besoin des articles de publication, des adresses des utilisateurs, des galeries photos, etc.

Dans ce contexte, les articles, adresses, galeries constituent des applications de votre projet blog. Ainsi donc, vous aurez une application `articles'qui contiendra un modèle (la base de données contenant vos articles), un fichier pour vos vues, un ou plusieurs templates (fichiers Html, Python, css, etc.) et ainsi de suite.

Voyez l'avantage ce qu'une application bien réalisée peut être utilisée dans un autre projet simplement et sans causer des problèmes. Si un ami veut réaliser un projet de média en ligne, par exemple. Il aura besoin des articles comme pour notre projet de blog et d'autres applications aussi.

Si notre application `articles' tourne merveilleusement bien, il peut très bien nous l'emprunter et la réutiliser comme telle en l'intégrant simplement dans son projet. C'est la force de Django.

III.2.5. AUTRES OUTILS

Pour le choix de l'éditeur, nous en avons déjà parlé plus haut, il y en a beaucoup. Il suffit de choisir un éditeur qui reconnait Python. Nous avons opté pour le « Sublime Text3 ».

Figure 23. Capture de l'écran de l'éditeur « Sublime Text »

En ce qui concerne le système de gestion de base des données (SGBD); django vous en propose un : SQLite3. Il est installé en même temps que django. C'est celui que nous utiliserons pour notre travail.

C'est un système de gestion de base des données simple, souple et très pratique en développement car il fonctionne avec un serveur local tournant avec des commandes spécifiques sous MS-DOS.

Au fait, contrairement aux autres SGBD, SQLite3 est un simple fichier Python dont django se sert pour le stockage des données dans des tables. Avec SQLite3, on peut faire de très grandes choses. Il est toutefois recommandé, en production d'utiliser un SGBD standard comme MYSQL, PostgreSQL, Oracle Database ou encore Microsoft SQL server.

Conclusion partielle

Nous venons de survoler rapidement les points saillants de base pour commencer à programmer avec le langage Python. Nous avons aussi évoqués le cas du framework Django qui est un outil puissant du développement web.

Enfin, il ne s'agit pas d'un article consistant ni d'un ouvrage spécialisé sur la programmation avec Python et Django, des ouvrages entier pourraient y être consacrés.

CHAPITRE QUATRIEME : ESSAI DE MISE EN PLACE DU SYSTEME

Introduction

Après avoir soulevés les principaux points autour de la question qui nous intéresse, nous allons nous épancher tout le long du présent chapitre sur l'implémentation de notre plateforme d'aide aux étudiants, dans le cadre de leurs recherches de fin de cycle.

La plateforme en question vient proposer une piste de solution aux multiples péripéties qui encombraient jusque-là tous les étudiants finalistes en Informatique (ou pas) dans le cadre de leurs recherches ; plus particulièrement, ceux de l'ISP/Bukavu.

Il sera question d'un rapide survol des outils utilisés, de l'environnement de travail pour tout le processus, depuis la conception jusqu'à l'implémentation, en passant par le développement.

IV.0. Vue d'ensemble du fonctionnement de l'application

Nous allons ici récapituler en gros, comment fonctionne la plateforme en question.

Le visiteur (étudiant) devra disposer d'un compte pour accéder au contenu de la plateforme. S'il n'a pas encore de compte, il devra en créer en suivant les instructions qui lui sont données sur la page d'authentification.

Pour celui qui a un compte, il peut accéder à tout le contenu de la plateforme en fournissant son login et son mot de passe. Après avoir accéder à la page d'accueil de la plateforme, il aura le choix entre aller directement sur la page des thématiques et consulter ces dernières (il a également la possibilité de commenter les thématiques) ou alors aller sur la page du modèle et accéder à une thématique de son choix.

Le visiteur peut également décider de télécharger les fichiers PDF, versions papier de toutes les thématiques réunies dans un seul document. Il y a aussi quelques ouvrages intéressants proposés au téléchargement pour aider à la lecture postérieure. Voilà, c'est là le gros du fonctionnement de la plateforme.

IV.1.L'Environnement de travail

Nous avons déjà eu l'occasion d'évoquer un certain nombre d'outils qui nous ont aidés tout le long de ce projet. Essayons de récapituler le tout.

IV.1.1.La conception

Concevoir revient à apporter, donner quelque chose de nouveau. Comme nous l'avons déjà dit, il s'agit de l'étape la plus importante et la plus critique de tout le projet. Car en fait, c'est d'elle que dépendra le reste de celui-ci.

Pour rappel, l'étape de la conception consiste tout simplement à définir un cadre général pour le travail, sur base des attentes des clients. Ces dernières sont confrontées aux contraintes techniques de l'environnement. On peut ainsi arriver à se représenter un peu plus clairement, ce qu'on veut réaliser.

Durant cette phase sont généralement utilisés les outils comme :

- Les diagrammes spécialisés dans la conception des projets tels que le diagramme bête à cornes ou encore le diagramme ou arbre à objectifs et d'autres encore.

- Des outils pratique de tout bon gestionnaire (les diapositives, le bloc note, les pin-it,...).

IV.1.2 La modélisation

Nous en avons longuement parlés dans la deuxième partie de notre travail. La modélisation permettra de formaliser à un plus haut niveau d'abstraction ; le système à étudier.

Ici, on dispose essentiellement de diagrammes mais parfois, on peut aussi simuler des modèles. Les diagrammes UML permettent de faire de très bonnes choses à ce niveau. Et pour les réaliser, nous nous sommes servis de Visual Paradigm 10.2.

Figure 24. Icône de Visual Paradigm for UML 10.2

Figure 25. Fenêtre de Visual Paradigm for UML 10.2

IV.1.3. Le développement

Le développement est l'étape de codage, c'est-à-dire, qu'on tape des lignes de codes dans un langage informatique afin de concrétiser le modèle obtenu à l'étape précédente. Pour cela, on dispose d'un certain nombre d'outil.

IV.1.3.1.Le langage de programmation et accessoires

Encore une fois, nous avons déjà eu l'occasion de creuser la question au Chapitre précèdent, passons seulement de façon superficielle.

En ce qui concerne le langage de programmation, nous avons jetés notre dévolu sur le langage Python. Langage puissant, de haut niveau et orienté-objet ; il est à la fois simple (syntaxe) et très flexible (apprentissage facile) mais tout aussi rigoureux.

Dans la même optique, nous avons choisis l'un de ses meilleurs frameworks (cadre de travail facilitant le travail pour le développeur) : le framework Django. Django est entièrement écrit en Python (il n'est pas le seul) et fonctionne selon l'architecture MVT, une variante de l'architecture MVC. Voir le Chapitre troisième pour les détails approfondis.

Pour ce travail, nous avons utilisés Python 3.4 et Django 1.8.19.

IV.1.3.2. L'éditeur de texte

Au risque de se répéter, rappelons encore que nous avons optés pour le Sublime Text 3.

IV.1.3.3. SGBD et Serveur de développement

Pour le SGBD, nous avons fait le choix naturel : le SQLite3. Il s'agit du SGBD par défaut, qui est livré avec Django.

Au fait, il s'agit juste d'un simple fichier avec l'extension « sqlite3 » : Très simple, il convient pour le développement. Si vous voulez rentrez en production, il est recommandé plutôt d'utiliser un SGBD classique comme Oracle, MySql,...

Django est aussi équipé d'un serveur de développement très pratique, accessible depuis la console. Pour lancer le serveur, accédez au répertoire principal de votre projet Django que vous avez créez. Ensuite, exécutez l'une de commandes suivantes :

Attention : vous devez absolument vous trouvez à la racine de votre projet (au niveau du fichier « manage.py », fichier-commande incontournable (Voir le tracé 1 en rouge) :

Figure 26. La racine du répertoire en Django

Voici le résultat de la commande manage.py :

Figure 27. Lancement du serveur de développement de Django

Il vous suffit alors, d'ouvrir votre navigateur et de taper l'adresse (encadré en bleu dans la figure précédente) et vous verrez la page d'accueil. Vous procédez ainsi à chaque fois que vous voulez lancer le serveur. Pour couper le serveur (sous Windows), faites « Ctrl+C ».

IV.1.3.4. Autres détails

Comme dans tout ce qui est programmation orientée web, on ne peut se passer du langage HTML5 et son acolyte, le CSS3 pour la structure externe de la plateforme.

Il ne reste plus qu'à préciser peut être que Django utilise une technologie à la fois côté serveur (backend) et côté client (frontend).

En effet, les habitués des autres environnements de travail ; se rendront compte que Django factorise un trop grand nombre des fonctionnalités afin que le développeur n'ait à rédiger que le moins de code possible. Et vous pouvez me croire, ça n'a rien à voir avec Django, c'est du Python tout craché.

Django génère automatiquement un « Espace Administrateur » sympa et que vous pouvez même personnaliser. Comme quoi DRY IS DJANGO AND DJANGO IS DRY !!!

Vous vous souvenez de notre bon vieux principe DRY - non, bien ; je vous rappelle ce principe cher à Django : « Don't Repeat Yourself » (Ne réinventez pas la roue). Non, pas la peine, avancez de l'avant, toujours.

Juste pour vous le prouvez. Après avoir créé votre projet ; taper cette adresse dans votre navigateur (n'oubliez pas de lancer d'abord le serveur) :

Et vous allez fournir les informations du superuser :

Figure 28. Authentification Admin Django

Et c'est bon, vous avez un espace dédié ; sans une seule ligne de code !

Figure 29. Espace Admin Django

IV.2. La structure des tables

Afin de vous permettre de bien visualiser votre base de données SQlite3 (en mode graphique, parce que les ORM de Django font déjà des merveilles en mode console), il existe beaucoup de bons outils.

Nous avons optés pour un très bon environnement, le « DB Browser for SQLite » que vous pouvez télécharger gratuitement sur Internet.

La table « Membres » servira au stockage des informations de tous les visiteurs de notre plateforme, c'est-à-dire, tout celui qui aura créé un compte sur la plateforme.

Figure 30. La table « Membres »

La table « Thématiques » servira au stockage des toutes les thématiques publiées sur la plateforme et proposées par les spécialistes.

Figure 31. La table « thématiques »

La table « Commentaires » sera dédiée au stockage de différentes commentaires postées à la fois par les visiteurs ainsi que les spécialistes, au sujet des thématiques traitées.

Figure 32. La table « Commentaires »

La table « Spécialistes », reprend les informations concernant les auteurs des thématiques publiées.

Figure 33. La table « Spécialistes »

IV.3. Le guide d'utilisateur

Présentons promptement les interfaces de la plateforme d'aide aux étudiants finalistes dans leurs travaux de recherches.

Lancer le serveur de développement comme illustrer plus haut. Allez ensuite dans le navigateur et taper l'adresse comme on vous le montre. Vous êtes alors dirigés vers la page d'Authentification. Vous pouvez créer un compte, en cliquant sur le lien « créez-en un tout de suite » et vous remplirez tous les champs. Après, vous pouvez-vous connecter comme membre :

Figure 34. Page d'authentification

Si les données saisies sont correctes, vous êtes redirigés vers le « Tableau de bord ». Et vous avez l'embarras de choix. Le menu est composé des sections comme « Tableau de bord », « Thématiques »,  « Modèles », « Téléchargements » ainsi que le «portail elzihcom ». 

Le menu

Figure 35. Le Menu

Figure 36.Image tableau de bord

Le tableau de bord vous éclaire sur le contenu de la plateforme, en vous donnant un avant-goût de ce que vous allez pouvoir découvrir sur notre plateforme.

Figure 37. Tableau de bord : « ce que vous allez découvrir »

Figure 38. Le tableau de bord : les sections

Ici par exemple, vous avez un aperçu sur les sections que vous allez retrouver sur la plateforme. Notamment les thématiques (belle illustration avec l'évocation de l'idée de partage entre personnes de tous horizons). Et plus bas, le collège de nos spécialistes, en images.

Figure 39. Le tableau de bord : Aperçu des spécialistes

Après, libre à vous de consulter les menu selon votre choix et vos besoins. Sinon, le reste est évident. Par exemple, vous pouvez vous rendre dans les thématiques et les consulter.

Très important, les « Tags ». Ce sont des outils puissants pour la recherche. Le principe est simple : chaque thématique a au moins un tag. Grâce à celui-ci, toute autre thématique ayant au moins un de ses tags est liée à celle-ci. Pour preuve, cliquer sur un des tags (car, en réalité, il s'agit d'un lien) de la thématique

Les Tags

Clic sur le tag « tfc » pour visualiser toutes les thématiques ayant trait au tfc

Figure 40. Les tags

Et c'est bon, vous avez le résultat :

Figure 41. Thématiques tagées

Cliquer sur le premier titre en bleu, c'est-à-dire, le titre de la thématique pour accéder à son contenu. Comme ceci :

Figure 42. Les thématiques

Et vous pouvez laisser un commentaire ou bien lire ceux déjà disponibles.

Figure 43. Commenter une thématique

Un autre menu, ce sont « les modèles ». Ils sont là juste pour vous aider à suivre l'enchaînement logique des thématiques dans l'ordre. Vous pouvez encore d'ici, accéder aux thématiques mais, vous ne pouvez commenter qu'en vous rendant directement dans la thématique en question.

Figure 44. Aperçu des modèles

Figure 45. Cas d'un modèle

Prenons le cas du tfe (parce que pour l'autre bouton -mémoire-, le raisonnement reste le même-). Cliquer donc sur le bouton indiqué ci-haut :

Figure 46. Plan du modèle

Figure 47. Lien vers les thématiques à partir d'un modèle

Maintenant, cliquer sur un titre pour accéder directement à la thématique (par exemple la thématique : « Débuter la rédaction » comme indiqué plus haut).

Figure 48. Vue d'une thématique, dépuis un modèle

Effectivement, si vous vérifier à la fin de la page, aucun commentaire et nulle place pour en laisser.

Enfin, vous pouvez aller dans la section des « Téléchargements ». Là, vous trouverez, en plus des guides de rédaction, des ouvrages intéressants à votre disposition. Téléchargez-les gratuitement en cliquant sur l'icône de l'ouvrage ou le lien dans le titre en dessous de l'icône. Après la déconnexion, couper le serveur (Ctrl+C).

Figure 49. La page de télechargements

A tout moment pour vous déconnecter

Cliquer ici pour télécharger ce fichier ou alors, en bas à droite

Figure 50. Fichier téléchargeable

Conclusion partielle

Voilà, nous venons de voir les grandes fonctionnalités de notre plateforme web d'aide à l'orientation des étudiants, dans le cadre de leurs études de fin de cycle. Les aspects abordés ont tous été inspirés par la modélisation fais au deuxième chapitre.

Le résultat de ce chapitre, nous permet de répondre à la question de savoir s'il serait possible de concevoir une plateforme en ligne d'aide aux étudiants, dans l'orientation de leurs recherches de fin de cycle.

Nous avons bon espoir que le présent travail arrivera un tant soit peu, à pallier les grandes difficultés qu'éprouvent les étudiants en Informatique dans le cadre de leurs recherches.

CONCLUSION GENERALE

Chaque chose qui a un début, a forcément une fin. C'est déjà la fin de notre travail de mémoire qui a porté sur l'essai de conception et de l'implémentation d'une plateforme d'aide à l'orientation des étudiants dans leurs travaux de recherche de fin de cycle.

En début de notre travail, nous sommes partis du constat selon lequel, il y avait une difficulté évidente pour les étudiants finalistes en Informatique et d'autres. D'une part, une difficulté dans l'orientation à donner aux recherches et d'autre part, la difficulté de se tracer un chemin clair au travers duquel on veut cheminer. De ce fait, trois questions ont été soulevées :

- Quels sont les problèmes qui gangrènent les étudiants dans la rédaction de leurs TFC et Mémoires ?

- Serait-il possible de pallier le problème de l'orientation des étudiants-chercheurs dans leurs travaux de recherche ?

- Une solution purement informatique s'impose-t-elle ou faut-il aussi y adjoindre une solution adjuvante ?

- Y aurait-il moyen de concevoir et mettre en place une plate-forme web d'aide à l'orientation des étudiants dans leurs recherches de fin de Cycle ?

Dans le souci de partir du bon pied, nous avons été amenés à construire des hypothèses de travail :

· Les problèmes majeurs que rencontrent les étudiants résiderait plus dans l'orientation à prendre dans la recherche, la méthodologie et la rédaction ;

· Il serait possible de pallier le problème d'orientation des étudiants dans leurs travaux de recherche ;

· Une solution purement informatique devrait suffire pour pallier cette difficulté ;

· Il pourrait être possible de concevoir et de déployer une plate-forme web d'aide à l'orientation des étudiants en Informatique dans leurs recherches de fin de cycle.

La validité des hypothèses

Etant désormais à la fin de notre travail, nous sommes en mesure de vérifier la validité de nos hypothèses de départ.

1. Dans le cadre de la recherche que nous avons menée, il s'est avéré clairement que les problèmes d'orientation dans la recherche, la méthodologie ainsi que la rédaction étaient une épine dorsale dans le chef des étudiants. L'hypothèse 1 est validée.

2. Suite à nos recherches, nous avons effectivement prouvés qu'il était tout à fait possible de pallier en grande partie les problèmes d'orientation des étudiants dans leurs recherches, de par une bonne organisation de travail ainsi qu'une discipline rigoureuse. L'hypothèse 2 est donc validée.

3. La solution informatique apporte de grands rendements en termes de gain de temps, de la qualité du travail ou encore d'une bonne qualité du processus. Cependant, même au coeur de la technologie, le manuel dû à la réalité humaine, montre clairement que rien n'est à 100% parfait. Même pour concevoir une technologie, plein de ressources « non-informatiques » interviennent à tous les niveaux.

« Chasser le naturel, il en revient au galop », dit-on. Une solution « purement » Informatique n'existe pas. D'où, l'hypothèse 3 ne peut pas être validée.

4. Le résultat du présent travail, à savoir la plateforme que nous venons de présenter ; prouve bien que l'hypothèse 4 est validée.

Comme pour tout travail scientifique, nous avons utilisés des méthodes scientifiques :

- La méthode analytique : nous a aidés à faire une étude approfondie sur la problématique.

- La méthode comparative : nous a aidés à confronter nos sources d'information.

- La méthode descriptive : nous a aidés à décrire les faits, les outils, ...

- La méthode historique : nous a aidés à connaître le passé et l'origine des choses afin d'en trace l'évolution dans le temps et dans l'espace.

- L'architecture MVT: nous a aidés dans la conception des IHM avec notre framework Django.

- La méthode 2TUP : nous a aidés pour le langage UML.

Et des techniques :

- La navigation Internet : incontournable aujourd'hui.

- La technique documentaire : on a été feuilleter dans les ouvrages et livres qui nous ont précédés.

- La technique d'observation libre : pour observer les éléments dans leur milieu naturel.

Grâce au Seigneur Dieu Tout-Puissant, à des efforts continuels, au concourt de bien de personnes et aussi à la persévérance, nous sommes parvenus à surmonter les difficultés évoquées en début de ce travail.

Nous avons subdivisés notre travail en 4 chapitres (mise à part l'Introduction, la conclusion et du reste de la littérature) :

· Le chapitre premier, qui a porté sur les généralités du milieu d'études ;

· La chapitre deuxième, qui a porté sur la modélisation du système grâce à la méthode 2TUP et au langage UML ;

· Le chapitre troisième, qui a porté sur l'architecture MVT et la programmation web avec Python et Django.

· Le chapitre quatrième, qui a porté sur l'essai de la mise en place du système.

Ne reste peut être plus qu'à signaler que comme tout travail humain, oeuvre des mains d'hommes imparfaites, n'est pas exempt des imperfections de diverses natures. Dans la mesure où le travail a été conscrit dans une période de temps limitée, il reste largement perfectible.

Les futurs chercheurs pourraient notamment penser à étendre les fonctionnalités de la plateforme, en la dotant par exemple ; d'une bibliothèque virtuelle propre. Aussi, vu le développement fulgurant des applications et plateformes mobiles, il pourrait aussi être intéressant de développer cette approche pour la présente plateforme.

Et le mot de la fin, est que nous sommes fiers de ce que nous avons pu réaliser : ce document ainsi que l'application web qui l'accompagne.

Au mieux de nos connaissances et en toute honnêteté, nous pensons que le petit travail que voici, est notre modeste contribution à l'avancement des connaissances et a toute sa place parmi les travaux de mémoire déjà réalisés au département d'Informatique de Gestion de l'ISP/Bukavu.

REFERENCES BIBLIOGRAPHIQUES

1°/ OUVRAGES PUBLIES

- MELÉ, A. (2015).Django by Example : create your own line of successful web applications with Django. Birmingham-Mumbai : PAKT Publishing.

- SWINNEN, G. (2012).Apprenez à programmer avec Python 3. EYROLLES : Paris.

- PORTENEUVE, C. (2006).Bien développer pour le web 2.0. EYROLLES : Paris.

- BRODARD ET TAUPIN (1998).La Rousse de poche. Le livre de poche : Paris.

- Le Grand Robert de la langue française version 2.0. (2005).Le Robert/SEJER. Bureau Van Dijke.

- LONTON, A. et THOMASSON, J-J. (2006).Modélisation XML. EYROLLES : Paris.

- GLEICK, J. (1991).La théorie du chaos. Editions Flammarion. Collection Champs : Paris.

- ROQUES, P. et VALLEE, F. (2007).UML2 en action : de l'analyse des besoins à la conception (4 éme Edition). EYROLLES : Paris.

- Prolifexe (2013).Apprenez à programmer en Python[en ligne]. Openclassrooms : Paris.

- Gabory, Y. (2013).Django avancé : pour des applications web puissantes en Python. EYROLLES : Paris.

- Xhonneux, M. et Lorent, M. (2013). Concevez votre site web avec le Framework Django [en ligne]. Openclassrooms : Paris.

2°/ THESES ET MEMOIRES

- MUDEKUZA, B.E. (2014-2015). Développement et mise en place d'une base des données WEB d'exposition et consultation des compétences. Mémoire ISP/Bukavu.

- LWABOSHI, B.C. (2008-2009). Elaboration du modèle PMB à la gestion de la mini-bibliothèque du département d'Informatique de Gestion de l'ISP/Bukavu. Mémoire ISP/Bukavu.

- ROSATI, A. (2014-2015). Utilisation/exploitation des données ouvertes dans le domaine de l'accessibilité en Wallonie. Département d'Informatique de Gestion à la haute-école Provinciale des Hainaut Condorcet en Belgique.

- C. MERONÉ, S. (2008). De la représentation du français et du créole dans le cinéma haïtien : le cas du film « Barikard ». Mémoire de Licence : Port-au-Prince. Université d'Etat d'Haïti.

3°/SUPPORT DE COURS

- ZIULU, E. (2018). COURS DE PEDAGOGIE EXPERIMENTALE. ISP/Bukavu, inédit.

- TSHUND'OLELA, E.T. (2015). COURS D'INITIATION A LA RECHERCHE SCIENTIFIQUE (IRS). Isp/Bukavu.

- ASSIE, G.R. et KOUASSI, R.R. (2018). COURS D'INITIATION A LA METHODOLOGIE SCIENTIFIQUE. Ecole Pratique de la Chambre de Commerce et Industrie. Inédit : Abidjan.

4°/WEBOGRAPHIE

- https://www.etudier.com/dissertations/Les-Differents-Types-De-Recherche-Et/46479714.html , (consulté le 17/12/2018 à 12h30')

- http://www.dynamique-mag.com/article/rd-coeur-entreprise.1996 , (consulté le 27-01-2019 à 22 : 55)

- https://www.e-marketing.fr/Définitions-Glossaire/Recherche-developpement-242907.htm#oTA09qCWHooQIRY.97, (Consulté le 27/01/2019 à 23 :13)

- https://www.corep.fr/le-guide-du-mémoire/les-types-de-mémoire , (Consulté Jeudi, le 20/12/2018, 11h45)

- http://www.python.org(Consulté Vendredi, le 22/03/2019, 13h00)

- http://djangosnippets.org(Consulté Vendredi, le 22/03/2019, 15h50)

5°/ARTICLES ET TUTORIELS

- Etchecopar, P. et RIMOUSKI, C.De (2018). [en ligne] Quelques éléments sur la théorie de chao.

- Les tutoriels sur Django de Monsieur Honoré HOUNWANOU sur le site www.teachersdunet.com

LA TABLE DE MATIERES

Table des matières

IN MEMORIUM Erreur ! Signet non défini.

DEDICACE II

REMERCIEMENTS III

SIGLES ET ABBREVIATIONS IV

LISTE DES TABLEAUX ET FIGURES V

0. INTRODUCTION - 1 -

0.1. PREAMBULE (CONTEXTE) - 1 -

0.2. PROBLEMATIQUE - 3 -

0.3. HYPOTHESES - 4 -

0.4. ETAT DE LA QUESTION - 4 -

0.4. OBJECTIFS - 5 -

0.4.1. OBJECTIF GENERAL - 5 -

0.4.2. OBJECTIFS SPECIFIQUES - 6 -

0.5. CHOIX ET INTERET DU SUJET - 6 -

0.6. DELIMITATION DU SUJET - 6 -

0.7. METHODES ET TECHNIQUES - 6 -

0.7.1. METHODES - 6 -

0.7.3. TECHNIQUES - 7 -

0.8. DIFFICULTES RENCONTREES - 8 -

0.9. SUBDIVISION DU TRAVAIL - 8 -

CHAPITRE PREMIER : GENERALITES SUR LA RECHERCHE - 9 -

I.I. DEFINITION DES CONCEPTS - 9 -

1. LA SCIENCE - 9 -

2. LA RECHERCHE - 15 -

3. LA RECHERCHE SCIENTIFIQUE - 17 -

LA RESOLUTION D'UN PROBLEME SCIENTIFIQUE - 18 -

PUBLICATION SCIENTIFIQUE VERSUS LITTERATURE SCIENTIFIQUE - 30 -

4. TRAVAUX DE FIN DE CYCLE - 31 -

5. LE MEMOIRE - 33 -

6. LE GUIDE DE REDACTION DE MEMOIRE - 38 -

CHAPITRE DEUXIEME : MODELISATION AVEC LE PROCESSUS UP - 40 -

II.1. MODELE - 40 -

II.2. LANGAGE DE MODELISATION ET METHODE DE MODELISATION - 41 -

II.3. LA METHODE DE DEVELOPPEMENT UP - 42 -

II.3.1. Le 2TUP - 43 -

II.3.2. MODELISATION AVEC LE LANGAGE UML - 44 -

CHAPITRE TROISIEME : EBAUCHE SUR LA PROGRAMMATION WEB AVEC PYTHON/DJANGO - 62 -

III.1. LE LANGAGE PYTHON - 62 -

III.1.1. Présentation du langage - 62 -

III.1.2. Caractéristiques - 63 -

III.1.3. INSTALLATION ET DEPLOIEMENT - 64 -

III.2. LE FRAMEWORK DJANGO - 66 -

III.2.1. Présentation - 66 -

III.2.2. Philosophie Django - 67 -

III.2.3. Téléchargement et installation - 68 -

III.2.4. FONCTIONNEMENT DE DJANGO : LE MODELE MVC/MVT - 70 -

III.2.5. AUTRES OUTILS - 72 -

CHAPITRE QUATRIEME : ESSAI DE MISE EN PLACE DU SYSTEME - 74 -

IV.1.1.La conception - 75 -

IV.1.2 La modélisation - 75 -

IV.1.3. Le développement - 76 -

IV.2. La structure des tables - 80 -

IV.3. Le guide d'utilisateur - 82 -

CONCLUSION GENERALE - 96 -

La validité des hypothèses - 96 -

REFERENCES BIBLIOGRAPHIQUES - 99 -

1°/ OUVRAGES PUBLIES - 99 -

2°/ THESES ET MEMOIRES - 99 -

3°/SUPPORT DE COURS - 100 -

4°/WEBOGRAPHIE - 100 -

5°/ARTICLES ET TUTORIELS - 100 -

LA TABLE DE MATIERES - 101 -

ANNEXES - 103 -

I/ LE FICHIER DE BASE - 103 -

II/ MODELE MVT - 105 -

1. Code du modèle (thématiques) : fichier models.py des thématiques - 105 -

2. Code d'une vue (thématiques) : fichier views.py des thématiques - 106 -

3. Code d'un template (thématiques) : fichier base.html des thématiques - 108 -

ANNEXES

Code sources de fonctionnalités clé :

I/ LE FICHIER DE BASE

Le fichier base.html est le modèle père dont les autres templates vont hérités.

II/ MODELE MVT

1. Code du modèle (thématiques) : fichier models.pydes thématiques

Voici un extrait du modèle Modèle-Vue-Template sur lequel est basé Django.

2. Code d'une vue (thématiques) : fichier views.py des thématiques

3. Code d'un template (thématiques) : fichier base.html des thématiques

4. Pour rélier les modèles aux vues et aux templates, on les urls.

Code d'urls : fichier urls.py du projet






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Nous devons apprendre à vivre ensemble comme des frères sinon nous allons mourir tous ensemble comme des idiots"   Martin Luther King