Les systèmes de gestion de contenu

Pourquoi des CMS ?

Les systèmes de gestion de contenu (CMS : Content Management System) sont liés au développement rapide de la nouvelle « société de l'information ».
Plus précisément, ils sont nés :

De quoi sont-ils faits ?
Au sens large, un CMS comporte trois niveaux :

L'accessibilité renvoie aux interfaces grâce auxquelles l'utilisateur communique avec le CMS. Autrefois appelées « écrans » (dans le vieux jargon client-serveur), ces interfaces sont aujourd'hui de simples pages Internet.

Le niveau stockage, c'est la base de données : une base de données relationnelle (Oracle, MySQL...), une base documentaire propriétaire (Zope), un entrepôt XML, voire de simples fichiers texte.

Le niveau métier, ce sont tous les traitements que le CMS peut opérer avec les données, et qui sont spécifiques à l'application. Outre bien sûr la possibilité de créer et d'éditer une information, une des fonctionnalités les plus appréciées est la recherche, qui permet de retrouver une information précise dans la base, ou encore la possibilité de hiérarchiser les utilisateurs en fonction de profils, avec des droits définis, et de permettre ainsi la modération des contenus.
Grâce à la notion d'extension (ou de plugin), il est possible de greffer au système des fonctionnalités complémentaires (gestion de newsletters, commerce électronique, forum, agenda partagé, connectivité LDAP, etc.)

Remarquons que le terme de CMS peut aussi bien désigner bien un système de publication de pages web, qu'un portail de travail collaboratif : il se situe autant sur le versant internet que sur le versant intranet.
Les applications de GED (gestion électronique de documents) qui permettent de gérer avec une seule infrastructure des documents hétérogènes et, le cas échéant, non structurés (pages HTML, documents PDF, Word, images...) sont aussi considérées comme des CMS.

Cas d'utilisation

Je peux distinguer personnellement deux cas d'utilisation :

Cas 1 : Cas d'une entreprise qui souhaite gérer son contenu

Si l'objectif de l'entreprise est de publier des données temporaires, condamnées à être détruites à terme, le CMS en mode blog est idéal. Wordpress, par exemple, est tout à fait adapté à ce type d'utilisation.

Mais si les données publiées ont une valeur métier pour l'entreprise (une base de données produit par exemple) alors un CMS « clef en main » ne sera peut-être pas la bonne solution, en tout cas, on ne faudra pas écarter l'hypothèse d'un développement spécifique. Les content management systems enregistrent en effet leurs données sans autre logique que la logique documentaire qui leur est propre. Le jour où l'entreprise devra exploiter ces contenus autrement, pour les mettre à la disposition d'un autre système par exemple, ou bien pour migrer vers un autre CMS, comment fera-t-elle, si rien n'a été prévu par le système ? Et ne parlons pas du cas, fréquent, de ces entreprises dont les données proviennent d'un système tiers (une base SQL, un entrepôt SAS, une application métier, un flux XML), qu'elles souhaitent intégrer dans leur outil de publication Internet.

Du coup, je crois que ces mêmes organisations qui veulent gagner en autonomie seront finalement contraintes, non sans un certain paradoxe, à faire appel à un prestataire extérieur, qui, après audit, leur installera un CMS (soit un système développé sur mesure, soit un outil du marché, sous licence commerciale) avec, le plus souvent, un contrat de maintenance à la clef...

Cas 2 : Cas d'une agence web

Les agences web ont d'abord vu dans les CMS l'occasion de réduire leurs coûts de production, dans un secteur particulièrement concurrentiel. A quoi bon développer sans arrêt les mêmes interfaces de gestion, les mêmes modules de newsletters, les mêmes forums ?
Pour les entreprises qui avaient rencontré des difficultés à mettre sur pied une plateforme efficace de développement (mutualisation des procédures, patterns, programmation objet...), on peut penser que les CMS ont eu un effet bénéfique sur elles, en les aidant à rationaliser leur système de production.

Je crois cependant qu'il faut souligner un certain nombre de choses :

En attendant, il faut faire avec ce que l'on a. A savoir, choisir entre :

Au jour d'aujourd'hui, j'ignore quelle est la solution la plus économique pour une entreprise, même si je suis spontanément attiré vers la seconde option : des outils simples et légers.
On voit d'ailleurs apparaître des systèmes « sans base de données » stockant les contenus directement dans une page XHTML, ce qui me semble parfaitement logique (a priori un document hyper-structuré n'a pas grand chose à faire dans une base de données relationnelle) mais ces systèmes restent encore à améliorer.

Conclusion

J'ai eu personnellement à intégrer et/ou utiliser différents systèmes : Typo3 (à Préférences en 2004), Plone/Zope (à Cardinal-Systems en 2006), SPIP (en 2006), Wordpress (en 2006).
Mon retour d'expérience est contrasté, vous l'avez compris, et je crois que les content management systems n'ont toujours pas atteint le stade de la maturité, malgré le besoin que nous avons d'eux.
L'air est aux standards ouverts, pas aux coquilles closes qui n'interopèrent qu'avec elles-mêmes, et, de ce point de vue là, les CMS actuels doivent encore s'améliorer.

(publié le 28/02/07)