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

 > 

Développement d'un portail web de gestion académique d'une université: cas de l'université islamique au Niger


par Ibrahim Yacouba Maïdaoua
Université islamique au Niger - Bachelor en informatique  2023
  

précédent sommaire suivant

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

3.3 - Diagramme de cas d'utilisation

Le diagramme de cas d'utilisation est un diagramme UML utilisé pour donner une vision globale du comportement fonctionnel d'un système logiciel.

Bachelor Degree Promotion sortante 2023

40

Mise en place d'un portail web

Etudiant

e
·»

«exte

Photo de profil

Espace Etudiant

«include»


·

Consulter sa scolarité

«include»

Voir ses modules

«extend»

Télécharger les documents

cnude»

Voir ses enseignants

«extend» V

Apprecier ses enseignants elude»

Voir ses notes

Consulter les PV globaux

«extend»

Y

.-----Télécharger les documents

K ncude»

Modifier le profil utilisateur

Cconnecter

Bachelor Degree

( 41 )

Promotion sortante 2023

Figure 6 : Diagramme des cas d'utilisation pour étudiant

Mise en place d'un portail web

Bachelor Degree Promotion sortante 2023

42

Mise en place d'un portail web

Bachelor Degree Promotion sortante 2023

43

Mise en place d'un portail web

III - Conception

Le but principal de la conception est de rendre le modèle d'analyse réalisable sous forme logicielle, c'est ici que les abstractions métiers viennent pour la première fois, au contact de la réalité logicielle. Pour modéliser la conception de notre application, nous avons utilisé l'extension d'UML pour le web, en construisant les diagrammes de séquences, d'activité suivis des diagrammes de classes.

1 - Style Architectural

Sur ce point nous allons parler de la conception de l'architecture logicielle et la définition de l'architecture de notre système.

1.1 - Architecture logicielle

L'architecture logicielle décrit les différents éléments d'une application et leurs interactions. La conception de l'architecture est donc une étape particulièrement cruciale du développement logiciel. De cette phase, va dépendre la stabilité, la robustesse ou encore la scalabilité d'une application.

D'après P. Kruchten, l'architecture logicielle se représente selon « 4+1 » vues :

1. Vue Logique : elle se concentre sur la modélisation des principaux éléments d'architecture et mécanismes logiciels, la définition des éléments du domaine (objets métier, diagrammes d'états de ces objets...). Elle comprend en particulier les modèles d'analyse et de conception du système, c'est la vue des équipes de conception et développement.

2. Vue Composants (ou vue Implémentation) : elle permet d'identifier les modules (composants logiciels) qui implémentent les éléments définis dans la vue logique, de les regrouper en composants logiciels, d'identifier les dépendances d'intégration entre ces composants ; c'est la vue des équipes d'intégration.

3. Vue Processus : en environnement multitâches, cette vue de l'architecture permet de définir les processus, la coordination et la synchronisation des processus, les threads d'exécution. Cette vue est optionnelle et n'est utile que dans le cas d'architectures complexes multitâches.

4. Vue Déploiement : elle précise l'architecture de production (ressources matérielles, implantation des composants, pilotage...) Cette vue permettra par exemple de s'assurer que l'application répond aux contraintes de déploiement, aux exigences de qualité de service (montée en charge, temps de réponse, haute disponibilité...) et s'intègre aux infrastructures de supervision.

Bachelor Degree Promotion sortante 2023

44

Mise en place d'un portail web

5. Vue Use-Cases (vue « +1 ») : elle se concentre sur un sous-ensemble des cas d'utilisation qui ont une influence significative sur l'architecture du système. Ces use cases structurants permettent d'identifier les fonctionnalités et contraintes importantes, les risques majeurs de l'architecture, ce sont eux qui guident l'élaboration des quatre autres vues de l'architecture, de la conception à la mise en production de l'application.

L'architecture client/serveur à 3 niveaux est le type d'architecture que nous mettons en oeuvre dans la conception de notre application. L'architecture à trois niveaux (appelée architecture 3 tiers) comprend le client, le serveur d'application (appelé aussi middleware) qui est le serveur chargé de fournir la ressource mais faisant appel à un autre serveur, et le serveur secondaire (généralement un serveur de bases de données) fournissant un service au premier serveur. Les applications de l'architecture client/serveur à trois niveaux sont plus faciles à déployer sur le réseau, elles essayent de minimiser les échanges sur le réseau en créant des niveaux de service.

Le modèle de communication établit une hiérarchie entre les couches :

? Le client envoie une requête à l'application et attend sa réponse.

? La couche application reçoit la requête et effectue un traitement particulier. À son tour, elle communique avec la base de données pour lui donner des données à stocker ou lui demander certaines informations nécessaires au traitement.

? Une fois les données reçues par l'application, le traitement peut continuer et elle va pouvoir répondre à la requête initiale du client.

L'architecture 3 tiers fonctionne selon le schéma suivant :

Bachelor Degree Promotion sortante 2023

45

Mise en place d'un portail web

1.2 - Architecture système

L'architecture d'un système est un modèle qui définit la structure, le comportement et la vue d'un système.

Notre architecture sera basée sur l'architecture qui est utilisée par notre framework de base Django.

? Django utilise l'architecture MVT (modèle-vue-template) qui s'inspire de MVC: Le modèle interagit avec une base de données via un ORM. Tous les modèles sont réunis dans un fichier python models.py.

