Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parCésar Vasseur Modifié depuis plus de 9 années
2
Introduction
3
Présentation Cumgha3 Sommaire 1. Présentation 1.1. Qu’est-ce qu’un CMS? 1.2. Un CMS basé sur XML 1.3. Spécificités et originalités 2. Architecture et technologies utilisées 2.1. Technologies du système d’information 2.2. Structure en couche
4
Présentation Cumgha4 Sommaire 3. Détail des spécificités 3.1. Déploiement: fichier de configuration 3.2. Les schémas: Structure d’une collection 3.3. Gestion des caches 3.4. Validation des schémas 3.5. Authentification et droits 3.6. Mécanismes de transaction utilisateurs 3.7. Back-office 3.8. Front-office 4. Méthodologie employée 5. Bilan
5
1. Présentation
6
Présentation Cumgha6 1.1. Qu’est ce qu’un CMS ? Le C.M.S. ( Content Management System ) permet de stocker de L’information, de la présenter et de la mettre à jour. Contenu sécurisé Gestion facile du contenu (JuS, + general)
7
Présentation Cumgha7 1.2. Un CMS Basé sur XML Le stockage des données se fait sous la forme de collections de documents XML dans une base de données relationnelle. Les documents d'une collection respectent le même schéma Le schéma permet de vérifier la validité des documents et de fournier à l’utilisateur la possibilité de stocker du texte, des binaires Stockage de documents XML
8
Présentation Cumgha8 1.2. Un CMS Basé sur XML
9
Présentation Cumgha9 Un CMS Basé sur XML Un Front Office pour la présentation Des feuilles de styles permettent la présentation des documents XMLfournis à la demande par la base. Un Back Office pour la gestion des document Un utilisateur authentifié peut visualiser ses documents, les mettre à jour à l’aide de formulaires dynamiques
10
Présentation Cumgha10 1.4. Fonctionnalités L’authentification au Back Office se fait à l’aide d’un document XML authentifiant Intervenants.jl.massat **** Authentification
11
Présentation Cumgha11 Fonctionnalités Visualisation des collections présentent dans le CMS
12
Présentation Cumgha12 Fonctionnalités Gestion d’un document
13
Présentation Cumgha13 1.3. Spécificités et originalité Utilisation d’un document XML authentifiant pour la connexion d’un utilisateur au Back Office Gestion des droits sur les documents et les collections Utilisation d’un cache de documents pour augmenter la rapidité d’accès Utilisation d’un robot de validation Particularité: CMS basé entièrement sur XML
14
2. Architecture et technologies employées
15
Présentation Cumgha15 2.1. Technologies du système d’information CMS développé sur la plate-forme Java J2EE CMS développé sur la plate-forme Java J2EE Langage de programmation: Servlets, JSP et Java Langage de programmation: Servlets, JSP et Java Moteur de servlets Tomcat Moteur de servlets Tomcat
16
Présentation Cumgha16 Principe d’un outil de persistance de données Base de données MySQL API de persistance de données Bean Java 1 Bean Java 2 Bean Java 3 XML Requêtes SQL via JDBC Un Bean java Ou une liste de beans Ensemble de lignes
17
Présentation Cumgha17 Choix de l’outil de persistance de données Ibatis développé par le consortium Apache Ibatis développé par le consortium Apache Facilité de prise en main Facilité de prise en main Les requêtes sont écrites en SQL – ANSI 92 (SQL Standard) Les requêtes sont écrites en SQL – ANSI 92 (SQL Standard) Les requêtes sont centralisées dans le fichiers de mapping XML des tables Les requêtes sont centralisées dans le fichiers de mapping XML des tables
18
Présentation Cumgha18 Les autres outils utilisés La librairie DOM4J pour le traitement des fichiers XML au sein du code Java La librairie DOM4J pour le traitement des fichiers XML au sein du code Java Taglib Xtags pour transformer les fichiers XML rendus par le CMS afin de les afficher dans les vues JSP. Taglib Xtags pour transformer les fichiers XML rendus par le CMS afin de les afficher dans les vues JSP.
19
Présentation Cumgha19 2.2. Structure en couches Application structurée en 5 couches Application structurée en 5 couches Couche physique (bas niveau) Couche physique (bas niveau) Couche de stockage Couche de stockage Couche métier Couche métier Couche XML Couche XML Couche présentation (programmation haut niveau) Couche présentation (programmation haut niveau) Toute couche s’appuie sur sa couche inférieure Toute couche s’appuie sur sa couche inférieure
20
Base de données relationnelles Couche Physique Abstraction de la base de données Mise à disposition (à l’aide d’IBATIS et DOM4J) de : - la structure complète de la base - lecture/écriture de documents Couche de stockage Prise de pouvoir, envoi de mails Gestion des transactions / accès concurrent Gestion des documents, collections et binaires Robot de validation des documents Authentification utilisateur Couche métier Modèle MVC - Génération des vues Utilisation d’un navigateur Web Présentation du site Web de la base pour tout utilisateur Front Office non connecté Back Office connecté Couche Présentation Génération en arbre de pages de documents XHTML Production et modification de documents XML Couche XML Flux d’entrées/sorties XML Accés direct
21
3. Détail des spécificités
22
Présentation Cumgha22 3.1. Déploiement : fichier de configuration
23
Présentation Cumgha23 3.2. Les schémas : structure d’une collection (1/4) Collection associée à un schéma Collection associée à un schéma Un schéma donne Un schéma donne une structure fixe aux documents de la collection une structure fixe aux documents de la collection Un moyen d’interroger ces documents Un moyen d’interroger ces documents Un moyen de les présenter (par xsl) Un moyen de les présenter (par xsl) Format XML Format XML Inspirée des schémas du W3C (bien plus simplifié) Inspirée des schémas du W3C (bien plus simplifié) Ex : schéma ‘unités’ -> spécifie la structure des documents des unités du Master d’informatique Ex : schéma ‘unités’ -> spécifie la structure des documents des unités du Master d’informatique
24
Présentation Cumgha24 3.2. Les schémas : structure d’une collection (2/4) Les schémas sont : Les schémas sont : Des suites de propriétés (pas d’imbrication) Des suites de propriétés (pas d’imbrication) Peuvent être déclarée facultatives Peuvent être déclarée facultatives Chaque propriété possède: Chaque propriété possède: Une cardinalité (une ou plusieurs valeurs) Une cardinalité (une ou plusieurs valeurs) Un type Un type D’autres attributs spécifiques selon les types D’autres attributs spécifiques selon les types
25
Présentation Cumgha25 3.2. Les schémas : structure d’une collection (3/4) 3 types de propriétés: 3 types de propriétés: Type « Texte » Type « Texte » Texte CourtTexte Court Texte Riche (codes stylistiques)Texte Riche (codes stylistiques) Liste de valeursListe de valeurs (valeurs imposées dans le schéma)
26
Présentation Cumgha26 3.2. Les schémas : structure d’une collection (4/4) Type « Référence » Type « Référence » précise la collection de référenceprécise la collection de référence dans le schéma Type binaire Type binaire Propriétés encodés en base64 dans le document XMLPropriétés encodés en base64 dans le document XML Tout type de fichiers (images,.pdf,.doc,.zip)Tout type de fichiers (images,.pdf,.doc,.zip) Référence à cardinalité « plusieurs »
27
Présentation Cumgha27 3.3. Gestion des caches Problème: lenteur de traitement du XSL, lourdeur du XML Objectif du cache: prévenir d’éventuels problèmes d’efficacité Modèle LRU (Least Recently Used): cache 12345 + récent+ ancien 6
28
Présentation Cumgha28 3.3. Gestion des caches Cache de structure Cache de documents Cache des collections
29
Présentation Cumgha29 3.4. Validation des documents Au lancement du système Système lancé XSL de validation XSL génériqueschémaDocument à valider Fichier d’erreur
30
Présentation Cumgha30 3.4. Validation des documents Vérifier l’intégrité des données du CMS Informer les utilisateurs d’éventuels problèmes Robot de validation
31
Présentation Cumgha31 3.5. Authentification et droits Gestion des droits évoluée 3 types d’utilisateurs Administrateur Tous les droits Ajouter/supprimer des collections Gestionnaire de collection Droits d’un simple utilisateur Peut accorder des droits sur les documents de sa collection Utilisateur Créer des documents Modifier les documents (propriétaire et gestionnaire)
32
Présentation Cumgha32 3.5. Authentification et droits Collections authentifiantes Contient les documents authentifiants Ces documents permettent de s’identifier
33
Présentation Cumgha33 3.6. Mécanisme de transaction Authentification d’un utilisateur Authentification d’un utilisateur Création de la liste de documents en cours de modification Création de la liste de documents en cours de modification Modification sur différents documents XML Modification sur différents documents XML Conservation des modifications effectuées dans la liste créé (mais pas dans la base de données) Conservation des modifications effectuées dans la liste créé (mais pas dans la base de données) Validation des modifications apportées sur les documents XML Validation des modifications apportées sur les documents XML
34
Présentation Cumgha34 La servlet de production XML url :get La structure de la table toutes les collections tous les documents Récupération des informations Le contenu d’une collection url :get/unite XML url :get/unite.M16 Le contenu d’un document précis XML Appel de l’url
35
Présentation Cumgha35 3.7. Back Office Caractéristiques Caractéristiques Interface graphique permettant de manipuler les documents du CMS Interface graphique permettant de manipuler les documents du CMS Authentification Authentification Basé sur le modèle MVC Basé sur le modèle MVC Vues basées sur la couche XML Vues basées sur la couche XML Relier à la couche XML Relier à la couche XML Permettent la gestion des documents du CMS Permettent la gestion des documents du CMS Insertion, mise à jour, suppression… Insertion, mise à jour, suppression…
36
Présentation Cumgha36 3.7. Back Office illustré par un exemple Un utilisateur authentifié visualise un de ses documents et veut le modifier Un utilisateur authentifié visualise un de ses documents et veut le modifier
37
Présentation Cumgha37 3.7. Back Office Back Office Couche Métier Cache des collections XSL Validation Col Schéma Col BDR XSL Formulaire dynamique XML
38
Présentation Cumgha38 3.8. Front Office Interface WEB Interface WEB Accès non sécurisé Accès non sécurisé Présentation des informations du CMS Présentation des informations du CMS
39
4. Méthodologie
40
Présentation Cumgha40 4.1. Conduite de projet Apprentissage du travail en groupe Projet à 7 personnes Application de règles de gestion de projet Génie Logiciel
41
Présentation Cumgha41 4.2. Organisation Réunion hebdomadaire Documents produits : Planning Cahier des charges Cahier des spécification Cahier des conceptions méthode UML Projet en cycle de vie incrémentale
42
Présentation Cumgha42 Chronologie du projet Cahier des chargesSpécification Conception Programmation 2 semaines 1/21 semaine2 semaines
43
Présentation Cumgha43 Bilan Les difficultés rencontrées Mise en place laborieuse d’un environnement de développement Un CVS a cruellement manqué. les points positifs Une vision professionnelle du déroulement d’un projet Apprentissage du travail en équipe
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.