Wikia

Wikia Français

Commentaires2

Quality Blitz de Wikia - À bas les bugs

Wyz février 20, 2013 Blog utilisateur:Wyz

Prenez un instant pour penser à tous les outils et fonctionnalités que vous utilisez sur Wikia pour créer et partager du contenu. Il y a des éditeurs, des salons de discussion, des forums, des galeries, des catégories, des pages de discussion et des commentaires d'article juste pour commencer. Pour faire fonctionner tout cela, nos ingénieurs travaillent chaque jour sur de nombreuses lignes de code de différentes sortes — PHP, JavaScript, AJAX, HTML et MySQL.

Malheureusement, la programmation est une tâche difficile. Parfois, même les choses les plus simples peuvent avoir de grandes conséquences. Je ne peux pas vous dire combien de fois j'ai oublié d'ajouté une simple virgule ou un point-virgule à un bout de code que j'écrivais et ensuite combien combien de temps j'ai passé à essayer de comprendre pourquoi mon code ne fonctionnait pas comme il faut. D'autres fois, les utilisateurs demandent à ce qu'une fonctionnalité fasse quelque chose à laquelle nous n'avons pas pensé. Par exemple, un utilisateur m'a indiqué dernièrement que s'il utilisait le code de Tabber (<tabber>) dans du code de Tabview (<tabview>), la fonctionnalité Tabber ne fonctionnait plus. C'est tout simplement que nous n'avons jamais envisagé que ce serait quelque chose que quelqu'un essaierait, aussi le code a planté.

Trouver et corriger les bugs

Quand un logiciel produit un mauvais résultat ou se comporte d'une façon inattendue, on appelle cela un « bug ». Hélas, Wikia n'est pas à l'abri des bugs logiciels. Je veux vous parler aujourd'hui de la façon dont Wikia réagit quand nous trouvons un bug et une méthode que Wikia a récemment mis en place pour « patcher » (corriger) autant de bugs que possible.

QualityBlitzBlogPost-1.png

Un aperçu du système de signalement des bugs de Wikia.

