Le fabuleux destin de Plone

version pda

mardi 30 août 2005, par Olivier DECKMYNKamon AYEVA

Toutes les versions de cet article : [français] [fr_pda]


Plone est le système de gestion de contenu le plus populaire du moment, spécialement pour les projets d’intranets ou de portails d’entreprise. Il a aussi deux autres particularités : il est Open Source et il est basé sur Zope, le fameux serveur d’applications écrit en Python. Zope est écrit et maintenu à la fois par la société américaine Zope Corporation et par la communauté qui s’est construite autour de cette technologie.

Introduction

Derrière Plone, il y a une armée d’utilisateurs (plus de 8500 à l’hiver 2004-2005), de développeurs et de consultants, parmi lesquels des sociétés majeures de l’industrie telles que Computer Associates, qui partagent les mêmes exigences de qualité technique de l’architecture et d’ergonomie élaborée de l’interface utilisateur. Le secret de Plone, c’est bien la puissance d’un outil simple à utiliser.br> Comme les leaders d’autres projets à succès tels que Linux (Debian, Ubuntu), ou Mozilla, Alexander Limi et Alan Runyan, co-fondateurs de Plone sont animés par la vision d’un système stable, simple à utiliser, et conforme aux standards (du Web en l’occurrence).
Une ambition résumée par la fameuse expression : It just works ®.

Historique

L’histoire de Plone est très intéressante et probablement emblématique d’une belle success-story du monde Open Source.

1998 Zope est un produit commercial de Digital Creations, qui lutte contre les mammouths du marché : Vignette, BroadVision, Documentum, InterWoven, etc.
1999 Zope devient Open Source.
2000 Sortie du framework CMF (Content Management Framework) de Zope.
Fin 2001 Frustration d’une partie de la communauté à la recherche d’un produit vitrine, facile à utiliser et à étendre ; d’où la naissance du projet Plone basé sur le CMF.
2003 Sortie de Plone 1, à Paris sur le stand d’Ingeniweb à Solutions Linux 2003.
2004 Sortie de Plone 2.0 au COMDEX de Las Vegas. Également, première conférence Plone aux USA.
2004 Création de Plone Foundation ; cette fondation, dont sont membres tous les développeurs et les parties intéressées à Plone, travaille à promouvoir l’utilisation et le développement de Plone.
Août 2005 Sortie de Plone 2.1 lors de l’OSCON à Portland.

Organisation du développement

Chaque version majeure de Plone est issue du travail acharné de la communauté de développeurs sous la coordination d’un Release Manager officiellement désigné par la Plone Foundation. C’est la personne responsable de la sortie des nouvelles versions. Stephan Holek (Autrichien) assume ce poste pour l’année 2005.
Les outils de travail de la communauté sont divers :

Diviser pour mieux régner !

Pour faciliter la coordination des tâches, les contributeurs sont organisés en plusieurs grandes équipes dédiées avec chacun un ou plusieurs leaders :

Le PLIP, pierre angulaire du développement

Chaque fonctionnalité ou amélioration à apporter doit faire l’objet d’une nouvelle PLIP. Les développeurs à l’initiative de la proposition la défendent lors des discussions sur les différents forums et listes de diffusion, ce qui permet d’améliorer la proposition. A l’issue de la discussion, le changement proposé est rejeté, accepté pour la prochaine version, ou pour la version suivante du logiciel.
Après acceptation du PLIP et dès que le développeur responsable du changement est prêt à fournir son implémentation, il crée une branche de Plone 2.1 dans le référentiel svn.plone.org. Une branche est une nouvelle version du logiciel, qui va vivre en parallèle de la version officielle (dite trunk) et qui apporte la nouvelle fonctionnalité. La branche devra contenir toutes les modifications ainsi que les tests unitaires (et fonctionnels) et les scripts de migration requis par ces changements. Cette branche sera testée par plusieurs des développeurs leaders, et notamment le Release Manager. Une fois jugée satisfaisante, elle sera fusionnée dans la branche principale de Plone trunk.
Ce processus interviendra plusieurs fois jusqu’à ce qu’on arrive à une branche intégrant toutes les améliorations promises pour la version en préparation, stable, et tant que l’on est dans la phase alpha de la livraison, car aucune nouvelle fonctionnalité ne peut être ajoutée après la livraison de la première version bêta.

Appel aux contributeurs et aux testeurs

Le contributeur est généralement un développeur expérimenté, mais pas uniquement ; les leaders mettent en place des procédures permettant à tout contributeur même débutant de pouvoir aider. C’est le cas des tâches annexes telles que la fourniture des fichiers de traduction de l’interface utilisateur pour les 32 langues de Plone !
De plus, tous les contributeurs sont encouragés à participer aux fameux bugs days pour aider à tester les bugs corrigés au fur et à mesure, et à mettre à jour le collecteur des bugs de Plone : ces sessions de 24h où se relaient les programmeurs Plone de la terre entière sont des moments-clés dans le processus qualité : le soleil ne se couche pas sur le bug collector ces jours-là !

Finalisation et release

L’équipe de livraison fournit plusieurs versions alpha, plusieurs versions bêta, et une ou plusieurs Release Canditates. Généralement, dès la sortie de la version bêta, le site plone.org est mis à jour avec le code de Plone, ce qui fournit un site volumineux et critique comme plate-forme de test aux développeurs afin de valider le résultat et éventuellement trouver de nouveaux bugs, notamment en ce qui concerne les migrations de contenu.

Promotion et support

Livres et presse

Des livres écrits par les principaux experts de la technologie permettent de promouvoir et vulgariser l’utilisation de Plone. De plus, et c’est aussi important, des articles ainsi que des communiqués de presse, sont régulièrement publiés sur les principaux sites spécialisés et dans la presse en général : O’reilly network, eWeek.com, Slashdot,...

Conférences

Une conférence mondiale dédiée à Plone est organisée chaque année. La prochaine édition aura lieu en septembre 2005 à Vienne, en Autriche. Il existe également des initiatives régionales appelées les Plone Symposiums.
Outre ces conférences spécialisées sur Plone, les acteurs de la communauté participent à diverses conférences afin de présenter Plone et également de se rencontrer pour des sessions de sprint : EuroPython aux Pays-Bas, OSCON aux USA, LinuxTag en Allemagne, Solutions Linux à Paris...

Conclusion

La communauté Plone a une organisation à la hauteur des exigences du produit et des attentes de ses utilisateurs.
La complexité des problèmes que cherchent à résoudre les technologies incluses dans le système de gestion de contenu appelle à un équilibre intelligent entre des développeurs très impliqués et créatifs et des responsables de l’organisation du développement vigilants et polyvalents (ayant des qualités d’architectes, de communicants, ...). Le succès sans conteste de Plone est en partie dû à cet équilibre délicat que la communauté a su trouver.

À propos des auteurs

Kamon Ayeva et Olivier Deckmyn sont des membres actifs et reconnus de la communauté Plone. Ils sont des membres historiques des communautés Zope et Python, auxquelles ils participent depuis 1998. Co-auteurs de 4 ouvrages de référence sur le sujet publiés aux éditions Eyrolles, ils occupent aujourd’hui des postes-clés chez le leader européen de Zope/Plone : INGENIWEB.

Pour en savoir plus


Olivier DECKMYN

Kamon AYEVA

Version PDA

Mots-clés

Accueil du site