Partager via


La vie secrète de Windows : Par ici les rats de laboratoire

La manipulation des développeurs de logiciels peut s'avérer une stratégie payante lors de la résolution des bogues au cours des projets de développement de logiciels.

Raymond Chen

Une partie importante de tout projet de logiciel est corriger les bugs. En fait, corriger les bugs est la plus grande partie de la plupart des projets logiciels. Gestion des bogues et le processus pour traiter avec eux, c'est donc une partie importante du processus de développement logiciel Global.

Dans les premiers stades d'un projet, vous pouvez être plutôt clémente avec bugs. Vous pourriez être plus enclin à accepter n'importe quoi, n'importe comment insignifiant. Cependant, à un certain moment, vous allez réaliser que vous avez un arriéré de gros bug à gérer. Vous devrez obtenir plus sérieusement de votre comte de bug. Ce cycle peut se répéter plusieurs fois tout au long de la durée de vie d'un projet. Il peut y avoir un cycle de frénésie/purge pour chaque étape.

Une source cohérente des arriérés de bug est un trouble qu'un de mes collègues précédent surnommé « bug-caresses. » Les développeurs trouvent des bugs, qu'ils estiment qu'ils devraient fixer, mais n'ont pas obtenu simplement de travailler encore. Le temps passe, ces bugs se vieux et poussiéreux. Les développeurs de résister aux tentatives de faire les bugs déclarés ne pas une valeur fixe ou reporté à la prochaine version, car ils sentent encore que ces bogues devraient vraiment être fixée.

C'est la version de développement de logiciels de thésaurisation. Les développeurs deviennent émotionnellement attachées pour les bugs, malgré l'absence de tout fondement rationnel pour garder autour. Ces insectes ont tendance à être relativement mineur. Ils sont souvent en fait les demandes de fonctionnalité déguisés en bugs — quelque chose comme, « quand je fais X, ce serait bien si il y avait une possibilité de le faire Y. »

Appeler l'exterminateur

Sur de nombreux projets, les efforts visant à réduire le nombre de bogues sont marquée par une période (en général une semaine) où les développeurs sont invités à corriger des bugs autant qu'ils le peuvent. Les règles habituelles de l'ordre dans lequel les bogues devraient être fixées sont suspendues. Les développeurs peuvent fixer un bug qu'ils aiment, sans tenir compte de la priorité.

Pour cette semaine seulement, l'accent est mis sur la quantité de bogues fixée, pas la gravité ou la priorité. Il peut y avoir des prix décernés aux développeurs qui résoudre les plupart des bogues, corriger les bugs plus anciennes, terminent la semaine avec les bugs moins ou obtenir leur nombre de bug sous le niveau de la cible. Parfois, les gestionnaires apportent friandises pour garder les développeurs motivés.

Le nom de cette semaine de fixation bug ciblée varie d'une équipe à l'équipe. Certaines équipes appellent un Bug Bash, mais qui est parfois confondu avec une autre utilisation du terme décrivant un effort ciblé pour trouver de nouveaux bogues plutôt que de fixer existants. Certaines équipes préfèrent appeler leur semaine de fixation bug un Smash de Bug. Une équipe a utilisé l'acronyme MOABB (mère de tous les Bug attaque) pour décrire la semaine de fixation bug ciblée.

Tout ce que vous l'appelez, les objectifs sont les mêmes. L'objectif immédiat est d'effacer autant de bogues que possible, en fixant les ou en décidant de ne pas les fixer. Le but ultime est de récapitulation de la semaine avec une idée claire de l'état de projet.

Bug-huggers sont souvent la cible au cours de ces semaines de fixation bug. Ils font face à un point de décision. C'est leur dernière chance de corriger les bugs, qu'ils ont toujours signifié à fixer « un jour. » Si elles ne fixent pas eux, les bugs vont être enlevé. À la fin de la semaine, les bugs ne sera plus actif, une manière ou une autre.

Masquer le fromage

Au cours de cette semaine, gestion obtient traiter les développeurs de logiciels comme des souris de laboratoire. Les développeurs de logiciels peuvent être de simples créatures. Nous pensons que nous sommes une forme avancée de l'intelligence humaine, mais en fait, nous sommes aussi facilement manipuler comme des marionnettes. Les gestionnaires avertis peuvent manipuler bug-huggers à choisir entre fixant leurs bogues chères ou laisser aller.

Gestion réalise également les développeurs bénéficient le frisson de briser les règles. Ils vous souvent employer un peu psychologie inversée par la liste de bug de massage donc elle seulement ressemble un bogue est sans important. Par exemple, ils peuvent reclasser tous les bugs qu'ils vraiment ne soucient comme des questions de la spécification afin qu'ils ne sont plus compter comme bogues. Ils peuvent également prendre des bogues importants et leur donner une fausse faible priorité pour rendre plus attrayant.

Dans le passé, lorsque certains développeurs appris qu'un concours de fixation bug était bientôt, ils préparé des corrections de bugs, mais n'a pas commis les corrections au projet tout de suite. Au lieu de cela, ils attendent de leur libérer au cours de la semaine de concours. Il n'a pas pris de gestion long de découvrir cette petite astuce. Maintenant la gestion comprend bogues fixes dans la semaine qui a précédé le fonctionnaire concours semaine dans les statistiques, ainsi neutraliser l'effet (et implicitement décourager le comportement non productif).

Ce jeu de chat entre développeurs de logiciels et de gestion est tout simplement une distraction de l'objet principal de la semaine : pour corriger des bugs et améliorer le produit final. Et, malgré leur intelligence, les développeurs ne réalisent généralement pas qu'ils les souris.

Lafe Low

**Raymond Chen**Web site, The Old New Thing et identiquement intitulé livre (Addison-Wesley, 2007) traitent de l'histoire Windows et programmation Win32. Cet article a été écrit sur l'équipement qui a été en contact avec des noix.

Contenu associé