Discussion:
Proposition de refonte de la publication sous CPS
Racinet Georges
2010-02-25 14:11:21 UTC
Permalink
Bonjour à tous,

je vous livre le fruit de quelques réflexions sur un sujet qui me
tracasse depuis longtemps,.
Il y a en ligne de mire un gros changement fonctionnel, destiné à
simplifier l'usage de CPS.

Partagez vous les constats ? Les propositions apportent-elles
sufisamment pour remplacer le fonctionnement actuel sans autre forme
de procès ? J'attends vos commentaires, sur la liste, bien sûr.

Pour une fois, j'écris ceci sur la liste française, mais si quelqu'un
a le courage de résumer et traduire pour les listes anglaises, je lui
en serait reconnaissant, car je n'aurai pas le temps.

Préliminaires
------------------

Dans ce qui suit, on entend par CPS la version livrée de base, à
savoir donc CPSDefault, mais il ne faut pas oublier que CPS est avant
tout une plate-forme dont il existe nombre de versions adaptées à
divers besoins spécifiques. On s'intéresse ici aux installations pour
lesquelles l'aspect publication est important, que ce soit pour le
grand public ou pour des besoins de communication interne.

Comme je maintiens directement quelques installations de ce type, je
suis particulièrement motivé pour améliorer l'expérience utilisateur,
et, très concrètement, j'aurais du temps de travail à y accorder.

Constatations
-------------------

Par rapport à d'autres systèmes de gestion de contenu, l'originalité
majeure de CPS réside dans la séparation entre espaces de travail et
espaces de publication. C'est à la fois sa grande force et sa grande
faiblesse.

Commençons par lister les avantages les plus évidents de cette
séparation :

- une organisation peut partager du contenu en interne et décider
seulement a posteriori de le publier, que cela ait été envisagé dès le
départ ou pas ;
- pour le contenu à forte durée de vie, il est possible d'avoir la
version 1 en ligne et de préparer prendant ce temps la version 2, de
la commenter, et même de la publier dans un espace restreint avant
publication finale. Un cas d'utilisation que je cite souvent : les
statuts d'une association ;
- multi publication, i.e. publication du même contenu à différents
endroits.

Malheureusement, ces avantages ne sont pas appréhendables
immédiatement par les utilisateurs (sauf formation), car ce sont des
usages relativement avancés ou tout simplement minoritaires dans la
vie du portail ou d'un utilisateur en particulier.

Restent les inconvénients : alors que les blogs existent maintenant
depuis des années, sans parler des réseaux sociaux, il est
inacceptable pour beaucoup d'utilisateurs qui veulent juste publier
quelques brèves de temps en temps d'avoir à créer un document dans un
espace de travail, puis de le publier. On doit pour cela naviguer dans
deux hiérarchies de dossiers, déplier une liste de rubriques
conséquente... Tout ceci est lourd pour les gens qui ont l'habitude du
portail en question, et franchement bloquant pour les contributeurs
occasionnels.

Il existe des variantes de CPS qui permettent de simplifier tout cela,
en sacrifiant les espaces de travail (CPSWebPublisher). De mon point
de vue, cela n'a plus grand intérêt à l'heure actuelle.

Proposition
----------------

Je reprends en fait ici une vieille idée de Florent Guillaume, en
substance : « j'irais bien vers un système de checkout/checkin, à la
Subversion »

Si l'on revient au fond fonctionnel de CPS (la plate-forme), ce
qu'elle est capable de faire, c'est maintenir autant de copies que
l'on veut de différentes versions d'un document à différents endroits.
Le fait que ce soit différents endroits permet d'ouvrir des accès
différents en écriture.

Voici les principes :

