IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Google publie des slides sur sa gestion du développement de Chrome
Une approche qui pourrait devenir un cas d'école

Le , par Idelways

61PARTAGES

0  0 
Depuis la deuxième moitié de 2010, le rythme de développement de Google Chrome a pris une tournure inhabituelle pour un navigateur.

Suivant l'approche : « sortir tôt et sortir souvent », l'équipe du projet s'est attelée à lancer une version majeure de son navigateur toutes les six semaines.

Une approche qui rend l'évolution du navigateur difficile à suivre, d'autant plus que sa mise à jour se fait automatiquement, d'une manière transparente pour l'utilisateur.

C'est visiblement le but de Google, qui ne fait d'ailleurs plus beaucoup de bruit autour des sorties des nouvelles versions (pour faire oublier les numéros des versions ?).

Cette semaine, Google a sorti un document très intéressant sur ces méthodes de travail. La société s'est exprimée par le biais du superviseur du développement de Chrome, Anthony LaForge qui a publié des slides sur ce qui risque de devenir un cas d'école en terme de gestion de projet de développement.

Contrairement aux méthodes classiques, qui fixent les fonctionnalités à intégrer, quitte à reporter le lancement de la nouvelle version (voir les reports successifs de Firefox 4), Google considère les fonctionnalités comme un flux continu.

Il assimile son navigateur à un site Web qui offre des services. Ses services et fonctionnalités sont mises à la disposition des utilisateurs dès qu'elles sont prêtes.

D'où l'inutilité, dans ce contexte, d'un numéro de version. Ce qui comptent en revanche, ce sont les "channels". Google Chrome en propose trois : Développement, Bêta et Stable (quatre avec Canary).

Les nouveautés sont rendues disponible sur ces channels progressivement, les utilisateurs choisissant le "degré de stabilité" qui leur convient.

Ces slides, qui intéresseront aussi bien les développeurs Webs que les développeurs d'application on-premise sont disponibles sur ce lien.

Et vous ?

Quelle approche préférez-vous :le flux continu de fonctionnalités de Google Chrome ou celle traditionnelles où les nouvelles versions marque un changement profond de l'application ?

En collaboration avec Gordon Fowler

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de pseudocode
Rédacteur https://www.developpez.com
Le 14/01/2011 à 14:29
Citation Envoyé par Idelways Voir le message
Quelle approche préférez-vous :le flux continu de fonctionnalités de Google Chrome ou celle traditionnelles où les nouvelles versions marque un changement profond de l'application ?
Le processus de Google n'a rien de révolutionnaire. C'est du timeboxing sur un cycle de 11 semaines:

- 4 semaines de développement
- feature & text freeze
- 2 semaines d'intégration (patch)
- 5 semaines de stabilisation + traduction
- code freeze
- livraison

Pour moi, le plus intéressant dans ce document c'est cette remarque :

- What would a world look like where we didn't base our marketing on releases ?

"We market features, not releases."
2  0 
Avatar de ninfomane
Nouveau membre du Club https://www.developpez.com
Le 14/01/2011 à 12:51
Je n'ai hélas pas tout compris de la présentation. Mais cette gestion me parait très proche de l'anarchie des développeurs. Ce que je comprends, c'est que au lieu de sortir une release à une date donnée avec un tas de fonctionnalités, ils ajoutent seulement les fonctionnalités qui sont stables périodiquement. Un des objectifs étant de ne pas presser le développeur pour qu'il bosse mieux. Certe, mais ce qui tient l'utilisateur (ou le client) en haleine est qu'à une release il aura les fonctionnalités recherchées. Avec ce système, il n'est pas certain de l'avoir avec la prochaine update.

Cela dit, je trouve cette gestion plus cool pour l'entreprise qui n'est plus oppressée par les dates. De plus, l'utilisateur ou client est bien plus certains d'avoir une solution stable. La méthode s'adapte parfaitement au produit Chrome ou tout aux autres services Web. Il serait bon de tester pour des produits plus commerciaux dont le client attend son produit à une date donnée et avec les fonctionnalités demandées.

