<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Réflexions d'un chef de projet internet - Julien Dassonval &#187; Bugs</title>
	<atom:link href="http://blog.juliendassonval.com/tag/bugs/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.juliendassonval.com</link>
	<description></description>
	<lastBuildDate>Sun, 27 Jun 2010 09:59:40 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Gérer les situations de crise (épisode 1)</title>
		<link>http://blog.juliendassonval.com/gestion-de-projet/gerer-les-situations-de-crise-episode-1</link>
		<comments>http://blog.juliendassonval.com/gestion-de-projet/gerer-les-situations-de-crise-episode-1#comments</comments>
		<pubDate>Wed, 18 Jun 2008 07:02:10 +0000</pubDate>
		<dc:creator>Julien</dc:creator>
				<category><![CDATA[Gestion de projet]]></category>
		<category><![CDATA[Bugs]]></category>
		<category><![CDATA[Méthode]]></category>
		<category><![CDATA[Recette]]></category>

		<guid isPermaLink="false">http://blog.juliendassonval.com/?p=36</guid>
		<description><![CDATA[Un chef de projet (fonctionnel ou technique) reste avant tout une personne qui doit veiller à ce qu&#8217;un projet se passe bien, mais quand ce n&#8217;est pas le cas doit assumer et gérer les problèmes.
Aucun projet ne se passe bien, vous aurez toujours des couacs plus ou moins importants. L&#8217;idée est évidemment de les minimiser [...]]]></description>
			<content:encoded><![CDATA[<p>Un chef de projet (fonctionnel ou technique) reste avant tout une personne qui doit veiller à ce qu&#8217;un projet se passe bien, mais quand ce n&#8217;est pas le cas doit assumer et gérer les problèmes.</p>
<p><strong>Aucun projet ne se passe bien, vous aurez toujours des couacs plus ou moins importants.</strong> L&#8217;idée est évidemment de les minimiser au maximum et d&#8217;apprendre à les gérer. Quand vous êtes junior (<em>mais certains &laquo;&nbsp;séniors&nbsp;&raquo; n&#8217;y arrivent pas</em>), malgré votre formation, votre stage, votre capacité à analyser un problème, le résoudre vite mais bien n&#8217;est pas encore au point.<br />
C&#8217;est normal, on apprend tous les jours (<em>moi le premier</em>).</p>
<p>Je vais donc commencer par les crises que je rencontre tous les jours, les problèmes de mise en ligne. Je ne vais pas détailler dans ce billet les best-pratice d&#8217;une mise en ligne (validation DEV, PREPROD, PROD etc). Imaginez simplement qu&#8217;un problème apparait, 2 grands type de bugs : mineur et majeur.</p>
<p><strong>Mineur </strong>( <em>problème d&#8217;affichage sur certains navigateurs, liste déroulante qui bloque (sur une page de niveau N-5)</em> ).</p>
<p>Généralement, même un chef de projet junior gardera son calme sur ce type de bugs. On constate soi-même l&#8217;erreur, on essaie de le reproduire, on le transmet à son développeur en expliquant la manipulation pour y arriver. On peut ouvrir un ticket sur un système de bugtracking (Mantis par exemple). Cela fera partie ainsi de la todo. Il faut juste veiller ensuite à ce que la todo soit traitée dans des délais raisonnables.</p>
<p><strong>Majeur</strong> (<em>inscription en base ne fonctionne pas, statistiques ne passent pas, mise en ligne de rubriques, contenus non finalisées</em>)</p>
<p>Ce genre de bugs vous donne déjà plus de stress, s&#8217;il a été remonté par le client et que 5 minutes après, vous avez votre boss qui vient vous voir (<em>et qui a reçu un appel téléphonique entre temps</em>) , vous savez à ce moment là que la situation n&#8217;est pas propice à la blague <img src='http://blog.juliendassonval.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Malgré tout, le point clé est de garder son calme afin de rester méthodique et être rapide.</p>
<p>Et c&#8217;est toujours la même procédure qu&#8217;un bug mineur, à savoir : reproduire le bug, analyser en même temps que vous naviguez les flux http (avec un logiciel comme <a href="http://kevinlangdon.com/serviceCapture/">Service Capture</a>), identifier la page, le champ texte qui pose problème. A ce stade là, dans 75% des cas, vous aurez compris pourquoi ça ne fonctionne pas et indiqué à votre développeur ce qu&#8217;il faut corriger. Dans l&#8217;heure, le bug pourra être résolu de façon plus ou moins propre.</p>
<p><strong>MAIS</strong> si vous êtes dans les 25%, allez prendre un verre car votre journée n&#8217;est pas finie. Allez voir votre développeur, reproduisez le bug avec lui. Si besoin, faites intervenir plusieurs personnes. Selon la situation, il faudra <strong>vous adapter, faire des choix</strong> (impossible à corriger, mise en ligne du backup).</p>
<p>Ce que j&#8217;ai essayé de faire comprendre à travers ce billet, c&#8217;est qu&#8217;être réactif pour résoudre une crise liée à une mise en ligne suppose :</p>
<ol>
<li>avoir toujours sous la main un backup (soit une sauvegarde manuelle de la version en ligne, soit via SVN) pour faire un rollback en catastrophe, veiller à faire les mises en ligne avec votre développeur (<em>malheureusement pas toujours respecté et ensuite très compliqué pour vous de connaitre les fichiers qui ont été passés etc</em>).</li>
<li>ne pas véhiculer le stress de la partie commerciale (le client) à votre développeur, d&#8217;où l&#8217;intérêt de lui préparer la manipulation pour refaire le bug, et veiller à ce que ça soit le CP technique qui discute avec lui, faire comprendre que c&#8217;est urgent mais ne pas s&#8217;énerver (<em>on fait ce genre de mise au point après l&#8217;incident, pour éviter que cela se reproduise</em>).</li>
<li>restez méthodique.</li>
</ol>
<p><strong>Des bugs, vous en aurez tous les jours</strong>. Vous allez rapidement vous apercevoir qu&#8217;il y a toujours les mêmes solutions aux mêmes problèmes. Et en gestion technique, je vous laisse deviner tout ce qu&#8217;on voit passer. Cela permet de relativiser.</p>
<p>Apprenez à les gérer, l&#8217;important n&#8217;est pas toujours votre capacité à comprendre le bug (mais au moins le reproduire niveau fonctionnel), mais bien faire le tampon avec le client qui a tendance à s&#8217;affoler pour rien, et votre développeur.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.juliendassonval.com/gestion-de-projet/gerer-les-situations-de-crise-episode-1/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Recetter un site internet</title>
		<link>http://blog.juliendassonval.com/gestion-de-projet/recette-site-internet</link>
		<comments>http://blog.juliendassonval.com/gestion-de-projet/recette-site-internet#comments</comments>
		<pubDate>Sat, 26 Apr 2008 23:58:18 +0000</pubDate>
		<dc:creator>Julien</dc:creator>
				<category><![CDATA[Gestion de projet]]></category>
		<category><![CDATA[Bugs]]></category>
		<category><![CDATA[Définitions]]></category>
		<category><![CDATA[Mantis]]></category>
		<category><![CDATA[Méthode]]></category>
		<category><![CDATA[Recette]]></category>

		<guid isPermaLink="false">http://blog.juliendassonval.com/?p=13</guid>
		<description><![CDATA[Qu&#8217;est ce qu&#8217;une recette ?
Et bien, c&#8217;est simplement le fait d&#8217;effectuer des tests de votre site avant ouverture au grand public. Vous pouvez soit la faire en cours de développement, soit à la fin : tout dépend de la nature des projets.
Trop souvent sous estimée, elle est pourtant la garantie de la qualité du résultat [...]]]></description>
			<content:encoded><![CDATA[<p>Qu&#8217;est ce qu&#8217;une recette ?</p>
<p>Et bien, c&#8217;est simplement le fait d&#8217;effectuer des tests de votre site avant ouverture au grand public. Vous pouvez soit la faire en cours de développement, soit à la fin : tout dépend de la nature des projets.</p>
<p>Trop souvent sous estimée, elle est pourtant la garantie de la qualité du résultat final. La recette technique va s&#8217;attacher à vérifier le bon enregistrement en bdd des champs, au bon format, vérifier la sécurité de votre application, l&#8217;optimisation, vérifier le passage des statistiques. La recette fonctionnelle va être la partie plus créative ou simplement de wording; le bon lissage des typographies etc.</p>
<p>Plusieurs problèmes se posent pour faire une &laquo;&nbsp;bonne recette&nbsp;&raquo; :</p>
<ol>
<li>Trouver le temps : vous en avez rarement</li>
<li>Déterminer qui recette quoi, quand : pour une recette efficace, il est important de ne pas laisser une personne tester un site toute seule. Prévoyez au minimum 2 personnes</li>
<li>Déterminer la manière dont les retours de cette recette seront transmis à vos équipes
<ul>
<li>Un simple document word qui identifie une liste de bugs à la suite : généralement très brouillon et peu organisé. <a href="http://blog.juliendassonval.com/wp-content/uploads/2008/04/recette.doc">Recette.doc</a></li>
<li>un fichier excel qui identifie les bugs avec différents paramètres (où se situe le bug, quelle priorité, statut, commentaires etc). Ce document permet déjà de mieux organiser quelles serontt les personnes qui corrigeront les bugs. <a href="http://blog.juliendassonval.com/wp-content/uploads/2008/04/recette.xls">Recette.xls</a></li>
<li>Un système de bug tracking comme Request Tracker ou Mantis. <a href="http://blog.juliendassonval.com/wp-content/uploads/2008/04/recette.gif"><img class="alignnone size-medium wp-image-16" title="Recette.gif" src="http://blog.juliendassonval.com/wp-content/uploads/2008/04/recette-300x103.gif" alt="" width="300" height="103" /></a></li>
</ul>
</li>
</ol>
<p>J&#8217;ai volontairement pris des exemples simples en suivant les 3 types de traitements possibles : doc word, doc excel, bug tracker.</p>
<p>Une fois les bugs potentiels constatés, je suis partisan de regrouper les retours. C&#8217;est à ce moment là ou vous pourrez affecter à vos ressources les problèmes rencontrés. C&#8217;est souvent plus efficace que faire des retours point par point. Idéalement, sur des sites fonctionnels, vous établissez des procédures de tests par rubrique ou fonctionnalité.</p>
<p><em>Exemple : un site e-commerce</em></p>
<p>Procédure de test du module d&#8217;achat</p>
<ol>
<li>Etape 1 : Aller sur la home www.maboutique.com</li>
<li>Etape 2 : Sélectionner la dernière fiche produit ajoutée au catalogue</li>
<li>Etape 3 : Ajouter cet article dans votre panier en cliquant sur le bouton &laquo;&nbsp;Ajouter a mon panier&nbsp;&raquo;</li>
<li>Etc.</li>
</ol>
<p>Le très gros avantage de ces scénarios de tests est que vous organisez pour vous mais aussi votre client la recette du site. L&#8217;un des inconvénients qui pourrait vous venir à l&#8217;esprit est que si je cadre le parcours de tests, je réduis les risques de bugs qu&#8217;un internaute lambda pourrait rencontrer avec un parcours atypique.</p>
<p>L&#8217;idée est d&#8217;avoir vos parcours établis en phase de conception qui fonctionnent. Une fois ceux-ci validés, une recette globale avec des scénarios non définis pourra être envisagée. Les bugs constatés seront alors remontés. Ce qu&#8217;il faut, c&#8217;est fonctionner par étape (dans les tests mais après dans le débug) pour être efficace et ne pas laisser de coquilles.</p>
<p>En tant que chef de projet, vous êtes le garant du bon déroulement fonctionnel et technique de votre site. Dans vos chiffrages, prévoyez 20 à 25% de temps en plus pour cette phase. Sur des sites évènementiels full flash, qui sortent en charrette, cette recette est malheureusement effectuée trop rapidement et on rencontre une fois la mise en ligne des bugs parfois majeurs qu&#8217;il vous faudra corriger rapidement. Je vous laisse imaginer le stress que génère ce genre de situation quand il s&#8217;agit de jeux concours à fort trafic&#8230;</p>
<p>Et vous, quels sont vos outils pour tester un site correctement ?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.juliendassonval.com/gestion-de-projet/recette-site-internet/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
