Home > Community > Actions > Development_model

Communauté

Cooker: un modèle de développement collaboratif

Un modèle de développement collaboratif

Chaque nouvelle version de la distribution Mandriva Linux est développée (assemblage, création, production) par une équipe de développeurs de Mandriva (programmeurs, créateurs de progiciels, etc.) et par de nombreux membres de la communauté Linux qui ont choisi de participer à son élaboration. Ce processus a pour résultat un système d'exploitation d'un niveau qualitatif extrêmement élevé, difficile - voire impossible - à égaler à l'aide d'une autre méthode.

Dans l'industrie traditionnelle du logiciel, le développement se déroule de manière fermée, et se trouve restreint aux développeurs concernés par le projet. A contrario, le modèle de développement "libre" (Open Source) met en relation un grand nombre de développeurs et d'utilisateurs tout autour de la planète, avec pour objectif de créer des logiciels très élaborés autour d'idées nouvelles.

Mandriva pousse très loin la logique de développement ouvert et la philosophie Open Source avec la plateforme de développement "Cooker". Cooker est une distribution Mandriva Linux mise à jour en temps réel avec les dernières versions desbriques issues du monde du logiciel libre et les derniers développements des ingénieurs Mandriva. Cooker est disponible publiquement, et de nombreux contributeurs et utilisateurs qui gravitent autour du projet émettent des avis, des suggestions et contribuent également de nouvelles idées et des composants logiciels. Le système Mandriva Linux résultant est en fait une version de Cooker "gelée" à un certain moment, et entrée par la suite dans une période de débugage intense. Au final, on obtient un produit qui répond réellement aux besoins des utilisateurs puisqu'ils l'ont influence de manière conséquente.

Les paragraphes suivants constituent une brève présentation du processus de développement d'un nouveau produit.

Mélanger

C'est au cours de la première étape d'un nouveau cycle de développement que chacun a la plus grande chance de pouvoir participer. Lors de cette étape initiale, de nouvelles idées font l'objet de discussions - améliorations possibles à apporter à des applications existantes, idées de débogage, nouveaux logiciels.

L'image de la "cuisine" ("to cook" = cuisiner en anglais) convient bien à cette étape. Imaginez que plusieurs grands "cuisiniers" du monde entier ont commencé à préparer le plat le plus délicieux auquel vous goûterez jamais (du moins ils l'espèrent !)... Tous rassemblés autour de la même marmite, ils mélangent divers ingrédients pour satisfaire vos envies, tout en visant un résultat assez comestible et savoureux.

Le projet suit une progression faite de cycles au cours desquels des programmes sont ajoutés à la base déjà existante de logiciels, puis ils sont testés et les conflits et les bogues découverts sont corrigés. Toute introduction d'un nouveau programme peut requérir une modification ou une adaptation du logiciel existant. Ainsi, l'introduction d'un nouveau "kernel" (noyau) Linux, au coeur du système d'exploitation, entraîne très souvent des modifications dans le mode de fonctionnement d'autres logiciels ; tout doit donc être testé en détail.

Les participants sont encouragés à télécharger Cooker et à l'installer sur leurs propres machines, puis à signaler leurs résultats. Des développeurs et des utilisateurs prennent connaissance de ces résultats et proposent des solutions possibles pour remédier aux problèmes. Si une application doit être corrigée, un utilisateur peut la modifier et proposer sa nouvelle version. Si un utilisateur souhaite voir une application spécifique ajoutée à distribution, il (ou elle) peut créer lui-même le programme et télécharger sa contribution vers un serveur dédié. Les développeurs de Mandriva examinent ces propositions et déterminent la validité des corrections et applications fournies avant de décider si l'on peut les inclure dans Cooker.

Geler

La période de développement intense est suivie d'une période nommée "feature freeze", ou "gel des fonctionnalités". Pendant celle-ci, les seules modifications faites à Cooker consistent à corriger les bugs. L'équipe de développement vérifie non seulement que les bugs identifiés ont bien été traités, mais elle recherche et teste aussi différents problèmes qui peuvent survenir. Le but poursuivi dans cette phase est la stabilité - Cooker doit être assez stable pour être gelé temporairement et rendu disponible dans sa version "bêta" pour être testé à grande échelle. En général une image ISO en est diffusée pour que chacun puisse la télécharger et la graver sur CD pour une installation facile sur sa machine. Grâce aux versions bêta, nous recevons un retour d'informations de la part des utilisateurs et de la vaste communauté GNU/Linux. Un même cycle pourra parfois compter trois ou quatre versions bêta.

Un "candidat à diffusion" (Release Candidate) est une version de la gamme testée en détail et nettoyée de ses bugs. Si elle est d'une qualité suffisante pour devenir la version finale, elle est surnommée "Gold" ("en or") et diffusée dans le monde entier.

Cooker ne s'endort jamais. Même le lendemain de la diffusion grand public d'une nouvelle version de Mandriva Linux et de sa mise sous emballage, le cycle de développement se poursuit, préparant les versions ultérieures. N'importe quel jour de la semaine, vous pouvez être sûr que des participants à Cooker s'activent pour garantir que votre système d'exploitation Linux sera toujours le plus fiable et le plus à jour possible.

Nous espérons que vous recevrez cette brève présentation de Cooker et du Code Source Ouvert (Open Source) comme une invitation à participer au processus de test d'un nouveau produit Mandriva. Nul besoin d'être un programmeur ou un développeur du noyau Linux pour nous aider - les bêta testeurs sont un élément crucial du processus et sont toujours nécessaires pour tester les nombreuses configurations du système. Consultez cette page pour découvrir comment s'inscrire sur la liste de diffusion Cooker.