? La vue reçoit une requête HTTP et renvoie une réponse HTTP convenable (par exemple si la requête est une interaction avec une base de données, la vue appelle un modèle pour récupérer les items demandés). Les vues se trouvent dans le fichier views.py

? Le template est un fichier HTML récupéré par la vue et envoyé au visiteur avec les données des modèles.

La figure ci-dessous montre comment les différents composants de l'architecture MVT de Django interagissent pour répondre à la requête d'un utilisateur. Ici le contrôleur ne correspond pas au contrôleur du MVC, mais à Django en lui-même qui gère en interne tout ce qui est liée au choix de la vue à laquelle envoyer la requête HTTP,...

Bachelor Degree Promotion sortante 2023

46

Mise en place d'un portail web

2 - Diagramme de contexte

Le diagramme de contexte est un modèle conceptuel qui permet d'avoir une vision globale des interactions entre le système et les liens avec l'environnement extérieur. Nous commençons par ce dernier pour tirer les meilleures conclusions de la partie d'analyse après quoi le diagramme de contexte dans notre cas apparait comme représenté par la figure suivante :

3 - Diagramme de séquence

Selon le formalisme UML (Unified Modeling Language), les diagrammes de séquences détaillés représentent graphiquement les interactions (acteurs-systèmes) dans l'évolution temporelle. Les acteurs interagissent donc avec les pages clients et les pages serveurs qui sont utiles pour les interactions avec les ressources du serveur. Nous allons décrire ci-dessous quelques diagrammes de séquences des cas d'utilisation importants.

? Tout Utilisateur :

Bachelor Degree Promotion sortante 2023

47

Mise en place d'un portail web

? Cas d'utilisation « Inscription »

Bachelor Degree Promotion sortante 2023

48

Mise en place d'un portail web

? Cas d'utilisation « Authentification »

Bachelor Degree Promotion sortante 2023

49

Mise en place d'un portail web

? Cas d'utilisation « Changer son mot de passe »

Bachelor Degree Promotion sortante 2023

50

Mise en place d'un portail web

? Etudiant :

? Cas d'utilisation « Consulter les PV globaux »

Bachelor Degree Promotion sortante 2023

51

Mise en place d'un portail web

? Cas d'utilisation « Télécharger les documents de cours »

Bachelor Degree Promotion sortante 2023

52

Mise en place d'un portail web

? Enseignant :

? Cas d'utilisation « Noter ses étudiants »

Bachelor Degree Promotion sortante 2023

53

Mise en place d'un portail web

? Chef de département :

? Cas d'utilisation « Editer les PV globaux »

Bachelor Degree Promotion sortante 2023

54

Mise en place d'un portail web

4 - Diagramme d'activité

Un diagramme d'activités est semblable à un organigramme. Il se focalise sur le flot des activités impliquées dans un processus unique, il permet la représentation graphique du comportement d'une méthode ou le déroulement d'un cas d'utilisation.

? Diagramme d'activité pour cas d'utilisation « Inscription »

Bachelor Degree Promotion sortante 2023

55

Mise en place d'un portail web

? Diagramme d'activité pour cas d'utilisation « Authentification »

Bachelor Degree Promotion sortante 2023

56

Mise en place d'un portail web

? Diagramme d'activité pour cas d'utilisation « Changer de mot de passe »

Bachelor Degree Promotion sortante 2023

57

Mise en place d'un portail web

? Diagramme d'activité pour cas d'utilisation « Télécharger les documents de cours »

Bachelor Degree Promotion sortante 2023

58

Mise en place d'un portail web

Bachelor Degree Promotion sortante 2023

59

? Diagramme d'activité pour cas d'utilisation « Consulter les PV globaux »

Mise en place d'un portail web

Bachelor Degree Promotion sortante 2023

60

? Diagramme d'activité pour cas d'utilisation « Noter ses étudiant »

Mise en place d'un portail web

Bachelor Degree Promotion sortante 2023

61

? Diagramme d'activité pour cas d'utilisation « Editer les PV globaux »

Mise en place d'un portail web

5 - Diagramme de classe globale de données

Un diagramme de classe est non seulement utilisé pour décrire les structures des objets et des informations dans une application, mais aussi pour montrer la communication avec ses utilisateurs. Il offre un large éventail d'utilisations, de la modélisation de la vue statique d'une application à la description des responsabilités d'un système.

Bachelor Degree Promotion sortante 2023

62

Mise en place d'un portail web

6 - Création de la base de données
6.1 - Définition d'une base de donnée

Une Base de Données (BDD) est un ensemble de données structurées, avec une redondance calculée et accessible aisément par plusieurs programmes, qui les utilisent selon des objectifs distincts. Les propriétés des données ainsi que les relations sémantiques entre ces données sont spécifiées en utilisant les concepts proposés par le modèle de donnée. Cette organisation a pour objectif de pouvoir effectuer des inférences sur ces données sous forme de requêtes. Les bases de données sont manipulées par un système de gestion de base de données (SGBD).

précédent sommaire suivant






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








"Je ne pense pas qu'un écrivain puisse avoir de profondes assises s'il n'a pas ressenti avec amertume les injustices de la société ou il vit"   Thomas Lanier dit Tennessie Williams