Chapitre 4
GESTION D'UN CONTENU PAR INTERFACE WEB
 
 
Précédent Suivant
 

Gestion d'un contenu
par interface Web
Modélisation d'un site
* Trois grandes étapes
* Evaluer les besoins des acteurs
* Diagramme des cas d'utilisation (UML)
* Diagramme de classes (UML)
* Définir la structure de la base de données
* Modèle de données entité-association
* Définir l'interface du site
* Schéma de navigation (relations entre pages)
* Esquisse des pages (structure des pages)
* Objectif des TD et TP à venir
* Modéliser un site collaboratif pour le cinéma
* 1er temps: consultation / modification
* 2ème temps: gestion des utilisateurs
* 3ème temps: modération
1ère étape: besoins des acteurs
* Identifier les scénarios d'utilisation du site
* Les acteurs
* Leur rôle dans le système
* Les relations entre acteurs
* Hiérarchie des rôles ?
* Leurs actions
* Consultation
* Modification
* Modération
* Gestion
* Proposer un diagramme des cas d'utilisation
et un diagramme de classes du site collaboratif
Diagramme des cas d'utilisation (1/4)
* Issu du formalisme UML
* Identifier les scénarios d'utilisation
* Décrire le système d'un point de vue utilisateur
* Cas d'utilisation = scénario d'utilisation
* Manière spécifique d'utiliser le système
* Fonctionnalité déclenchée sur le système
Diagramme des cas d'utilisation (2/4)
* Acteur
* Entité externe qui agit sur le système
* Représente un rôle par rapport au système
* Cas d'utilisation
* Déclenché par un acteur (suite à une action)
* Ensemble d'actions sur le système
* Fonction visible par l'acteur
Diagramme des cas d'utilisation (3/4)
Diagramme des cas d'utilisation (4/4)
* Héritage entre acteurs (respectivement cas d'utilisation)
* Héritage du rôle (respectivement des actions)
* Enrichissement du rôle (respectivement des actions)
Correction: cas d'utilisation (1/2)
Correction: cas d'utilisation (2/2)
Diagramme de classes (1/4)
* Issu du formalisme UML
* Permet de représenter la structure du système
* Décrit des relations entre types d'entités
* Une classe regroupe des entités (objets) ayant
* Des propriétés (des attributs) similaires
* Un comportement (des méthodes) commun
* Des relations communes avec d'autres objets
Diagramme de classes (2/4)
* Une classe peut être en relation avec d'autres
* Relation d'association
* Une classe B est associée à une classe A
* Relation d'agrégation
* Une classe B possède des objets d'une classe A
* Relation d'héritage
* Une classe B hérite des caractéristiques d'une classe A
Diagramme de classes (3/4)
Diagramme de classes (4/4)
Correction: diagramme de classes
2ème étape: structure de la base de données
* Identifier les données à gérer dans une base
* Chaque catégorie de données ==> une table
* Attributs
* Type de l'information
* Domaine de valeurs
* Clés primaires
* Relation entre données ==> table "association" ?
* Attributs
* Cardinalité
* Proposer un modèle entité-association
de la base de données du site collaboratif
Modèle de données entité-association (1/5)
* Construction du modèle entité-association
à partir du diagramme de classes
* Entité = table
* Equivalent d'une classe "normale"
* Association = table qui relie plusieurs tables
* Equivalent d'une classe "association"
Modèle de données entité-association (2/5)
* Diagramme de classe ==> modèle de données entité-association
* Classe "normale"?==> entité
* Attributs classe ==> attributs entité
* Identifier clé primaire
* Relation d'association 1-1 (1..1?? 1..1)
* Inclure clé primaire de A comme clé étrangère de B (ou inverse)
* Attributs classe "association" avec clé étrangère
* Rappel: clé étrangère = clé primaire d'une autre entité
Modèle de données entité-association (3/5)
* Association 1-N (1..1 ? m..n)
* Comme association 1-1, mais un seul sens possible
* Inclure clé primaire de A comme clé étrangère de B
* Attributs classe "association" dans B
* Association M-N (m..n ? m..n)
* Nouvelle association relie les clés primaires de A et de B
* Clé primaire association = clé primaire de A + clé primaire de B
* Valide uniquement si l'association est unique
* En cas d'associations multiples ==> clé primaire propre
* Attributs classe "association" dans nouvelle association
Modèle de données entité-association (4/5)
Modèle de données entité-association (5/5)
Correction: modèle entité-association
3ème étape: interface du site
* Identifier les pages nécessaires
* Pages "formulaire": interface de saisie
* Définir les champs
* Définir les contraintes
* Pages "requête": affichage du contenu
* Définir le type d'affichage
* Définir les requêtes
* Définir des index pour les tables
* Pages "invisibles": gestion de la base
* Définir les requêtes
* Définir les contraintes
* Pages statiques: aucun contenu en base
* Définir l'enchaînement des pages
* Lien hypertexte
* Soumission d'un formulaire
* Redirection automatique
* Proposer un schéma de navigation
et une esquisse des pages du site collaboratif
Exemple de schéma de navigation
Consignes pour l'esquisse des pages
* Apparence de chaque page
* Disposition des éléments
* Charte graphique
* Requêtes
* Code SQL nécessaire
* Contraintes (tests à effectuer)
* Formulaires
* Champs (nom, type, valeur par défaut)
* Contraintes (tests avant envoi)
* Méthode d'envoi