Comparatif CMS Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA
Sommaire
Introduction : Dans le cadre de notre projet de master première année, il nous a été demandé de développer un moteur de recherche spécialisé dans la chimie organique. Pour répondre à cette problématique, il nous a été proposé d utiliser un système de gestion de contenu (C.M.S.) déjà existant pour gérer les documents issus des ouvrages spécialisés dans la chimie organique. Ce C.M.S. devra aussi remplir plusieurs fonctions primordiales à l accomplissement de notre projet comme l utilisation d un moteur de recherche (Apache Lucène) et la possibilité de développer des modules en java. Notre tuteur de projet nous a proposé un ensemble de 5 C.M.S. open sources : Nuxeo : http://www.nuxeo.com/solutions/ecm/ ez Publish : http://ez.no/ Typo3 : http://typo3.com/ SPIP : http://www.spip.net/ Jahia : http://www.jahia.org/jahia/home.html
Présentation des C.M.S. : a) Nuxeo Nuxeo Enterprise Platform est une solution serveur d'enterprise Content Management (ECM) robuste et extensible développée et diffusée selon le modèle du logiciel libre. Il est déployé sur un serveur d'application Java EE 5. Il est conçu pour être utilisé à partir d un navigateur web standard comme MS- IE ou Firefox, avec une interface riche basée sur les technologies Ajax. Il est également possible de l utiliser depuis une suite bureautique comme MS- Office ou OpenOffice.org, ou une application Nuxeo RCP. Il permet la gestion de l'information dite moderne (web 2.0, explosion de la quantité d'informations et d'e-mails à gérer, travail hors-site et hors-ligne, mobilité, etc.). Nuxeo possède un module de gestion documentaire nous permettant de déposer nos propres fichiers (articles, documentations,.pdf,.doc ) et dispose de son propre moteur de recherche. Celui ci recherche le mot clé saisi dans tous les documents accessibles sur Nuxeo. Evaluation du moteur de recherche propre à Nuxeo : Nous avons intégré les exemples de documents de chimie dont nous disposons dans le CMS. Notre recherche portera sur une molécule : H 3 O + Mots clefs utilisés : H3O+ : recherche fructueuse h3o+ : recherche fructueuse H3o+ : recherche fructueuse 3o+ : recherche infructueuse Lors du test, Nuxeo remplace automatiquement H 3 O + par H3O+. Plusieurs tests, nous ont permis de déterminer que le séparateur utilisé pour découper le document est l espace (). Les mots usuels couramment employés ne sont pas pris en compte. Une recherche avec le terme «it» (en anglais) ne retournera pas de résultat. Par contre, les illustrations ne sont pas gérées. Le moteur de recherche avancé permet juste d approfondir la recherche en sélectionnant diverses options mais ne palie pas aux problèmes précédant.
Nuxeo représente le résultat en affichant les documents dans lesquels les mots clés recherchés sont présents. Il ne précise pas la partie où l on retrouve le mot.
Pour l insertion du moteur de recherche Lucène dans Nuxeo : L interfaçage Nuxeo /Lucene est possible, il y a déjà plusieurs projets dans ce sens : «Apogée project» : http://apogee.nuxeo.org/ «PyLucene project»: http://pylucene.osafoundation.org/ «NXLucene»: http://www.cps-project.org/sections/projects/nxlucene b) Ez Publish ez Publish est une plate-forme d'enterprise Content Management (ECM) conçu pour réaliser essentiellement des pages web. Il est plus qu un simple CMS, c est un Framework avec de nombreux packages à son actif (site entreprise, marchand, intranet, forum, blog, galerie d images ). C est une application open source en PHP, simple d utilisation, qui fonctionne sous apache. Il ne contient aucune spécialisation. Son portail permet l intégration de contenu de sources externes, ainsi que d applications et de services. ez Publish permet la gestion des différents médias (images, animations, documents ), la gestion des comptes et groupes utilisateurs de manière structurée et peut intervenir dans l utilisation d un site e-commerce. Sa structure : EZ Publish est composé de trois modules : le noyau, les librairies et les extensions. On retrouve cinq répertoires contenant : - bin : scripts en php et shell (utilisés généralement pour la maintenance) - design : tout ce qui touche au design du site (template, images, css ) - doc : documentation d EZ Publish (possibilité d ajouter sa propre documentation) - kernel : noyau d EZ Publish (ne doit en aucun cas être modifié ou supprimé) - lib : librairies utilisées - settings : configuration du site (fichiers.ini) - share : fichiers statiques utilisés pour la traduction ou pour des informations locales - var : fichiers de cache et de log
Son design est créé par un système de template. Ces templates sont un mélange de code XHTML pour l affichage et d un langage particulier à EZ Publish pour la récupération du contenu. c) Jahia Jahia est un serveur applicatif remplissant les fonctions de portail d'entreprise, de serveur de gestion de documents, de serveur de gestion d'activités et de moteur de recherche. Ce CMS se décline en plusieurs versions : Version Community Version Standard Version Professionnal Version Enterprise Seule la version Community reste gratuite et open source. Malgré sa gratuité, cette version propose un panel assez intéressant de fonctions directement liées avec les objectifs de notre projet. Voici l ensemble de ces fonctions : 1. Gestion documentaire : la gestion des fichiers est directement gérée dans le CMS par une interface web permettant de parcourir une arborescence de fichiers présents sur le serveur, de rajouter ou supprimer un ou plusieurs fichiers. Tout cela reste bien évidemment très basique sans aucune gestion des versions des documents.
2. Moteur de recherche intégré : jahia est directement interfacé avec le moteur de recherche apache Lucène. Il est possible via l interface d administration d indexer les fichiers (.pdf.doc et autres documents office,.txt et.html) présent dans le module de gestion documentaire. La recherche se fait tout simplement par le biais d un formulaire de saisie ; le CMS se charge ensuite de présenter le résultat de la recherche sous la forme suivante :
Comme l on peut le voir sur cette capture d écran la recherche du mot «acetic» a été fructueuse dans un des fichiers indexé par le moteur. Le résultat de la recherche donne le chemin du fichier dans lequel les mots clés ont été repérés ainsi que les passages du fichier concernés. Le processus d indexation peut être facilement lancé via l interface d administration du C.M.S. Nous avons essayé de faire des recherches spécifiques à la chimie organique. Le résultat est que le moteur de recherche est capable de reconnaitre des formules chimiques basiques comme H2O. 3. Jahia est un C.M.S. entièrement développé en java. De ce fait il est possible de rajouter des fonctionnalités au C.M.S. par le biais de servlets définis par l utilisateur ou le gestionnaire de l environnement. 4. Cette version community possède un système de gestion d utilisateurs et de droits sur les différentes parties du C.M.S.. Malheureusement elle n intègre pas la gestion des utilisateurs via LDAP. d) Typo3
Typo3 fait parti des C.M.S. Open Source en PHP qui fonctionne sous Apache. Il est accessible grâce à un navigateur. Il possède une base de données MySQL. La gestion des utilisateurs : Typo3 permet de gérer les utilisateurs afin de leur affecter des droits qui pourront servir par exemple lors de publication de contenu. La gestion des documents : Une fois authentifié sur l application, on accède à une arborescence permettant de créer des pages pour la publication de contenu en ligne. Typo3 permet également de récupérer des documents de tous types afin de les indexer. La recherche : Un moteur de recherche est intégré au CMS mais celui-ci n effectue la recherche que sur les titres des documents. Les Workflows : Typo3 dispose d un système de Workflows qui permet de gérer les états des documents et des contenus à publier sur l application Malheureusement, Typo3 est un CMS qui est plus tourné sur la création de sites WEB.
Conclusion : Suite à cette étude, deux catégories de C.M.S. se démarquent. Les CMS qui présentent un aspect orienté vers la publication de site et de pages web et ceux qui intègrent aussi des outils de gestion documentaire. Nous recherchons essentiellement ce genre d outil. En effet le moteur de recherche devra traiter un volume important de données sous forme de documents numériques. Chaque C.M.S. présenté ci-dessus présente un outil de recherche documentaire intégré. Pendant la réunion avec notre tuteur de projet, nous avons défini une contraire d intégration du moteur de recherche Apache Lucène au sein du C.M.S. Dans la liste des C.M.S. traités précédemment, seul deux d entre eux répondent à ces spécifications : Jahia et Nuxeo. Mais notre préférence se porte plutôt sur Jahia. En effet, le moteur de recherche Lucène y est déjà intégré et l efficacité de ses recherches dans des documents spécialisés dans la chimie organique est exemplaire.