1. [Création] Les utilisateurs peuvent créer du contenu directement
n'importe où s'ils ont les droits nécéssaires (Validateur de rubrique
ou Membre de l'espace de travail suivant le cas).
2. [Modification] Tout contenu est modifiable sur place, toujours à
condition d'avoir les droits appropriés ;
3. [Checkout] Tout utilisateur peut créer une version de travail
d'un document auquel il a accès en lecture ;
4. [Checkin] On peut soumettre ou publier directement une version de
travail de la même façon qu'actuellement.

Les habitués des systèmes de contrôle de version voient déjà la
faille : que se passe-t-il si on a une version 1 dans les espaces de
publication, une version 2 dans un espace de travail et que quelqu'un
modifie la version 1 ? Il est hors de question d'aller jusqu'à gérer
des branches, la notion de version étant déjà à la limite de ce qu'on
peut attendre d'un utilisateur. D'où la variante :

2bis. [Modification] Tout contenu est modifiable sur place à
condition qu'il soit en la version la plus récente ; dans le cas
contraire, le système oppose un refus à l'utilisateur ou la
possibilité de procéder au préalable à une montée de version.

Les détails de ce principe méritent d'être un peu approfondis. Par
exemple, la montée de version préalable est peut-être à interdire dans
les espaces de publication, au profit d'un checkout et d'une montée de
version dans celui-ci.

Des avis ? Ce changement a beau être majeur au niveau fonctionnel,
c'est en fait techniquement assez facile et pourrait être en place
rapidement (pour 3.5.1, bien sûr).

--
Georges Racinet, http://www.racinet.fr
Zope/CPS/Plone expertise, assistance & development
GPG: 0x4862FFF7
Encolpe Degoute
2010-03-01 13:33:56 UTC
Permalink
Post by Racinet Georges
Bonjour à tous,
je vous livre le fruit de quelques réflexions sur un sujet qui me
tracasse depuis longtemps,.
Il y a en ligne de mire un gros changement fonctionnel, destiné à
simplifier l'usage de CPS.
Partagez vous les constats ? Les propositions apportent-elles
sufisamment pour remplacer le fonctionnement actuel sans autre forme de
procès ? J'attends vos commentaires, sur la liste, bien sûr.
Bonjour,
j'écourte un peu l'article original.
Ce qui a été demandé plusieurs fois est de rendre le système de
versionning sinon désactivable réellement au moins transparent.
C'est-à-dire ne pas avoir de check-in/check-out par défaut et de pouvoir
l'activer selon les besoins du projet dans une partie du site.

Cela permet à l'utilisateur de base de manipuler des contenus beaucoup
plus facilement dans 80% des cas et d'avoir les fonctionnalités avancées
que des les zones de travail collaboratif spécialisées.
--
Il y a deux produits majeurs qui sont sortis de Berkeley : Le LSD et
BSD. Nous ne pensons pas que ce soit une coïncidence.
Racinet Georges
2010-03-01 16:56:50 UTC
Permalink
Post by Encolpe Degoute
Post by Racinet Georges
Bonjour à tous,
je vous livre le fruit de quelques réflexions sur un sujet qui me
tracasse depuis longtemps,.
Il y a en ligne de mire un gros changement fonctionnel, destiné à
simplifier l'usage de CPS.
Partagez vous les constats ? Les propositions apportent-elles
sufisamment pour remplacer le fonctionnement actuel sans autre forme de
procès ? J'attends vos commentaires, sur la liste, bien sûr.
Bonjour,
j'écourte un peu l'article original.
Pas de problème, il est dans les archives :-)
Post by Encolpe Degoute
Ce qui a été demandé plusieurs fois est de rendre le système de
versionning sinon désactivable réellement au moins transparent.
C'est-à-dire ne pas avoir de check-in/check-out par défaut et de pouvoir
l'activer selon les besoins du projet dans une partie du site.
Cela permet à l'utilisateur de base de manipuler des contenus beaucoup
plus facilement dans 80% des cas et d'avoir les fonctionnalités avancées
que des les zones de travail collaboratif spécialisées.
Si je comprends bien, ce serait en gros ce que je propose, mais avec
en plus possibilité d'activation/désactivation des fonctionnalités de
checkin/checkout en fonction des espaces ? L'option en question
porterait-elle alors sur la source ou la destination d'une telle
opération ?

Remarque: je ne parlais pas du «créer une version» des espaces de
travail (en anglais également checkin/checkout), même si je pense bien
sûr que les deux doivent converger (de même, in fine, qu'espaces de
travail et de publication).


--
Georges Racinet, http://www.racinet.fr
Zope/CPS/Plone expertise, assistance & development
GPG: 0x4862FFF7
Encolpe Degoute
2010-03-04 11:48:03 UTC
Permalink
Post by Racinet Georges
Post by Encolpe Degoute
Post by Racinet Georges
Bonjour à tous,
je vous livre le fruit de quelques réflexions sur un sujet qui me
tracasse depuis longtemps,.
Il y a en ligne de mire un gros changement fonctionnel, destiné à
simplifier l'usage de CPS.
Partagez vous les constats ? Les propositions apportent-elles
sufisamment pour remplacer le fonctionnement actuel sans autre forme de
procès ? J'attends vos commentaires, sur la liste, bien sûr.
Bonjour,
j'écourte un peu l'article original.
Pas de problème, il est dans les archives :-)
Post by Encolpe Degoute
Ce qui a été demandé plusieurs fois est de rendre le système de
versionning sinon désactivable réellement au moins transparent.
C'est-à-dire ne pas avoir de check-in/check-out par défaut et de pouvoir
l'activer selon les besoins du projet dans une partie du site.
Cela permet à l'utilisateur de base de manipuler des contenus beaucoup
plus facilement dans 80% des cas et d'avoir les fonctionnalités avancées
que des les zones de travail collaboratif spécialisées.
Si je comprends bien, ce serait en gros ce que je propose, mais avec en
plus possibilité d'activation/désactivation des fonctionnalités de
checkin/checkout en fonction des espaces ? L'option en question
porterait-elle alors sur la source ou la destination d'une telle
opération ?
C'est ce que tu proposes.
Le but étant de désactiver le check-in/check-out, la création et les
modifications se font sur place : la source et la destination sont
identiques.
Post by Racinet Georges
Remarque: je ne parlais pas du «créer une version» des espaces de
travail (en anglais également checkin/checkout), même si je pense bien
sûr que les deux doivent converger (de même, in fine, qu'espaces de
travail et de publication).
C'est une extension de la convergence entre les différents types
d'espaces : quel que soit son type un espace doit pouvoir être sa propre
destination par défaut et il doit être possible de le paramétrer pour
publier les documents dans une listes d'espaces à identifier.
Cela permet d'avoir un fonctionnement simple par défaut et de pouvoir
créer des plugins pour les projets qui nécessitent un fonctionnement
plus spécifique.

Cordialement,
Encolpe DEGOUTE
--
Comment appelle-t-on une série de divisions dans un processeur
Pentium ?
Des approximations successives.
Continuer la lecture sur narkive:
Loading...