Dans le cadre d’une veille stratégiques pour un de nos clients publics, nous avons étudié les solutions de gestion électronique de documents. L’article suivant constitue la 3ème partie sur les solutions de GED libres.
La partie ci-dessous décrit les solutions de GED utilisant OpenCMIS. L’objectif est de relever les choix technologiques adoptés par les solutions open source des éditeurs pour éclairer l’implémentation de certaines fonctionnalités dans la solution de la DNSCE en cours de développement.
1. Critères de sélection
Les solutions comparées répondent à un certain nombre de critères stricts :
Spécialisée dans la gestion documentaire
Implémentation CMIS basée sur le framework OpenCMIS (Apache Chemistry)
Licence Open Source
2. Alfresco
Licence : LGPLv3
Date de création : 2005
Site officiel : http://www.alfresco.com/
Alfresco est le système de gestion de contenu open source le plus populaire utilisé par plus de 7 millions d’utilisateurs dans plus de 2 500 entreprises. Il se distingue par une interface web conviviale. Alfresco se base sur le modèle freemium à travers trois versions de sa solution : open source, entreprise et cloud. Les deux dernières étant des solutions propriétaires.
La version Alfresco Community Edition a des limitations importantes par rapport à la version entreprise1 en particulier concernant l’absence du clustering. Le clustering et la réplication ne sont pas implémentés dans la version open source. Deux moteurs de workflow sont possibles : Activiti BPMN, la solution maison, et jBPM.
3. Nuxeo
Licence : LGPL
Date de création : 2007
Site officiel : http://www.nuxeo.com/
Nuxeo est une solution de gestion documentaire axée sur la modularité. La plateforme Nuxeo permet de déployer des applications professionnelles entre autres autour de la gestion de documents, de dossiers individuels ou de ressources numériques.
L’entreprise Nuxeo propose sa solution sans limitation fonctionnelle en open source. Elle offre des services d’assistance, de personnalisation et de support. Nuxeo dispose d’une couche de persistance « scalable ». Il est ainsi possible de stocker les métadonnées des documents sous format VCS (Visible Content Store) sur n’importe quelle base de données relationnelle ou sous format DBS (Document Based System) avec la base de données orientée documents, MongoDB. Le clustering est également possible. Le seul inconvénient de Nuxeo est le moteur de workflow qui est basé uniquement sur sa solution maison Studio.
Notons que l’architecture modulaire de Nuxeo facilite l’étude de ses fonctionnalités. Sur la plateforme GitHub, chaque composant de Nuxeo possède sa page2 comme l’interface avec jBPM3, la couche de recherche ElasticSearch4 ou encore l’interface pour échanger avec un client CMIS5.
4. LogicalDOC
Licence : LGPLv3
Date de création : 2007
Site officiel : http://www.logicaldoc.com/
LogicalDoc est une solution de gestion de document open source axée sur la simplicité. La société Logical Objects propose trois versions : Enterprise & Cloud, Business et Community. La version open source a des limitations en termes de fonctionnalités6 qui l’empêche d’être déployée à grande échelle : pas de stockage multi-volume, pas de clustering et pas de multi-tenant. De plus seules les spécifications CMIS 1.0 sont supportées.
5. Nemakiware
Licence : GPLv3
Date de création : 2013
Site officiel : http://nemakiware.com/
Site de l’éditeur :
Nemakiware est une solution de GED légère et personnalisable. L’éditeur propose une version open source sans restriction et offre des services de conseil et de support payants en parallèle. Nemakiware est relativement récent et bénéficie des dernières technologies comme l’utilisation de la base de données CouchDB et le fait d’être un serveur CMIS 1.1 natif.
Comme la solution existante au Centre Informatique Douanier (CID) de la DGDDI, Nemakiware est une solution de GED légère intégrant CouchDB / BigCouch. La recherche se fait cependant sous Solr et non ElasticSearch. Dans le cadre de l’évolution de sa plateforme de GED, le CID peut examiner les possibilités offertes par Nemakiware et choisir de l’intégrer. Le code source de Nemakiware est accessible sur GitHub7.
6. OpenKM
Licence : LGPLv3
Date de création : 2011
Site officiel : http://www.openkm.com/
OpenKM est une solution de gestion documentaire orientée gestion de connaissances. L’architecture est entièrement basée sur les technologies Java (Jboss, Java EE, Apache Jackrabbit). Trois versions sont offertes : Community, Cloud et Professional avec de nombreuses limitations fonctionnelles pour la version open source8. Le clustering ou les bases NoSQL ne sont supportés par aucune version. Il n’y a pas de couche persistance Notons que OpenKM n’a pas été mis à jour depuis presque un an d’où l’absence du support de la norme 1.0.
7. Comparaison fonctionnelle
Le tableau suivant compare les fonctionnalités des solutions de GED retenues :
Alfresco Community | Nuxeo Platform | LogicalDOC Community | Nemakiware | OpenKM | |
Licence | LGPL | LGPL | LGPLv3 | GPLv3 | GPL |
Modèle économique | Freemium Service | Service | Freemium | Service | Freemium |
Type d’activité communautaire | Forum Github | Forum Github | Forum | Github | Forum |
Niveau d’activité communautaire | Élevé | Élevé | Moyen | Inexistant | Moyen |
Qualité documentation | Élevé | Élevé | Moyen | Faible | Moyen |
Accessibilité du code source | Moyen | Élevé | Faible | Élevé | Faible |
Dernière mise à jour | 12/2014 | 03/2015 | 01/2015 | 03/2015 | 05/2014 |
Framework CMIS utilisé | OpenCMIS 1.1 | OpenCMIS 1.1 | OpenCMIS 1.0 | OpenCMIS 1.1 | OpenCMIS 1.0 |
Recherche et classement par métadonnées | Oui | Oui | Oui | Oui | Oui |
Gestion et suivi des accès et des versions | Oui | Oui | Oui | Oui | Oui |
Recherche / Indexation | Solr | ElasticSearch | Solr | Solr | Lucene (indexing) |
Base de données | MySQL PostGreSQL | MySQL PostGreSQL MongoDB | MySQL PostGreSQL | CouchDB | MySQL PostGreSQL |
Clustering | Non | Oui | Non | Oui | Non |
Période de rétention des documents | Non | Oui | Non | N/A | Oui |
Gestionnaire Workflow | Activiti BPMN, jBPM | Nuxeo Studio jBPM | jBPM | Non | jBPM |
Utilisation à échelle industrielle | Non | Oui | Non | Oui | Non |
Extensibilité | Oui | Oui | Limité (1) | Limité (1) | Limité (1) |
(1) Architecture modulaire permettant de créer ses propres extensions mais pas de catalogue d’extensions communautaires
8. Synthèse
Nous avons vu que quasiment toutes les solutions de gestion documentaire utilisent la librairie OpenCMIS pour intégrer CMIS. L’Administration a donc raison de partir du framework serveur OpenCMIS d’Apache Chemistry pour implémenter son serveur CMIS.
Les fonctionnalités classiques (gestion des versions, suivi des accès, recherche et classement par métadonnées) sont implémentées dans toutes les solutions étudiées. Elles sont en effet incluses dans les spécifications CMIS comme nous l’avons vu précédemment.
La couche recherche avec Lucene ou ses dérivés (Solr, ElasticSearch) est implémentée dans toutes les solutions de GED retenues. Elle ne devra donc pas poser de difficultés à l’Administration.
Nuxeo et Nemakiware sont les deux seules solutions open source qui sont déployables à grande échelle et sans limitation fonctionnelle. Elles utilisent pour archiver les documents une base NoSQL orientée documents et supportent le clustering.
Nuxeo par son architecture modulaire et sa richesse fonctionnelle est un bon exemple pour éclairer l’implémentation du serveur CMIS de la DNSCE.
Nemakiware par son support de CouchDB très similaire à BigCouch, peut intéresser davantage le CID comme alternative à sa solution existante.