Conception et développement d’un système d’information basé sur XML

Slides:



Advertisements
Présentations similaires
École Nationale Supérieure d’Informatique et d’Analyse des Systèmes
Advertisements

Master SIR (M2) Année Développement en environnement J2EE de Web services pour l'interopérabilité du projet CASTORE ce stage de fin d’étude a.
DECOUVERTE ET MISE EN OEUVRE
Département Édition - Intégration SEMINAIRE SOA Migration du canal Esup MonDossierWeb Olivier Ziller / Charlie Dubois Université Nancy 2 16 octobre 2007.
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
Serveurs web pour JSP et Servlets
Personnalisation des sites SharePoint avec SharePoint Designer 2007
JXDVDTEK – Une DVDthèque en Java et XML
T ravail E tude R echerche COUREUX Éric DUCK Christian ZENGERLÉ Olivier COUREUX Éric DUCK Christian ZENGERLÉ Olivier EncadrantsEncadrants M. Crescenzo.
Présentation de l’application « Livret personnel de compétences »
1 Les technologies XML Cours 1 : Les Web Services et Architectures Orientées Services Fé vrier Version 1.0 -
Génération interactive dimages projectives : Application à la Radiothérapie Pierre BLUNIER Du 01/12/2002 au 28/03/2003 Centre Léon Bérard.
Projet Webase. I. La définition du projet 1. Lexistant : Webase 4 2. Cahier des charges 3. La répartition des données 4. Le modèle de données 5. Le choix.
JOME, un Composant Logiciel pour le Télé-Enseignement des Mathématiques via le WEB, Compatible OpenMath et MathML Laurent DIRAT OVE / I3S-UNSA.
Conception d’une application de gestion de fiches études
Maîtrise des données et des métadonnées de l’ODS
Système de stockage réseaux NAS - SAN
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
Développement d’applications web
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Etude des Technologies du Web services
XML-Family Web Services Description Language W.S.D.L.
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 1 : La notion de système.
Amélioration de la sécurité des données à l'aide de SQL Server 2005
Plugin B pour JEdit Matthias Meusburger Antoine Acquaviva
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 2 : Les applications fonctionnelles.
Sommaire Objectif de Peakup Principes de fonctionnement
Web Services - ADFS Pellarin Anthony En collaboration avec : Sogeti 1.
Archimède : dépôt institutionnel de la Bibliothèque de lUniversité Laval Par Rida Benjelloun Chef de la section recherche.
Principes de persistance dans les applications orienté objet
IUT2 de Grenoble Université Pierre Mendès France
Introduction aux plates formes
Projet JAVA EE Approfondi
BERNARDIN Benoît Lycée Louis Pergaud
Gestion des bases de données
Atelier « Créations de sites » : Les techniques de réalisation de sites EPN :...
Développement d’application web
@SSR – Installation des applications eduscol.education.fr/securite - février 2007 © Ministère de l'Éducation nationale, de l'Enseignement supérieur et.
22 Intéropérabilité Silverlight & PHP Le 8 février 2010 GIACOPINO Cyril Directeur pôle technologie TEQUILARAPIDO.
Projet Génie Logiciel & UML, Bases de Données & Interfaces
Détection d’intrusions
PLD GHome H4214 Piccolo Thomas Gu Lei Deville Romain Huang Yachen
SSO : Single Sign On.
Projet JSimula.
An Introduction to distributed applications and ecommerce 1 1 Les services Web, XML et les places de marchés.
Projet de Master première année 2007 / 2008
Projet CONSULTING SA : GSA ( Gestion du suivi d’activités)
LA GESTION COLLABORATIVE DE PROJETS Grâce aux outils du Web /03/2011 Académie de Créteil - Nadine DUDRAGNE 1.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
Le workflow Encadré par: M . BAIDADA Réalisé par: ATRASSI Najoua
‘‘Open Data base Connectivity‘‘
Introduction.
Fadwa AMRI Fanny COUTURIER Virginie ROMAIN.
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Outil de gestion des cartes grises
Projet de stage d’année IIR4 sous le thème:
Supports de formation au SQ Unifié
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
Soutenance ProJet Individuel
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
Metro Web Services Ben Yaflah Marouen Dhrif Mohamed Hbib Hajlaoui Nader.
Le web service
Mastère Professionnel Systèmes de Communication et Réseaux
Introduction au Génie Logiciel
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
Développement et design Web Awaves academy Stockholm 2006.
Web Services 17/01/2009.
Architectures articulant des représentations hétérogènes L’exemple de Gate (Mini tutoriel, journée Atala du 12 février 2005) Thierry Poibeau LIPN (CNRS.
1 CEC A.-CHAVANNE Sites Web et bases de données. 2 UNE BASE DE DONNÉES : POURQUOI ? Manipulation de grandes quantités d’information – représentation des.
PROJET DE SESSION PRÉSENTÉ PAR : Rosemarie McHugh DANS LE CADRE DU COURS : SCG Réalisation d’applications en SIG 16 avril 2007.
Transcription de la présentation:

Conception et développement d’un système d’information basé sur XML Projet de Mater EPFL, Section Informatique Conception et développement d’un système d’information basé sur XML Tania Magnenat 17 mars 2006

Plan de la présentation Introduction Cadre et objectifs du projet Analyse des besoins et choix technologiques Fonctionnement actuel/futur de la gestion Étude technologique: frameworks et base de données Conception Architecture, formulaires et schéma de base de données Développement du système Services web et interface Conclusions Travaux futures et perspectives

Introduction – Cadre général (1) Cadre du travail de master: conception et développement d’un système d’information basé sur les technologies XML pour le Center for Global Computing (CGC) Le Center for Global Computing Centre de compétences interdisciplinaire de l’EPFL Mise en œuvre et suivi d’activité de recherche Aide au montage et à la gestion (administrative, financière et scientifique) de projets de recherche

Gestion: fonctionnement actuel Centre des finances Acteurs: Secrétaire Coordinateur du projet

Introduction – Cadre général (2) Motivations Actuellement: gestion faite à la main (feuilles Excel) Problèmes: Toujours plus de projets et donc de données Suivi et maintenance très difficiles Cohérence des données pas garantie La taille des fichiers et le versioning sont problématiques Perte d’informations et erreurs dans la gestion

Gestion: fonctionnement futur Acteurs: Centre des finances Secrétaire Coordinateur du projet Interface Formulaires BD

Pourquoi ne pas utiliser une application générale? Solution pas triviale Impossibilité d’utiliser les applications existantes pour la gestion de projets (ex. MS Project) Besoins trop spécifiques (génération de vues, tables, formulaires, calculs, ...) Structure assez particulière Nécessité de développer un système spécialisé

Introduction - Objectifs Implémentation de deux modules du système d’information du CGC Reporting périodique: justification des dépenses et des ressources deployées Gestion du personnel Buts du projet Comprendre la gestion de projets pour structurer les données Automatiser la gestion Stocker les données de manière sure Accès/Modification des données via une interface graphique Résultat: système automatique capable de remplacer l’actuel système manuel

Phase I Choix technologiques

Choix Technologique Va influencer les performances et les futurs développement de l’application Important: Trouver les solutions les plus adéquates Choisir des technologies ouvertes Garantir l’évolutivité du système

Frameworks Définition: infrastructure logicielle qui facilite la conception d’applications Avantages: Meilleure structuration des différents éléments Séparation entre la couche présentation et les autres couches (transactions et données) Pourquoi utiliser un framework ? Pour une maintenance plus aisée de l’application Pour une meilleure répartition des tâches entre les diverses personnes travaillant sur l’application

Frameworks - Éléments de comparaison Open source Validation des données (côté client ou côté serveur) Technologies utilisées (JSP et Servlet ou XML) Implémentation de la notion de pipeline (traitement des données par enchaînement des opérations)

Frameworks - Étude comparative Struts JSF Cocoon OPS Open Source Oui Usage du MVC Non Validation Serveur Client Technologies Servlets, JSP, … XML Standards XML Pipelines

Base de données Choix de la base de données (pour des documents XML) Dépend du type de documents à stocker (centrés données ou centrés documents) Diverses possibilités pour le stockage: Système de fichiers Blobs dans une base de données relationnelle Mapping du schéma Base de données native XML

Base de données - Éléments de comparaison Base de données relationnelles Type de licence Plates-formes Conformité au standard SQL Stabilité et vitesse Sécurité, gestion de la concurrence et des transactions Base de données natives XML Gestion de la concurrente, de la sécurité et des transactions Mises à jour et APIs disponibles

Windows, Linux, Solaris, … Étude comparative - BD MySQL 5.0 PostgreSQL Licence GPL et commerciale BSD Plates-formes Windows, Linux, Solaris, … Conformité SQL Moyenne Haute Stabilité Haute-Très Haute Vitesse Moyenne-Haute Sécurité Concurrence Oui Transactions Tamino eXists Xindice Licence Commer-ciale GPL Plates-formes Windows, Unix Concur-rence Oui Oui (basique) Non Sécurité Mises à jour Document et nœud Transa-ctions APIs Java, C, PHP, .NET, JScript Java, Python, PHP Java

Solution retenue - Framework Choix final: Orbeon Presentation Server Repose sur les technologies XML Utilisation de la recommandation W3C XForms Langage de pipeline plus complet par rapport à celui de Cocoon Utilisation de Ajax (validation des données du côté du client)

Solution retenue - Base de données Choix difficile: Pas de solution XML totalement satisfaisante (open source, robuste et avec une gestion de la sécurité et des transactions) Choix final: MySQL 5.0 Base de données relationnelles Performante, fiable et simple d’utilisation Offre une bonne protection des données

Phase II Conception

Architecture Architecture SOA: Avantages: S’appuie sur un ensemble de services Décomposition en fonctions basiques Avantages: Modularité Réutilisabilité Meilleures possibilités d’évolution Maintenance plus facile Form Form XSLT WS WS WS MySQL

Pourquoi utiliser des web services? Interopérabilité entre diverses applications Permettent de dialoguer à distance utilisant le réseau web et indépendamment des plates-formes et des langages utilisés Utilisation de standards et de protocoles ouverts Message au format XML: facilité de lecture et de compréhension pour les humains Fonctionnement au travers des firewalls

Analyse du reporting et de la gestion du personnel Rappel: le but du projet est de structurer les données afin d’automatiser la gestion Grand travail d’analyse et de compréhension du reporting et de la gestion du personnel Discussions avec le management team du CGC Analyse des feuilles Excel Résultats: Formalisation des formules nécessaires à la création des tables Création des formulaires pour la saisie des données Création d’un schéma pour la base de données (structuration des données)

Développement du système Phase III Développement du système

Déploiement des Web Services Apache Axis Implémentation de la spécification SOAP (successeur de Apache SOAP) Architecture modulaire et extensible Développement de services web en Java Outil très simple à utiliser: il suffit de créer les classes Java et les déplacer dans le bon répertoire pour les « transformer » en service web Génération à la volée la description WSDL des services déployés

Un exemple pour mieux comprendre l’interaction OPS – WS – MySQL (1) WS: Projects Method: getProjects() Update OK WS: Projects Method: getProject() WS: Projects Method: updateProject()

Un exemple pour mieux comprendre l’interaction OPS – WS – MySQL (2) WS: Projects Method: getProjects() OPS: données XML

Un exemple pour mieux comprendre l’interaction OPS – WS – MySQL (3) WS: Projects Method: getProject() OPS: données XML

Un exemple pour mieux comprendre l’interaction OPS – WS – MySQL (4) Update OK WS: Projects Method: updateProject()

Conclusions Objectifs atteints: Avantages: Données structurées Automatisation du système de gestion L’actuel système peut être remplacé Avantages: Cohérence et versioning des données garantis Maintenance et suivi plus simples Système extensible Portabilité et génération de vues multiples  Meilleure gestion financière et administrative

Travaux futurs et perspectives (1) Collecte d’informations Connexion directe entre le centre des finances (SAP) et le SI Discussions en cours entre le CGC et les administrateurs SAP de l’EPFL Centre des finances SI Intégration dans un système plus grand Futur très proche: développement d’autres modules (prévisions financières, gestion de l’information scientifique, …) Garantir l’interopérabilité entre tous les modules du SI

Travaux futurs et perspectives (2) Stockage des données Actuellement: documents centrés données, donc aucune perte d’information avec la BD relationnelle utilisée Futur très proche: ajout de modules avec des documents centrés documents (ex. Delivrables) Ajout d’une base de données permettant le stockage de documents centrés documents sans perte d’information Sécurité des documents XML XML: facilement lisible par les humains Cryptage des données XML afin de les protéger

Insertion, Modification et Visualisation Démo http://globalcomputing.epfl.ch:8080/CGC Insertion, Modification et Visualisation des données

Questions