34 0 3MB
I
EPIGRAPHE
« L’ordinateur est né pour résoudre des problèmes qui n’existaient pas auparavant. » (Bill Gates)
II
DEDICACE
J’ai le grand plaisir de dédier ce modeste travail, A ma très chère mère KAPEND KABWIZ Annie, qui me donne toujours l’espoir de vivre et qui n’a jamais cessé de prier pour moi, A toute ma famille, source de joie et de bonheur, A tous ceux qui m'ont assisté d'une manière ou d'une autre de loin ou de près, A tous ceux voulant continuer cette œuvre, A vous cher lecteur.
KAPEND A KALEND Arsène
III
AVANT-PROPOS Les réseaux informatiques, éléments essentiels des technologies actuelles de transmission des données, leur traitement et leur restitution touchent de plus en plus notre vie courante. Nous comptons sur les services offerts par les réseaux (le service web, le service de messagerie, le service de partage des fichiers, etc.,), ces services sont de ce fait devenus indispensables. La gestion et la maitrise de ceux-ci posaient un réel problème. Actuellement avec la taille grandissante de réseaux informatiques d’entreprise, il est nécessaire d’offrir des services pour contribuer au bon fonctionnement de l’entreprise et d’agir le plus vite possible en cas des problèmes. Pour ce faire, il faut obtenir les services web et, d’où l’utilité de recourir aux outils des services des réseaux. Notre objectif est donc de mettre en place un portail web de téléchargement des cours et publication des mémoires au sein de l’UTM 1er.
IV
REMERCIEMENTS Nous remercions l’éternel Dieu, l’auteur de notre souffle de vie qui ne cesse de renouveler ses bontés chaque jour dans notre vie, pour nous avoir donné la force, la santé et l’intelligence nécessaires pour accomplir ce présent travail du troisième bachelier au sein de l’Université Technologique M’siri 1er de Bunkeya. Nos remerciements s’adressent aux autorités de l’Université Technologique M’siri 1 , en particulier, le promoteur MWAMI MWENDA BANTU MASUKA KANERANERA MUNONGO GODEFROID JUNIO, le recteur Professeur Dr. Ir. Gustave MUKOKO, le secrétaire général académique INANZALA GUY-MARIE, le secrétaire général administratif MULWANI, au doyen de la faculté de l’informatique l’assistant MUSOYA KYULU Elie, pour le temps qu’ils nous ont accordé durant notre formation. Nous remercions grandement notre directeur, P.O MUFIND Ebedon qui a bien voulu assurer la direction de ce travail malgré ses multiples occupations, et a pu supporter nos faiblesses et erreurs. Sa rigueur scientifique et son indulgence nous inspirent un exemple à suivre, aux lecteurs d’avoir disposé leur temps afin d’apporter les meilleures de leur connaissance à notre travail. Nous adressons nos sentiments de gratitude à nos professeurs et assistants de er
l’UTM 1er en général et en particulier ceux de la faculté de sciences de l’informatique, nous citons : l’assistant DIBAZOKIZE Gabriel, l’assistant LUNDA KASONGO Jerry, de nous avoir dispensé différents cours afin que nous ayons des connaissances suffisantes et d’avoir fait de leur mieux pour que ce travail ait un sens dans son contenu. Nos remerciements les plus sincères s’adressent à toute la famille, en particulier à ma mère KAPEND KABWIZ Annie qui a déployée ses efforts pour l’éducation de leur fils, à papa Jean-Pierre KASONGO LEMBALEMBA, à l’assistant Anaclet KABAMBI, à mes frères et sœurs, MUZANG TSHINYAM Fabrice, MUJING IRUNG MUTOMB A KALEND Reagan, NGAMB A KALEND Clarice, KAPEND KABWIZ Angèle, MUKATSHILAND TSHILEF Joël, NAMBIND KANON Blanchette, KABEY Jean-Marie, KALEND Josué, DASILVA et à ma bien aimée MUKUNDI TSHILUMBA Gracia. Nous tenons à remercier tous nos amis et collègues de promotion qui ont apporté leurs concours à la rédaction de ce travail dont les noms suivent : MUTOMBO MWADI Jean, MASUKA Rosie, LUKANDA KITENGE Anaclet. Que tous ceux qui, de près ou de loin ont contribué à la rédaction du présent travail et dont nous n’avons pas cité trouvent à travers ce travail l’expression de notre gratitude.
KAPEND A KALEND Arsène
V
SIGLES ET ABREVIATIONS UP
: Unified Process
UML
: Unified Modeling Language
HTML
: Hypertext Mark-Up Language
CSS
: Cascading style sheets
PHP
: HyperText Preprocessor
SGBD
: Système de gestion de base de données
SQL
: Structured Query Language
TCP/IP
: Transmission control Protocol/ internet Protocol
WWW
: Word Wide Web
XHTML
: Extensible Hypertext Mark-Up Langage
XML
: Extensible Mark-Up Langage
PDF
: Portable Document Format
URL
: Uniform Resource Locator
HTTP
: Hypertext Transfer Protocol
VI
TABLE DES ULLISTRATION Figure 1: Présentation des diagrammes UML ______________________________________________________ 6 2: Diagramme de cas d'utilisation _______________________________________________________________ 8 3: diagramme d'activité _______________________________________________________________________ 9 4:Interface d'administration XAMPP ____________________________________________________________ 16 5: logo MySQL _____________________________________________________________________________ 17 Figure 6: Diagramme fonctionnel ______________________________________________________________ 21 Figure 7: diagramme de cas d'utilisation métier __________________________________________________ 23 Figure 8: Diagramme d'activité métier __________________________________________________________ 24 Figure 9: Diagramme de classe ________________________________________________________________ 25 Figure 10: Diagramme de cas d'utilisation système _______________________________________________ 29 Figure 11: séquence s'authentifier _____________________________________________________________ 36 Figure 12: gérer les étudiants _________________________________________________________________ 37 Figure 13:publier mémoire ___________________________________________________________________ 38 Figure 14:ajouter étudiant ___________________________________________________________________ 39 Figure 15: Diagramme de sequence ajouter un étudiant ____________________________________________ 39 Figure 16: modifier étudiant __________________________________________________________________ 40 Figure 17: diagramme de séquence modifier un étudiant ___________________________________________ 40 Figure 18: supprimer un étudiant ______________________________________________________________ 41 Figure 19: diagramme de séquence supprimer un étudiant _________________________________________ 41 Figure 20: séquence commenter _______________________________________________________________ 42 Figure 21: Diagramme des classes du nouveau système ____________________________________________ 43 Figure 22: Top 20 des langages de programmation au 1er trimestre 2020 selon RedMonk ________________ 46 Figure 23: table membre _____________________________________________________________________ 49 Figure 24: table mémoire ____________________________________________________________________ 49 Figure 25: page d'accueil _____________________________________________________________________ 50 Figure 26:menu contextuel ___________________________________________________________________ 50 Figure 27:formulaire d'inscription ______________________________________________________________ 51 Figure 28: confirmation inscription _____________________________________________________________ 51 Figure 29: page d'authentification _____________________________________________________________ 52 Figure 30: profil étudiant _____________________________________________________________________ 52 Figure 31: publication des mémoires ___________________________________________________________ 53 Figure 32: page des mémoires ________________________________________________________________ 53 Figure 33: page des commentaires _____________________________________________________________ 54 Figure 34:gerer étudiant _____________________________________________________________________ 54 Figure 35: modification du profil étudiant _______________________________________________________ 55 Figure 36:messagerie étudiant ________________________________________________________________ 55 Figure 37: page de recherche _________________________________________________________________ 56 Figure 38: page des résultats de recherche ______________________________________________________ 56
Table 1: Acteurs du système .................................................................................................................................. 28
VII
TABLE DES MATIERES EPIGRAPHE .......................................................................................................................................... I DEDICACE............................................................................................................................................ II AVANT-PROPOS ............................................................................................................................... III REMERCIEMENTS ........................................................................................................................... IV SIGLES ET ABREVIATIONS ........................................................................................................... V INTRODUCTION GENERALE .......................................................................................................... 1 CHAPITRE I : DEFINITION DES CONCEPTS .............................................................................. 5 1. CADRE THEORIQUE ________________________________________________________ 5 2. LE LANGAGE UML _________________________________________________________ 5 2.3. Les diagrammes UML ............................................................................................................ 6 2.4. Les méthodes sur UML ........................................................................................................ 10 2.5. Méthode UP........................................................................................................................... 10 3. LE WEB ___________________________________________________________________ 12 3.1 Le Page web, le Site web et l’internet .................................................................................. 13 3.2. Les langages du web et technologies web ........................................................................... 14 3.3. Le portail web ....................................................................................................................... 19 3.4. Les bases de données ............................................................................................................ 19 4. CONCLUSION _____________________________________________________________ 19 CHAPITRE II : PRÉSENTATION DE L’UT-M’SIRI 1er ET ANALYSE METIER ................... 20 1. INTRODUCTION ___________________________________________________________ 20 2. DENOMINATION __________________________________________________________ 20 3. HISTORIQUE ______________________________________________________________ 20 4. SITUATION GEOGRAPHIQUE ______________________________________________ 20 5. FONCTIONNEMENT DE L’UNIVERSITÉ TECHNOLOGIQUE M'SIRI 1ER ________ 21 6. ANALYSE METIER _________________________________________________________ 22 6.1. Appréhender le domaine de l’application .......................................................................... 22 6.2. Capturer les spécificités du domaine .................................................................................. 23 6.3. Modèle de l’entreprise ou du domaine ............................................................................... 25 7. CRITIQUE DE L’EXISTANT ET APPORT DE NOTRE SYSTEME _______________ 25 7.1 Critique de l’existant ............................................................................................................. 25 7.2 Apport de notre système ....................................................................................................... 25 8. CONCLUSION _____________________________________________________________ 26 CHAPITRE III : CONCEPTION DU NOUVEAU SYSTÈME ...................................................... 27 1. CONCEPTION PRELIMINAIRE______________________________________________ 28 2. CONCEPTION DETAILLEE _________________________________________________ 36 3. CONCLUSION _____________________________________________________________ 43 CHAPITRE IV : IMPLEMENTATION DE LA SOLUTION ........................................................ 44 1. INTRODUCTION ___________________________________________________________ 44 2. LES TYPES D’APPLICATIONS WEB _________________________________________ 44 2.1 Application Web statique...................................................................................................... 44 2.2 Application Web dynamique ................................................................................................ 44 3. LES MEILLEURS LANGAGES DE PROGRAMMATION POUR LE WEB __________ 44 4. TOP 20 DES LANGAGES DE PROGRAMMATION AU 1 ER TRIMESTRE 2020 ____ 46 5. LES TECHNOLOGIES ET LANGAGES UTILISE S DANS NOTRE APPLICATION _ 48 6. LE MODELE PHYSIQUE DES DONNEES (MPD) _______________________________ 49 7. LES FONCTIONNALITES DEVELOPPEES ____________________________________ 50 8. INTERFACES DE L’APPLICATION __________________________________________ 50 9. CONCLUSION _____________________________________________________________ 56 CONCLUSION GÉNÉRALE............................................................................................................. 57 BIBLIOGRAPHIE ................................................................................................................................ 58
1
INTRODUCTION GENERALE C’est depuis 2017 que notre université UTM’SIRI (Université Technologique M’SIRI 1ER) a vu jour, et il se fait que 2022 sera la première année pour la production de ces premiers fruits qui ne sont nul autre que les étudiants finalistes en route vers l’obtention d’un diplôme de licence. En tant qu’étudiant finaliste, il a été question de rédiger un mémoire qui représente un projet dont le but et de résoudre un problème rencontré dans notre société environnante. Dans notre cas, la plupart de temps nous le passons au sein de l’université, voilà pourquoi notre projet résoudra un problème rencontré au sein de cette dernière. En tant qu’ingénieur en devenir, la prévention est capitale car elle permet de diminuer le cout ainsi que les risques. Tous les mémoires qui seront rédigés doivent être conservés afin de servir de modèle pour les prochains finalistes. Il est vrai qu’un système manuel peut être mise en place pour permettre la conservation de ce dernier en dur ; mais pour combien de temps ? Car le fait qu’il soit utilisé à plusieurs reprise va le rendre usager et encore plus grave, il n’y aura pas possibilité que deux ou plusieurs étudiants consultent un même mémoire au même moment. Voilà pourquoi nous avons opté le web pour solution vu ces différents services offerts qui ne sont plus un secret pour personne, car tous, nous sommes témoins de cela. Au vu de tous ce qui vient d’être dit ci-haut, nous avons opté pour sujet : « MISE EN PLACE
D’UN
PORTAIL
WEB
DE
TELECHARGEMENT
DES
COURS
ET
PUBLICATIONS DES MEMOIRES ‘ CAS DE L’UNIVERSITE TECHNOLOGIQUE M’SIRI 1ER DE BUNKEYA’ » Après une série d’études sur un certain nombre des thèmes presque ou en rapport à l’énoncé de notre recherche, les obligations nous ont conduits à faire un tour d’horizon des travaux déjà réalisés comme celui de : Elie Master BOSA KIYIKA [1] « Implémentation d'une application web pour la publication des résultats de fin d'année scolaire aux humanités » Cas du complexe scolaire LEMFU, ISIPA - Gradué 2014. NDATO Jean Luck [2] « conception et réalisation d'un site web boutique en ligne ». Cas du magasin disco la bible à Goma, 2017-2018. Pour remédier à cette situation, leurs problématiques s'articulaient autour des questions suivantes :
2
Comment contourner la méthode traditionnelle de publication de résultats nécessitant la présence inévitable des élèves à l'école ?
Comment faire parvenir automatiquement à un temps record les informations aux clients concernant les nouveaux produits, les réductions et les produits qui sont disponibles dans le magasin ? Ils ont affirmé à titre d'hypothèses que :
L'implémentation d'une application web sera utile
Un site web de vente en ligne serait le seul moyen de remédier facilement à un système publicitaire très lent et couteux. Seront des meilleures réponses à toutes les questions. Quant à nous, nous avons trouvé utile, de doter l’université technologique M’SIRI 1er
de Bunkeya d'un système d’information numérisé qui facilitera aux étudiants de télécharger des cours et publier les mémoires en ligne après la défense pour une consultation plus aisée. L’accès au supports des cours à l’UT M’siri 1er cause un problème, du fait que son système d’information utilisé est toujours manuel et ne répond pas aux normes de l’évolution du monde actuel. La plupart des assistants oublie parfois de donner leurs supports de cours aux étudiant, et ce problème fait que beaucoup d’étudiants travaillent mal aux examens juste parce qu’ils n’ont pas l’accès libre à l’information en temps voulu et à l’endroit voulu. Au vu des problèmes constatés, nous nous sommes posé certaines questions qui feront l’objet de notre investigation : Comment rendre disponible en permanence les documents scientifiques pour les étudiants ? Quelle méthodologie est la mieux adaptée pour permettre la concrétisation de notre projet ? Quelle technologie à adopter pour respecter les couts ainsi que le délai prévu dès le départ ? Concernant la première question qui a traitée sur la disponibilité permanente des documents pour les étudiants, nous avons opté pour solution la mise en place d’un système d’information qui se définit comme suit : un ensemble organisé d'éléments qui permet de regrouper, de classifier, de traiter et de diffuser de l'information sur un phénomène donné. [3]
3
Concernant la deuxième question qui s’est vu reposer sur la méthodologie : nous avons optés pour la méthode UP (analyse et conception) et XP (pour le développement). Et en fin concernant la technologie a adopté, notre choix a été porter sur le web qui nous permettra un respect du délai ainsi que du cout vu sa portabilité. En rédigeant ce mémoire, nous poursuivons comme objectif : 0. Permettre un accès facile aux documents par les différents selon leurs facultés ; 1. Faciliter aux étudiants finalistes de publier leurs mémoires ; 2. Acquérir de l’expérience sur la rédaction d’un projet. L'évolution croissante des nouvelles technologies de l'information et de la communication a donné de nos jours, à toute organisation, la clé de son propre développement en mettant à sa disposition une myriade d'outils tant logiciel que matériel. Ainsi, trois raisons primordiales justifient le choix de notre sujet, à savoir : 1. Le souci permanent d'approfondir nos connaissances dans le domaine ; 2. Mise à la portée de l’Université Technologique M’siri 1er en sigle UTM ’siri 1er un portail web pour le téléchargement des cours et publications des mémoires ; 3. Mise à la disposition des uns et des autres une source d'approvisionnement incontestable pour les futurs chercheurs qui aborderont le même thème de la recherche que nous. Les intérêts poursuivis dans ce travail sont les suivants : 1. La maitrise de l’usage d’une méthodologie dans un projet informatique 2. La conciliation de la théorie vue dans les auditoires à la pratique de la vie réelle Tout travail scientifique repose sur la méthodologie, c’est-à-dire la méthode et les techniques utilisées dans l’élaboration du travail. Elle renferme la procédure utilisée pour collecter et traiter les informations recueillies sur le terrain de recherche. Concernant notre problématique, pour atteindre nos objectifs, nous allons utiliser la méthode suivante : Méthode UP : Le Processus Unifié ou UP (Unified Process) permet d’affecter des tâches et des responsabilités au sein d’une organisation de développement logiciel. Le processus unifié utilise le langage UML et il est piloté par les cas d’utilisation. Pour la récolte des données, nous avons utilisé les techniques ci-après :
4
La technique d’analyse : cette technique nous permettra de relever les différentes spécifications de futurs utilisateurs de notre système. La technique de conception : cette technique nous permettra de représenter schématiquement les fonctionnements de notre futur système par l’usage des différents diagrammes offerts par l’artefact UML (Unified Modeling Language) ; La technique d’implémentation : celle-ci nous permettra de transcrire notre modèle schématisé en un ensemble des lignes de codes dans un langage donné. Pour la délimitation de notre travail : Spatial : L'UTM’siri 1er est en République Démocratique du Congo dans la Province du Lualaba Territoire de Lubudi chefferie de Bayekes dans le village de Bunkeya. Temporel : Les données de cette étude ont été récoltées pendant une période allant d’avril à novembre 2022. Sans compter l’introduction et la conclusion, ce travail est subdivisé en quatre chapitres :
Le premier chapitre parlera sur la définition de concepts liés à UML ainsi qu’au monde du Web
Le second chapitre sera consacré à la présentation de l’UTM 1er et à l’analyse métier
Le troisième chapitre parlera quant à lui sur la conception du nouveau système d’information
Au dernier chapitre, nous parlerons de l’implémentation de la solution
5
CHAPITRE I : DEFINITION DES CONCEPTS 1. CADRE THEORIQUE La conduite d'un travail de mise en place d'un portail web de téléchargement des cours et publications de mémoires en ligne au sein d'une université; nécessite avant tout des aptitudes documentaires techniques (indexation, classification) mais aussi une certaine culture de systèmes d'information modernes et de différents outils de traitement et de diffusion sur l'internet ; d'où la nécessité d'un rappel de quelques concepts liés à l’UML et aux technologies web, lesquelles technologies sont utilisées dans ce travail.
Mise en place : Action d'installer, placer. Action d'agencer, de mettre quelque chose à une certaine place. [4]
Portail web : Un portail web est un site web qui offre une porte d'entrée commune à un large éventail de ressources et de services accessibles sur Internet et centrés sur un domaine d'intérêt ou une communauté particulière. [5]
Mémoire : Un mémoire est un document permettant d'exposer son opinion concernant un sujet donné. [6]
Téléchargement : Transfert vers un ordinateur local d’un fichier situé sur un ordinateur distant, via un réseau de télécommunications. [7]
Cours : Ensemble de leçons, de conférences données par un professeur et formant un enseignement. [8]
2. LE LANGAGE UML 2.1. Définition d’UML C’est un langage de modélisation graphique à base de pictogrammes, conçu pour représenter, spécifier les artefacts de systèmes logiciels, de plus il est destiné à comprendre et décrire des besoins spécifiés et documentés des systèmes, esquissé des architectures logicielles, concevoir des solutions et communiquer des points de vue, comme il peut être appliqué à toutes sortes de systèmes ne se limitant pas au domaine informatique. [9] 2.2. Point fort et points faibles d’UML 2.2.1. Point fort Il permet ainsi :
Un gain de précision.
6
Un gage de stabilité.
L’utilisation d'outils.
Il cadre l'analyse et facilite la compréhension de représentations abstraites complexes. Son caractère polyvalent et sa souplesse en font un langage universel. 2.2.2. Points faibles
La mise en pratique d'UML nécessite un apprentissage et passe par une période d'adaptation.
L'intégration d'UML dans un processus n'est pas triviale, et améliorer un processus est une tâche complexe et longue.
2.3. Les diagrammes UML Un diagramme UML est une représentation graphique, qui s'intéresse à un aspect précis du Modèle. Chaque type de diagramme UML possède une structure et véhicule une sémantique précise. 2.3.1 Les différents types de diagrammes UML L'UML définit 14 types de diagrammes divisés en deux catégories. [9] La figure suivante nous montre les 14 types de diagrammes :
Figure 1: Présentation des diagrammes UML
7
Les diagrammes de structure représentent les éléments du système, leurs propriétés et leurs relations entre eux :
Diagramme de classes ;
Diagramme d'objets ;
Diagramme de composants ;
Diagramme de structure composite ;
Diagramme d'ensemble ;
Diagramme de déploiement ;
Diagramme de profil.
Les diagrammes de comportement représentent les processus et les interactions entre les objets :
Diagramme de cas d'utilisation ;
Diagramme d'activité :
Diagramme d'état-transition ;
Diagramme de séquence ;
Diagramme de communication ;
Diagramme de temps ;
Diagramme d'aperçu d'interaction.
I.2.3.2 Le diagramme de cas d’utilisation Ce diagramme est destiné à représenter les besoins des utilisateurs par rapport au système. Il constitue un des diagrammes les plus structurants dans l’analyse d’un système [10]. Acteur : Représente un rôle joué par une entité externe (utilisateur humain, dispositif matériel ou autre système) qui interagit directement avec le système étudié. Voir la figure 2. Cas d’utilisation (use case) : Représente un ensemble de séquences d’actions qui sont réalisées par le système et qui produisent un résultat observable intéressant pour un acteur particulier. Les relations entre acteurs : La seule relation entre acteur est la relation de généralisation. Quand un acteur fils hérite d’un acteur père, il hérite en réalité de toutes les associations du père. Les relations entre cas d’utilisation :
8
Relation d’inclusion : Une relation d’inclusion d’un cas d’utilisation A par rapport à un cas d’utilisation B signifie qu’une instance de A contient le comportement décrit dans B.
Relation d’extension : Une relation d’extension d’un cas d’utilisation A par un cas d’utilisation B signifié qu’une instance de A peut être étendue par le comportement décrit dans B.
Relation de généralisation : Les cas d’utilisation descendants héritent de la description de leurs parents communs. Chacun d’entre eux peut néanmoins comprendre des interactions spécifiques supplémentaires.
2: Diagramme de cas d'utilisation I.2.3.3 Diagramme de séquence Ce diagramme permet de décrire les scénarios de chaque cas d’utilisation en mettant l’accent sur la chronologie des opérations en interaction avec les objets. Scénario : Représente une succession particulière d’enchaînements, s’exécutant du début à la fin du cas d’utilisation, un enchaînement étant l’unité de description de séquences d’actions. Ligne de vie : Représente l’ensemble des opérations exécutées par un objet. Message : Un message est une transmission d’information unidirectionnelle entre deux objets, l’objet émetteur et l’objet récepteur. Dans un diagramme de séquence, deux types de messages peuvent être distingués :
Message synchrone : Dans ce cas l’émetteur reste en attente de la réponse à son message avant de poursuivre ses actions.
9
Message asynchrone : Dans ce cas, l’émetteur n’attend pas la réponse à son message, il poursuit l’exécution de ses opérations.
I.2.3.4 Diagramme d’activité Ce diagramme donne une vision des enchaînements des activités propres à une opération ou à un cas d’utilisation. Il permet aussi de représenter les flots de contrôle et les flots de données. La figure suivante nous montre un diagramme d’activité :
3: diagramme d'activité Action : correspond à un traitement qui modifié l’état de système. L’enchaînement des actions constitue le flux de contrôle. Le passage d’une action à une autre est matérialisé par une transition. Les transitions sont déclenchées par la fin d’une action et provoquent le début d’une autre (elles sont automatiques). Activité : représente le comportement d’une partie du système en termes d’actions et de transitions. I.2.3.5 Diagramme de classe Le diagramme de classes est le point central dans un développement orienté objet. En analyse, il a pour objectif de décrire la structure des entités manipulées par les utilisateurs. En conception, le diagramme de classes représente la structure d’un code orienté.
10
Une classe : Représente la description abstraite d’un ensemble d’objets possédant les mêmes caractéristiques. On peut parler également de type. Un objet : Est une entité aux frontières bien définies, possédant une identité et encapsulant un état et un comportement. Un objet est une instance (ou occurrence) d’une classe. Un attribut : Représente un type d’information contenu dans une classe. Une opération : Représente un élément de comportement (un service) contenu dans une classe. Une association : Représente une relation sémantique durable entre deux classes Une superclasse : Est une classe plus générale reliée à une ou plusieurs autres classes plus spécialisées (sous-classes) par une relation de généralisation. Les sous-classes « Héritent » des propriétés de leur superclasse et peuvent comporter des propriétés spécifiques supplémentaires. I.2.3.6. Diagramme de déploiement Ce diagramme décrit l’architecture technique d’un système avec une vue centrée sur la répartition des composants dans la configuration d’exploitation 2.4. Les méthodes sur UML Il existe plusieurs méthodes de développement logiciel construites sur UML comme la méthode :
UP;
RUP;
TTUP;
UP agile;
XP ;
2TUP, etc. Parmi ses méthodes notre choix est basé sur la méthode UP (Unified Process).
2.5. Méthode UP Le processus unifié est un processus de développement logiciel itératif, centré sur l'architecture, Piloté par des cas d'utilisation et orienté vers la diminution des risques. C'est un patron de processus pouvant être adaptée à une large classe de systèmes logiciels, à différents
11
domaines d'application, à différents types d'entreprises, à différents niveaux de compétences et à différentes tailles de l'entreprise. 2.5.1. Les principes d’UP Processus Unifié Le processus unifié s’appuie sur les principes suivants : Piloté par les cas d’utilisation : Comme nous avons déjà vu, un cas d’utilisation représente une fonctionnalité qui satisfait un besoin d’un utilisateur. Le processus suit une voie spécifique, en procédant par une série d’enchaînement d’activités, dérivées d’un cas d’utilisation. Un cas d’utilisation est analysé, conçu, implémenté et enfin testé. Centré sur l’architecture : L’architecture logicielle représente les aspects statiques et dynamiques du système. L’architecture émerge des besoins de l’entreprise, tels qu’ils sont exprimés par les utilisateurs et reflétés par les cas d’utilisation. L’architecture propose une vue d’ensemble de la conception faisant ressortir les caractéristiques essentielles en laissant de côté les détails secondaires. Il faut noter que tout produit est à la fois forme et fonction. L’une ou l’autre isolément ne saurait suffire. Les cas d’utilisation et l’architecture doivent s’équilibrer pour créer un produit réussi. Itératif et incrémental : Vu que les projets à réaliser sont de plus en plus complexes et grands, l’idée est de découper le travail en mini projets. Chacun d’entre eux représente une itération qui donne lieu à un incrément. Les itérations désignent des étapes de l’enchaînement d’activités, tandis que les incréments correspondent à des stades de développement du produit I.2.5.1. Les phases du processus unifié : Le processus unifié se déroule en quatre phases, incubation, élaboration, construction et transition. Chaque phase répète un nombre de fois une série d’itérations. Et chaque itération est composée de cinq activités : capture des besoins, analyse, conception, implémentation et test.
12
Incubation : C’est la première phase du processus unifié. Il s’agit de délimiter la portée du système, c’est-à-dire tracer ce qui doit figurer à l’intérieur du système et ce qui doit rester à l’extérieur, identifier les acteurs, lever les ambiguïtés sur les besoins et les exigences nécessaires dans cette phase. Il s’agit aussi d’établir une architecture candidate, c’est-à-dire que pour une première phase, on doit essayer de construire une architecture capable de fonctionner. Dans cette phase, il faut identifier les risques critiques susceptibles de faire obstacles au bon déroulement du projet. Elaboration : C’est la deuxième phase du processus. Après avoir compris le système, dégagé les fonctionnalités initiales, précisé les risques critiques, le travail à accomplir maintenant consiste à stabiliser l’architecture du système. Il s’agit alors de raffiner le modèle initial de cas d’utilisation, voire capturer de nouveaux besoins, analyser et concevoir la majorité des cas d’utilisation formulés, et si possible implémenter et tester les cas d’utilisation initiaux. Construction : Dans cette phase, il faut essayer de capturer tous les besoins restants car il n’est pratiquement plus possible de le faire dans la prochaine phase. Ensuite, continuer l’analyse, la conception et surtout l’implémentation de tous les cas d’utilisation. A la fin de cette phase, les développeurs doivent fournir une version exécutable du système. Transition : C’est la phase qui finalise le produit. Il s’agit au cours de cette phase de vérifier si le système offre véritablement les services exigés par les utilisateurs, détecter les défaillances, combler les manques dans la documentation du logiciel et adapter le produit à l’environnement (mise en place et installation).
3. LE WEB L'internet est défini comme un réseau informatique mondial, constitué d'un ensemble de réseaux, reliant de millions d'ordinateurs de types différents mais pouvant échanger des informations, grâce à un ensemble de protocoles communs à plusieurs réseaux que ce dernier
13
définit. Cette connexion, se fait le plus souvent au moyen de lignes téléphoniques publiques et privées.
3.1 Le Page web, le Site web et l’internet 3.1.1. Page web La page web est le document qui apparaît sur un écran d'ordinateur et qui se présente sous forme de texte, de son, d'images etc. Une page web est écrite dans un langage particulier appelé le HTML. 3.1.2. Site web Un site web est constitué de l'ensemble des pages web créées par une structure ou un individu, reliées entre elles par des liens hypertextes, stockées sur un serveur et accessibles via internet. Il existe deux types des sites web : Site web statique : ici, les requêtes portent sur des fichiers html. Ce sont des sites réalisés uniquement à l'aide des langages (X) HTML et CSS ; constituées des pages HTML prédéfinies, créées une fois pour toute à l'aide d'un éditeur HTML par le concepteur du site et stockées sur le serveur web. Celui-ci renvoie ces pages à la demande au visiteur. Par la suite ces pages ne pourront être modifiées que via un éditeur HTML, par le concepteur ou le webmaster. Site web dynamique : ici, les requêtes déclenche sur le serveur l'exécution d'un script. Le script produit une page en HTML. Ils utilisent d'autres langages et outils en plus de (X) HTML et CSS, tels que PHP, les requêtes SQL, le SGBD MySQL et autres. Un site dynamique est un site Web dont les pages HTML se construisent lors de sa consultation par un internaute en sollicitant des bases de données filtrées par des outils logiciels de mise en forme. Ainsi, la mise à jour des sites web dynamiques tant sur le fond que sur la forme est facilitée. [11] I.3.1.3. Internet L’internet c’est le réseau informatique mondial accessible au public. C’est un réseau de réseaux, sans centre névralgique, composé de millions de réseaux aussi bien publics que privés, universitaires, commerciaux et gouvernementaux, eux même regroupés en réseaux autonomes. [12] L’Internet est l’abréviation de « Interconnected Networks » signifiant réseau mondial de réseaux interconnectés par l'intermédiaire du protocole TCP/IP (Jargon informatique).
14
Le protocole est un ensemble de règles (codes) à respecter pour établir un échange d’information entre ordinateurs. Ces règles régissent la communication entre le système informatique. Le plus utilisé pour l’internet est le Protocole TCP/IP (Transmission control Protocol/ internet Protocol). Un utilisateur de l’internet est désigné par le néologisme « internaute » L’internet ayant été populaire par l’apparition du Word Wide Web(WWW) les deux sont parfois confondus par le public non averti or le WWW littéralement la « toile d’araignée mondial » communément appelé le web, et parfois la toile, n’est autre que l’une des applications internet ou l’un de services internet. Les hyperliens (les liens hypertextes) sont très importants dans une page Web, puisqu’ils permettent d’organiser la navigation dans un site en reliant les pages entre elles. Les internautes peuvent passer d’une page à l’autre grâce à un simple clic sur ces liens, d’où l’expression « NAVIGUER » ou « SURFER » sur le Web. [13] Voici quelques mots courants liés à l’internet : En ligne signifie « se connecter à un réseau », en l’occurrence le réseau Internet. Cette expression n’est donc pas propre au web, mais à Internet dans sa globalité, on la retrouve également à propos des réseaux téléphoniques. Les clients : ce sont les ordinateurs des internautes comme vous et moi. Votre ordinateur fait donc partie de la catégorie des clients. Chaque client représente un visiteur d'un site web. Hébergement : L'hébergement consiste à louer l'espace d'un ordinateur serveur relié en permanence à Internet pour y placer son Site afin que celui-ci soit accessible en permanence. Les serveurs : ce sont des ordinateurs puissants qui stockent et délivrent des sites web aux internautes, c'est-à-dire aux clients. La plupart des internautes n'ont jamais vu un serveur de leur vie. Pourtant, les serveurs sont indispensables au bon fonctionnement du Web.
3.2. Les langages du web et technologies web La conception et réalisation d'un système en site web, nécessite la connaissance d'un certain nombre d'outils et langages de programmation qui interviennent dans la programmation des pages web constituant le site. Ainsi, l'objectif de cette partie est de faire une découverte d'un
15
certain nombre de langages de programmation et outils les plus utilisés actuellement dans la conception des pages web ; pour enfin, être à mesure de faire un choix en fonction des besoins, les outils et langages de programmation répondant mieux à l'objectif du site web. 3.2.1. Le html Le HTML (HyperText Mark-Up Language), est un langage de description de pages permettant de contrôler par l'intermédiaire d'éléments appelés balises (tags), l'apparence que la page aura sur l'écran d'un utilisateur du serveur Web. Ce langage est interprété par le logiciel client (navigateur) installé sur le poste de consultation. L'objectif à l'origine de ce langage était de créer, un moyen universel de stocker et afficher de l'information avec l'idée que le contenu est plus important que la forme. Pour le moment la version la plus récente de html est le HTML5. N B : Il est à noter que, le XHTML : un langage de description des données qui veut dire Extensible HyperText Mark-Up Langage ou langage de balisage hypertexte extensibles ; n'a pas été créé comme une nouvelle version de HTML, mais comme une reformulation de HTML en tant qu'application XML. Car, il existe une très petite différence au niveau des éléments et des attributs disponibles entre HTML strict et XHTML. Néanmoins, Il y a beaucoup de confusion autour de ces langages, alors qu'ils se ressemblent beaucoup. Aucun n'est vraiment meilleur que l'autre, il s'agit de deux façons de faire différentes. I.3.2.2. Le Cascading Styles Sheets (CSS) Le rôle du CSS est de gérer l'apparence de la page web (agencement, positionnement, décoration, couleur, taille du texte...). Ainsi, ce langage est venu compléter le HTML en 1996. Ainsi donc, un site web peut très bien être créé uniquement en HTML, mais celui-ci ne sera pas très beau : l'information apparaîtra brute. C'est pour cela que l'utilisation du langage CSS vient compléter le HTML. I.3.2.3. PHP (Hypertext Preprocessor) PHP est un langage de script orienté objet permettant de gérer un site web en allant de la simple génération de documents HTML à la production d'images GIF à la volée, en passant par les requêtes aux serveurs de données, l'envoie automatique de mail ou encore le chiffrement. Ainsi, PHP est un langage de script interprété côté serveur.
16
Le code PHP est lu et interprété par le serveur pour produire une page HTML (ou d'autres types de documents comme les images ou les documents PDF) à chaque fois que la page sera demandée. [14] Le couple PHP/MySQL est très utilisé par les sites Web et proposé par la majorité des hébergeurs Web. Plus de la moitié des sites Web fonctionnent sous Apache, qui est le plus souvent utilisé conjointement avec PHP et MySQL. I.3.2.4. XAMPP XAMPP est une plateforme de développement Web, permettant de faire fonctionner localement (sans se connecter à un serveur externe) des scripts PHP. XAMPP n'est pas en soi un logiciel, mais un environnement comprenant deux serveurs (Apache et MySQL), un interpréteur de script (PHP), ainsi que PHP MyAdmin pour l'administration Web des bases MySQL. Il dispose d'une interface d'administration permettant de gérer et d'administrer ses serveurs comme le montre la figure suivante :
4:Interface d'administration XAMPP
La grande nouveauté de XAMPP réside dans la possibilité d'y installer et d'utiliser n'importe quelle version de PHP, Apache ou MySQL en un clic. Ainsi, chaque développeur peut reproduire fidèlement son serveur de production sur sa machine locale. I.3.2.5. MySQL
MySQL est un système de gestion de base de données (SGBD). Selon le type d'application, la licence est libre ou propriétaire. Il fait partie des logiciels de gestion de base
17
de données les plus utilisés au monde, autant par le grand public (applications web principalement) que par des professionnels, en concurrence avec Oracle et Microsoft SQL Server. [15] C'est un logiciel libre développé sous double licence en fonction de l'utilisation qui en est faite : dans un produit libre ou dans un produit propriétaire. Dans ce dernier cas, la licence est payante, sinon c'est la licence publique générale GNU (GPL) qui s'applique. Ce type de licence double est utilisé par d'autres produits comme le Framework de développement de logiciels (pour les versions antérieures à la 4.5). La figure suivante nous montre le logo de MySQL :
5: logo MySQL
Le couple PHP/MySQL est très utilisé par les sites Web et proposé par la majorité des hébergeurs Web. Plus de la moitié des sites Web fonctionnent sous Apache, qui est le plus souvent utilisé conjointement avec PHP et MySQL. I.3.2.6. Apache Apache est le serveur le plus répandu sur Internet. Il fonctionne principalement sur les systèmes d'exploitation UNIX (Linux, Mac OS X, Solaris, BSD et UNIX) et Windows. Apache est utilisé par de nombreux produits, dont WebSphere d'IBM, ainsi que par Oracle Corporation. Il est également supporté d'une façon ou d'une autre par les outils de développement Borland Delphi et Kylix, ainsi que par des CMS comme Drupal. Apache est conçu pour prendre en charge de nombreux modules, lui donnant des fonctionnalités supplémentaires : interprétation du langage Perl, PHP, Python et Ruby, serveur proxy, Common Gateway Interface, Server Side Includes, réécriture d'URL, négociation de contenu, protocoles de communication additionnels, etc. Néanmoins, il est à noter que l'existence de nombreux modules Apache complexifie la configuration du serveur web. En effet, les bonnes pratiques recommandent de ne charger que les modules utiles : de nombreuses failles de sécurité, affectant uniquement les modules d'Apache sont régulièrement découverts.
18
Les possibilités de configuration d'Apache sont une fonctionnalité phare. Le principe repose sur une hiérarchie de fichiers de configuration, qui peuvent être gérés de manière indépendante. Cette caractéristique est notamment utile aux hébergeurs qui peuvent ainsi servir les sites de plusieurs clients à l'aide d'un seul serveur HTTP. Pour les clients, cette fonctionnalité est rendue visible par le fichier .htaccess. Parmi les outils, aidant la maintenance d'Apache, on trouve les fichiers de log qui peuvent s'analyser à l'aide de nombreux scripts et des logiciels libres tels qu'AWStats, Webalizer ou W3Perl. Plusieurs interfaces graphiques facilitent la configuration du serveur. I.3.2.7. Navigateurs web Le navigateur (en anglais browser), c'est logiciel conçu pour le Web, permettant aux utilisateurs d'explorer les ressources à l'intérieur d'un réseau intranet, extranet ou Internet. Ainsi, le navigateur gère l'affichage des pages Web et le suivi des liens hypertextes ou hypermédias entre les différentes pages. En plus de la fonction de navigation, les navigateurs offrent de nombreuses possibilités pour aider l'utilisateur dans son utilisation d'Internet. Ils permettent de sauvegarder sur le disque dur de l'utilisateur tout ou partie du document consulté et d'afficher le code source HTML correspondant à la page en cours Par ailleurs, la plupart des navigateurs permet de conserver en mémoire les références des documents, pages ou sites consultés par l'utilisateur, afin d'y avoir accès facilement et rapidement lors d'une prochaine navigation. Il existe plusieurs navigateurs web, mais le plus utilisés sont :
Internet Explorer de Microsoft ;
Firefox ;
Chrome ;
Safari ;
Opera, etc.
I.3.2.8. Editeurs Ces sont des utilitaires permettant de créer ou de mettre à jour un fichier texte, exemple un fichier qui contient du texte. Nous savons que les éditeurs Web sont des applications qui facilitent le formatage des données pour la conception de pages Web. Ils sont importants dans
19
notre travail en vue de décrire à nos lecteurs ceux que nous avons utilisés pour le développement de notre site web. Les éditeurs que nous utiliserons sont les suivants :
Notepad++
Bloc note
Sublime Text3
3.3. Le portail web Pourtant peu connu des nombreux utilisateurs du web, existe depuis l’avènement du web. Il est apparu durant la décennie des années 1990. Le portail web se définit comme étant un site web qui offre une porte d’entrée commune à un large éventail de ressources et ses services accessibles sur internet et centrés sur un domaine d’intérêt ou une communauté particulière. Les portails sont souvent des sites communautaires qui tentent de réunir un ensemble de services susceptibles d’intéresser les internautes. En entreprise, un portail permet de regrouper et faciliter la navigation entre de nombreux outils web. [16]
3.4. Les bases de données Une base de données (son abréviation est BD, en anglais DB, data base) est un ensemble de données structurées non redondantes exhaustives. Ces données doivent pouvoir être utilisées par des programmes, par des utilisateurs différents. Ainsi, la notion de base de données est généralement couplée à celle de réseau, afin de pouvoir mettre en commun ces informations, d'où le nom de base. On parle généralement de système d'information pour désigner toute la structure regroupant les moyens mis en place pour pouvoir partager des données.
4. CONCLUSION Dans ce présent chapitre il a été question de pouvoir prendre connaissance de différents concepts qui auront à intervenir tout au long de notre travail, il nous faudra étudier le système de l’existant ; et cela fera l’objet de notre second chapitre.
20
CHAPITRE II : PRÉSENTATION DE L’UT-M’SIRI 1er ET ANALYSE METIER 1. INTRODUCTION Au chapitre précédent, nous avons eu à parler des différentes notions liées au web, aux différentes méthodologies, ainsi qu’à l’artefact UML qui seront d’une importance capitale pour la rédaction ainsi que la réalisation tout au long de notre mémoire. Après l’acquisition de toute ses notions, nous devons maintenant passer à l’étude de notre entité qui est l’Université Technologie M’siri 1er (UTM 1er) ainsi qu’à l’étude de son système de gestion de cours et de mémoire pour comprendre comment fonctionne ce dernier afin d’implémenter les différentes fonctionnalités, dont celles de la gestion de publication de mémoire et celle de la mise en disponibilité des cours en ligne.
2. DENOMINATION L’Université Technologique M’siri 1er, « UT-M’siri 1er » en sigle, est un établissement d’Enseignement Supérieur et Universitaire public fonctionnant au Lualaba depuis l’année 2017. Il a été agrée par l’arrêtée ministérielle n°0039/MINESU/CAB.MIN/TLL/BMF/JMB/2021 du 04 février 2021.
3. HISTORIQUE L'Université Technologique M'siri Ier est une université de la république Démocratique du Congo, créée en 2017 par le Grand Chef de la Chefferie des Bayekes, Sa Majesté le MWAMI MWENDA BANTU MASUKA KANERANERA MUNONGO GODBFROID JUNIOR.
4. SITUATION GEOGRAPHIQUE L’Université Technologique M'siri 1er se situe en République Démocratique du Congo dans la Province du Lualaba Village de Bunkeya, occupe une situation géographique (Triangle isocèle) qui lui permet de jouer un rôle dans le développement de la région du sud de la République Démocratique du Congo et cela au même titre que les autres universités dites grandes.
21
5. FONCTIONNEMENT DE L’UNIVERSITÉ TECHNOLOGIQUE M'SIRI 1ER Nous allons présenter le fonctionnement de l’université à travers l’organigramme suivant :
Figure 6: Diagramme fonctionnel
22
6. ANALYSE METIER L’analyse métier nous permet de faire une étude sur un système qui peut être informatisé ou non, afin de pouvoir prendre connaissance sur son fonctionnement global tout en tenant compte des différentes fonctionnalités quelle peut offrir. Dans notre cas, nous avons choisi UP qui nous permet de faire une modélisation métier. La modélisation métier nous permettra de : -
Appréhender le domaine d’application
-
Capturer les spécificités du domaine
-
Mettre au point un modèle de l’entreprise ou du domaine
-
Mettre au point un modèle de processus de l’entreprise
Les étapes nous permettant notre analyse métier viens de nous être donnés, et donc nous allons les exploités suivant l’ordre d’apparition. 6.1. Appréhender le domaine de l’application Concernant l’appréhension du domaine d’application, il est important de pouvoir prendre connaissance de tous ceux qui interviennent comme acteur pour le fonctionnement du système d’information de l’Université Technologique M’siri 1er. Comme intervenant nous avons identifié : -
L’étudiant
-
Enseignant
-
Secrétaire académique
-
Départemental
-
L’appariteur général
-
Appariteur facultaire
Tout ceux-ci peuvent en vérité être partager en deux rôles dont celui de l’étudiant ainsi que celui de l’appariteur facultaire. Et donc, ces deux rôles vont constituer nos acteurs. Les deux rôles qui ont fait objet d’acteur vont nous permettre d’établir des frontières concernant l’usage des fonctionnalités sur la future application. Après appréhension du domaine d’application, il nous ait important d’énumérer les spécificités du domaine, c’est ce qui fera l’objet de notre point suivant.
23
6.2. Capturer les spécificités du domaine Sur ce point, il est question de pouvoir recenser les données du métier ainsi que leurs processus de traitement. a. Diagramme de cas d’utilisation métier
Figure 7: diagramme de cas d'utilisation métier
Ce diagramme de cas d’utilisation nous a permis de recensé toutes les fonctionnalités offertes par le système existant.
24
b. Diagramme d’activité métier Après le diagramme de cas d’utilisation, nous devons passer au diagramme d’activité qui se définit comme suit : une représentation d’enchaînement d’activités au sein d’une opération, d’un cas d’utilisation ou d’un processus métier, la figure suivante montre le diagramme d’activité métier :
Figure 8: Diagramme d'activité métier
Concernant la publication de mémoire, aucun processus n’est encore mis en place vu que c’est la première promotion qui aura à défendre, nous aurons à décrire cela plus tard lors de la conception du système informatique.
25
6.3. Modèle de l’entreprise ou du domaine Sur ce point nous allons établir le diagramme de classe UML de notre système métier :
Figure 9: Diagramme de classe
7. CRITIQUE DE L’EXISTANT ET APPORT DE NOTRE SYSTEME 7.1 Critique de l’existant La critique du système constitue une étape utile et importante. Elle a pour but de diagnostiquer le fonctionnement du système actuel pour déceler les insuffisances éventuelles afin de proposer un système plus fiable et complet que le précédent. En observant nettement nos différents diagrammes du système métier, nous constatons que le flux d’information est bien défini dans la gestion de cours mais il y a encore des tâches qui sont retardés à cause de manque d’une application. A l’UTM 1er, nous disposons des ordinateurs bien équipés en système d’exploitation Windows10 et on utilise comme application Ms Word, dans la gestion des informations relatives à la gestion de cours. Seulement celui qui a un Smartphone ou un ordinateur peut demander au titulaire du cours de le donner son support du cours. 7.2 Apport de notre système Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes d’information. Les Systèmes de Gestion de Bases de Données (SGBD) remplacent les anciennes organisations où les données, regroupées en fichiers, restaient liées à une
26
application particulière. Ils assurent le partage, la cohérence, la sécurité d'informations qui, de plus en plus, constituent le cœur de l'entreprise. Ainsi notre projet aura pour aboutissement d’abord la formalisation d’un nouveau système d’information, la conception d’un portail web en ligne qui permettra une gestion efficace de l’information répondant aux besoins des utilisateurs. Le nouveau système d’information qui sera développé : Va rassembler toutes les informations dans une base de données en vue de permettre l’exploitation de ces données ; permettra à un étudiant se trouvant chez lui voire en dehors du pays de télécharger le cours, consulter les mémoires publiés par l’université et ce n’est pas seulement l’étudiant, même l’enseignant pourra se connecter pour consulter son cours ou le télécharger. C'est dans ce cadre d'idées que s'inscrit ce travail de troisième bachelier.
8. CONCLUSION Au sein de ce chapitre, nous avons fait une présentation de notre champs d’étude en parlant sur ses organes administratifs et ses fonctionnements, en suite nous avons fait l’analyse métier pour mieux connaitre le système existant en se basant par la méthode UP avec son langage UML afin de bien mener notre travail de conception du nouveau système au chapitre suivant.
27
CHAPITRE III : CONCEPTION DU NOUVEAU SYSTÈME Au chapitre précédent, nous avons eu à parler de l’université Technique de M’SIRI tout en donnant sa structure ainsi que sa composition, et en dépit de tout ça, nous avons eu aussi à étudier le système qui était en place pour relever les limites que connait le système pour nous permettre d’apporter une amélioration en implémentant le nouveau système qui se reposera sur l’automatisation des taches comme la publication des mémoires ainsi que la mise en disponibilité des cours dispensés au sein de l’université. Tout ceci a été le constituant du précédent chapitre, et au sein du présent chapitre nous allons passer à la conception du nouveau système c’est-à-dire en tenant compte de la numérisation. Nous aborderons trois points au sein de ce chapitre dont :
En premier lieu, nous verrons la conception préliminaire dans laquelle nous obtiendrons les cas d’utilisation ainsi que les acteurs du nouveau système, ce qui nous emmènera au diagramme des cas d’utilisation ; et après, nous passerons à l’étude de chaque cas d’utilisation à l’aide de la description textuelle, ce qui en suite va nous permettre de déboucher sur différents diagrammes de séquences.
En deuxième position, nous parlerons de la conception détaillée. Ici, il sera question de pouvoir mettre au point nos diagrammes de séquence et de classe, sur lequel nous allons nous baser pour l’élaboration de notre programme dans un langage de programmation que nous aurons choisi sur bases des résultats attendus.
Enfin le troisième point parlera de la conclusion qui va résumer l’ensemble de tous les points qui seront vu au sein de ce chapitre.
28
1. CONCEPTION PRELIMINAIRE 1.1. Diagramme des cas d’utilisations Pour recenser les différents cas d’utilisation, nous avons besoin de connaitre qui sont les acteurs qui participe au fonctionnement du système ainsi que les actions qu’ils auront à poser. Un acteur représente l’abstraction d’un rôle joué par des entités externes (utilisateur, dispositif matériel ou autre système) qui interagissent directement avec le système étudié. Un acteur peut consulter et/ou modifier directement l’état du système, en émettant et/ou en recevant des messages éventuellement porteurs de données [17]. Du point de vue système, il existe deux types d'acteurs : -
Les acteurs primaires, qui utilisent le système et qui sont les membres du site et qui peuvent bénéficier de l'espace client.
-
Les acteurs secondaires, qui administrent le système et qui sont les administrateurs
Avant de ne faire quoi que ce soit, nous allons recenser dans un tableau les différents cas d’utilisations tout en y associant des actions, ce qui va nous aider plus tard dans la récolte des cas d’utilisations Table 1: Acteurs du système ACTEURS Administrateur
ACTIONS
S’authentifier ;
Gérer les étudiants sur la plateforme (ajouter, supprimer, modifier) ;
Publier les différents mémoires soumis par les étudiants (seuls les meilleurs seront retenus) ;
Etudiant
Publier les cours
gérer commentaire (ajouter, supprimer, modifier)
S’authentifier ;
Télécharger mémoire ;
Télécharger cours
Contacter administrateur ;
Commenter mémoire
Rechercher
29
Le diagramme de cas d’utilisation de notre système :
Figure 10: Diagramme de cas d'utilisation système
30
1.2 Description textuelle a. Cas d’utilisation s’authentifier -
Objectif : ce cas d’utilisation va permettre le contrôle d’accès aux données selon le niveau de la permission.
-
Acteurs concernés : Administrateur et étudiant
-
Pré conditions : le système doit être lancé
-
Scenario Nominal 1. L’étudiant demande l’accès sur la plateforme 2. Le système retourne la page d’authentification 3. L’étudiant saisi son matricule et son mot de passe 4. L’étudiant clique sur le bouton connexion 5. Le système vérifie les données saisies par l’étudiant 6. Le système retourne la page d’accueil pour étudiant
-
Scénario alternatif : 6.1 L’étudiant n’a pas renseigné son identifiant ou son mot de passe Le système retourne un message d’erreur tel que : veuillez renseigner votre identifiant et votre mot de passe 6.2 L’étudiant saisi un identifiant ou un mot de passe incorrect Le système renvoi un message d’erreur tel que : identifiant ou mot de passe incorrect Le système retourne à l’étape 2 du scenario nominal
b. Cas d’utilisation gérer les étudiants -
Objectif : ce cas d’utilisation aura comme objectif de gérer tous les étudiants en ajoutant, supprimant les étudiants ou encore en mettant à jour leurs informations
-
Acteurs concernés : Administrateur
-
Pré conditions : l’administrateur doit s’authentifier
-
Scenario Nominal : 1. L’administrateur clique sur le bouton de gestion des étudiants 2. Le système retourne la page pour la gestion des étudiants 3. L’administrateur clic sur le lien d’ajout étudiant
31
4. Le cas d’utilisation ajouter étudiant s’exécute -
Scénario alternatif : 4.1 L’administrateur clique sur le lien de modification d’informations de
l’étudiant Le cas d’utilisation modifier étudiant s’exécute 4.2 L’administrateur clique sur le lien de suppression d’un étudiant Le cas d’utilisation supprimer étudiant s’exécute c. Cas d’utilisation publier mémoire -
Objectif : ce cas d’utilisation va permettre de publier un mémoire sur le portail web
-
Acteurs concernés : Administrateur
-
Pré conditions : l’administrateur doit s’authentifier
-
Scenario Nominal : 1. L’administrateur clique sur le bouton de publication des mémoires 2. Le système retourne un formulaire de publication de mémoire 3. L’administrateur valide la publication en cliquant sur le bouton publier 4. Le système vérifie les données remplies dans le formulaire 5. Le système envoi une notification de succès à l’administrateur
-
Scénario alternatif : 5.1 L’administrateur n’a pas rempli tous les champs Le système retourne un message d’erreur tel que : veuillez remplir tous les champs Le système retourne à l’étape 2 du scenario nominal
d. Cas d’utilisation télécharger un mémoire -
Objectif : ce cas d’utilisation va permettre à l’étudiant de télécharger un mémoire
-
Acteurs concernés : Etudiant
-
Pré conditions : l’étudiant doit s’authentifier
-
Scenario Nominal : 1. L’étudiant clic sur le lien vers les mémoires 2. Le système retourne la page des mémoires 3. L’étudiant clique sur un mémoire 4. Le système télécharge le mémoire
32
-
Scénario alternatif : 4.1 L’étudiant clique sur un mémoire supprimé Le système retourne un message d’erreur : mémoire non trouvée
e. Cas d’utilisation publier cours -
Objectif : ce cas d’utilisation va permettre de publier un cours sur le portail web
-
Acteurs concernés : Administrateur
-
Pré conditions : l’administrateur doit s’authentifier
-
Scenario Nominal : 1. L’administrateur clique sur le bouton de publication des cours 2. Le système retourne un formulaire de publication de cours 3. L’administrateur valide la publication en cliquant sur le bouton publier 4. Le système vérifie les données remplies dans le formulaire 5. Le système envoi une notification de de publication avec succès à l’administrateur
-
Scénario alternatif : 5.1 L’administrateur n’a pas rempli tous les champs Le système retourne un message d’erreur tel que : veuillez remplir tous les champs Le système retourne à l’étape 2 du scenario nominal
f. Cas d’utilisation télécharger un cours -
Objectif : ce cas d’utilisation va permettre à l’étudiant de télécharger un cours
-
Acteurs concernés : Etudiant
-
Pré conditions : l’étudiant doit s’authentifier
-
Scenario Nominal : 1. L’étudiant clique sur le lien vers les cours 2. Le système retourne la page des cours 3. L’étudiant clique sur un cours 4. Le système télécharge le cours en question
-
Scénario alternatif : 4.1 L’étudiant clique sur un cours supprimé Le système retourne un message d’erreur : cours non trouvée
g. Cas d’utilisation contacter l’administrateur
33
-
Objectif : ce cas d’utilisation va permettre à l’étudiant d’entrer en contact avec l’administrateur du site web
-
Acteurs concernés : Etudiant
-
Pré conditions : l’étudiant doit s’authentifier
-
Scenario Nominal : 1. L’étudiant clique sur le lien vers contacter l’administrateur 2. Le système lui retourne la page de contact avec l’administrateur 3. L’étudiant remplit le champ de saisie du message 4. L’étudiant clique sur le bouton d’envoi du message 5. Le système lui retourne un message d’envoi avec succès
-
Scenario Alternatif : 5.1 L’étudiant n’a rien saisi dans l’espace réservé aux messages Le système lui retourne un message d’erreur : veuillez saisir un message avant l’envoie
h. Cas d’utilisation ajouter un étudiant -
Objectif : ce cas d’utilisation va permettre à l’administrateur d’ajouter les nouveaux étudiants
-
Acteurs concernés : administrateur
-
Pré conditions : l’administrateur doit s’authentifier
-
Scenario nominal : 1. L’administrateur clic sur le lien ajouter un étudiant 2. Le système retourne le formulaire d’ajout étudiant 3. L’administrateur remplit les champs du formulaire d’ajout 4. L’administrateur clic sur le bouton valider 5. Le système retourne un message d’ajout avec succès
-
Scénario alternatif 5.1 Les données saisies par l’administrateur existent dans la base des données Le système retourne un message : il existe un compte pour cet étudiant Le système retourne à l’étape 2 du scénario nominal
i. Cas d’utilisation modifier un étudiant -
Objectif : ce cas d’utilisation permettra à modifier un étudiant existant
34
-
Acteurs concernés : administrateur
-
Pré condition : l’administrateur s’authentifier
-
Scénario nominal : 1. L’administrateur clic sur le lien liste des étudiants 2. Le système retourne la page de la liste des étudiants 3. L’administrateur clic sur le nom d’un étudiant 4. Le système affiche modifier, supprimer 5. L’administrateur clic sur modifier 6. Le système retourne les données à modifier 7. L’administrateur modifie les données du formulaire 8. L’administrateur clic sur le bouton valider 9. Le système retourne un message étudiant modifié avec succès
-
Scénario alternatif : 9.1 L’administrateur saisit les données incorrectes Le système retourne un message d’erreur tel que : données saisies incorrectes
j. Cas d’utilisation supprimer un étudiant -
Objectif : ce cas d’utilisation permettra à supprimer un étudiant existant
-
Acteurs concernés : administrateur
-
Pré condition : l’administrateur s’authentifier
-
Scénario nominal : 1. L’administrateur clic sur le lien liste des étudiants 2. Le système retourne la page de la liste des étudiants 3. L’administrateur clic sur le nom d’un étudiant 4. Le système affiche modifier, supprimer 5. L’administrateur clic sur supprimer 6. L’administrateur clic sur le bouton valider 7. Le système retourne un message étudiant supprimé avec succès
-
Scénario alternatif :
35
9.1 L’administrateur supprime un étudiant connecté Le système retourne un message : veillez attendre la déconnexion de l’étudiant k. Cas d’utilisation contacter l’étudiant -
Objectif : ce cas d’utilisation va permettre à l’administrateur d’entrer en contact avec l’étudiant déjà inscrit sur le site
-
Acteurs concernés : l’administrateur
-
Pré conditions : l’administrateur doit s’authentifier
-
Scenario Nominal : 1. L’administrateur clique sur le lien vers contacter l’étudiant 2. Le système retourne la page de contact pour étudiant 3. L’administrateur remplie le champ de saisie du message 4. L’administrateur clique sur le bouton d’envoi du message 5. Le système lui retourne un message d’envoi avec succès
-
Scenario Alternatif : 5.1 l’administrateur n’a rien saisi dans l’espace réservé aux messages Le système lui retourne un message d’erreur : veuillez saisir un message avant l’envoie
l. Cas d’utilisation commenter -
Objectif : ce cas d’utilisation va permettre aux acteurs du système d’ajouter le commentaire sur le site
-
Acteurs concernés : tous les acteurs
-
Pré conditions : s’authentifier
-
Scenario Nominal : 1. L’étudiant clique sur le lien vers le commentaire 2. Le système retourne le formulaire de commentaire 3. L’étudiant saisi son commentaire dans le champ réservé du formulaire 4. L’étudiant clique sur le bouton d’envoi du commentaire 5. Le système retourne un message d’envoie avec succès
36
-
Scénario alternatif : 7.1 L’étudiant n’a pas saisi un commentaire Le système retourne un message tel que : commentaire vide non accepté.
2. CONCEPTION DETAILLEE
Ici, il sera question de pouvoir mettre au point le diagramme des séquences, des classes et ces derniers vont nous aider à l’élaboration de notre programme dans un langage de programmation que nous aurons choisi sur bases des résultats attendus. 2.1 Diagrammes de séquence a. Cas d’utilisation s’authentifier
Figure 11: séquence s'authentifier
37
c.b.Gérer les étudiants
Figure 12: gérer les étudiants
38
d.c.Publier mémoire
Figure 13:publier mémoire
39
e.d.Diagramme de séquence ajouter un étudiant
Figure 15: Diagramme de sequence ajouter un étudiant
Figure 14:ajouter étudiant
40
f.e. Diagramme de séquence modifier un étudiant
Figure 17: diagramme de séquence modifier un étudiant
Figure 16: modifier étudiant
41
g.f. Diagramme de séquence supprimer un étudiant
Figure 19: diagramme de séquence supprimer un étudiant
Figure 18: supprimer un étudiant
42
h.g.
Diagramme de séquence commenter
Figure 20: séquence commenter
43
2.2 Diagramme de classes du nouveau système
Figure 21: Diagramme des classes du nouveau système
3. CONCLUSION
Dans ce chapitre, nous avons mis en place le modèle conceptuel des données de notre système. Dans le chapitre suivant, nous allons aborder la réalisation du projet.
44
CHAPITRE IV : IMPLEMENTATION DE LA SOLUTION 1. INTRODUCTION Après avoir conçu notre système, dans ce chapitre, nous allons présenter la réalisation du projet, en passant par une définition des différents types d’applications Web, puis une comparaison des différents langages utilisés pour le développement Web. Ensuite, les technologies choisies et utilisées pour la réalisation de notre projet. Et après, nous allons définir le modèle physique des données et les fonctionnalités développées dans notre application. Enfin, nous présenterons quelques interfaces du produit final.
2. LES TYPES D’APPLICATIONS WEB 2.1 Application Web statique Comme son nom l’indique, l’application web statique a un contenu statique, qui ne change pas et qui n’évolue pas ou évolue très peu. Le développement d’applications web se fait habituellement en HTML et CSS. Il peut, néanmoins y avoir des objets animés tels que bannières, GIF, vidéos, etc. 2.2 Application Web dynamique Les applications Web dynamiques sont plus complexes sur le plan technique. Elles utilisent des bases de données pour charger des informations, et le contenu est mis à jour à chaque fois que l’utilisateur se connecte à l’application. Il existe de nombreux langages de programmation pour leur développement. PHP et ASP sont les plus répandus, car ils facilitent l’organisation du contenu.
3. LES MEILLEURS LANGAGES DE PROGRAMMATION POUR LE WEB Le HTML, soit HyperText Markup Language n’est pas un langage de programmation. Il s’agit d’un langage de balisage, qui sert à structurer des documents numériques, par exemple en insérant des liens hypertextes ou en donnant au texte sa forme générale. La même chose vaut pour les CSS (Cascading Style Sheets), qui permettent de gérer l’apparence d’un site internet, comme la couleur de la police d’écriture ou l’arrière-plan. Un langage de programmation Web sert à établir des règles et procédures logiques complexes. Là où les langages de balisage comme HTML ne produisent que des documents, un langage de programmation permet de créer n’importe quel programme détaillé pour effectuer des tâches données. Les langages de programmation Web utilisés par les sites internet les plus connus sont : Java, JavaScript, PHP, Python, Ruby, C++, C#. [18]
45
3.1 Java Le Java est un langage de programmation open source, indépendant de toute plateforme. Sa polyvalence en fait une option pour presque tous les types de projets. Un très grand nombre de bibliothèques et de Framework Web généralement bien fournis et détaillés sont disponibles pour faciliter la réalisation de projets très complexes. Dans la mesure où Java est d’un apprentissage plutôt difficile, il existe relativement moins de spécialistes de ce langage de programmation. 3.2 JavaScript Contrairement à ce que son nom indique, ce langage de script dynamique et orienté objet n’a rien à voir avec Java, si ce n’est que les deux sont dérivés du langage C. Il a été développé à l’origine par Netscape en 1995 sous le nom de Live Script. Il s’agissait de permettre aux programmeurs d’évaluer les interactions entre utilisateurs et de présenter les contenus de façon dynamique. 3.3 PHP HyperText PreProcessor, mieux connu sous son acronyme PHP, est un langage de script dérivé des langages C et Perl. Il est utilisé principalement pour programmer des pages Web et des applications Internet dynamiques. PHP est un langage qu’il est possible d’intégrer dans du HTML. Beaucoup d’éditeurs de sites Internet utilisent le PHP. Les avantages les plus importants de ce langage résident dans le vaste soutien dont il bénéficie à travers l’existence de différentes bases de données et son association efficace avec les protocoles IP. PHP traite le code côté serveur, lui évitant ainsi d’avoir à être interprété par le navigateur Web, comme c’est le cas avec d’autres langages de programmation Web. 3.4 Python Python est un langage de programmation qui se fonde sur un code à la fois compact et compréhensible. Python est également facile à exploiter ; par exemple, son indentation permet de délimiter les blocs de code par des espaces plutôt que par des symboles. Il s'agit d’un langage libre d'utilisation sur la plupart des systèmes d’exploitation usuels. Sa vitesse de mise en œuvre relativement faible et la définition confuse de ses méthodes font toutefois l’objet de critiques. 3.5 Ruby Un autre langage de programmation évolué du nom de Ruby a été créé au milieu des années 1990 par Yukihiro Matsumoto. Développé dès son origine comme un langage de programmation orienté objet, il présente également un typage dynamique et un nettoyage de mémoire automatique.
46
Ce qui vaut à Ruby c’est la réputation d’être « facile à apprendre, mais difficile à maîtriser ». Les critiques se concentrent sur les conséquences négatives de toute faute de frappe dans le code : des erreurs de durée d’exécution peuvent en effet entraîner de pénibles processus de recherche d’erreur. 3.6 C++ Le C++ est dérivé du C, l’un des plus anciens langages de programmation. Envisagés au départ comme un approfondissement du C. Le C++ est un langage de programmation proche de la machine, efficace, capable d’un haut niveau d’abstraction et complexe. En matière de programmation Web, le C++ est cependant devancé par Java, le JavaScript et le C#. 3.7 C# Le langage de programmation C# « C Sharp » est considéré comme un langage de programmation général. Il est typé, orienté objet et fondamentalement indépendant de toute plateforme. En tant que langage Web orienté objet, C# constitue par conséquent le meilleur compromis entre profondeur et fonctionnalité. Les critiques soulignent toutefois que l’utilisation de C# oblige à utiliser le Framework .NET de Microsoft.
4. TOP 20 DES LANGAGES DE PROGRAMMATION AU 1 ER TRIMESTRE 2020
Figure 22: Top 20 des langages de programmation au 1er trimestre 2020 selon RedMonk
47
L’étude RedMonk présente les 20 meilleurs langages de programmation en se basant sur deux grandes communautés : le nombre de questions posées sur le site Stack Overflow pour chaque langage et le nombre de projets référencés sur GitHub. Ce classement trimestriel permet de repérer les grandes tendances au sein de la profession de développeurs. Sans surprise, c’est JavaScript qui truste la tête du classement de RedMonk pour le 1er trimestre 2020. Selon l’étude, 11 millions de développeurs utiliseraient activement JavaScript, qui est la principale façon dont est exécuté le code dans les navigateurs web. Ce langage est également utilisé dans le cadre du développement d’applications mobiles et de bureau. Troisième du précédent classement, Python est désormais à égalité avec Java, en deuxième place de l’étude de RedMonk. De son côté, Java reste le langage standard pour concevoir des applications Android. Derrière, PHP et C# pour former le top 5 des langages de programmation les plus populaires de ces trois premiers mois de l’année 2020. Retrouvez ci-dessous le classement complet des 20 langages de programmation les plus populaires auprès des développeurs, au 1er trimestre 2020 : [19] 1 JavaScript 2 Python 2 Java 4 PHP 5 C# 6 C++ 7 Ruby 7 CSS 9 TypeScript 9 C 11 Swift 12 Objective-C 13 Scala 13 R 15 Go 15 Shell 17 PowerShell 18 Perl 19 Kotlin 20 Haskell
48
5. LES TECHNOLOGIES ET LANGAGES UTILISE S DANS NOTRE APPLICATION Pour la réalisation de notre projet, nous avons utilisé différents outils, que nous allons détailler et présenter l’utilité et la motivation de nos choix. Notepad++ : Pour l’édition du code HTML, CSS, JavaScript et PHP, nous avons opté pour l'utilisation de cet éditeur de texte. HTML : L'HTML est utilisé pour créer des pages web. CSS : Les feuilles de style en cascade forment un langage qui décrit la présentation des documents HTML. JavaScript : JavaScript est un langage de programmation de scripts principalement employé dans les pages web interactives. JQuery : JQuery est une bibliothèque JavaScript libre et multiplateforme créée pour faciliter l'écriture de scripts côté client dans le code HTML des pages web. AJAX : Le terme AJAX désigne une technologie qui s'est popularisée dans le domaine de la création de sites internet. Elle est principalement utilisée pour apporter de l'interactivité au sein des pages d'un site web tout en économisant les ressources serveur. En effet, AJAX permet de communiquer avec le serveur à l'aide de code JavaScript. PHP : (HyperText Preprocessor), plus connu sous son sigle PHP, est un langage de programmation libre, principalement utilisé pour produire des pages Web dynamiques. PHP a permis de créer un grand nombre de sites web célèbres, comme Facebook, Wikipédia, etc. Il est considéré comme une des bases de la création de sites web dits dynamiques mais également des applications web. XAMPP : est une plateforme de développement Web permettant de faire fonctionner localement (sans avoir à se connecter à un serveur externe) des scripts PHP. Xampp est un environnement comprenant trois serveurs (Apache, MySQL et MariaDB), un interpréteur de script (PHP), ainsi que PhpMyAdmin pour l'administration Web des bases MySQL. SQL : SQL signifie Structured Query Language, c’est-à-dire Langage d'interrogation structuré. En fait SQL est un langage complet de gestion de bases de données relationnelles. Il a été conçu par IBM dans les années 70. Il est devenu le langage standard des systèmes de gestion de bases de données (SGBD) relationnelles(SGBDR).
49
6. LE MODELE PHYSIQUE DES DONNEES (MPD) Pour la création du modèle physique des données, nous avons utilisé le SGBD MySQL à l'aide de l’applicatif XAMPP. Les figures suivantes nous montrent la création de quelques tables :
Figure 23: table membre
Figure 24: table mémoire
50
7. LES FONCTIONNALITES DEVELOPPEES Pour la réalisation de notre projet, nous avons créé des pages web interactives et responsives qui s’affichent sur différents types de dispositifs (Smartphones, Tablettes, Pc, etc.…) avec l’utilisation du CSS, JavaScript.
8. INTERFACES DE L’APPLICATION Nous allons présenter quelques interfaces de notre application web Pour l’espace visiteur, les pages entre autres sont : 8.1 Page d’accueil
Figure 25: page d'accueil
Figure 26:menu contextuel
51
8.2 Page formulaire d’inscription
Figure 27:formulaire d'inscription
Figure 28: confirmation inscription
52
8. 3 Page d’authentification d’un étudiant
Figure 29: page d'authentification
8. 4 Page de profil étudiant
Figure 30: profil étudiant
53
8. 5 Page administrateur de publication des mémoires
Figure 31: publication des mémoires
8. 6 Page des mémoires
Figure 32: page des mémoires
54
8. 7 Page des commentaires
Figure 33: page des commentaires
8. 8 Page de gestion étudiant
Figure 34:gerer étudiant
La figure suivante nous montre la page du formulaire de modification d’un étudiant :
55
Figure 35: modification du profil étudiant
8. 9 Page de messagerie d’un étudiant
Figure 36:messagerie étudiant
56
8.10 Page de recherche
Figure 37: page de recherche
Figure 38: page des résultats de recherche
9. CONCLUSION Durant ce dernier chapitre, nous avons présenté les différentes technologies utilisées pour construire mon application. Ainsi que les fonctionnalités développées tout au long de ce travail. Nous avons également montré quelques interfaces graphiques des différentes parties de l’application web réalisée.
57
CONCLUSION GÉNÉRALE Ce projet de fin d’études consiste à mettre en place un portail web pour le téléchargement de cours et publication de mémoires en ligne. C'était une occasion de développer et mettre en œuvre mes compétences personnelles et d'enrichir mes connaissances où j’ai pu découvrir de nouveaux concepts dans le domaine de la programmation web mais aussi dans les domaines d’analyse, de conception et de modélisation. Avec beaucoup d'efforts personnels et de patience, j'ai pu surmonter et résoudre les diverses situations et les nombreux obstacles auxquels j'étais confrontée, autre obstacle maîtrisé et objectif atteint, c’est l’affichage responsive du site sur les différents dispositifs (Pc, Smartphones, Tablettes, etc.) en utilisant le Css, JavaScript, et JQuery. A travers cette application, il est possible à distance de consulter les mémoires et cours grâce à l'internet. Cependant, comme tout informaticien qui suit la percée technologique, nous proposons quelques perspectives d'amélioration et d'évolution de notre travail, à savoir intégration d’un système qui compte le nombre de téléchargement et qui identifie la personne qui a téléchargé. Nous demandons donc l'indulgence de nos très chers lecteurs pour les lacunes et insuffisance qu'ils constateront çà et là dans notre travail, nous restons ouverts à toutes vos remarques et suggestion.
58
BIBLIOGRAPHIE [1] E. M. B. KIYIKA, «Implémentation d'une application web pour la publication des résultats de fin d'année scolaire aux humanités» Cas du complexe scolaire LEMFU, Goma, 2014-2015. [2] N. j. luck, «conception et réalisation d'un site web boutique en ligne ». Cas du magasin disco la bible à Goma, TFC, Goma, 2017-2018. [3] «techno-science,» [En ligne]. Available: https://www.techno-science.net/. [Accès le 3 5 2022]. [4] internaute, «DICTIONNAIRE FRANÇAIS,» [En ligne]. https://www.linternaute.fr/dictionnaire/fr/definition/mise-en-place/. [Accès le 10 11 2022].
Available:
[5] wikipedia, 6 6 2022. [En ligne]. Available: https://fr.wikipedia.org/wiki/Portail_web. [Accès le 10 11 2022]. [6] WIKIPEDIA, 26 09 2022. [En ligne]. Available: fr.wikipedia.org/wiki/Mémoire. [Accès le 10 11 2022]. [7] larousse, «larousse,» larousse, [En ligne]. https://www.larousse.fr/dictionnaires/francais/telechargement/77035. [Accès le 10 11 2022].
Available:
[8] [En ligne]. Available: https://www.larousse.fr/dictionnaires/francais/cours/. [Accès le 10 11 2022]. [9] «futura-sciences,» [En ligne]. Available: https://www.futura-sciences.com/. [Accès le 29 mai 2022]. [10] «wikimemoires,» [En ligne]. Available: https://wikimemoires.net/2019/12/les-processus-unifies-et-umlpresentation-duml/#content. [Accès le 29 mai 2022]. [11] «Wikipedia,» [En ligne]. Available: Http://fr.wikipedia.org/wiki/site_web . [Accès le 14 mai 2022]. [12] «Wikipedia,» [En ligne]. Available: https://fr.wikipedia.org/wiki/Internet. [Accès le 3 mai 2022]. [13] «commentcamarche,» [En ligne]. Available: www.commentcamarche.net/contents/513-types-de-reseaux. [Accès le 3 juin 2022]. [14] J. e. a. n. -. M. a. r. i. e. D. e. f. r. a. n. c. e, PHP/MySQL avec flash, éditions eyrolles éd., eyrolles, p. 9. [15] «MySQL,» [En ligne]. Available: https://www.mysql.com. [Accès le 11 juin 2022]. [16] «wikipedia,» [En ligne]. Available: http://fr.m.wikipedia.org/wiki/portail _web. [Accès le juin 3 2022]. [17] F. V. P. Roques, UML 2 en action de l'analyse des besoins à la conception, 4ème éd., EYROLLES.. [18] sebastien, «codeur blog,» 09 2022. [En ligne]. Available: https://www.codeur.com/blog/top-langages-deprogrammation. [Accès le 01 11 2022]. [19] A. Patard, «JavaScript est le langage de programmation le plus populaire, Python dépasse Java,» 03 03 2020. [En ligne]. Available: https://www.blogdumoderateur.com/langage-programmation-populaire-javascriptpython/. [Accès le 01 11 2022]. [20] G. M., les méthodes de recherche en sciences sociales, Paris: Dalloz, 1955.