2004-11-22
Introduction

Ce chapitre a pour but d'expliquer la hiérarchie chez les développeurs Gentoo et de donner aux développeurs un aperçu de comment le management est structuré au sein du projet Gentoo pour la partie développement.

La structure de management directionnel

L'objectif de la nouvelle structure de management était de résoudre un certain nombre de problèmes chroniques concernant le management, la coordination et la communication au sein du projet Gentoo. En particulier, nous n'avions pas bien défini la structure de management directionnel et les rendez-vous non officiels et réguliers qui permettent de communiquer les mises à jour de statuts entre les développeurs occupant des postes critiques. En règle générale, la plupart de la communication avait lieu sur IRC et de manière plus sporadique via courrier électronique. Pratiquement personne, pas même un haut responsable, n'était tenu de clôturer les projets en temps et en heure.

À cause de cet état de faits, il était difficile d'établir des objectifs et de vérifier l'état d'avancement des divers projets. Ce manque de communication et de coordination rendait également le management difficile pour les développeurs à haute responsabilité même pour leurs propres projets. De plus, un autre problème classique était que nous n'avions pas de rôles bien définis, ni ne savions l'étendue du pouvoir de prise de décision chez les développeurs à haute responsabilité. Du coup, de nombreuses personnes ayant une haute responsabilité allaient jusqu'à ne pas savoir si elles avaient l'autorité de gérer leur propres projets et sous-projets. Même si cela n'a jamais été l'intention des personnes à responsabilité, c'était le résultat malheureux et direct du processus de développement qui manquait de structure : personne ne savait ce qui se passait, et tout le monde renvoyait les décisions exécutives à prendre à l'architecte en chef.

Évidemment, un plan était nécessaire, pour résoudre rapidement et de manière définitive ces problèmes, en améliorant la communication, la coordination et les responsabilités. Les rôles et le pouvoir décisionnel nécessaires avaient besoin d'être définis pour les développeurs à responsabilités pour qu'ils puissent avoir un poste clair et une pleine responsabilité dans la gestion de leurs projets, et qu'ils puissent ainsi s'assurer que leurs projets soient réalisés dans les délais, et correctement.

La liste suivante donne l'ensemble du système :

Responsables de haut niveau et de sous-projets

Les responsables de haut niveau travaillent sur la mise à exécution des aspects majeurs du développement, comme par exemple la coordination des sorties de projets Gentoo. Ils sont également responsables de la répartition des efforts de développement dans les divers projets, et comment Gentoo peut s'améliorer, en utilisant les retours d'expérience des développeurs et utilisateurs.

Les responsables de sous-projets ont pour tâche de coordiner les demandes des responsables haut niveau et celles de la communauté Gentoo avec leurs équipes. Par exemple, les nouvelles directives pour l'architecture x86 peuvent concerner les équipes base-system et kernel, qui devront alors être coordinées par un responsable de sous-projet.

Les responsables de sous-projet sont optionnels, tout autant que les responsables de haut niveau. Cependant dans la plupart des cas votre équipe finira tôt ou tard par travailler sous les recommandations des responsables d'architecture.

Responsables d'équipe

Les responsables d'équipe sont responsables de l'organisation des développeurs de leur équipe, et de la coordination des sorties publiques de projets. Ils doivent également résoudre les problèmes relatifs à leur équipe, et proposer des améliorations de leurs produits en utilisant les retours d'expérience venant de la communauté.

Les équipes n'ont pas nécessairement besoin de responsable, et certaines équipes travaillent avec un système on-fixe-quand-on-reçoit et cette solution donne parfois de meilleures résultats que s'il y avait un responsable d'équipe. Mais la décision d'avoir ou non un responsable d'équipe reste une décision que doit prendre l'équipe elle-même.

La plupart des équipes font partie d'un regroupement d'équipes, qui est constitué avec pour objectif l'organisation autour d'un effort particulier à fournir. Vous pouvez vous rapporter à la page sur le projet Metadata pour plus de détails.

Développeurs

Les développeurs sont responsables du développement de la distribution ou du projet sur lequel ils sont assignés. Certains développeurs font partie d'une équipe, d'autres travaillent sur un projet qui n'a pas d'équipe attribuée, ni de regroupement d'équipe.

Si un développeur a un quelconque problème, il peut en parler avec leur responsable d'équipe, leur responsable de haut niveau ou peuvent également envoyer un courrier à une liste de diffusion comme gentoo-dev ou gentoo-core en demandant des avis ou commentaires sur un point précis.