« Home « Kết quả tìm kiếm

Répartition d'un portail Web collaboratif par utilisation de Web Services


Tóm tắt Xem thử

- Nous avons intégré non seulement Mantis dans la plateforme Picoforge mais aussi étudié l’architecture générale et normalisé les services pour intégrer rapidement les autres applications dans Picoforge.
- Pendant la première partie du stage, nous avons modifié Picoforge pour y intégrer les notions de sous projet en utilisant une notion de catégorie de projet.
- 2.3.Web Services.
- Ajouter la notion de sous­projet et de catégorie dans Picoforge...21.
- Normalisation des services pour intégrer les logiciels dans Picoforge...21.
- Intégration de Mantis dans Picoforge via SOAP...24.
- Annexe B: Utilisation de SOAP pour intégrer Sympa avec Picoforge...36.
- Figure 1: Architecture générale de la version 1.1 de Picoforge...11.
- Figure 3: Transmission de données en utilisant XML­RPC...16.
- Figure 4: Modèle d'intégration de Mantis dans Picoforge.
- Figure 5: Architecture générale de la version 1.2 de Picoforge...29.
- Figure 6: Répartition d'installation de la plateforme Picoforge...30.
- Figure 8: Modèle d'intégration de Sympa dans Picoforge.
- Tout d'abord, Picoforge a une interface de Web qui agit en tant que bureau Web pour la description de projet et l'accès aux outils offrant différentes possibilités pour chaque projet.
- La figure ci­dessous montre l'architecture générale de PicoForge..
- Figure 1: Architecture générale de la version 1.1 de Picoforge.
- Nous utilisons les modules picolibre_choice et picolibre_current pour la creation de projet, la mise à jours de projet et l'affichage des infomations de projet.
- L'utilisation des autres modules dépend du type de projet (projet de recherche, projet de logiciel etc.) et des outils pour le projet.
-  To Do List: gestion de projet.
- Justqu'à la version 1.1, Picoforge ne supporte pas encore de notion de sous projet et la catégorie de projet.
- Le suivi des bogues est la gestion des erreurs qui est soutenue par une base de données.
-  La base de données peut être exportée aux format CSV, Microsoft Excel, Microsoft Word..
-  Supporte une interface de Web service (SOAP).
-  Bugzilla soutient ajouter les champs dans la base de données de bogue pour adapter aux besoins du client..
- Il est écrit en langage Java, fonctionne avec la base de données sur le standard SQL92, et supporte login via LDAP.
- 2.3.Web Services.
- L'objectif des Web Services est de faciliter l'accès aux applications entre entreprises et ainsi de simplifier les échanges de données.
- Normalement, les Web services utilisent le protocole HTTP sur le port 80 pour les échanges de données.
-  Les définitions sont généralement exprimés en XML et incluent les deux descriptions : les types de données et les messages qui emploient ces types de données..
- XML­RPC est conçu pour être aussi simple que possible, tout en permettant aux structures de données complexes d'être transmises, traitées et retournées.
- La figure 3 montre la transmission de données en utilisant XML­RPC..
- Voici un exemple de structures de données pour demander un login à distance.
- Figure 3: Transmission de données en utilisant XML­RPC.
- Il a une interface unique vers les tables de la base de données.
-  supporte les projets, les sous­projets et les catégories de projet;.
- Ajouter la notion de sous-projet et de catégorie dans Picoforge.
- Tableau 1: Liste des fonctions de class.project_categories.inc.php.
- Normalisation des services pour intégrer les logiciels dans Picoforge.
- Nous devons donc donner des services nécessaires et les données jointes de ces services si quelqu'un veut intégrer une application quelconque, qui a une base de données et demande une .
- synchronisation de données, dans Picoforge.
- Voici la liste de données que Picoforge donne à chaque événement correspondant..
- Création de projet.
- project_id code de projet..
- short_title court nom de projet..
- long_title long nom de projet..
- description description de projet..
- view_state état de projet (public/private)..
- web_link le site web de projet..
- Mise à jour de projet même données que pourla création de projet Suppression de .
- projet même données que l'événement de création de projet.
- project_id code de projet short_title court nom de projet.
- is_admin_project l'utilisateur est chef de projet ou pas?.
- de projet même données que l'événement d'ajouter un membre Ajouter une .
- catégorie du projet.
- Tableau 2: Liste de données que Picoforge donne à chaque événement correspondant..
- Donc nous avons besoin de deux services correspondants pour la synchronisation de données.
- Actuellement, si nous ajoutons une nouvelle application dans Picoforge, nous devons ajouter les commandes correspondantes dans la classe class.project.inc.php, par exemple, pour lancer cette application à partir d'événement de création de projet.
- Nous utilisons donc les hook de phpgroupware pour lancer les modules de création de projet (ou de .
- catégorie de projet.
- des applications d'intégration quand l'utilisateur crée un nouveau projet dans Picoforge.
- hook_project_update Mettre à jour de projet hook_project_delete Supprimer un projet.
- hook_project_remove_category Enlever une catégorie de projet indiqué..
- hook_project_remove_user Enlever un utilisateur de projet indiqué..
- Tableau 5: Liste des hooks ajoutés dans Picoforge..
- Intégration de Mantis dans Picoforge via SOAP 4.4.1 Analyse.
- Au niveau projet, Mantis supporte seulement de prendre les infomations de projet.
- Tableau 3: Liste des services principaux supportés par MantisConnect­1.0a5 Mantis a la notion de projet, de sous­projet, de catégorie de projet et d'utilisateur mais il a une base de données différente avec la base de données de Picoforge.
- Nous devons donc synchroniser des projets, des utilisateurs et des catégories entre deux bases de données.
- Bien que MantisConnect­1.0a5, ne supporte pas des fonctions pour la création ou la suppression de projet ou d'utilisateur mais il supporte les fonctions APIs que nous emploierons pour adapter aux besoins du client pour Picoforge..
- exigences à partir de Picoforge­core (ou d'autre application) et enverra ces exigences de synchronisation de données au serveur SOAP de Mantis.
- À côté de Mantis, nous devons ajouter les services qui supportent la création et la suppression de projet ou d'utilisateur.
- Voici la liste de services que nous ajouterons dans Web service de Mantis pour synchroniser les bases de données..
- mc_get_top_new_issue_id_by_project Prendre N­dernières bogues de projet indiqué..
- Pour accéder à Mantis, il faut s'authentifier à la base de données LDAP de Picoforge.
- En plus, Mantis ne peut pas mettre à jour la base de données LDAP de Picoforge..
- Dans la partie 4.3 création des hooks, nous avons créés les hooks correspondants avec chaque événement qui a besoin de synchronisation de données.
- Pour synchronisation de données entre Picoforge et Mantis, nous créons les modules correspondants avec l'événement de hook.
- Dans Picoforge, il y a pas la notion d'état de projet (par exemple: en developpement, en production, clos.
- Picoforge gère les utilisateurs en utilisant la base de données LDAP.
- pour que Mantis utilise le login de la base de données LDAP de Picoforge.
- En réalité, ces modules fournissent les interfaces graphiques qui aident l'utilisateur à choisir le projet ou à afficher les informations de projet.
- Voici l'architecture générale de version 1.2 de Picoforge..
- Figure 5: Architecture générale de la version 1.2 de Picoforge.
- Picoforge­core est le noyau de la plateforme de Picoforge.
- Il travaille directement avec la base de données (sur les tableaux qui sont créés par les développeurs de Picoforge).
- Il reçoit les exigences de mise à jour de données à partir des applications et les exécute.
- Quand il y a un événement de mise à jours de données, il peut activer les hooks pour demander de synchroniser des données avec la base de données de l'application extérieure.
- Dans le cadre du stage nous avons ajouté quelques notions dans la plateforme Picoforge comme: le sous­projet, la catégorie de projet.
- Nous avons aussi créé des hooks pour lancer facilement les applications dans Picoforge.
- Dans l'avenir, nous voulons intégrer un système de gestion de projet en base Web au lieu d'utiliser To­Do­List de phpGroupWare.
- Nous allons aussi ajouter la notion « l'état de projet » pour les projets dans Picoforge, par example: développement, fermeture, pause.
- [1] Site du projet Picoforge http://www.picoforge.org.
- [2] Site du projet phpgroupware http://www.phpgroupware.org.
- PhpGroupWare propose déjà de nombreuses applications comme: courrier électronique, messagerie interne, carnet d'adresses, gestion de projet.
- Elle supporte de travailler avec la base de données en utilisant les méthodes .
- d’abstraction de base de données.
-  class.sympa_ui.inc.php.
-  class.sympa_bo.inc.php.
-  class.sympa_soap.inc.php .
-  function.inc.php