Fiche logiciel validé
  • Création ou MAJ importante : 14/05/08
  • Correction mineure : 21/05/08
Auteur :
  • Philippe Depouilly - Institut de Mathématiques de Bordeaux (Université Bordeaux 1, Université Bordeaux 2, CNRS)
Relecteur(s) :
Responsable thématique :
Mots-clés

Horde : socle d'applications (internet, travail coopératif...)

Description
Fonctionnalités générales : 
  • Horde est un “cadre d’application” ou “socle” (framework) permettant de développer rapidement des applications internet et de groupe de travail basées sur les standards et largement internationalisées. Il est développé en PHP.
  • Horde utilise les classes PEAR ou PECL qui permettent de mettre en oeuvre certains protocoles réseaux comme SOAP, XML_RPC, en plus des librairies PHP traditionnelles (LDAP, IMAP, SQL)
  • Les principales applications modulaires et interopérables sont :

    • webmail dans trois versions : IMP, MIMP (PDA, mobiles), DIMP (avec Ajax) avec gestion des règles de filtrage (Ingo)
    • organisation : carnet d’adresses (Turba), agenda (Kronolith), tâches et notes (Nag et Mnemo) ainsi qu’un gestionnaire de fichiers (Gollem)

    Horde propose aussi un ensemble de ces applications packagées pour l’organisation de groupes de travail : Horde Groupware et Horde Groupware Webmail Edition. On peut partager de nombreuses données (agenda, carnet d’adresses, fichiers), gérer des rendez-vous communs…

Autres fonctionnalités: 
  • Horde se déploie assez facilement, chaque application s’installe suivant le même principe et se configure à travers l’interface de Horde
  • Le projet propose un ensemble de recommandations pour développer rapidement de nouvelles applications, par exemple il est possible de s’appuyer sur le socle pour gérer l’authentification, la gestion des préférences, la configuration, la gestion des erreurs, etc.
Interopérabilité: 
  • Horde propose un grand nombre de mécanismes d’authentification (IMAP, LDAP, SQL, PAM, Shibboleth, Kerberos, Radius, etc.) On trouve par ailleurs des implémentations pour CAS
  • La gestion de tâches (Nag) et l’agenda (Kronolith) peuvent interopérer comme applications serveur (WebDAV ou CalDAV) pour le partage de tâches ou d’agendas depuis des applications tierces
  • Le projet IMP (webmail) propose une déclinaison pour les clients mobiles (MIMP)
  • La toute dernière version groupware 1.1 à sortir courant 2008 saura interopérer avec les PDA via le protocole SyncML et synchroniser le carnet, l’agenda les notes et tâches
Contexte d'utilisation: 

Horde a été déployé au sein du laboratoire (environ 400 comptes) et pour la plate-forme en ligne Mathrice (1400 comptes). Sa souplesse et grande réutilisabilité a permis l’ajout rapide d’applications “maison” comme un accès VNC, une gestion de carnets d’adresses itinérants (maintenant intégré à Turba) ou un proxy pour journaux électroniques (ces développements nécessitant assez peu de programmation supplémentaire).
Note du relecteur :
Dans le cadre des environnement numériques de travail (ENT), il est le logiciel préconisé par le consortium ESUP. Nous le déployons pour le personnel et les étudiants de l’université (plus de 25000 comptes)

Limitations, difficultés, fonctionnalités importantes non couvertes: 

Débuggage complexe car le mode debug est trop bavard. Etant écrit en objet, il est difficile de relier une URL à un bout de code particulier (nombreuses redirections HTTP).
Très riche, l’interface d’administration est parfois moins intuitive que le fichier de configuration généré à plat.
Il n’existe pas d’outils pour purger dans la base de données les données d’un utilisateur.
Suite à un changement dans les numéro de versions, on a un peu de mal à s’y retrouver, chaque outil ayant son numéro de version, indépendamment de la distribution (ex groupware edition 1.1 avec IMP 4.2 et Turba 2.2)

La facilité dépend de l’échelle du déploiement. Pour de vastes communautés, l’outil devient rapidement complexe, mais son aspect open source et modulaire (hooks) permet de l’adapter à son environnement.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré: 

linux debian, ubuntu, fedora

Plates-formes : 

Serveur web (de préférence Apache, mais aussi IIS, Sun Web Sphere, etc.) et PHP (4.3 ou plus récent) sur Unix-like , Windows ou Mac OS X.

Autres logiciels aux fonctionnalités équivalentes: 

eGroupware, Zimbra, open-Xchange

Environnement de développement
Type de structure associée au développement: 
Eléments de pérennité: 
Références d'utilisateurs institutionnels: 
Environnement utilisateur