- Est-ce qu’on implémente un chat sur le site ?
- Est-ce qu’on doit pouvoir créer un topic sur un forum sans passer par le forum, directement depuis un bouton placé sur la page d’accueil ?
- Est-ce qu’on veut pouvoir choisir entre la syntaxe Markdown et la syntaxe reStructuredText en rédigeant sur ZdS ?
- Faut-il retravailler la page d’accueil pour mieux y mettre en avant les contenus, ou plutôt faire une page d’accueil séparée “contenus” pour les mettre en valeur ?
- Quand un utilisateur non-connecté clique sur le lien “Dernière réponse : 12h33” sur le forum, doit-on renvoyer au premier message du sujet ou au dernier, sachant qu’on ne peut pas l’envoyer au dernier message qu’il a lu ?
- Quel est le plus important, pouvoir “@pinger” les membres sur les forums ou permettre d’insérer des sondages dans les posts ?
Ces questions ont un point commun : personne n’a la responsabilité d’en décider. Parfois il y a un vote sur le forum, parfois juste une discussion de 25 pages sans suite, parfois une proposition vient directement dans une Pull-Request et personne n’est habilité à décider que c’est une mauvaise suggestion pour ZdS. Dans la situation actuelle, c’est pas les devs qui manquent, c’est une vision produit. Et sans vision produit, chacun ajoute sa petite feature à la plateforme, et demain ce sera un patchwork difforme, incohérent, incompréhensible, inutilisable, et pas maintenable.
Je viens vers vous avec la double casquette de DTC embêté par cette situation et membre du CA avec le mandat de demander l’avis de la communauté sur la question suivante :
Êtes-vous d’accord que ZdS délègue les décisions produit à un ou une responsable produit, ci-après Product Owner.
On n’est pas fan des cahiers de charges hyper détaillés, c’est lourd et c’est pas utile dans une petite structure bien guidée par son CA et où la confiance règne, du coup évitons de perdre du temps avec ça et concentrons-nous sur la proposition dans les grandes lignes, et comment ce nouveau rôle cohabite avec le rôle existant de DTC :
- Le PO (Product Owner) a une vision globale de l'état actuel de la plateforme et de la direction qu'elle doit prendre à moyen terme :
- Il priorise les évolutions et les nouvelles fonctionnalités.
- Il a le droit de refuser ou d'accepter les features et de dire lesquelles sont préférablement les plus importantes / attendues (on ne peut rien imposer).
- Il vaut mieux le consulter avant de faire une PR qui introduit une nouvelle fonctionnalité, ne serait-ce que pour savoir si on veut vraiment cette PR sur ZdS.
- Le DTC (Directeur Technique Cuelquechose) a une vision globale des aspects techniques de la plateforme :
- Il priorise les bugfixes (quels bugs sont critiques, avec quels bugs on peut continuer à vivre encore quelques temps au besoin…) et les évolutions purement techniques (par exemple refactoriser un module, tout passer à Python 3, etc)
- In fine il reste celui qui décide ce qui sort dans une release et ce qui sera plutôt à faire pour les suivantes.
- Il est donc aussi responsable des mises en prod (logique : c'est lui qui décide si inclure tel ou tel truc dans une release est risqué ou non, donc il faut bien que ce soit lui qui prenne le risque pendant la MEP, et réciproquement).
Ces deux rôles se complètent, doivent collaborer et faire des concessions entre eux. Dans certains cas le PO pourra vouloir une feature qui aurait un impact trop négatif sur la technique, le DTC devra l'en dissuader. Dans d'autres, le DTC jugera qu'un bugfix est mineur alors que son impact sur le produit est très important pour le PO, qui devra alors convaincre le DTC de reprioriser le ticket en question.
Nous attendons votre avis sur cette proposition. Tous les membres du CA et tous les membres de l’équipe technique qui se sont exprimés sur cette proposition jusqu’à maintenant s’y sont montrés favorables, mais ZdS prend ses décisions en public d’où le présent message. Merci donc de vous exprimer si vous avez quelque chose de pertinent à ajouter à la discussion. Dans le cas contraire, vous pouvez -1
ce message si vous êtes contre, +1
si vous êtes pour, l’ignorer si vous vous en fichez, attendre quelques jours si vous n’avez pas encore d’avis.
Les attributions annexes viendront avec le temps. Par exemple, on peut raisonnablement s'attendre à ce que le PO rédige en partie les articles de release, décrivant brièvement les nouvelles fonctionnalités, ce qu'elles apportent, et à quoi s'attendre pour la release suivante.
Si cette proposition est acceptée, nous en discuterons ensuite les détails. Gardez vos idées au chaud, nous reviendrons vers vous. Il s'agira probablement de supprimer le poste de CdP au passage (personne n'en connait l'utilité) et de changer le système de ZEP (plusieurs pistes ont été envisagées).
Nous réglerons également la question du recrutement de la ou du PO. Le plus important là maintenant est un accord de principe, la situation actuelle ayant un trou béant qui se creuse au fur et à mesure qu'on ajoute des trucs à la plateforme.