<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Commentaires sur : Faites vous vraiment de l&#8217;intégration continue ?</title>
	<atom:link href="http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=faites-vous-vraiment-de-l-integration-continue</link>
	<description>Le blog d&#039;OCTO Technology, cabinet d&#039;architectes en systèmes d&#039;information</description>
	<lastBuildDate>Thu, 09 Feb 2012 08:21:57 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Par : Christophe Vigouroux</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-1459</link>
		<dc:creator>Christophe Vigouroux</dc:creator>
		<pubDate>Fri, 21 Aug 2009 14:13:52 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-1459</guid>
		<description>Nous utilisons la technique suivante pour avertir les développeurs en cas de build cassé : l&#039;auteur du commit qui a provoqué l&#039;erreur reçoit un e-mail de la part du serveur d&#039;intégration continue, ainsi qu&#039;un responsable du build. 

L&#039;auteur est ainsi immédiatement averti de son erreur, et peut la réparer rapidement. En général, personne en dehors du responsable de build ne se rend compte du problème, et on ne crée pas de soucis de stigmatisation ou de conflits dans l&#039;équipe comme on pourrait l&#039;avoir avec un mode de communication mettant tout le monde au courant.

En outre, en mettant les erreurs en copie à un responsable de build, cela permet de s&#039;assurer du traitement de l&#039;erreur si le &quot;fautif&quot; n&#039;est pas présent ou ne réagit pas suffisamment rapidement.</description>
		<content:encoded><![CDATA[<p>Nous utilisons la technique suivante pour avertir les développeurs en cas de build cassé : l&#8217;auteur du commit qui a provoqué l&#8217;erreur reçoit un e-mail de la part du serveur d&#8217;intégration continue, ainsi qu&#8217;un responsable du build. </p>
<p>L&#8217;auteur est ainsi immédiatement averti de son erreur, et peut la réparer rapidement. En général, personne en dehors du responsable de build ne se rend compte du problème, et on ne crée pas de soucis de stigmatisation ou de conflits dans l&#8217;équipe comme on pourrait l&#8217;avoir avec un mode de communication mettant tout le monde au courant.</p>
<p>En outre, en mettant les erreurs en copie à un responsable de build, cela permet de s&#8217;assurer du traitement de l&#8217;erreur si le &laquo;&nbsp;fautif&nbsp;&raquo; n&#8217;est pas présent ou ne réagit pas suffisamment rapidement.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Vincent Boniakos</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-1223</link>
		<dc:creator>Vincent Boniakos</dc:creator>
		<pubDate>Tue, 07 Apr 2009 16:09:24 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-1223</guid>
		<description>Une expérience que je mène au sein de mon projet est le build continue à l&#039;initiative du développeur. Plutôt que de laisser Hudson scanner le repository toutes les 10 minutes pour builder, ce qui produit immanquablement une montagne d&#039;email en direction de la poubelle, je laisse le développeur lancer le build quand il se sent prêt et surtout juste avant de livrer. Ceci lui permet de vérifier la compatibilité de son code dans l&#039;environnement d&#039;intégration. On peut même y ajouter le déploiement automatique dans un environnement prévu à cet effet, qui lui permettra de tester son application en condition quasi-réelle. Tout le monde gagne du temps. 
Une remarque cependant, nous ne fonctionnons pas en mode Agiles. Nous sommes dans un mode classique. Nous avons du adapter ...</description>
		<content:encoded><![CDATA[<p>Une expérience que je mène au sein de mon projet est le build continue à l&#8217;initiative du développeur. Plutôt que de laisser Hudson scanner le repository toutes les 10 minutes pour builder, ce qui produit immanquablement une montagne d&#8217;email en direction de la poubelle, je laisse le développeur lancer le build quand il se sent prêt et surtout juste avant de livrer. Ceci lui permet de vérifier la compatibilité de son code dans l&#8217;environnement d&#8217;intégration. On peut même y ajouter le déploiement automatique dans un environnement prévu à cet effet, qui lui permettra de tester son application en condition quasi-réelle. Tout le monde gagne du temps.<br />
Une remarque cependant, nous ne fonctionnons pas en mode Agiles. Nous sommes dans un mode classique. Nous avons du adapter &#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Christian</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-154</link>
		<dc:creator>Christian</dc:creator>
		<pubDate>Mon, 05 May 2008 21:13:13 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-154</guid>
		<description>&lt;p&gt;Hmmm, ok je reçois vos remarques sur l&#039;aspect &#039;stigmatisant&#039; du notificateur de build :) je pense en effet qu&#039;il faut l&#039;utiliser avec des pincettes et uniquement lorsque que l&#039;on connait bien son équipe.&lt;br /&gt; Aujourd&#039;hui si la technique du lapin fonctionne chez moi (i.e. ne traumatise personne) c&#039;est que :&lt;br /&gt; - le build ne casse que exceptionnellement &lt;br /&gt; - ce n&#039;est pas la même personne qui casse le build à chaque fois&lt;br /&gt; - lorsque le lapin parle, ça amuse et détend l&#039;équipe (au point, comme je le disais, de retrouver un build échoué à cause d&#039;une classe renommée en &#039;BoumLeLapin&#039; ... ;-)&lt;br /&gt; &lt;br /&gt; Qui plus est j&#039;ai pu constater les vertus suivantes :&lt;br /&gt; - le temps de réparation d&#039;un build échoué s&#039;est sensiblement réduit ; et ceci en autre grâce au fait que la personne entend son nom. Mais je n&#039;ai pas l&#039;impression de tomber dans le travers &#039;maintenant que tu as le nez dedans, répare !&#039;. Souvent les développeurs voient ça comme un rappel  : 80% du temps la cause est &#039;ah oui j&#039;ai oublié de lancer Maven en local avant de tester&#039; , les autres fois je constate qu&#039;ils n&#039;hésitent pas à faire des appels à l&#039;aide&lt;br /&gt; - le lapin permet d&#039;évangéliser sur l&#039;intégration continuer au delà d&#039;une simple équipe projet : je ne compte plus le nombre de personnes passées sur l&#039;open-space a qui j&#039;ai expliqué la pratique !&lt;br /&gt; &lt;br /&gt; En bref, je pense qu&#039;il faut faire preuve de psychologie vis à vis des membres de son équipe pour savoir ce que l&#039;on peut ou non se permettre. Je ne vois pas les top-gun du build avec qui je bosse être blessés par un chapeau ridicule, un score faible à un jeu, ou par une vanne de lapin tant ces situations restent exceptionnelles. Mais si je devais aujourd&#039;hui rejoindre une équipe avec du code legacy, pour laquelle la stabilité du code source est une douleur, je vous rejoins sur le fait que ce serait une très mauvaise pratique d&#039;introduire l&#039;intégration continue avec un lapin en mode délation (le &#039;my god, they killed kenny !&#039; serait bien mieux adapté) &lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Hmmm, ok je reçois vos remarques sur l&#8217;aspect &#8216;stigmatisant&#8217; du notificateur de build :) je pense en effet qu&#8217;il faut l&#8217;utiliser avec des pincettes et uniquement lorsque que l&#8217;on connait bien son équipe.<br />
 Aujourd&#8217;hui si la technique du lapin fonctionne chez moi (i.e. ne traumatise personne) c&#8217;est que :<br />
 &#8211; le build ne casse que exceptionnellement <br />
 &#8211; ce n&#8217;est pas la même personne qui casse le build à chaque fois<br />
 &#8211; lorsque le lapin parle, ça amuse et détend l&#8217;équipe (au point, comme je le disais, de retrouver un build échoué à cause d&#8217;une classe renommée en &#8216;BoumLeLapin&#8217; &#8230; ;-)</p>
<p> Qui plus est j&#8217;ai pu constater les vertus suivantes :<br />
 &#8211; le temps de réparation d&#8217;un build échoué s&#8217;est sensiblement réduit ; et ceci en autre grâce au fait que la personne entend son nom. Mais je n&#8217;ai pas l&#8217;impression de tomber dans le travers &#8216;maintenant que tu as le nez dedans, répare !&#8217;. Souvent les développeurs voient ça comme un rappel  : 80% du temps la cause est &#8216;ah oui j&#8217;ai oublié de lancer Maven en local avant de tester&#8217; , les autres fois je constate qu&#8217;ils n&#8217;hésitent pas à faire des appels à l&#8217;aide<br />
 &#8211; le lapin permet d&#8217;évangéliser sur l&#8217;intégration continuer au delà d&#8217;une simple équipe projet : je ne compte plus le nombre de personnes passées sur l&#8217;open-space a qui j&#8217;ai expliqué la pratique !</p>
<p> En bref, je pense qu&#8217;il faut faire preuve de psychologie vis à vis des membres de son équipe pour savoir ce que l&#8217;on peut ou non se permettre. Je ne vois pas les top-gun du build avec qui je bosse être blessés par un chapeau ridicule, un score faible à un jeu, ou par une vanne de lapin tant ces situations restent exceptionnelles. Mais si je devais aujourd&#8217;hui rejoindre une équipe avec du code legacy, pour laquelle la stabilité du code source est une douleur, je vous rejoins sur le fait que ce serait une très mauvaise pratique d&#8217;introduire l&#8217;intégration continue avec un lapin en mode délation (le &#8216;my god, they killed kenny !&#8217; serait bien mieux adapté) </p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Mathieu Gandin</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-153</link>
		<dc:creator>Mathieu Gandin</dc:creator>
		<pubDate>Mon, 05 May 2008 17:50:31 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-153</guid>
		<description>&lt;p&gt;&#039;Le chapeau débile&#039; beuark, voilà une technique que je n&#039;ai vraiment pas envie d&#039;utiliser. Et je rejoins CTH, je n&#039;aime pas trop les trois techniques proposées pour que l&#039;équipe soit sensibilisée à la problématique d&#039;intégration continue.&lt;br /&gt; &lt;br /&gt; Je préfère que le build prévienne l&#039;équipe lorsque ça pète, puis faire en sorte que l&#039;équipe (éventuellement, aidée du coach) répare ce qui a été cassé. A charge à l&#039;équipe d&#039;en discuter : 5 pourquoi animé par le coach, rétro, ...&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>&#8216;Le chapeau débile&#8217; beuark, voilà une technique que je n&#8217;ai vraiment pas envie d&#8217;utiliser. Et je rejoins CTH, je n&#8217;aime pas trop les trois techniques proposées pour que l&#8217;équipe soit sensibilisée à la problématique d&#8217;intégration continue.</p>
<p> Je préfère que le build prévienne l&#8217;équipe lorsque ça pète, puis faire en sorte que l&#8217;équipe (éventuellement, aidée du coach) répare ce qui a été cassé. A charge à l&#8217;équipe d&#8217;en discuter : 5 pourquoi animé par le coach, rétro, &#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Ethan</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-152</link>
		<dc:creator>Ethan</dc:creator>
		<pubDate>Mon, 05 May 2008 14:43:38 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-152</guid>
		<description>&lt;p&gt;La technique du &#039;chapeau débile&#039; qui consiste à faire un porter un bonnet d&#039;âne au développeur qui casse le build.&lt;br /&gt; &lt;br /&gt; C&#039;est la solution la plus stupide que j&#039;ai lu jusqu&#039;a présent. Je crois que vous n&#039;avez malheureusement rien compris à l&#039;esprit de projets agiles et pire, aux relations humaines....&lt;br /&gt; Vous formez une équipe, il ne sert à rien de stigmatiser les individus, dans cet exemble, vous êtes aussi coupable que lui...&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>La technique du &#8216;chapeau débile&#8217; qui consiste à faire un porter un bonnet d&#8217;âne au développeur qui casse le build.</p>
<p> C&#8217;est la solution la plus stupide que j&#8217;ai lu jusqu&#8217;a présent. Je crois que vous n&#8217;avez malheureusement rien compris à l&#8217;esprit de projets agiles et pire, aux relations humaines&#8230;.<br />
 Vous formez une équipe, il ne sert à rien de stigmatiser les individus, dans cet exemble, vous êtes aussi coupable que lui&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : cth</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-148</link>
		<dc:creator>cth</dc:creator>
		<pubDate>Thu, 01 May 2008 23:10:44 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-148</guid>
		<description>&lt;p&gt;Je suis à fond pour signaler immédiatement un build cassé à l&#039;équipe, cela me paraît une condition sine qua non de l&#039;intégration continue. &lt;br /&gt; &lt;br /&gt; Je ne suis pas sûr que le chapeau mou, le tableau d&#039;honneur, ou la dénonciation en direct soit des moyens efficaces pour améliorer la situation du build continu, ni celle du projet. Ici on ne se contente pas de signaler le problème, on &#039;marque&#039; un responsable du problème. (Je pense que le côté fun et décalé qui atténue ce marquage peuvent disparaitre assez vite dans un projet complexe et difficile).&lt;br /&gt; &lt;br /&gt; Le statut du build continu est un témoin lumineux permanent à propos de l&#039;intégrité du produit. Quand le produit ne &#039;compile pas&#039; ou ne passe plus tout ses tests, il n&#039;est plus intègre. Et si le produit n&#039;est pas intègre c&#039;est que l&#039;équipe qui le fabrique a elle même un problème d&#039;intégrité. Par exemple : &lt;br /&gt; - Stan a modifié la signature de 4 méthodes dans la couche métier sans prévenir personne. Forcément, puisqu&#039;il était seul à travailler hier soir à 21h..&lt;br /&gt; - Bert a décidé de &#039;committer&#039; sans repasser tous les tests unitaires sur son poste, parce qu&#039;il a senti la pression de livrer lors du stand up meeting...&lt;br /&gt; - Gus ne savait même pas qu&#039;il fallait écrire ou modifier des tests unitaires avant de toucher au code, vu qu&#039;il débarque et que personne n&#039;a pris le temps de le lui (ré)expliquer. &lt;br /&gt; &lt;br /&gt; C&#039;est évidemment pratique de savoir sur quel poste se trouve le code qui ne passe pas l&#039;intégration continue. Mais ça ne sert à rien d&#039;affirmer que Stan, Bert ou Gus ont &#039;cassé le build&#039; (encore lui ! heureusement chez moi ça marche). &lt;br /&gt; &lt;br /&gt; C&#039;est l&#039;équipe qui a cassé le build: c&#039;est parce qu&#039;elle n&#039;est pas assez &#039;intégrée&#039; (ou alignée) que son produit n&#039;est pas intégrable. Or lorsqu&#039;on cherche à travailler dans une équipe plus alignée et plus efficace, souligner le nom de ceux qui font des erreurs ne sert à rien, au contraire, c&#039;est même contre-productif.&lt;br /&gt; &lt;br /&gt; Que faire alors ?&lt;br /&gt; &lt;br /&gt; 1) je remplacerais le message nominatif du lapin par: &#039;My God, They Killed Kenny !&#039; ou un autre truc plus drôle&lt;br /&gt; 2) quand le build est cassé, 2 ou 3 personnes se mettent en demeure de le réparer au plus vite, et plus personne ne valide de code. &lt;br /&gt; 3) quand le build est réparé, toute l&#039;équipe se met en stand up et procède à une analyse 5 pourquoi.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Je suis à fond pour signaler immédiatement un build cassé à l&#8217;équipe, cela me paraît une condition sine qua non de l&#8217;intégration continue. </p>
<p> Je ne suis pas sûr que le chapeau mou, le tableau d&#8217;honneur, ou la dénonciation en direct soit des moyens efficaces pour améliorer la situation du build continu, ni celle du projet. Ici on ne se contente pas de signaler le problème, on &#8216;marque&#8217; un responsable du problème. (Je pense que le côté fun et décalé qui atténue ce marquage peuvent disparaitre assez vite dans un projet complexe et difficile).</p>
<p> Le statut du build continu est un témoin lumineux permanent à propos de l&#8217;intégrité du produit. Quand le produit ne &#8216;compile pas&#8217; ou ne passe plus tout ses tests, il n&#8217;est plus intègre. Et si le produit n&#8217;est pas intègre c&#8217;est que l&#8217;équipe qui le fabrique a elle même un problème d&#8217;intégrité. Par exemple : <br />
 &#8211; Stan a modifié la signature de 4 méthodes dans la couche métier sans prévenir personne. Forcément, puisqu&#8217;il était seul à travailler hier soir à 21h..<br />
 &#8211; Bert a décidé de &#8216;committer&#8217; sans repasser tous les tests unitaires sur son poste, parce qu&#8217;il a senti la pression de livrer lors du stand up meeting&#8230;<br />
 &#8211; Gus ne savait même pas qu&#8217;il fallait écrire ou modifier des tests unitaires avant de toucher au code, vu qu&#8217;il débarque et que personne n&#8217;a pris le temps de le lui (ré)expliquer. </p>
<p> C&#8217;est évidemment pratique de savoir sur quel poste se trouve le code qui ne passe pas l&#8217;intégration continue. Mais ça ne sert à rien d&#8217;affirmer que Stan, Bert ou Gus ont &#8216;cassé le build&#8217; (encore lui ! heureusement chez moi ça marche). </p>
<p> C&#8217;est l&#8217;équipe qui a cassé le build: c&#8217;est parce qu&#8217;elle n&#8217;est pas assez &#8216;intégrée&#8217; (ou alignée) que son produit n&#8217;est pas intégrable. Or lorsqu&#8217;on cherche à travailler dans une équipe plus alignée et plus efficace, souligner le nom de ceux qui font des erreurs ne sert à rien, au contraire, c&#8217;est même contre-productif.</p>
<p> Que faire alors ?</p>
<p> 1) je remplacerais le message nominatif du lapin par: &#8216;My God, They Killed Kenny !&#8217; ou un autre truc plus drôle<br />
 2) quand le build est cassé, 2 ou 3 personnes se mettent en demeure de le réparer au plus vite, et plus personne ne valide de code. <br />
 3) quand le build est réparé, toute l&#8217;équipe se met en stand up et procède à une analyse 5 pourquoi.</p>
<p>
 </p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Christian</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-147</link>
		<dc:creator>Christian</dc:creator>
		<pubDate>Wed, 30 Apr 2008 16:36:11 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-147</guid>
		<description>&lt;p&gt;Salut Jean-Laurent !&lt;br /&gt; &lt;br /&gt; Je vais être bref : oui j&#039;ai parfois du lag (et parfois pire : le serveur API de Nabaztag est en rade et je recois tous les messages en rafale qq heures après) et non je n&#039;arrive pas à rendre la couleur des leds persistantes.&lt;br /&gt; &lt;br /&gt; A+&lt;br /&gt; Christian&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Salut Jean-Laurent !</p>
<p> Je vais être bref : oui j&#8217;ai parfois du lag (et parfois pire : le serveur API de Nabaztag est en rade et je recois tous les messages en rafale qq heures après) et non je n&#8217;arrive pas à rendre la couleur des leds persistantes.</p>
<p> A+<br />
 Christian</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Jean-Laurent</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-146</link>
		<dc:creator>Jean-Laurent</dc:creator>
		<pubDate>Wed, 30 Apr 2008 16:11:33 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-146</guid>
		<description>&lt;p&gt;Tu n&#039;as pas trop de &#039;lag&#039;, entre le moment ou le build échoue effectivement et le moment ou le lapin l&#039;annonce à l&#039;équipe ?&lt;br /&gt; J&#039;avais parfois plus de 5 minutes d&#039;écart entre les deux. Ce qui &#039;tue&#039; un peu l&#039;apprentissage pour les sceptiques de l&#039;intégration continue.&lt;br /&gt; Autre question :&lt;br /&gt; Arrives-tu à faire en sorte que l&#039;état du build soit signifié par les lumières du lapin (et pas uniquement les oreilles) dans les périodes entre les annonces (ie: pas uniquement au moment ou il détecte le build, un peu comme les oreilles qui gardent leurs positions jusqu&#039;à ce que le statut du build change)&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Tu n&#8217;as pas trop de &#8216;lag&#8217;, entre le moment ou le build échoue effectivement et le moment ou le lapin l&#8217;annonce à l&#8217;équipe ?<br />
 J&#8217;avais parfois plus de 5 minutes d&#8217;écart entre les deux. Ce qui &#8216;tue&#8217; un peu l&#8217;apprentissage pour les sceptiques de l&#8217;intégration continue.<br />
 Autre question :<br />
 Arrives-tu à faire en sorte que l&#8217;état du build soit signifié par les lumières du lapin (et pas uniquement les oreilles) dans les périodes entre les annonces (ie: pas uniquement au moment ou il détecte le build, un peu comme les oreilles qui gardent leurs positions jusqu&#8217;à ce que le statut du build change)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Christian</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-145</link>
		<dc:creator>Christian</dc:creator>
		<pubDate>Wed, 30 Apr 2008 15:41:29 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-145</guid>
		<description>&lt;p&gt;Romain,&lt;br /&gt; &lt;br /&gt; Effectivement installer lentement l&#039;outil n&#039;aidera pas particulièrement l&#039;équipe à l&#039;adopter. Mais d&#039;expérience, j&#039;ai pu constater que lorsque l&#039;outil est installé particulièrement rapidement (par exemple lorsque l&#039;entreprise dispose d&#039;une infrastructure de build continue pour l&#039;ensemble des équipes projets), l&#039;évangélisation sur la pratique d&#039;intégration continue était mal (voire peu) faite. Désolé pour le raccourci :)&lt;br /&gt; &lt;br /&gt; Merci pour ton retour d&#039;expérience sur le jeu Hudson (que je n&#039;ai pas essayé personnellement). Pour ma part j&#039;ai constaté un effet secondaire à la technique du lapin : les développeurs font échouer le build volontairement pour voir le lapin parler :)&lt;br /&gt; &lt;br /&gt; Christian&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Romain,</p>
<p> Effectivement installer lentement l&#8217;outil n&#8217;aidera pas particulièrement l&#8217;équipe à l&#8217;adopter. Mais d&#8217;expérience, j&#8217;ai pu constater que lorsque l&#8217;outil est installé particulièrement rapidement (par exemple lorsque l&#8217;entreprise dispose d&#8217;une infrastructure de build continue pour l&#8217;ensemble des équipes projets), l&#8217;évangélisation sur la pratique d&#8217;intégration continue était mal (voire peu) faite. Désolé pour le raccourci :)</p>
<p> Merci pour ton retour d&#8217;expérience sur le jeu Hudson (que je n&#8217;ai pas essayé personnellement). Pour ma part j&#8217;ai constaté un effet secondaire à la technique du lapin : les développeurs font échouer le build volontairement pour voir le lapin parler :)</p>
<p> Christian</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Romain</title>
		<link>http://blog.octo.com/faites-vous-vraiment-de-l-integration-continue/comment-page-1/#comment-144</link>
		<dc:creator>Romain</dc:creator>
		<pubDate>Wed, 30 Apr 2008 14:29:17 +0000</pubDate>
		<guid isPermaLink="false">http://new-blog.octo.com/2008/04/30/faites-vous-vraiment-de-l-integration-continue/#comment-144</guid>
		<description>&lt;p&gt;Quelques commentaires sur ce bon article :&lt;br /&gt; &lt;br /&gt; &#039;le plus vite l&#039;outil est installé, le plus vite il est oublié&#039;... Où est la relation entre la rapidité d&#039;installation d&#039;un outil et son adoption ? Ce n&#039;est pas parce qu&#039;un outil va être très long à installer et configurer que l&#039;équipe fera plus d&#039;efforts pour l&#039;adopter... Ce sera sans doute le cas pour la personne qui s&#039;est donné le mal de l&#039;installer, mais cela n&#039;impactera pas à mon avis le reste de l&#039;équipe !&lt;br /&gt; &lt;br /&gt; Les fonctions de l&#039;I.C. sont en effet très restreintes... Il s&#039;agit avant tout de s&#039;assurer que les builds et les tests passent, et d&#039;alerter qui de droit dans le cas contraire. Ca ne corrige pas (hélas) les erreurs !&lt;br /&gt; Pour moi, il faut qu&#039;un minimum d&#039;efforts soient faits par chaque développeur, en particulier sur les réactions à avoir lors d&#039;une alerte de l&#039;IC. Après tout, ignorer une telle alerte, c&#039;est comme ignorer une erreur de compilation relevée par Eclipse par exemple !&lt;br /&gt; &lt;br /&gt; Le jeu de l&#039;intégration continue : Je l&#039;ai installé sur Hudson, mais je dois admettre qu&#039;en dehors d&#039;un aspect ludique, c&#039;est assez limité, d&#039;autant plus que les valeurs sont tout simplement faussées. Si 2 développeurs viennent à commiter en même temps, et qu&#039;un seul fasse échouer le build, alors ce seront les 2 qui seront pénalisés. Certes, on peut faire en sorte que les builds soient réalisés dès qu&#039;un commit a lieu, limitant ainsi la possibilité d&#039;avoir 2 personnes commitant pour un même build... De même, si Hudson (ou Maven) échoue sans lien direct avec le projet (ce qui arrive encore réguliérement), alors les développeurs seront injustement pénalisés.&lt;br /&gt; Mais au delà de ça, ce genre de &#039;jeu&#039; peut être mal perçu par certains développeurs, et risque d&#039;encourager de mauvaises pratiques (commits beaucoup moins fréquents par exemple).&lt;br /&gt; Cela dit, j&#039;adore le lapin communicant (j&#039;en veux un ! ).&lt;br /&gt; &lt;br /&gt; De manière générale, je pense qu&#039;il faut toujours un &#039;chef IC&#039;, qui surveillera le bon respect des règles autour de l&#039;IC, et qui n&#039;hésitera pas (accompagné de son lapin s&#039;il le faut) à rappeller certains développeurs à l&#039;ordre...&lt;br /&gt; Ce &#039;chef&#039; doit être une personne vraiment convaincue par l&#039;IC afin qu&#039;il puisse vraiment pousser cette pratique au sein de son équipe...&lt;br /&gt; &lt;br /&gt; Ma conclusion : Vive Hudson :o) !&lt;br /&gt; &lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Quelques commentaires sur ce bon article :</p>
<p> &#8216;le plus vite l&#8217;outil est installé, le plus vite il est oublié&#8217;&#8230; Où est la relation entre la rapidité d&#8217;installation d&#8217;un outil et son adoption ? Ce n&#8217;est pas parce qu&#8217;un outil va être très long à installer et configurer que l&#8217;équipe fera plus d&#8217;efforts pour l&#8217;adopter&#8230; Ce sera sans doute le cas pour la personne qui s&#8217;est donné le mal de l&#8217;installer, mais cela n&#8217;impactera pas à mon avis le reste de l&#8217;équipe !</p>
<p> Les fonctions de l&#8217;I.C. sont en effet très restreintes&#8230; Il s&#8217;agit avant tout de s&#8217;assurer que les builds et les tests passent, et d&#8217;alerter qui de droit dans le cas contraire. Ca ne corrige pas (hélas) les erreurs !<br />
 Pour moi, il faut qu&#8217;un minimum d&#8217;efforts soient faits par chaque développeur, en particulier sur les réactions à avoir lors d&#8217;une alerte de l&#8217;IC. Après tout, ignorer une telle alerte, c&#8217;est comme ignorer une erreur de compilation relevée par Eclipse par exemple !</p>
<p> Le jeu de l&#8217;intégration continue : Je l&#8217;ai installé sur Hudson, mais je dois admettre qu&#8217;en dehors d&#8217;un aspect ludique, c&#8217;est assez limité, d&#8217;autant plus que les valeurs sont tout simplement faussées. Si 2 développeurs viennent à commiter en même temps, et qu&#8217;un seul fasse échouer le build, alors ce seront les 2 qui seront pénalisés. Certes, on peut faire en sorte que les builds soient réalisés dès qu&#8217;un commit a lieu, limitant ainsi la possibilité d&#8217;avoir 2 personnes commitant pour un même build&#8230; De même, si Hudson (ou Maven) échoue sans lien direct avec le projet (ce qui arrive encore réguliérement), alors les développeurs seront injustement pénalisés.<br />
 Mais au delà de ça, ce genre de &#8216;jeu&#8217; peut être mal perçu par certains développeurs, et risque d&#8217;encourager de mauvaises pratiques (commits beaucoup moins fréquents par exemple).<br />
 Cela dit, j&#8217;adore le lapin communicant (j&#8217;en veux un ! ).</p>
<p> De manière générale, je pense qu&#8217;il faut toujours un &#8216;chef IC&#8217;, qui surveillera le bon respect des règles autour de l&#8217;IC, et qui n&#8217;hésitera pas (accompagné de son lapin s&#8217;il le faut) à rappeller certains développeurs à l&#8217;ordre&#8230;<br />
 Ce &#8216;chef&#8217; doit être une personne vraiment convaincue par l&#8217;IC afin qu&#8217;il puisse vraiment pousser cette pratique au sein de son équipe&#8230;</p>
<p> Ma conclusion : Vive Hudson :o) !
 </p>
]]></content:encoded>
	</item>
</channel>
</rss>