Maintenir un juste milieu entre le développement de nouvelles fonctionnalités et la correction de bugs existants peut être compliqué. Alors que Wikia fait son maximum pour patcher chaque bug que nous documentons, la nécessité d'avoir un fonctionnement technique flexible et vaste signifie que certains bugs peuvent prendre plus de temps à corriger que d'autres. Pour nous aider à identifier les bugs majeurs plus rapidement, Wikia utilise un système de priorités pour donner un ordre de priorité aux bugs selon la sévérité, le type d'impact (est-ce bloquant ou simplement gênant ?), l'échelle (nombre d'utilisateurs affectés) et le type des utilisateurs affectés (contributeurs ou anonymes, administrateurs ou modérateurs du tchat).

Ainsi, Wikia réserve du temps tous les quelques mois pour se concentrer uniquement sur la pile des bugs en cours. Le développement de produits s'arrête pendant une période de deux semaines et tous nos ingénieurs sont libérés pour travailler sur le plus de bugs possibles durant ce temps. Nous appelons cet effort de lutte contre les bugs un « Quality Blitz ».

Notre Quality Blitz le plus récent a eu lieu quand nous sommes rentrés de vacances et s'est déroulé il y a quelques semaines [NdT: la dernière semaine de janvier]. Durant ce Blitz-ci, nos ingénieurs ont décidé de se scinder en cinq équipes et d'assigner un lot de bugs par équipe. En tout, nos ingénieurs ont traité et résolu 154 bugs !

Les statistiques sont certes intéressantes, en particulier 154 bugs éradiqués, mais vous vous demandez peut-être ce qui se passe lors de la correction d'un bug ? Prenons pour exemple un des bugs qui a été résolu durant le Quality Blitz, du début à la fin, pour illustrer comment un bug est corrigé en général par notre équipe d'ingénieurs.

Les recherches de bug vues des coulisses

L'automne dernier, l'un de nos utilisateurs nous a écrit via Special:Contact pour nous informer d'un mauvais comportement dans la navigation de leur wiki. Quand on ajoutait « Places » sur leur page MediaWiki:Wiki-navigation, le texte enregistré affichait « Places on this wiki ». Mon collègue Bert a testé cela avec l'utilisateur, l'a confirmé, a pris une capture d'écran du problème et a renseigné un ticket de bug pour notre équipe d'ingénieurs.

QualityBlitzBlogPost-2.png

Bert a importé cette capture dans le ticket du bug de navigation. Les captures sont un moyen pratique d'illustrer ce que provoque un bug.

Un autre membre de notre Community Support, Kirkburn, a pu déterminer que le problème de navigation venait du fait qu'une extension de Wikia a un message système intitulé MediaWiki:Places et l'outil de navigation remplaçait automatiquement tout nom de page de message système par la valeur de celui-ci.

Finalement, notre équipe d'ingénieurs a déterminé qu'il y avait trois possibilités : ajouter une condition au code de la navigation de wiki pour gérer le cas particulier de l'extension Places, modifier le nom du message système de l'extension Places ou modifier la façon dont la fonctionnalité de navigation convertit le message MediaWiki:Wiki-navigation en texte de navigation. Bien que la troisième possibilité nécessitait plus de travail, il a été estimé que c'était ce qui avait plus de sens sur le long-terme, aussi cela a été ajouté à la liste de la Quality Blitz. L'équipe a décidé que la meilleure façon d'implémenter le correctif était de faire en sorte que seul l'onglet « Sur le wiki » convertisse les messages système et que la méthode de conversion soit retirée des autres onglets de navigation.

Un de nos ingénieurs, Damian, a pris le ticket et a apporté les modifications nécessaires au code, en testant les différentes étapes de la modification sur un environnement de test appelé « devbox ». Il a ensuite commité la modification du code. Enfin, le ticket a été marqué comme terminé et réassigné à celui qui a signalé le bug (Bert dans ce cas-ci) pour confirmation et fermeture du ticket.

C'était donc comment la correction d'un bug se passe sur Wikia vu des coulisses. Je sais que certaines parties peuvent paraître un petit peu technique, mais illustre bien l'effort de test, collaboration et travail d'équipe que le Staff de Wikia fournit pour améliorer la qualité de notre code. Imaginez le fait d'appliquer cet échange et ce travail 154 fois sur deux semaines et vous pouvez voir que nous avons été bien occupés en janvier.

Corrections du Quality Blitz

Voici quelques autres bugs qui ont été corrigés lors de notre dernier Quality Blitz :

  • L'avertissement « Êtes-vous sûr de vouloir quitter... » apparaissait quand on essayait de quitter une page de modification, sans tenir compte du fait si on avait effectué des modifications ou non. Maintenant le message n'apparaît que si vous avez effectivement modifié quelque chose sur la page.
  • L'écran « voir la source » sur les pages pour lesquelles les utilisateurs n'ont pas le droit de modifier ou créer n'affichait pas des messages d'information sur les droits utiles.
  • La case à cocher « Modification mineure » apparaissait quand on créait une nouvelle page. Inversement, les modifications sur les billets de blog ne pouvaient pas être marquées comme étant mineures.
  • L'ordre de tabulation quand on se trouve sur une page de modification doit maintenant être plus logique. Appuyer sur la touche tabulation à partir de l'éditeur envoie sur le champs « Résumé » puis la case à cocher « Modification mineure » puis « Publier » et « Aperçu ».
  • Les utilisateurs dont le nom d'utilisateur contient des virgules ne pouvaient pas envoyer/recevoir des messages privés sur le tchat.

Vous pouvez toujours voir quels bugs ont été traités chaque semaine en lisant et en suivant nos informations techniques. Aussi, Wikia ne peut pas corriger les bugs si vous ne les signalez pas. Comme toujours, notre meilleur groupe d'assurance qualité est notre base d'utilisateurs, quelques millions d'yeux supplémentaires sur le site.

Encore merci pour votre patience tandis que Wikia fait tout son possible pour vous donner le meilleur des deux mondes : un site de bonne qualité et fonctionnant au top et un site avec des fonctionnalités uniques et nouvelles qui vous permettent de propulser votre communauté.


Vous pouvez consulter l'article original ici (en anglais).
Vous souhaitez être informé(e) sur les billets postés en rapport avec l'actualité Wikia ? Alors cliquez ici pour suivre ce blog.