Bonjour chers tous,
J'ouvre ce topic, pour recueillir vos points de vue sur le concept des ZEP tel qu'il est aujourd'hui mis en place sur ZdS. Pour ceux qui ne le savent pas, une ZEP est une description (spécification) d'une fonctionnalité que l'on aimerait voir apparaître sur le site. A l'origine l'idée était de s'assurer que ce qui est développé a été voulu par la communauté et que le développeur, avec un cahier de charge tout prêt, n'a plus qu'a se charger de coder ce qui est demandé. Après un peu plus d'un an, je pense qu'il est important de se poser la question de savoir si le système fonctionne, si ce n'est pas le cas, qu'est-ce qu'il faut faire ?
Si je regardes quelques chiffres, en 22 mois, concernant les ZEP de types features, on a eu :
- 41 ZEPs qui ont démarrées
- 10 ZEPs qui ont été validées
- 5 ZEPs qui sont aujourd'hui en production
- Toutes les ZEPs aujourd'hui en production, on été rédigées par quelqu'un de l'équipe des devs réguliers (la ZEP 25 sera la première ZEP dont l'auteur n'est pas dans l'équipe technique).
- 25 ZEPs sur 41 ont pour auteur un membre de l'équipe de dev
- Une ZEP, pour arriver en production nécessite en moyenne 20 pages de discussion
De mon point de vue, le constat que j'en tire est :
- L'objectif de décharger les devs de la rédaction du cahier de charge, n'est pas atteint. Au final, c'est le développeur qui s'y colle.
- L'objectif de faire participer la communauté à la spécification des fonctionnalités est sympa sur le papier, mais dans la réalité, dès qu'on rentre dans le détail il faut avoir une fibre technique pour pouvoir se rendre compte des choses.
- Le processus des ZEPs est trop lourd. Il faut rédiger la ZEP, passer du temps à expliquer le problème, à débattre des solutions, mettre à jour la ZEP pour prendre en compte les avis, faire valider la ZEP (même si on sait que finalement la ZEP se valide toujours par les devs en Zest'Meeting), tout ça AVANT de commencer à développer quelque chose. C'est beaucoup trop lourd.
- L'effet pervers est que la ZEP étant énorme, elle met du temps à se développer par 1 ou 2 personnes, les rebase sont énormes, le test de la ZEP est laborieux. Les devs qui n'ont pas participé à la ZEP prennent plus de temps à s'habituer aux nouvelles centaines de lignes de codes qui débarques, et donc seul le dev de la ZEP peut corriger un problème qui survient sur son "terrain".
- Si on continue à cet allure, on aura des ZEPs qui seront devenus obsolètes avant la fin du développement (oui je pense à la ZEP-05 par exemple).
Attention, Je sais qu'il y'a des bonnes choses qu'apportent une ZEP. Je suis conscient que le tableau que je dresse ici est plutôt sombre, mais c'est vraiment un ressenti que j'ai. Aujourd'hui à mon avis l'idée des ZEPs ça peut être super dans une entreprise, mais dans un projet comme ZdS, avec des développeurs bénévoles qui font en fonction de leur motivations/envies, le formalisme de la ZEP est plus un démotivateur qu'un truc vraiment utile.
Je me demande donc si ce point de vue est partagé (d’où ce topic), ou si c'est moi qui me fait des films ?
Je pense qu'il y a des choses à changer dans nos ZEPs. J'ai pas mal de choses qui me viennent a l'esprit et quand je rassemble tout ça, le mot clé qui se dégage est : un Product Owner. Quelqu'un chargé de faire le relai entre la communauté et l'équipe de dev. Avant de détailler un peu l'idée, j'aimerai déjà avoir vos retours sur la question posée précédemment.
Merci de m'avoir lu.