Cette méthode serait peut-être à mélanger avec XP ?!
0  0 
Avatar de abriotde
Membre chevronné https://www.developpez.com
Le 14/01/2011 à 13:07
C'est mieux pour le développeur, mais pas seulement, l'utilisateur est satisfait de ne pas avoir un système fait à la va vite mal pensé ou de ne pas disposer de fonctionnalités prêtes. Cela pousse aussi à faire évoluer les applications en permanences. Comme toujours il y a l'inconvénient de la mise en place de ce système qui demande une adaptation de chacun des acteurs. Il existe aussi des cas ou ce système n'est pas envisageable (s'il doit y avoir synchronisation de mise à jour....)
0  0 
Avatar de Jay13mhsc
Membre du Club https://www.developpez.com
Le 14/01/2011 à 15:22
Citation Envoyé par ninfomane Voir le message
Avec ce système, il n'est pas certain de l'avoir avec la prochaine update.
Parce qu'avec des méthodes classiques on est certain de l'avoir ??? Mais à quels couts ? Ceux fixés au départ ? Ou avec quel retard sur le délai annoncé ? Ou encore au prix de combien de défauts dissimulés ?
Ce n'est pas juste des mecs en train de se faire plaisir. C'est simplement la seule et vraie façon de livrer à temps (puisque c'est fixé) des fonctionnalités avec un niveau de qualité élevé. Ce n'est pas possible autrement...

Citation Envoyé par ninfomane Voir le message
Cela dit, je trouve cette gestion plus cool pour l'entreprise qui n'est plus oppressée par les dates.
Mais c'est justement fait pour les entreprises obnubilées par les dates !!! Il n'y a qu'à les fixer !
Maintenant, est ce si grave de livrer à l'heure, une version avec le meilleur niveau de qualité possible, sans la petite fonction qui permet de trier les onglets par nombre de caractères dans la page ? Non... De toutes façons, si c'est si important, on la verra dans 6 semaines...
0  0 
Avatar de manudwarf
Membre éclairé https://www.developpez.com
Le 16/01/2011 à 19:18
Je pense que dans le milieu du Web, ça devrait être la norme de tous les navigateurs : des tests automatiques qui valident le comportement du programme par rapport à une norme (HTML), qui fait que le développeur web n'a plus à se soucier des différentes versions de navigateur puisqu'en théorie l'utilisateur a la dernière (non je n'ai pas été traumatisé par IE).

De plus, ça met en exergue la mauvaise gestion des mises à jour de Windows
0  0 
Avatar de parrot
Membre averti https://www.developpez.com
Le 19/01/2011 à 9:19
Citation Envoyé par ninfomane Voir le message
Cette méthode serait peut-être à mélanger avec XP ?!
Cette méthode découle naturellement de XP ou de Scrum.

Dans Scrum, le développement se déroule de manière itérative, basé sur un "sprint" (cycle) de 2 à 4 semaines. Les fonctionalités sont priorisées par un "Product Owner", puis soumises à l'équipe de développement. Celle-ci doit d'une part les estimer en terme de temps de développement, puis accepter celles qu'elle estime pouvoir réaliser durant un sprint. A la fin du sprint, le produit devrait atteindre un niveau de qualité tel qu'il soit livrable. Ce qui implique que les tests fassent partie intégrante du sprint.

Mais est-il pratiquement possible d'atteindre un niveau de qualité stable à la fin d'un sprint? Je pense que cela ne l'est pas, une phase beta devant se dérouler sur plusieurs semaines afin que les utilisateurs aient le temps de donner leur avis. Google utilise donc une deuxième phase pour "monter" leur produit du niveau beta à stable.

Tout comme pseudocode, je pense que l'approche de Google est plus nouvelle dans la manière de vendre le produit au client, que dans la manière de le développer.
0  0 
Avatar de Mobius
Membre confirmé https://www.developpez.com
Le 19/01/2011 à 11:56
j'aime beaucoup la conclusion :
We basically wanted to operate more like trains leaving Grand Central Station
(regularly scheduled and always on time), and less like taxis leaving the Bronx
(ad hoc and unpredictable).
Cela veut dire que la méthode n'est pas applicable en France puisque les trains ont toujours du retard (pour les taxis c'est une autre histoire)
0  0