<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5762312448351689453</id><updated>2011-12-28T13:05:39.700-08:00</updated><category term='Teaching'/><category term='Hits'/><category term='Illustrations'/><category term='Practices I Apply'/><category term='Lean'/><category term='Conférence'/><category term='Caricatures'/><category term='Critique'/><category term='Personal practices'/><category term='My Bookshelf'/><category term='Scrum'/><category term='Tools'/><category term='Best of'/><category term='Articles'/><category term='TUFF STUFF'/><category term='Cartoons'/><category term='Extreme Programming'/><title type='text'>Emmanuel CHENU</title><subtitle type='html'>Through this blog, I want to share my passion for software development.

In "Practices", I share the practices we use to improve the way we develop software as a team.

In "TuffStuff", I tell you about the problems we sweat through.

In "Hits", I'll talk about our little victories.

In "BookReviews", I keep track of the books which helped us improve our way of working.

In "Cartoons" you'll find stories of strange but real situations we went through.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default?start-index=101&amp;max-results=100'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>248</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2480845302737525457</id><published>2011-10-06T13:26:00.000-07:00</published><updated>2011-10-06T13:32:19.181-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>A VOS MARQUES, PRETS, PARTEZ!</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="http://3.bp.blogspot.com/-AZraJA1CcdI/To4NOnU8poI/AAAAAAAABzU/_Q2EGG_CufA/s1600/Kanban_vierge.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="112" src="http://3.bp.blogspot.com/-AZraJA1CcdI/To4NOnU8poI/AAAAAAAABzU/_Q2EGG_CufA/s320/Kanban_vierge.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Nous démarrons une itération &lt;i&gt;(nous ne les comptons plus!)&lt;/i&gt;. Nous avons 2 types d'activités à réaliser en 16 jours, donc 2 &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;value-stream-maps&lt;/a&gt; différents, donc 2 &lt;a href="http://emmanuelchenu.blogspot.com/2009/07/lean-le-flux-tire-de-creation-de-valeur.html"&gt;Kanbans&lt;/a&gt; différents (à gauche). Les tâches priorisées et estimées sont sur les colonnes de départ &lt;i&gt;(TODO)&lt;/i&gt;. Les jetons de ressources sont regroupés au milieu &lt;i&gt;(en jaune)&lt;/i&gt;. Nos 5 &lt;a href="http://emmanuelchenu.blogspot.com/2011/09/etre-bon.html"&gt;indicateurs de performance&lt;/a&gt; vierges sont affichés &lt;i&gt;(à droite)&lt;/i&gt;. Le standard décrivant l'utilisation du Kanban et des indicateurs de performance est également affiché&lt;i&gt; (à l'extrême droite)&lt;/i&gt;.&lt;br /&gt;C'est parti!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2480845302737525457?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2480845302737525457/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/10/vos-marques-prets-partez.html#comment-form' title='7 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2480845302737525457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2480845302737525457'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/10/vos-marques-prets-partez.html' title='A VOS MARQUES, PRETS, PARTEZ!'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-AZraJA1CcdI/To4NOnU8poI/AAAAAAAABzU/_Q2EGG_CufA/s72-c/Kanban_vierge.jpg' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2565084263871745925</id><published>2011-09-18T02:17:00.000-07:00</published><updated>2011-09-18T02:37:52.822-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>ETRE BON</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/-A38It9cEoVQ/TnW07GjeXMI/AAAAAAAABs0/VjrIAH3jYrk/s1600/indicateurs.jpg"&gt;&lt;img alt="" border="0" src="http://3.bp.blogspot.com/-A38It9cEoVQ/TnW07GjeXMI/AAAAAAAABs0/VjrIAH3jYrk/s320/indicateurs.jpg" style="cursor: pointer; float: left; height: 320; margin-bottom: 10px; margin-left: 0px; margin-right: 10px; margin-top: 0px; text-align: justify; width: 240px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;A l'occasion du &lt;a href="http://emmanuelchenu.blogspot.com/2011/07/mener-son-equipe.html"&gt;précédent billet&lt;/a&gt;, j'ai evoqué que &lt;a href="http://emmanuelchenu.blogspot.com/2011/07/mener-son-equipe.html"&gt;mener son équipe&lt;/a&gt; impliquait (entre autres) de mettre les équipiers en difficulté pour qu'ils se développent.&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;Deux soirées passées avec mon coach officieux m'ont permis de travailler cet aspect du leadership.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;Il est intéressant de demander à l'équipe ce que "être bon" signifie dans le cadre de leur activité:&amp;nbsp;&lt;i&gt;"Pour vous, qu'est ce que cela signifie d'être bon?" &lt;/i&gt;(petite mise en difficulté :o)&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;La première étape de cette réflexion amène à se rappeler de la raison d'être de l'équipe. Quelle est sa&amp;nbsp;&lt;b&gt;mission, &lt;/b&gt;quels sont ses &lt;b&gt;objectifs&lt;/b&gt;? En quoi est-ce que l'équipe contribue à l'organisation?&amp;nbsp;&lt;i&gt;A cette étape, nous connaissons le but à atteindre.&lt;/i&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Ensuite, il s'agit d'identifier les critères de réussite de l'équipe. Quels &lt;b&gt;faits&lt;/b&gt;, quelles &lt;b&gt;métriques&lt;/b&gt;, quels &lt;b&gt;indicateurs&lt;/b&gt; permettent objectivement d'affirmer que les objectifs sont tenus?&amp;nbsp;&lt;i&gt;A cette étape, nous savons identifier si nous avons atteint le but.&lt;/i&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Puis, il s'agit d'identifier &lt;b&gt;où&lt;/b&gt; nous en sommes dans la poursuite des objectifs. Pour cela, il faut mesurer les résultats actuels et les comparer aux résultats cibles. &lt;i&gt;A cette étape, nous savons identifier où nous en sommes par rapport au but.&lt;/i&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Enfin, il "reste" à mesurer l'historique des résultats pour révéler la &lt;b&gt;performance&lt;/b&gt; et la comparer à la performance cible. Cette étape permet à l'équipe de mesurer l'effet de l'amélioration continue de ses pratiques.&amp;nbsp;&lt;i&gt;A ce stade, nous savons estimer le moment où nous atteindrons le but.&lt;/i&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;A la question &lt;i&gt;"qu'est ce cela signifie d'être bon?"&lt;/i&gt;, on peut répondre&amp;nbsp;objectivement&amp;nbsp;en connaissance de cause, en s'appuyant sur des faits collectés par la démarche ci-dessus. C'est pour cela que les résultats de la démarche ci-dessus sont &lt;b&gt;visuels, affichés, à jour et commentés&lt;/b&gt;. Ainsi, à l'aide d'un &lt;b&gt;affichage visuel&lt;/b&gt;, on peut &lt;b&gt;synthétiquement&lt;/b&gt; désigner et chiffrer l'objectif, montrer le résultat actuel, la tendance, l'estimation d'atteinte de l'objectif et présenter les actions en cours pour améliorer la performance.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Si l'équipe est en mesure de répondre ainsi à la question&amp;nbsp;&lt;i&gt;"qu'est ce cela signifie d'être bon?"&lt;/i&gt;, c'est qu'elle pilote son activité. Cela révèle aussi qu'il faut la remettre en difficulté pour qu'elle se développe encore! En attendant, il reste du travail: la mise en pratique n'est pas encore au point :o)&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2565084263871745925?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2565084263871745925/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/09/etre-bon.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2565084263871745925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2565084263871745925'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/09/etre-bon.html' title='ETRE BON'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-A38It9cEoVQ/TnW07GjeXMI/AAAAAAAABs0/VjrIAH3jYrk/s72-c/indicateurs.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7594521991818574504</id><published>2011-07-10T05:59:00.000-07:00</published><updated>2011-09-18T02:27:54.432-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>MENER SON EQUIPE</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/-KwNTcUZ_Wk4/Thn-Jq5Yh8I/AAAAAAAABsg/YmKDCyjuw9g/s1600/lean_synchro_equipe.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;a href="http://2.bp.blogspot.com/-KwNTcUZ_Wk4/Thn-Jq5Yh8I/AAAAAAAABsg/YmKDCyjuw9g/s1600/lean_synchro_equipe.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5627808651463395266" src="http://2.bp.blogspot.com/-KwNTcUZ_Wk4/Thn-Jq5Yh8I/AAAAAAAABsg/YmKDCyjuw9g/s400/lean_synchro_equipe.jpg" style="cursor: pointer; float: left; height: 323px; margin-bottom: 10px; margin-left: 0px; margin-right: 10px; margin-top: 0px; text-align: justify; width: 400px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Après plus de 5 ans de pratique des démarches &lt;a href="http://en.wikipedia.org/wiki/Agile_development"&gt;agiles&lt;/a&gt; et &lt;a href="http://en.wikipedia.org/wiki/Lean_manufacturing"&gt;lean&lt;/a&gt;, ma pratique du rôle de &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; a largement évoluée pour s'éloigner de sa définition initiale.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;A une phase tournante de mon engagement sur mon projet actuel, j'en profite pour faire un point sur le &lt;b&gt;rôle initial de &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt;&lt;/b&gt; et &lt;b&gt;ce qu'il est devenu&lt;/b&gt; après plus d'une vingtaine d'itérations mensuelles. Cette évolution me semble si significative que le rôle strict de &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; me parait désormais sous-optimal.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;SCRUMMASTER&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Selon les fondateurs de &lt;a href="http://en.wikipedia.org/wiki/Scrum_(development)"&gt;Scrum&lt;/a&gt;, le &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; se doit de&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;retirer les obstacles qui gênent l'équipe dans sa poursuite des objectifs d'itération;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;agir comme un tampon&lt;b&gt; &lt;/b&gt;entre l'équipe et les influences perturbatrices;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;se mobiliser pour que la démarche &lt;a href="http://en.wikipedia.org/wiki/Scrum_(development)"&gt;Scrum&lt;/a&gt; soit mise en pratique conformément à sa définition;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;garder l'équipe concentrée sur les objectifs d'itération et les tâches en cours;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;GESTIONNAIRE&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le rôle de &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; est bien loin du &lt;b&gt;gestionnaire d'équipe&lt;/b&gt; &lt;i&gt;(alias &lt;b&gt;manager&lt;/b&gt;)&lt;/i&gt; qui pratique souvent un pilotage solitaire et analytique sur la base de métriques et d'indicateurs. Le manager gère des ressources sans forcement avoir recours à la pratique du leadership.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;MENEUR&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le rôle de &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; s'apparente d'avantage à celui du &lt;b&gt;meneur d'équipe&lt;/b&gt; &lt;i&gt;(alias &lt;b&gt;leader&lt;/b&gt;)&lt;/i&gt; même s'il n'en prend pas toute la force. En effet, le &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; est souvent présenté comme un &lt;b&gt;facilitateur&lt;/b&gt; ou un &lt;b&gt;animateur&lt;/b&gt; recherchant à tout prix le &lt;b&gt;consensus&lt;/b&gt; au sein du projet. Ce rôle&lt;b&gt; mou et peu engagé &lt;/b&gt;à mon avis n'est pas encore celui du meneur d'équipe. &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Le meneur d'équipe &lt;/i&gt;&lt;b&gt;&lt;i&gt;mène&lt;/i&gt;&lt;/b&gt;&lt;i&gt; son équipe (pléonasme).&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;S'ENGAGER&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Mener son équipe c'est &lt;b&gt;s'engager avec elle&lt;/b&gt; dans la poursuite de ses objectifs. Que cela soit bien clair: le leader échoue si l'équipe échoue. Le leader est bien dans la même barque que ses équipiers. Le leader doit donc &lt;b&gt;contribuer&lt;/b&gt; à la poursuite des objectifs de son équipe.  Il doit mettre ses compétences et son action au service de la réussite des équipiers.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Quelles sont ces compétences et cette action?&lt;/i&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;MONTRER L'EXEMPLE&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;Le meneur d'équipe doit montrer l'exemple. Il ne s'agit pas de &lt;b&gt;dire&lt;/b&gt; ce qu'il faut faire, mais de &lt;b&gt;montrer &lt;/b&gt;ce qu'il faut faire. Pour cela, il faut &lt;b&gt;faire&lt;/b&gt;! On y revient encore: le leader est dans l'action. Il doit &lt;b&gt;pratiquer&lt;/b&gt; pour montrer la voie à suivre. &lt;i&gt;(Que penser du scrummaster facilitateur et non développeur?)&lt;/i&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;b&gt;PRATIQUER&lt;/b&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;Un leader ne peut exiger de ses équipiers un comportement que lui-même n'a pas&lt;/b&gt;. Si le leader exige de ses équipiers que leur code soit testé, sans duplication, explicite et le plus court possible, alors lui-même se doit d'écrire du code testé, sans duplication, explicite et le plus court possible &lt;i&gt;(j'en imagine certains qui sourient et d'autres qui grincent des dents)&lt;/i&gt;. C'est à ce prix que le leader sera &lt;b&gt;légitime&lt;/b&gt; et que ses équipiers &lt;b&gt;accepteront&lt;/b&gt; de mettre en pratique les standards.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Ainsi, mener l'équipe c'est ouvrir la voie pour que l'équipe la prenne à sa suite.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;ENSEIGNER&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Il ne suffit pas au leader de &lt;b&gt;pratiquer&lt;/b&gt; pour &lt;b&gt;montrer&lt;/b&gt; la voie, puis d'exiger de ses équipiers qu'ils suivent cette voie. Le leader doit absolument &lt;b&gt;enseigner &lt;/b&gt;le métier. Il doit enseigner&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;la &lt;b&gt;pratique&lt;/b&gt; en expliquant &lt;b&gt;comment&lt;/b&gt; nous travaillons dans l'équipe&lt;i&gt; (quels sont les standards?).&lt;/i&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;la &lt;b&gt;philosophie&lt;/b&gt; en expliquant &lt;b&gt;pourquoi&lt;/b&gt; nous travaillons de cette manière dans l'équipe. L'enseignement de la philosophie est primordial car nous pratiquons de manière d'autant plus efficace que nous comprenons pourquoi nous pratiquons ainsi. L'objectif est de faire &lt;b&gt;adhérer&lt;/b&gt; aux pratiques. Aussi &lt;i&gt;(et surtout!)&lt;/i&gt;, comprendre pourquoi est un pré-requis pour &lt;b&gt;améliorer les pratiques&lt;/b&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le &lt;b&gt;&lt;a href="http://en.wikipedia.org/wiki/Pair_programming"&gt;pair-programming&lt;/a&gt;&lt;/b&gt; est une manière très pertinente d'organiser l'enseignement. Dans un tel cadre, le leader doit binômer et il doit s'assurer que les anciens binôment.&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;/i&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Petit rappel pour le plaisir: Pour enseigner il faut pratiquer.&lt;/i&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;FAIRE REUSSIR&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;L'objectif du meneur est de faire réussir ses équipiers. Une manière d'y parvenir est de mener les équipiers à l'&lt;b&gt;autonomie&lt;/b&gt;, de les pousser à se &lt;b&gt;perfectionner&lt;/b&gt; et à donner du &lt;b&gt;sens&lt;/b&gt; à leur travail.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;MENER A L'AUTONOMIE&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;L'autonomie a un impact positif sur la motivation, l'efficacité et l'engagement. Le leader se doit de pousser les équipiers à devenir autonomes.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Par exemple, il s'agit de ne pas de donner la solution à un problème posé, mais de mettre sur la voie, d'accorder du temps pour traiter le problème, puis de s'assurer que le problème est en cours de résolution.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le meneur d'équipe doit pousser ses équipiers à le remplacer. Ainsi, les plus anciens participent à former les plus jeunes; chacun pilote un chantier de &lt;a href="http://en.wikipedia.org/wiki/Problem_solving"&gt;résolution de problème&lt;/a&gt; &lt;i&gt;(et donc d'amélioration!);&lt;/i&gt; les daily-stand-up-meetings, planifications et rétrospectives peuvent être préparés et animés de manière tournante, etc.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Il est important d'organiser le travail pour que les équipiers puissent &lt;b&gt;décider par eux-même de leurs activités&lt;/b&gt;. Les &lt;b&gt;backlogs &lt;/b&gt;&lt;i&gt;(priorisés par définition!)&lt;/i&gt;, les &lt;b&gt;faits techniques priorisés&lt;/b&gt;, les &lt;b&gt;kanbans&lt;/b&gt; et &lt;b&gt;taskboards&lt;/b&gt;, les &lt;b&gt;standards&lt;/b&gt; et &lt;b&gt;modes opératoires&lt;/b&gt;, les &lt;b&gt;indicateurs visuels de pilotage&lt;/b&gt;, les &lt;b&gt;andons&lt;/b&gt; sont des outils d'aide à la décision dont la bonne utilisation engendre l'autonomie.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;En matière d'autonomie, les objectifs du leader peuvent être les suivants: &lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;s'il s'absente, l'équipe assure l'intérim;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;s'il quitte l'équipe, un équipier peut prendre son rôle; &lt;/li&gt;&lt;li style="text-align: justify;"&gt;les équipiers identifient les tâches à mener;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;un équipier motivé peut mener une autre équipe.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;CONDUIRE LE PERFECTIONNEMENT&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le leader doit pousser ses équipiers à se perfectionner. Des équipiers performants résolvent les problèmes et établissent des standards efficaces qui permettent de bien développer de bons produits. Le perfectionnement est également une grande source de motivation personnelle.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La mise en situation, le &lt;b&gt;&lt;a href="http://en.wikipedia.org/wiki/Pair_programming"&gt;pair-programming&lt;/a&gt;&lt;/b&gt; et la &lt;a href="http://en.wikipedia.org/wiki/Problem_solving"&gt;résolution de problèmes&lt;/a&gt; sont des outils efficaces pour aider les équipiers à se perfectionner.  Le leader peut utiliser ces moyens pour entretenir un rythme de perfectionnement.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;DONNER DU SENS&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le leader doit expliquer aux équipiers quels sont les bénéfices pour l'entreprise, pour les clients, pour leurs collègues et pour eux-mêmes de leur travail et de leur manière de travailler. La conscience des bénéfices de son travail impact positivement la motivation et l'engagement.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;CONDUIRE LA RESOLUTION DES PROBLEMES&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Le &lt;a href="http://en.wikipedia.org/wiki/Scrum_master#Core_Scrum_roles"&gt;scrummaster&lt;/a&gt; doit &lt;b&gt;retirer les obstacles&lt;/b&gt; qui gênent l'équipe dans la poursuite de ses objectifs. En résolvant lui-même ces problèmes, le scrummaster ne mène pas ses équipiers à l'autonomie et il ne conduit pas leur perfectionnement. Lui seul développera ses compétences.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;C'est pourquoi le meneur d'équipe doit &lt;b&gt;conduire la &lt;a href="http://en.wikipedia.org/wiki/Problem_solving"&gt;résolution des problèmes&lt;/a&gt;&lt;/b&gt;. Il s'agit&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;d'enseigner une &lt;b&gt;démarche structurée&lt;/b&gt; de résolution de problème;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;d'expliquer en quoi cette pratique &lt;b&gt;développe les compétences des équipiers;&lt;/b&gt; &lt;/li&gt;&lt;li style="text-align: justify;"&gt;d'expliquer en quoi cette pratique &lt;b&gt;améliore la performance de l'entreprise&lt;/b&gt;; puis&lt;/li&gt;&lt;li style="text-align: justify;"&gt;d'allouer les chantiers dans l'équipe (ou de s'assurer que les équipiers s'allouent des problèmes à résoudre); et &lt;/li&gt;&lt;li style="text-align: justify;"&gt;d'animer ou suivre l'avancement des chantiers de résolution de problèmes. &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Pour montrer l'exemple et pour développer ses propres compétences, le leader se doit de mener lui-même des chantiers de résolution de problèmes.&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La pratique en continue de la résolution de problèmes est un outil  très performant pour développer les compétences. En effet, elle exige des équipiers qu'ils comprennent en profondeur les problèmes (avec symptômes, impacts et causes racines) et qu'ils identifient et mettent en place des contremesures efficaces.&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;AMELIORER LES PRATIQUES&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La pratique en continue de la résolution de problème est également un outil très performant pour améliorer les pratiques (ou standards) de l'entreprise. En effet, ces chantiers font évoluer les standards pour intégrer les contremesures identifées. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;Donc, là encore, le leader doit conduire la résolution de problèmes. Il doit tout particulièrement s'assurer que les équipiers enrichissent les standards avec les enseignements de leur chantiers.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;RECHERCHER LE CONSENSUS&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Bien sur, le meneur d'équipe doit en priorité rechercher le consensus au sein de l'équipe. L'adhésion aux décisions sera d'autant plus aisée.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Par contre, par moment, le consensus ne sera pas obtenu et c'est normal. Si je finançais mon projet avec mon argent propre, je ne laisserai pas les experts et les anciens ramer pour obtenir un consensus alors que leur expérience leur révèle la solution. Le prix d'un expert et d'un ancien est le prix de son expérience. Il se doit d'utiliser son expérience pour empêcher les plus novices de commettre les mêmes erreurs. Certes, nous apprenons par nos erreurs, mais si nous pouvions éviter d'en faire trop, ce serait tout même préférable pour le projet. Dans un tel cas de figure, une solution issue de l'expérience et imposée sans consensus doit être expliquée afin de rechercher au mieux l'adhésion des équipiers.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;ET RECURSIVEMENT&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Tout ce qui a été dit pour le meneur d'équipe me semble également valable pour le meneur de l'équipe des meneurs d'équipes. Et ainsi de suite ...&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt;A méditer!&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="height: 55px; width: 220px;"&gt;&lt;object height="55" width="220"&gt;&lt;param name="movie" value="http://www.deezer.com/embedded/small-widget-v2.swf?idSong=749705&amp;amp;colorBackground=0x555552&amp;amp;textColor1=0xFFFFFF&amp;amp;colorVolume=0x39D1FD&amp;amp;autoplay=0"&gt;&lt;embed src="http://www.deezer.com/embedded/small-widget-v2.swf?idSong=749705&amp;amp;colorBackground=0x525252&amp;amp;textColor1=0xFFFFFF&amp;amp;colorVolume=0x39D1FD&amp;amp;autoplay=0" type="application/x-shockwave-flash" height="55" width="220"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7594521991818574504?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7594521991818574504/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/07/mener-son-equipe.html#comment-form' title='12 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7594521991818574504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7594521991818574504'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/07/mener-son-equipe.html' title='MENER SON EQUIPE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-KwNTcUZ_Wk4/Thn-Jq5Yh8I/AAAAAAAABsg/YmKDCyjuw9g/s72-c/lean_synchro_equipe.jpg' height='72' width='72'/><thr:total>12</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-233743694791173620</id><published>2011-01-22T04:43:00.000-08:00</published><updated>2011-01-28T02:00:55.708-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>RÉSOUDRE LES PROBLÈMES UN A UN POUR AMÉLIORER LES PRATIQUES</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/TTsVhmbq7MI/AAAAAAAABqI/1pYTUdhYun4/s1600/conf_pdca.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 398px; height: 400px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/TTsVhmbq7MI/AAAAAAAABqI/1pYTUdhYun4/s400/conf_pdca.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5565065431542852802" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Lorsque nous abordions le &lt;a href="http://en.wikipedia.org/wiki/Lean_manufacturing"&gt;Lean&lt;/a&gt; pour le mettre en pratique sur nos projets de développement, nous l'abordions selon les axes suivants:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;définition de la valeur&lt;/a&gt;, &lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;cartographie du flux de valeur&lt;/a&gt;, &lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;le &lt;a href="http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html"&gt;flux continu&lt;/a&gt;, &lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;le &lt;a href="http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html"&gt;flux tiré&lt;/a&gt; et &lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;le &lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;perfectionnement&lt;/a&gt;. &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span"&gt;&lt;div style="text-align: justify;"&gt;Cette approche, très centrée sur le process, nous a amené à reprendre des &lt;b&gt;outils &lt;/b&gt;issus du Lean qui ont été efficaces chez d'autres et à les mettre en oeuvre chez nous: &lt;a href="http://en.wikipedia.org/wiki/Value_stream_mapping"&gt;value stream mapping&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Kanban"&gt;kanban&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Just-in-time_(business)"&gt;just in time&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Autonomation"&gt;autonomation&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Jidoka"&gt;jidoka&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Andon_(manufacturing)"&gt;andon&lt;/a&gt;, etc ...&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;Cette démarche s'est greffée sur notre déjà longue pratique du &lt;a href="http://en.wikipedia.org/wiki/Agile_software_development"&gt;développement logiciel agile&lt;/a&gt;, centrée sur l'&lt;a href="http://en.wikipedia.org/wiki/Extreme_programming"&gt;eXtreme-Programming&lt;/a&gt; &lt;i&gt;(d'abord!)&lt;/i&gt; et &lt;a href="http://en.wikipedia.org/wiki/Scrum_(development)"&gt;Scrum&lt;/a&gt; &lt;i&gt;(pour la forme)&lt;/i&gt;. &lt;/span&gt;&lt;span class="Apple-style-span"&gt;Naturellement, le terrain de rencontre de ces deux démarches a été le &lt;a href="http://en.wikipedia.org/wiki/Lean_software_development"&gt;Lean Software Development&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;Nous sommes fiers d'avoir obtenus de très bons résultats sur de gros projets, dans des domaines à priori peu réceptifs à ces pratiques et d'avoir été félicités par nos clients pour la tenue des jalons, la qualité des produits et notre&lt;/span&gt;&lt;span class="Apple-style-span"&gt; transparence.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Pourtant nous traînons  encore des &lt;b&gt;problèmes de longue date&lt;/b&gt; &lt;i&gt;(en terme d'années!)&lt;/i&gt; qui nous ralentissent, réduisent notre performance et attaquent notre moral.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Comment cela est-il possible alors que nous pratiquons un développement logiciel agile et Lean qui a lentement évolué pour s'adapter à notre domaine? Sommes-nous réellement sur la bonne voie?&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Des aides extérieures et des recherches nous ont permis de prendre conscience que nous pratiquions un &lt;b&gt;Lean scolaire&lt;/b&gt;. Cette pratique consiste à enrichir notre démarche issue de l'eXtreme-Programming et de Scrum avec des outils du Lean qui ont fait leurs preuves, sans pour autant assimiler le &lt;b&gt;coeur du Lean&lt;/b&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Depuis, nous &lt;b&gt;essayons &lt;/b&gt;d'aborder le Lean de la manière suivante:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;visualiser &lt;/b&gt;le production pour révéler les &lt;b&gt;problèmes&lt;/b&gt;,&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;réagir &lt;/b&gt;immédiatement,&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;puis &lt;b&gt;résoudre &lt;/b&gt;les problèmes un à un &lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;pour &lt;b&gt;améliorer &lt;/b&gt;les pratiques.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span"&gt;&lt;div style="text-align: justify;"&gt;Nos précédentes initiatives nous ont déjà conduit à "visualiser la production pour révéler les problèmes et réagir immédiatement". Nous continuons à peaufiner cette pratique. Par contre, nous essayons désormais de sérieusement nous attaquer au pan du Lean que nous avons trop négligé, c'est à dire &lt;b&gt;résoudre les problèmes un à un pour améliorer les pratiques&lt;/b&gt;.&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Attention, il ne s'agit pas là de la rétrospective d'itération ou de la collecte des obstacles par le ScrumMaster lors des réunions quotidiennes dans l'objectif d'aplanir la route devant l'équipe!&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Il s'agit d'une &lt;b&gt;discipline de tous les jours, pour tous, à tous les niveaux&lt;/b&gt;, qui consiste à avoir toujours un problème à résoudre. Ce problème doit être analysé, décortiqué et compris pour être éventuellement résolu si le retour sur investissement le justifie.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Pour les problèmes coriaces, la &lt;b&gt;démarche est structurée&lt;/b&gt;. Par exemple pour nous, cela consiste à suivre les étapes suivantes:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;décrire le &lt;b&gt;problème &lt;/b&gt;tel qu'on le perçoit;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;identifier et quantifier les &lt;b&gt;impacts &lt;/b&gt;du problème pour notre client et pour notre organisation;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;décrire comment les choses devraient se dérouler, puis décrire comment elles se déroulent réellement. Décrire l'&lt;b&gt;écart&lt;/b&gt; entre les deux.&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;identifier les &lt;b&gt;causes racines&lt;/b&gt; du problème et pondérer leur impact sur le problème;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;pour chaque cause racine, identifier des &lt;b&gt;solutions candidates&lt;/b&gt; qui l'élimineraient;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;classifier &lt;/b&gt;les solutions candidates en fonction de leur coût de mise en oeuvre et de leur impact sur la résolution du problème;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;mettre en oeuvre&lt;/b&gt; les solutions par retour sur investissement décroissant jusqu'à ce que le retour sur investissement n'en vaille plus la peine;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;si elles ont été efficaces, &lt;b&gt;standardiser &lt;/b&gt;les nouvelles pratiques mise en oeuvre;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;communiquer &lt;/b&gt;les leçons.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Cette &lt;b&gt;discipline individuelle et d'équipe&lt;/b&gt; nous aide en ce moment à résoudre &lt;i&gt;(entre autres)&lt;/i&gt; un problème que nous traînons depuis un an. Pour la première fois depuis longtemps, nous constatons une&lt;b&gt; réelle amélioration &lt;/b&gt;du phénomène et ce pour un très faible investissement. Ceci nous ouvre de belles perspectives d'amélioration!&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;Le plus &lt;b&gt;motivant &lt;/b&gt;à mon avis est que cette discipline est une &lt;b&gt;école d'experts&lt;/b&gt;. En effet, puisqu'elle exige de passer par une &lt;b&gt;profonde et complète compréhension des problèmes&lt;/b&gt;, elle pousse les acteurs de la démarche à &lt;b&gt;développer leur&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt; expertise&lt;/b&gt;. Même si la résolution du problème n'est pas déclenchée par manque de retour sur investissement, les acteurs sauront ne pas commettre la même erreur à la prochaine occasion. Puisque tous sont concernés par cette discipline, tous sont amenés à développer leurs compétences.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Finalement, il se s'agit pas plus d'appliquer "un bon processus qui fait un bon produit" mais plutôt "d'appliquer une démarche qui développe des experts qui sauront mettre au point un bon processus qui fait un bon produit" &lt;i&gt;(vous me suivez toujours?)&lt;/i&gt;. L'effet premier recherché est l'&lt;b&gt;implication&lt;/b&gt; et le &lt;b&gt;développement des compétences&lt;/b&gt;. L'effet secondaire est &lt;b&gt;l'amélioration des pratiques&lt;/b&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify; "&gt;&lt;span class="Apple-style-span"&gt;Avec cette nouvelle perspective, nous essayons de passer d'une démarche d'&lt;b&gt;amélioration discontinue&lt;/b&gt; faite d'initiatives personnelles basées sur des intuitions à une démarche collective d'&lt;b&gt;amélioration continue&lt;/b&gt; rigoureuse et disciplinée.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;Cette discipline clarifie également le rôle des "leaders". Pour eux, il s'agit d'&lt;b&gt;enseigner&lt;/b&gt; la démarche à leur équipe et à "challenger" leurs équipiers pour qu'ils analysent et résolvent leurs problèmes. Le "leader" est lui-même "challengé" par son leader/coach/manager/mentor, et ainsi de suite ...&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Un prochain billet sera d'ailleurs consacré au &lt;b&gt;rôle de leader&lt;/b&gt;, tel que décrit par Scrum, par l'eXtreme-Programming, par le Lean et tel que nous le pratiquons.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"&gt;&lt;i&gt;Merci encore pour l'aide extérieure!&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-233743694791173620?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/233743694791173620/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/01/resoudre-les-problemes-un-un-pour.html#comment-form' title='16 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/233743694791173620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/233743694791173620'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2011/01/resoudre-les-problemes-un-un-pour.html' title='RÉSOUDRE LES PROBLÈMES UN A UN POUR AMÉLIORER LES PRATIQUES'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/TTsVhmbq7MI/AAAAAAAABqI/1pYTUdhYun4/s72-c/conf_pdca.jpg' height='72' width='72'/><thr:total>16</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3023754862975963268</id><published>2010-06-16T00:50:00.000-07:00</published><updated>2010-06-23T01:19:04.646-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>VISUALISER LA PRODUCTION POUR REVELER LES PROBLEMES</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/TB3eYfu-xXI/AAAAAAAABnQ/UyuNagkK8g0/s1600/roadsign.svg.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 319px; height: 279px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/TB3eYfu-xXI/AAAAAAAABnQ/UyuNagkK8g0/s400/roadsign.svg.png" alt="" id="BLOGGER_PHOTO_ID_5484784433623909746" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;UN RAPPEL A L'ORDRE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il y a quelques semaines, notre équipe projet a eu la chance de recevoir la visite d'un coach &lt;/span&gt;&lt;a style="font-family: arial;" href="http://fr.wikipedia.org/wiki/Lean"&gt;Lean&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, pionner de l'&lt;/span&gt;&lt;a style="font-family: arial;" href="http://fr.wikipedia.org/wiki/Extreme_programming"&gt;eXtreme Programming&lt;/a&gt;&lt;span style="font-family:arial;"&gt; en France. Nous avons eu la chance de travailler ensemble une journée sur nos pratiques de développement.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;J'ai attaqué la journée plein d'enthousiasme et je l'ai terminé avec le moral dans les chaussettes. J'avais honte des &lt;span style="font-weight: bold;"&gt;problèmes &lt;/span&gt;qu'il nous a fait &lt;span style="font-weight: bold;"&gt;voir&lt;/span&gt; ... Ceci dit, il était bénéfique de prendre conscience de nos obstacles et d'être remis sur la bonne voie. En tout cas, je n'oublierai pas le rappel à l'ordre suivant:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le Lean, c'est &lt;/span&gt; &lt;/div&gt;&lt;ul  style="text-align: justify;font-family:arial;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;visualiser la production&lt;/span&gt; pour &lt;span style="font-weight: bold;"&gt;révéler les problèmes&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;réagir immédiatement&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;puis &lt;span style="font-weight: bold;"&gt;résoudre les problèmes&lt;/span&gt; un à un;&lt;/li&gt;&lt;li&gt;pour &lt;span style="font-weight: bold;"&gt;améliorer les pratiques&lt;/span&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:arial;"&gt;Ce billet est consacré au premier point: &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;VISUALISER LA PRODUCTION POUR RÉVÉLER LES PROBLÈMES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Prendre conscience d'un problème&lt;/span&gt; est la première étape de sa résolution. &lt;span style="font-weight: bold;"&gt;Voir un problème&lt;/span&gt; est une manière efficace d'en prendre conscience. L'&lt;span style="font-weight: bold;"&gt;afficher&lt;/span&gt; pour que tous le voient est une manière de s'engager dans sa &lt;span style="font-weight: bold;"&gt;résolution&lt;/span&gt;. Reste à &lt;span style="font-weight: bold;"&gt;organiser la production pour que les problèmes se voient&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;C'est ici que les choses se compliquent pour le développement logiciel. En effet, il s'agit d'un métier dont la production ne se voit pas de manière évidente. C'est aussi ce qui rend le défi plus amusant en nous obligeant à devenir &lt;span style="font-weight: bold;"&gt;créatifs&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Voici quelques exemples de pratiques déployées par notre équipe pour visualiser la production pour révéler les problèmes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;PROBLÈME: RETARDS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TB4VZUTHXOI/AAAAAAAABnY/3n7mbtcH7EY/s1600/bur_burndown.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 276px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TB4VZUTHXOI/AAAAAAAABnY/3n7mbtcH7EY/s400/bur_burndown.jpg" alt="" id="BLOGGER_PHOTO_ID_5484844920873639138" border="0" /&gt;&lt;/a&gt;L'équipe &lt;span style="font-weight: bold;"&gt;affiche &lt;/span&gt;ses &lt;a href="http://fr.wikipedia.org/wiki/Scrum#Burndown_Charts"&gt;burndown chart&lt;/a&gt;. Cela lui permet de &lt;span style="font-weight: bold;"&gt;voir une mesure de sa production&lt;/span&gt;. Si la courbe tracée est au dessus de la droite descendante à 45°, cela révèle un problème: &lt;span style="font-weight: bold;"&gt;la production est en retard par rapport à la planification&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;PROBLÈME: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;PRODUIT NON OPÉRATIONNEL&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TB4YBzdhhfI/AAAAAAAABng/o_LB_N5iEIE/s1600/andon.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 192px; height: 235px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TB4YBzdhhfI/AAAAAAAABng/o_LB_N5iEIE/s400/andon.jpg" alt="" id="BLOGGER_PHOTO_ID_5484847815456818674" border="0" /&gt;&lt;/a&gt; &lt;/span&gt;&lt;span&gt;L'équipe a connecté un iBuddy au poste d'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;.&lt;/span&gt; Dès que l'outil d'intégration continue détecte une modification dans le dépôt de code et lance un build, l'iBuddy agite les ailes et sa tête change plusieurs fois de couleur. Cette chorégraphie, répétée plusieurs fois par jour, permet de &lt;span style="font-weight: bold;"&gt;visualiser le flux continu des contributions dans le dépôt de code&lt;/span&gt;. Tant que le build est réussi, la tête de l'iBuddy reste verte. Sa tête devient rouge pour révéler un problème: &lt;span style="font-weight: bold;"&gt;le build est en échec et donc le produit n'est plus opérationnel&lt;/span&gt;!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;PROBLÈME: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;STOCKS, GOULETS D'ÉTRANGEMENT ET REWORK&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/TB51HtR9SHI/AAAAAAAABnw/2GJFRW6ODyE/s1600/kanban_avec_bac_rouge.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 274px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/TB51HtR9SHI/AAAAAAAABnw/2GJFRW6ODyE/s400/kanban_avec_bac_rouge.jpg" alt="" id="BLOGGER_PHOTO_ID_5484950171458291826" border="0" /&gt;&lt;/a&gt;L'équipe pilote la production en utilisant des &lt;a href="http://fr.wikipedia.org/wiki/Kanban"&gt;Kanbans&lt;/a&gt;. Cela lui permet de &lt;span style="font-weight: bold;"&gt;voir la production en cours&lt;/span&gt;. Les kanbans révèlent plusieurs problèmes: la discontinuité du flux avec l'apparition de &lt;span style="font-weight: bold;"&gt;stocks &lt;/span&gt;et de &lt;span style="font-weight: bold;"&gt;goulets d'étranglement &lt;/span&gt;et le rework avec les &lt;span style="font-weight: bold;"&gt;produits défectueux collectés dans le bac rouge&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;PROBLÈME: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;FLUX DISCONTINU&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/TB52K-RcdgI/AAAAAAAABoA/o0FBTAe1GzE/s1600/gizmo_on.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 394px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/TB52K-RcdgI/AAAAAAAABoA/o0FBTAe1GzE/s400/gizmo_on.jpg" alt="" id="BLOGGER_PHOTO_ID_5484951327070778882" border="0" /&gt;&lt;/a&gt;L'équipe utilise un &lt;a href="http://emmanuelchenu.blogspot.com/2009/04/lintegration-continue-est-un-systeme.html"&gt;sémaphore d'intégration&lt;/a&gt; pour mener l'intégration continue du produit. Chaque fois qu'un développeur se synchronise et délivre ses modifications dans le dépôt de code, il place un unique marqueur &lt;span style="font-style: italic;"&gt;(une peluche, alias Guizmo) &lt;/span&gt;sur son écran. Cela permet de &lt;span style="font-weight: bold;"&gt;voir le flux continu de production qui enrichit le produit&lt;/span&gt;. Cette pratique révèle également deux problèmes: un sémaphore qui ne circule pas dans l'équipe signale &lt;span style="font-weight: bold;"&gt;un flux discontinu&lt;/span&gt; et un sémaphore bloqué sur un poste révèle une &lt;span style="font-weight: bold;"&gt;intégration douloureuse&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;PROBLÈME: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;NON QUALITÉ&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/TB51ZJJ3ujI/AAAAAAAABn4/ZOFZqxWY5og/s1600/nonqualite.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 276px; height: 292px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/TB51ZJJ3ujI/AAAAAAAABn4/ZOFZqxWY5og/s400/nonqualite.jpg" alt="" id="BLOGGER_PHOTO_ID_5484950470998342194" border="0" /&gt;&lt;/a&gt;Quotidiennement, l'équipe affiche la quantité de non-qualité automatiquement détectée dans le produit. Cela permet de &lt;span style="font-weight: bold;"&gt;visualiser l'évolution de la qualité de la production&lt;/span&gt;. Cela permet aussi de révéler lorsque &lt;span style="font-weight: bold;"&gt;le produit n'a plus la qualité attendue&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ces quelques exemples de pratiques permettant de &lt;span style="font-weight: bold;"&gt;visualiser la production pour révéler les problèmes&lt;/span&gt;. Elles sont adaptées à la nature particulière de notre projet et de notre équipe: logiciel critique et grosse équipe auto-organisée. L'étape d'après est de &lt;span style="font-weight: bold;"&gt;réagir immédiatement&lt;/span&gt; lorsqu'un problème est révélé. Cela sera l'objet d'un billet à venir. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;A bientôt!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3023754862975963268?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3023754862975963268/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/visualiser-la-production-pour-reveler.html#comment-form' title='4 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3023754862975963268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3023754862975963268'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/visualiser-la-production-pour-reveler.html' title='VISUALISER LA PRODUCTION POUR REVELER LES PROBLEMES'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/TB3eYfu-xXI/AAAAAAAABnQ/UyuNagkK8g0/s72-c/roadsign.svg.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2711756991074461811</id><published>2010-06-10T12:56:00.001-07:00</published><updated>2010-06-10T12:57:31.825-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>INTEGRATION BIG-BANG</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFDlhZbwSI/AAAAAAAABm0/5juDPpPhtbE/s1600/manu_integ_stock.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 215px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFDlhZbwSI/AAAAAAAABm0/5juDPpPhtbE/s400/manu_integ_stock.jpg" alt="" id="BLOGGER_PHOTO_ID_5481236533385871650" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées   pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème    séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2711756991074461811?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2711756991074461811/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/integration-big-bang.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2711756991074461811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2711756991074461811'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/integration-big-bang.html' title='INTEGRATION BIG-BANG'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFDlhZbwSI/AAAAAAAABm0/5juDPpPhtbE/s72-c/manu_integ_stock.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5301260068840007877</id><published>2010-06-10T12:55:00.001-07:00</published><updated>2010-06-10T12:56:13.387-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>CYCLE TROP LONG</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFDQxy-4kI/AAAAAAAABms/HK2BS5Djuz4/s1600/manu_cycle_trop_long.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 280px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFDQxy-4kI/AAAAAAAABms/HK2BS5Djuz4/s400/manu_cycle_trop_long.jpg" alt="" id="BLOGGER_PHOTO_ID_5481236177010745922" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées   pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème    séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5301260068840007877?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5301260068840007877/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/cycle-trop-long.html#comment-form' title='3 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5301260068840007877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5301260068840007877'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/cycle-trop-long.html' title='CYCLE TROP LONG'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFDQxy-4kI/AAAAAAAABms/HK2BS5Djuz4/s72-c/manu_cycle_trop_long.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4715621327430558329</id><published>2010-06-10T12:53:00.000-07:00</published><updated>2010-06-10T12:54:58.061-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>FLUX CONTINU</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFC9SzoJAI/AAAAAAAABmk/q_ODoI9DxtI/s1600/manu_cycle_court.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 317px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFC9SzoJAI/AAAAAAAABmk/q_ODoI9DxtI/s400/manu_cycle_court.jpg" alt="" id="BLOGGER_PHOTO_ID_5481235842274436098" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées   pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème    séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4715621327430558329?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4715621327430558329/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/flux-continu.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4715621327430558329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4715621327430558329'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/flux-continu.html' title='FLUX CONTINU'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFC9SzoJAI/AAAAAAAABmk/q_ODoI9DxtI/s72-c/manu_cycle_court.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5025995672195668113</id><published>2010-06-10T12:51:00.000-07:00</published><updated>2010-06-10T12:53:34.927-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>SW COUPLÉ AU HW</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFCi0h2ErI/AAAAAAAABmc/qZ2i2OyZukg/s1600/manu_couplage_sw_hw.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 303px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFCi0h2ErI/AAAAAAAABmc/qZ2i2OyZukg/s400/manu_couplage_sw_hw.jpg" alt="" id="BLOGGER_PHOTO_ID_5481235387470189234" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées  pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème   séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5025995672195668113?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5025995672195668113/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/sw-couple-au-hw.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5025995672195668113'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5025995672195668113'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/sw-couple-au-hw.html' title='SW COUPLÉ AU HW'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFCi0h2ErI/AAAAAAAABmc/qZ2i2OyZukg/s72-c/manu_couplage_sw_hw.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3035717945828557001</id><published>2010-06-10T12:49:00.000-07:00</published><updated>2010-06-10T12:51:52.208-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>LES TESTS SONT UN TUTEUR</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/TBFCBu11qhI/AAAAAAAABmU/-p-HSQXVKmY/s1600/conf_tuteur.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 256px; height: 328px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/TBFCBu11qhI/AAAAAAAABmU/-p-HSQXVKmY/s400/conf_tuteur.jpg" alt="" id="BLOGGER_PHOTO_ID_5481234819007752722" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family: arial;"&gt;... et l'application est un palmier parce que j'ai besoin de vacances.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3035717945828557001?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3035717945828557001/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/les-tests-sont-un-tuteur.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3035717945828557001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3035717945828557001'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/les-tests-sont-un-tuteur.html' title='LES TESTS SONT UN TUTEUR'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/TBFCBu11qhI/AAAAAAAABmU/-p-HSQXVKmY/s72-c/conf_tuteur.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2159719937706491807</id><published>2010-06-10T12:48:00.001-07:00</published><updated>2010-06-10T12:49:01.267-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>PDCA</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFBl-3CzgI/AAAAAAAABmM/LU_izqYiptw/s1600/conf_pdca.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 398px; height: 400px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFBl-3CzgI/AAAAAAAABmM/LU_izqYiptw/s400/conf_pdca.jpg" alt="" id="BLOGGER_PHOTO_ID_5481234342271438338" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées  pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème   séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2159719937706491807?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2159719937706491807/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/pdca.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2159719937706491807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2159719937706491807'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/pdca.html' title='PDCA'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFBl-3CzgI/AAAAAAAABmM/LU_izqYiptw/s72-c/conf_pdca.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1280750530132833568</id><published>2010-06-10T12:46:00.001-07:00</published><updated>2010-06-10T12:47:51.140-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>ITERATIF &amp; INCREMENTAL</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/TBFBQwKzsVI/AAAAAAAABmE/xcw5S7wV7LE/s1600/conf_iter_incr.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 154px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/TBFBQwKzsVI/AAAAAAAABmE/xcw5S7wV7LE/s400/conf_iter_incr.jpg" alt="" id="BLOGGER_PHOTO_ID_5481233977550549330" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées  pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème   séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1280750530132833568?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1280750530132833568/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/iteratif-incremental.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1280750530132833568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1280750530132833568'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/iteratif-incremental.html' title='ITERATIF &amp; INCREMENTAL'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/TBFBQwKzsVI/AAAAAAAABmE/xcw5S7wV7LE/s72-c/conf_iter_incr.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6703262261734664093</id><published>2010-06-10T12:45:00.001-07:00</published><updated>2010-06-10T12:46:04.778-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>BUGS</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/TBFA6XA2KLI/AAAAAAAABl8/7PLYcrcTsxM/s1600/conf_bugs.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 298px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/TBFA6XA2KLI/AAAAAAAABl8/7PLYcrcTsxM/s400/conf_bugs.jpg" alt="" id="BLOGGER_PHOTO_ID_5481233592840759474" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées  pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème   séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6703262261734664093?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6703262261734664093/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/bugs.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6703262261734664093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6703262261734664093'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/bugs.html' title='BUGS'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/TBFA6XA2KLI/AAAAAAAABl8/7PLYcrcTsxM/s72-c/conf_bugs.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6050324324835201238</id><published>2010-06-10T12:44:00.001-07:00</published><updated>2010-06-10T12:45:01.482-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>50 DEVELOPPEURS</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFAr8iehtI/AAAAAAAABl0/x4hDLx5tztE/s1600/Conf_Equipe_50.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 155px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFAr8iehtI/AAAAAAAABl0/x4hDLx5tztE/s400/Conf_Equipe_50.jpg" alt="" id="BLOGGER_PHOTO_ID_5481233345215891154" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Voici une série d'illustrations que j'ai dessinées  pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème   séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6050324324835201238?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6050324324835201238/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/50-developpeurs.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6050324324835201238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6050324324835201238'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/50-developpeurs.html' title='50 DEVELOPPEURS'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBFAr8iehtI/AAAAAAAABl0/x4hDLx5tztE/s72-c/Conf_Equipe_50.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7044711543758095912</id><published>2010-06-10T12:29:00.001-07:00</published><updated>2010-06-10T12:30:50.949-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>25 DEVELOPPEURS</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBE9UTfMAVI/AAAAAAAABls/4f0RpkfpYwc/s1600/manu_equipe_sw.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 138px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/TBE9UTfMAVI/AAAAAAAABls/4f0RpkfpYwc/s400/manu_equipe_sw.jpg" alt="" id="BLOGGER_PHOTO_ID_5481229640524366162" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family: arial;"&gt;Voici une série d'illustrations que j'ai dessinées pour ma présentation  au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème  séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family: arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7044711543758095912?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7044711543758095912/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/25-developpeurs.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7044711543758095912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7044711543758095912'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/25-developpeurs.html' title='25 DEVELOPPEURS'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/TBE9UTfMAVI/AAAAAAAABls/4f0RpkfpYwc/s72-c/manu_equipe_sw.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6339594009434029492</id><published>2010-06-10T12:08:00.001-07:00</published><updated>2010-06-10T12:29:07.284-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>1 DEVELOPPEUR</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/TBE81KXTlkI/AAAAAAAABlk/ShhwgbdeE88/s1600/manu.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 166px; height: 331px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/TBE81KXTlkI/AAAAAAAABlk/ShhwgbdeE88/s400/manu.jpg" alt="" id="BLOGGER_PHOTO_ID_5481229105499444802" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family: arial;"&gt;Voici une série d'illustrations que j'ai dessinées pour ma présentation au &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html"&gt;5ème séminaire Lean &amp;amp; SI&lt;/a&gt;&lt;span style="font-family: arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6339594009434029492?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6339594009434029492/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/1-developpeur.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6339594009434029492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6339594009434029492'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/1-developpeur.html' title='1 DEVELOPPEUR'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/TBE81KXTlkI/AAAAAAAABlk/ShhwgbdeE88/s72-c/manu.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-606449772239334530</id><published>2010-06-06T12:15:00.000-07:00</published><updated>2010-06-06T12:23:07.387-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>5EME SEMINAIRE LEAN &amp; SI</title><content type='html'>&lt;div style="text-align: justify; font-family: arial;"&gt;En collaboration avec Fujitsu et l’&lt;a href="http://www.institut-lean-france.fr/"&gt;Institut Lean France&lt;/a&gt;, &lt;a href="http://www.telecom-paristech.fr/"&gt;Télécom ParisTech&lt;/a&gt; organise la cinquième séance du séminaire « &lt;a href="http://leansi.blog.telecom-paristech.fr/"&gt;Lean et Système d'information&lt;/a&gt; ». Ce séminaire aura lieu le Jeudi 10 Juin 2010 de 9h00 à 12h30 &lt;span style="font-style: italic;"&gt;(café accueil à partir de 8h30)&lt;/span&gt; à &lt;a href="http://www.telecom-paristech.fr/"&gt;Télécom ParisTech&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(46 rue Barrault, Paris 13e)&lt;/span&gt;.&lt;br /&gt;Les interventions prévues pour ce jour sont:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify; font-family: arial;"&gt;&lt;li&gt;« Mise en oeuvre des démarches agiles et Lean pour la construction des systèmes critiques », Emmanuel Chenu, Thales&lt;/li&gt;&lt;li&gt;« Lean et IT: des logiciels au service du client », &lt;a href="http://www.regismedina.com/"&gt;Régis Médina&lt;/a&gt;, &lt;a href="http://www.operae.fr/"&gt;Operae Partners&lt;/a&gt;&lt;/li&gt;&lt;li&gt;« Retour d'expérience sur une démarche de formation itérative selon les principes du TWI », Marie-Noelle Ninteya et Elodie Aidan, Nokia Siemens Network.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;Chaque exposé sera suivi d'un débat avec l’assistance.&lt;br /&gt;&lt;br /&gt;Pour plus de détails, consultez le &lt;a href="http://leansi.blog.telecom-paristech.fr/files/2010/05/Cinqui%C3%A8me-s%C3%A9minaire-Lean-et-S1.pdf"&gt;programme&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-606449772239334530?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/606449772239334530/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/606449772239334530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/606449772239334530'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/06/5eme-seminaire-lean-si.html' title='5EME SEMINAIRE LEAN &amp; SI'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8741851117372181705</id><published>2010-04-21T01:43:00.000-07:00</published><updated>2010-04-23T02:13:16.536-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TUFF STUFF'/><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>RYTHME (IN)SOUTENABLE</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/S866rcT9ygI/AAAAAAAABig/Zym1TenbyI8/s1600/ManUVelocit%C3%A9Petit.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 225px; height: 257px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/S866rcT9ygI/AAAAAAAABig/Zym1TenbyI8/s400/ManUVelocit%C3%A9Petit.jpg" alt="" id="BLOGGER_PHOTO_ID_5462508653544065538" border="0" /&gt;&lt;/a&gt; Sur son &lt;a href="http://www.davidbrocard.org/node/92"&gt;blog&lt;/a&gt;, sur les mailing list &lt;a href="http://fr.groups.yahoo.com/group/xp-france/message/8679"&gt;XP France&lt;/a&gt; et &lt;a href="http://fr.groups.yahoo.com/group/frenchsug/message/426"&gt;FrenchSUG&lt;/a&gt;, &lt;a href="http://www.davidbrocard.org/"&gt;David Brocard&lt;/a&gt; a relancé la  discussion sur la mise en pratique du &lt;a href="http://fr.wikipedia.org/wiki/Manifeste_agile#Les_12_principes"&gt;principe agile&lt;/a&gt; du &lt;span style="font-weight: bold;"&gt;rythme soutenable&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE RYTHME SOUTENABLE&lt;/span&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;"Les processus agiles promeuvent  un rythme de développement  soutenable. Commanditaires, développeurs et utilisateurs devraient  pouvoir maintenir un rythme constant indéfiniment." (&lt;a href="http://agilemanifesto.org/principles.html"&gt;Agile Manifesto&lt;/a&gt;)&lt;br /&gt;&lt;/blockquote&gt;Ce principe est très louable:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Il privilégie les &lt;span style="font-weight: bold;"&gt;objectifs à long terme&lt;/span&gt; sur les objectifs à court terme. &lt;/li&gt;&lt;li&gt;Il assure un&lt;span style="font-weight: bold;"&gt; &lt;a href="http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html"&gt;flux continu et constant de création de valeur&lt;/a&gt;&lt;/span&gt; qui maintient la qualité du produit, assure l'avancement et améliore la prédictibilité du développement.&lt;/li&gt;&lt;li&gt;Il instaure un rythme permettant de mettre en place la résolution systématique des problèmes et l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;&lt;span style="font-weight: bold;"&gt;amélioration continue&lt;/span&gt;&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Il rappelle que le développement est réalisé par des hommes et qu'il faut &lt;span style="font-weight: bold;"&gt;respecter &lt;/span&gt;leur rythme de travail - dans leur intérêt, dans celui du projet et des clients.&lt;/li&gt;&lt;li&gt;Il permet d'&lt;span style="font-weight: bold;"&gt;enchainer les projets&lt;/span&gt;, les uns après les autres, car les développeurs restent disponibles &lt;span style="font-style: italic;"&gt;(en bon état ...)&lt;/span&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;LE PROBLÈME&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;En revenant sur plusieurs années de projet, est-ce que &lt;span style="font-weight: bold;"&gt;le rythme soutenable a été appliqué&lt;/span&gt;? &lt;/li&gt;&lt;li&gt;Est-il &lt;span style="font-weight: bold;"&gt;compatible &lt;/span&gt;de la mise en pratique des autres principes du Manifeste Agile? &lt;/li&gt;&lt;li&gt;A t-on au moins gagné un &lt;span style="font-weight: bold;"&gt;rythme plus soutenable qu'auparavant&lt;/span&gt;, lorsque nous utilisions des méthodes plus théoriques et &lt;span style="font-style: italic;"&gt;(faussement)&lt;/span&gt; prédictives? &lt;/li&gt;&lt;li&gt;Après 150 jours ouverts de développement sur un même projet, j'avais écrit que nous étions passé &lt;span style="font-weight: bold;"&gt;de l'itération au sprint&lt;/span&gt; sur notre projet en perdant le rythme soutenable &lt;span style="font-style: italic;"&gt;(&lt;a href="http://emmanuelchenu.blogspot.com/2008/12/iteration-ou-sprint_07.html"&gt;voir billet&lt;/a&gt;)&lt;/span&gt;. Qu'en est-il après 350 jours ouvrables de développement sur ce même projet?&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;LE PLUS DUR EST A VENIR&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Avant l'adoption de démarches de type agile, le rythme sur les projets était soutenable &lt;span style="font-weight: bold;"&gt;le long du V descendant&lt;/span&gt;. Pour tenir un jalon intermédiaire &lt;span style="font-style: italic;"&gt;(spécification, conception, codage)&lt;/span&gt; il suffisait presque de décréter que l'activité était terminée. Concrètement, il était impossible de prouver  objectivement le contraire puisque qu'aucune preuve n'était pertinente. Aussi, on savait sans trop oser le dire que le travail serait repris et terminé lors des phases remontantes du V.&lt;br /&gt;&lt;br /&gt;Puis, le rythme devenait bien plus désagréable lors de &lt;span style="font-weight: bold;"&gt;la remontée du V.&lt;/span&gt; L'intégration du code tournait au vrai cauchemar et les heures s'accumulaient pour mettre au point &lt;span style="font-style: italic;"&gt;(et réécrire)&lt;/span&gt; ce logiciel. Cette phase était le point culminant de la fatigue et du stress sur le projet. Le plus pénible était que la durée de cette phase était imprévisible ...&lt;br /&gt;&lt;br /&gt;Tout cela pour dire qu'avant l'introduction des méthodes de type agile, le rythme des projets était déjà insoutenable, mais essentiellement sur la branche remontante du V.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;C'EST DUR TOUT LE TEMPS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Avec la pratique du &lt;span style="font-weight: bold;"&gt;cycle de vie itératif et incrémental court&lt;/span&gt;, le stress et les heures de travail n'ont pas disparu. Ils ont été &lt;span style="font-weight: bold;"&gt;lissé &lt;/span&gt;assez uniformément le long du développement &lt;span style="font-style: italic;"&gt;(il reste des pics lors des itérations qui précèdent une livraison formelle)&lt;/span&gt;. Aussi, le stress et le surcroit de travail apparaissent très &lt;span style="font-weight: bold;"&gt;tôt &lt;/span&gt;dans le développement.&lt;br /&gt;&lt;br /&gt;Ce changement est dû à la nature même du cycle itératif et incrémental qui installe un rythme court pendant lequel toutes les activités du développement sont menées, levant les problèmes tôt et souvent.&lt;br /&gt;&lt;br /&gt;Avec les revues d'itérations et les démonstrations d'incrément, le stress de la livraison devient périodique. La mise à disposition très tôt et en continu de la vélocité &lt;span style="font-style: italic;"&gt;(et d'autres indicateurs) &lt;/span&gt;peut conduire à une course à la productivité, entretenue par les attentes toujours plus ambitieuses des managers.&lt;br /&gt;&lt;br /&gt;Ainsi, les méthodes agiles ne semblent pas générer un rythme plus soutenable ou plus insoutenable. Par contre, elles &lt;span style="font-weight: bold;"&gt;lissent tôt et tout au long du projet&lt;/span&gt; le stress qui culminait auparavant vers la fin &lt;span style="font-style: italic;"&gt;(théorique)&lt;/span&gt; du développement.&lt;br /&gt;&lt;br /&gt;Notez que la technique du &lt;a href="http://fr.wikipedia.org/wiki/Heijunka"&gt;Heijunka&lt;/a&gt;  dans la &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;Lean&lt;/a&gt; recherche spécifiquement ce lissage de la charge de travail et du stress.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SANS PIC NI RELÂCHE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Certes, avec une approche de type agile, il n'y a plus de gros pic de travail et de stress. Par contre, il n'y a plus non plus de &lt;span style="font-weight: bold;"&gt;relâche&lt;/span&gt;. Avec les démarches plus théoriques, les pauses n'existaient pas formellement, mais il était possible de calmer le rythme lors de la descente du V. Par contre, avec un &lt;span style="font-style: italic;"&gt;daily-stand-up-meeting&lt;/span&gt;, avec le &lt;span style="font-style: italic;"&gt;burndown chart&lt;/span&gt; actualisé quotidiennement, avec un &lt;span style="font-style: italic;"&gt;build &lt;/span&gt;publié et avec des &lt;span style="font-style: italic;"&gt;tests de recette&lt;/span&gt; automatisés mesurant l'avancement, il devient très difficile de calmer le rythme sans que cela soit perceptible. Et cela s'enchaine itération après itération. Nous en sommes à 18 itérations de 20 jours ouvrés sur le même projet - et cela use!&lt;br /&gt;&lt;br /&gt;Pour calmer le jeu, nous avons essayé de prendre une journée sans incrément fonctionnel entre la revue d'itération et la planification de la suivante. D'une part, cela passait mal auprès du management, d'autre part cela ne rattrapait absolument pas un sprint de 20 jours ouvrés précédant un autre sprint de 20 jours.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA COURSE A LA VÉLOCITÉ&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pour maintenir un rythme soutenable, il faut de viser une vélocité moins élevée en planification d'itération. Cela semble évident. C'est sûrement applicable dans le meilleur des mondes, dans les entreprises éclairées, chez Google et chez les Bisounours. Malheureusement, cela n'est pas envisageable avec des managers qui pensent que les développeurs consomment le temps qu'il leur est alloué &lt;span style="font-style: italic;"&gt;(&lt;a href="http://fr.wikipedia.org/wiki/Loi_de_Parkinson"&gt;loi de Parkinson&lt;/a&gt;)&lt;/span&gt;. Ce modèle de management reste appliqué. Par extension, il s'agit de fixer des objectifs intenables pour être "sur" que les développeurs se donnent à fond. Changer ce schéma de pensée peut être une révolution culturelle pour certaines organisations.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;STRESSANTE TRANSPARENCE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Au rythme s'ajoute le &lt;span style="font-weight: bold;"&gt;stress de la transparence&lt;/span&gt;. Il faut du &lt;span style="font-weight: bold;"&gt;courage &lt;/span&gt;pour afficher sa courbe de productivité et sa &lt;a href="http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html"&gt;courbe de non-qualité&lt;/a&gt;. Il faut du courage pour mettre une l&lt;a href="http://emmanuelchenu.blogspot.com/2009/08/lean-andon.html"&gt;umière qui devient rouge lorsque le build est cassé&lt;/a&gt;. Il faut du courage pour &lt;a href="http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html"&gt;montrer ses problèmes.&lt;/a&gt; Donner des indicateurs, cela &lt;span style="font-weight: bold;"&gt;peut &lt;/span&gt;aussi être &lt;span style="font-style: italic;"&gt;donner le bâton pour se faire battre&lt;/span&gt;. Être transparent, c'est aussi accueillir la critique: &lt;span style="font-style: italic;"&gt;"Quand on a perdu ses clefs la nuit, on les cherche sous le lampadaire"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(François Brun)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;NOUVEAUX SYMPTÔMES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Avec la pratique des démarches de type agile, nous constatons que les équipes deviennent plus soudées. Avec le stress, elles développent un &lt;span style="font-weight: bold;"&gt;riche folklore d'équipe&lt;/span&gt;. Par exemple,  notre équipe passionnerait un sociologue tellement elle a développé des pratiques telles que &lt;span style="font-style: italic;"&gt;"le Gizmo"&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;"le Perfect"&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;"le saut de la troisième corde"&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;"le J'off"&lt;/span&gt; et bien d'autres encore.&lt;br /&gt;&lt;br /&gt;Ce riche folklore d'équipe est bien moins séduisant si on l'interprète comme étant des &lt;span style="font-weight: bold;"&gt;mécanismes collectifs de protection contre la souffrance au travail&lt;/span&gt;. Malheureusement, c'est un fonctionnement très classique étudié par la &lt;a href="http://www.hcsp.fr/docspdf/adsp/adsp-09/ad093939.pdf"&gt;psychodynamique du travail&lt;/a&gt;. Avec les équipes soudées, nous sommes passé de mécanismes individuels de protection à des mécanismes collectifs.&lt;br /&gt;&lt;br /&gt;Le fait qu'une équipe soit soudée et développe un riche folklore peut être un signe d'une souffrance au travail ressentie par les équipiers. Cela peut être un symptôme du rythme insoutenable. Le pire est quand ces symptômes sont mal interprétés et qu'ils sont reprochés à l'équipe comme étant de mauvais comportements. Cela revient a réprimer le symptôme du malêtre.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;QUEL QUE SOIT LA MÉTHODE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Quel  que soit la méthode, le travail en mode projet est éprouvant. Tant  qu'il y aura des jalons, ils seront ambitieux &lt;span style="font-style: italic;"&gt;(pour des raisons économiques)&lt;/span&gt; et il sera éprouvant de  les tenir. Ceci n'est pas propre au développement logiciel. Chez les  créatifs, les publicitaires, les journalistes, les écrivains et les architectes cela  s'appelle les &lt;span style="font-weight: bold;"&gt;périodes de charrette&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(&lt;a href="http://fr.wikipedia.org/wiki/Charrette"&gt;période intense de  travail pour terminer à temps une  commande, une tâche sous contrat&lt;/a&gt;)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;NÉANMOINS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Les démarches de type agile ont la particularité de &lt;span style="font-weight: bold;"&gt;lisser &lt;/span&gt;cette charge de travail dans la durée et de monter très &lt;span style="font-weight: bold;"&gt;tôt &lt;/span&gt;le rythme. Ce rythme est &lt;span style="font-weight: bold;"&gt;sans pic ni relâche&lt;/span&gt;. A cela s'ajoute le &lt;span style="font-weight: bold;"&gt;stress de la transparence&lt;/span&gt;.  Clairement, il faut du &lt;span style="font-weight: bold;"&gt;courage &lt;/span&gt;pour pratiquer une démarche du type agile.&lt;br /&gt;&lt;br /&gt;La variable d'ajustement reste le curseur de la &lt;span style="font-weight: bold;"&gt;vélocité&lt;/span&gt;. Après, cela se joue à la culture d'entreprise et au style de management. Le rythme insoutenable n'est pas dans le patrimoine génétique des méthodes agiles mais dans l'utilisation que les commanditaires, les développeurs et les utilisateurs peuvent &lt;span style="font-style: italic;"&gt;(très facilement) &lt;/span&gt;en faire.&lt;br /&gt;Ces démarches sont &lt;span style="font-weight: bold;"&gt;diablement efficaces et motivantes &lt;/span&gt;&lt;span&gt;mais elles ne peuvent bien sur pas tout résoudre&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8741851117372181705?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8741851117372181705/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/04/rythme-insoutenable.html#comment-form' title='5 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8741851117372181705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8741851117372181705'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/04/rythme-insoutenable.html' title='RYTHME (IN)SOUTENABLE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/S866rcT9ygI/AAAAAAAABig/Zym1TenbyI8/s72-c/ManUVelocit%C3%A9Petit.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4072251785811158547</id><published>2010-04-17T12:32:00.000-07:00</published><updated>2010-04-18T02:17:14.502-07:00</updated><title type='text'>LE SYNDROME DE LA DECHARGE PUBLIQUE</title><content type='html'>&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/S8q3oH3FreI/AAAAAAAABiY/Nh-1jqn7CIA/s1600/d%C3%A9chetterie.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 300px; height: 400px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/S8q3oH3FreI/AAAAAAAABiY/Nh-1jqn7CIA/s400/d%C3%A9chetterie.jpg" alt="" id="BLOGGER_PHOTO_ID_5461379398072905186" border="0" /&gt;&lt;/a&gt;En quelques 350 jours ouvrés de développement sur une même application, j'ai développé une &lt;span style="font-weight: bold;"&gt;attitude &lt;/span&gt;&lt;span style="font-weight: bold;"&gt; extrémiste et dogmatique quant au maintien de la qualité&lt;/span&gt; du logiciel. Je dois en irriter plus d'un dans l'équipe &lt;span style="font-style: italic;"&gt;(désolé)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Dans ce billet, je tente de justifier cette attitude. &lt;span style="font-style: italic;"&gt;(Le développeur extrémiste a été dévoilé dans le billet &lt;/span&gt;&lt;a style="font-style: italic;" href="http://emmanuelchenu.blogspot.com/2010/04/un-bon-code.html"&gt;UN BON CODE&lt;/a&gt;&lt;span style="font-style: italic;"&gt;).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA PETITE HISTOIRE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Avez-vous déjà remarqué que lorsque la décharge publique est fermée, il y a parfois un particulier qui déverse ses détritus devant le portail d'entrée? (&lt;span style="font-style: italic;"&gt;&lt;a href="http://2.bp.blogspot.com/_pwMHzqjHPX4/S8q3oH3FreI/AAAAAAAABiY/Nh-1jqn7CIA/s1600/d%C3%A9chetterie.jpg"&gt;voir photo&lt;/a&gt;)&lt;/span&gt; Avez-vous aussi remarqué qu'une fois qu'un premier "vandale" a ouvert le bal, d'autres suivent son exemple.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Après tout, l'entrée est déjà souillée, alors c'est pas quelques détritus de plus qui vont changer quelque chose ...&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;Parfois même, autres continuent cette dégradation alors même que la décharge a réouvert ses portes!&lt;br /&gt;&lt;br /&gt;Ce qui est notable dans ce comportement, c'est que &lt;span style="font-weight: bold;"&gt;le premier à dégrader l'entrée de la décharge commet l'acte le plus "difficile"&lt;/span&gt;. Il dégrade un lieu propre. Par contre, &lt;span style="font-weight: bold;"&gt;il est bien plus aisé pour les suivants de suivre cet exemple en continuant à dégrader le lieu&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Il est aussi notable que si le personnel de la décharge avait immédiatement nettoyé les détritus du premier vandale, &lt;span style="font-weight: bold;"&gt;les suivants n'auraient probablement pas osé vider leurs détritus devant la porte&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;REVENONS A NOS MOUTONS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ce syndrome se transpose au code d'une application logicielle. Si un premier développeur amorce la dégradation de la qualité du code, par exemple en ne testant pas sa modification, en laissant des warnings de compilation ou en ne respectant pas les standards de l'application, alors d'autres continueront à dégrader l'application.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Après tout, pourquoi tester ma modification alors que 20% des lignes d'instructions ne sont pas couvertes? Mon code non-testé se noiera dans la masse et passera inaperçu ...&lt;/span&gt;"&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Après tout, pourquoi passer du temps à corriger mes 2 warnings de compilation alors que le build en détecte déjà 23?&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;Sur plus de 350 jours ouvrés de développement d'un même logiciel, à 25 contributeurs, nous avons remarqué que si la qualité commence à se dégrader, alors le &lt;span style="font-weight: bold;"&gt;phénomène s'emballe&lt;/span&gt;. Il devient alors très &lt;span style="font-weight: bold;"&gt;difficile et coûteux de l'endiguer et de le résorber&lt;/span&gt;. Nous pouvons même autopsier ce phénomène en observant notre courbe d'historique de la non-qualité&lt;span style="font-style: italic;"&gt; (voir &lt;/span&gt;&lt;a style="font-style: italic;" href="http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html"&gt;précédant  billet dédié à cette pratique&lt;/a&gt;&lt;span style="font-style: italic;"&gt;)&lt;/span&gt;. D'ailleurs, nous utilisons cette même courbe pour détecter l'amorce du phénomène et déclencher les actions correctives.&lt;br /&gt;&lt;br /&gt;Il y a une autre raison pour laquelle il faut maintenir l'application propre. Notre build complet publie la liste de la non-qualité détectée. Plus la liste est importante et plus il est difficile pour un développeur d'y retrouver les problèmes liés à son travail. Petit à petit, ce développeur va se lasser de rechercher les défauts qui le concernent directement au milieu de pages de défauts.&lt;br /&gt;Par contre, si la liste des défauts détectés reste très faible, alors chaque développeur y retrouvera immédiatement et très visiblement sa non-qualité. Elle sera si visible que les autres équipiers pourront aussi la repérer. Alors, naturellement, chaque développeur évitera de se faire repérer comme contributeur à la non-qualité en corrigeant au plus tôt ses défauts.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;MIEUX VAUT PRÉVENIR QUE GUÉRIR&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ce phénomène me semble très naturel. S'il est n'est pas rigoureusement contenu, l'application va progressivement "pourrir". Il sera alors de plus en plus difficile de faire évoluer le logiciel. Pire, le tas des petits défauts sans conséquence va cacher les bugs dangereux.&lt;br /&gt;&lt;br /&gt;Pour palier à ce problème, je pense qu'il est primordial de développer une attitude extrémiste quant à la dégradation de l'application. Ceci est d'autant plus vrai si l'application est volumineuse, si le projet est long, si le nombre de contributeurs est important ou si l'application est critique &lt;span style="font-style: italic;"&gt;(notre projet réuni tous ces critères à la fois)&lt;/span&gt;. Il est judicieux de s'acharner à retirer tous les défauts au plus tôt pour laisser un code propre que personne ne souhaitera dégrader.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;POUR ALLER PLUS LOIN&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dans d'autres contextes, ce phénomène et l'attitude appropriée pour l'endiguer sont connus sous le nom &lt;a href="http://en.wikipedia.org/wiki/Fixing_Broken_Windows"&gt;Fixing Broken Windows&lt;/a&gt;. Ce même phénomène a été transposé au développement de logiciels par les Pragmatic Programmers dans leur article &lt;a href="http://pragprog.com/the-pragmatic-programmer/extracts/software-entropy"&gt;Software Entropy&lt;/a&gt;, dans l'entretien &lt;a href="http://www.artima.com/intv/fixit.html"&gt;Don't Live With Broken Windows&lt;/a&gt; et dans leur très bon livre &lt;a href="http://emmanuelchenu.blogspot.com/2007/09/pragmatic-programmer-by-andrew-hunt-and.html"&gt;The Pragmatic Programmer&lt;/a&gt;.&lt;br /&gt;Bonnes lectures!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4072251785811158547?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4072251785811158547/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/04/le-syndrome-de-la-decharge-publique.html#comment-form' title='5 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4072251785811158547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4072251785811158547'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/04/le-syndrome-de-la-decharge-publique.html' title='LE SYNDROME DE LA DECHARGE PUBLIQUE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/S8q3oH3FreI/AAAAAAAABiY/Nh-1jqn7CIA/s72-c/d%C3%A9chetterie.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8536384041718308819</id><published>2010-04-10T12:07:00.001-07:00</published><updated>2010-04-19T06:42:48.221-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>UN BON CODE ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/S8GXUxlOpeI/AAAAAAAABiQ/JvJAEfF8VUc/s1600/images.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 150px; height: 88px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/S8GXUxlOpeI/AAAAAAAABiQ/JvJAEfF8VUc/s400/images.jpg" alt="" id="BLOGGER_PHOTO_ID_5458810606512416226" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt; Dans l'ordre, un bon code&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;1. passe ses tests avec succès;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;2. ne peut être mal  utilisé;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;3. ne contient pas de redondance;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;4. exprime clairement l'intention;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;                                                                               5. est aussi court que possible.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Paraphrase ...&lt;/span&gt;&lt;br /&gt;A peu de choses près, les points &lt;span style="font-weight: bold;"&gt;1&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;3&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;4&lt;/span&gt; et &lt;span style="font-weight: bold;"&gt;5&lt;/span&gt; sont une  citation de &lt;/span&gt;&lt;a style="font-family: arial;" href="http://fr.wikipedia.org/wiki/Kent_Beck"&gt;Kent Beck&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, créateur de l'&lt;/span&gt;&lt;a style="font-family: arial;" href="http://fr.wikipedia.org/wiki/EXtreme_Programming"&gt;eXtreme-Programming&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; Praticien  de la &lt;/span&gt;&lt;a style="font-family: arial;" href="http://fr.wikipedia.org/wiki/Programmation_par_contrat"&gt;programmation  par contrat&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, j'y ai rajouté&lt;/span&gt; le point &lt;span style="font-weight: bold;"&gt;2&lt;/span&gt;. &lt;span style="font-style: italic;"&gt;(Qu'est-ce que je ne ferai pas pour citer les travaux de Kent Beck et &lt;/span&gt;&lt;a style="font-style: italic;" href="http://fr.wikipedia.org/wiki/Bertrand_Meyer"&gt;Bertrand Meyer&lt;/a&gt;&lt;span style="font-style: italic;"&gt; dans le même billet :o)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;... néanmoins utile&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;J'ai la chance de relire beaucoup de code, de binommer avec de nombreux développeurs et d'enseigner. Dans le cadre de ces activités, cette citation en cinq points m'est très utile. Je m'en sers beaucoup et je la cite souvent. Je dois sûrement passer pour un extrémiste dogmatique et têtu ... &lt;span style="font-style: italic;"&gt;(Après tout dans un équipe, il est bon d'atteindre un certain ratio développeur extrémiste / développeur laxiste)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;N'empêche qu'il y a beaucoup de sagesse empirique dans cette citation. Entre autre, &lt;span style="font-weight: bold;"&gt;l'ordre des critères est très important&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1. Tu testeras&lt;/span&gt;&lt;br /&gt;Les tests occupent le haut du podium. Un code qui n'est pas testé n'a pas de valeur. C'est du code sans garantie.  Toute ligne d'instruction doit être couverte par un test. Cela se vérifie très bien avec les outils d'analyse de la couverture structurelle.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2. Tu détromperas&lt;/span&gt;&lt;br /&gt;Un code qui ne peut être mal utilisé est un code détrompé. Il contribue à la gestion préventive des défauts dans l'application. La programmation par contrat est une excellente pratique pour détromper le code. Quitte à parler de programmation par contrat,  il serait plus exacte de dire: &lt;span style="font-style: italic;"&gt;"Un bon code garantie sa postcondition si sa précondition est garantie par son appelant"&lt;/span&gt;. Pour en savoir plus sur cette pratique rare mais vraiment efficace, vous pouvez &lt;a href="http://emmanuelchenu.blogspot.com/search?q=programmez+par+contrat"&gt;lire un précédant billet sur ce sujet&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3. Tu ne te répèteras pas&lt;/span&gt;&lt;br /&gt;La duplication est source de défauts multiples et de reprises multiples. Elle nuit à la clarté des intentions. Admettons que j'&lt;span style="font-style: italic;"&gt;"hérite"&lt;/span&gt; d'un code non testé. Sans hésitation, je préfère consacrer du temps à le tester qu'à en éliminer les redondances. &lt;span style="font-style: italic;"&gt;(En fait, j'éliminerai les redondances dès que les tests passeront :o)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;4. Tu seras clair et explicite &lt;/span&gt;&lt;br /&gt;Le code est bien plus souvent lu qu'écrit - y compris par son auteur! D'ailleurs, l'écrivain est avant tout son propre lecteur. Autant faciliter la vie de tous ces relecteurs. Comme pour le point précédant, je préfère tester que renommer et découper. &lt;span style="font-style: italic;"&gt;(Pareil, je renommerai et découperai dès que les tests passeront :o)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;5. Tu seras bref&lt;/span&gt;&lt;br /&gt;La brièveté du code arrive en dernier car elle peut entrer en conflit avec les points &lt;span style="font-weight: bold;"&gt;1&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;3&lt;/span&gt; et &lt;span style="font-weight: bold;"&gt;4&lt;/span&gt;.  Dans un tel cas de figure, la brièveté n'est pas prioritaire.&lt;br /&gt;Pour rendre un code testable, il faut souvent créer des interfaces pour&lt;a href="http://en.wikipedia.org/wiki/Dependency_injection"&gt; injecter des dépendances à la construction des objets&lt;/a&gt;. Cela augmente la taille du code. Le test amène également à découper en petites classes et il y a un talon déclaratif à payer pour cette modularité.&lt;br /&gt;Un code sans duplication peut amener à créer une opération pour 2 lignes dupliquées. Au total, en comptant le surcroit de déclaration, cette pratique peut augmenter le nombre de lignes. D'ailleurs, avez vous remarqué que les exemples de code remanié sont TOUJOURS plus longs que leur code d'origine? &lt;span style="font-style: italic;"&gt;(voir &lt;/span&gt;&lt;a style="font-style: italic;" href="http://emmanuelchenu.blogspot.com/2009/04/clean-code-robert-c-martin.html"&gt;Clean Code&lt;/a&gt;&lt;span style="font-style: italic;"&gt;)&lt;/span&gt;&lt;br /&gt;Pour rendre un code plus explicite, nous sommes amené à homogénéiser le niveau d'abstraction dans le code des opérations. Pour cela, nous encapsulons le code de niveau d'abstraction inférieur dans une opération. Là encore, nous payons une taxe pour la déclaration des opérations.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Et le code des tests?&lt;/span&gt;&lt;br /&gt;Ce codex en 5 règles s'applique au code, mais &lt;span style="font-weight: bold;"&gt;aussi aux tests&lt;/span&gt;, car &lt;a href="http://emmanuelchenu.blogspot.com/2009/01/les-tests-sont-du-code.html"&gt;les tests sont du code&lt;/a&gt;. On peut penser qu'il ne faut pas tester les tests sinon on n'en finit jamais. Pourtant, la pratique du &lt;a href="http://fr.wikipedia.org/wiki/Test_Driven_Development"&gt;Test Driven Developpment&lt;/a&gt; issue de l'eXtreme-Programming intègre par construction &lt;span style="font-weight: bold;"&gt;le test du test&lt;/span&gt;!&lt;br /&gt;En effet, lorsque nous &lt;span style="font-weight: bold;"&gt;commençons par écrire un test qui échoue&lt;/span&gt;, puis &lt;span style="font-weight: bold;"&gt;nous &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;modifions le code jusqu'à ce que le test passe avec succès,&lt;/span&gt; nous vérifions la justesse du test. Ce tte démarche en 2 étapes est le test du test.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Un de plus&lt;/span&gt;&lt;span style="font-style: italic;"&gt; (violation du critère 3!)&lt;/span&gt;&lt;br /&gt;Désolé, ceci était le 1379ème billet visant à définir un bon code. Plusieurs livres y consacrent leurs pages. C'est un peu comme les chaînes de chance/malchance. Lorsqu'on lit un de ces billets, on se doit d'en écrire un à son tour ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8536384041718308819?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8536384041718308819/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/04/un-bon-code.html#comment-form' title='5 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8536384041718308819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8536384041718308819'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2010/04/un-bon-code.html' title='UN BON CODE ...'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/S8GXUxlOpeI/AAAAAAAABiQ/JvJAEfF8VUc/s72-c/images.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1750908712873697947</id><published>2009-12-22T12:53:00.001-08:00</published><updated>2010-01-04T13:51:45.048-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>RESOUDRE LES PROBLEMES</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SzEx6Rav51I/AAAAAAAABf4/VrkeBvXqTOg/s1600-h/blog_problems_indic.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 297px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SzEx6Rav51I/AAAAAAAABf4/VrkeBvXqTOg/s400/blog_problems_indic.jpg" alt="" id="BLOGGER_PHOTO_ID_5418166703881185106" border="0" /&gt;&lt;/a&gt;C'est bien bien sympa de &lt;span style="font-weight: bold;"&gt;voir les problèmes&lt;/span&gt;. Ceci dit, l'objectif reste de les &lt;span style="font-weight: bold;"&gt;résoudre&lt;/span&gt;!&lt;br /&gt;&lt;br /&gt;Alors, ces problèmes identifiés et exposés à la vue de tous, &lt;span style="font-weight: bold;"&gt;sont-ils traités&lt;/span&gt;?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1. PETIT RAPPEL&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Rappelez-vous&lt;/span&gt;: l'équipe prend conscience que pour apprendre, progresser et gagner en efficacité, elle doit &lt;span style="font-weight: bold;"&gt;résoudre systématiquement les problèmes qu'elle rencontre&lt;/span&gt;.&lt;br /&gt;Alors,&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;on développe la &lt;span style="font-weight: bold;"&gt;détection &lt;/span&gt; systématique des problèmes;&lt;/li&gt;&lt;li&gt;on affiche les problèmes pour les &lt;span style="font-weight: bold;"&gt;rendre visibles&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;on &lt;span style="font-weight: bold;"&gt;résout les problèmes de manière structurée&lt;/span&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Cette attitude et cette démarche sont décrit dans un &lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;précédant billet&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2. EST-CE PRATIQU&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;É&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Afin de s'assurer que ces beaux &lt;span style="font-weight: bold;"&gt;principes &lt;/span&gt;sont devenus des &lt;span style="font-weight: bold;"&gt;pratiques&lt;/span&gt;, nous &lt;span style="font-weight: bold;"&gt;affichons &lt;/span&gt;un indicateur révélant le nombre de problèmes résolus&lt;span style="font-style: italic;"&gt; (le bas des barres)&lt;/span&gt; et le nombre de problèmes &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;non-résolus&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(le haut des barres)&lt;/span&gt;. Cet indicateur est actualisé à chaque itération &lt;span style="font-style: italic;"&gt;(voir photo ci-dessus)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3. EST-CE EFFICACE?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;C'est bien joli de mettre en place de nouvelles pratiques - encore &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;faut-il&lt;/span&gt; qu'il y ait un retour sur investissement ... Et là, il faut &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;reconnaître&lt;/span&gt; qu'il est difficile de mesurer l'impact de la résolution systématique des problèmes.&lt;br /&gt;&lt;br /&gt;Difficile n'est pas impossible: les &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;burndown-chart&lt;/span&gt; et la &lt;a href="http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html"&gt;courbe de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;non-qualité&lt;/span&gt;&lt;/a&gt; révèlent les gains en productivité et en qualité de cette démarche.&lt;br /&gt;Notamment, la  &lt;a href="http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html"&gt;courbe de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;non-qualité&lt;/span&gt;&lt;/a&gt; révèle de sévères réductions de la &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;non-qualité&lt;/span&gt; correspondant à des chantiers mis en place suite à un problème levé. Ensuite, les paliers qui suivent une chute de cette courbe montrent que l'action corrective "coup de poing" s'est efficacement transformée en pratique continue.&lt;br /&gt;Puisque le &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;burndown-chart&lt;/span&gt; ne souffre pas d'une augmentation ou d'une stagnation du "restant à faire", c'est que la résolution du problème a contribué positivement au développement.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;4. EFFET SECONDAIRE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nous avons remarqué un autre effet secondaire bénéfique de cette démarche. Il s'agit d'une très forte augmentation de la &lt;span style="font-weight: bold;"&gt;standardisation&lt;/span&gt;.&lt;br /&gt;En effet, la résolution d'un problème résulte généralement en:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;une &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_10"&gt;contre mesure&lt;/span&gt; automatisée&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;scriptée&lt;/span&gt; dans le &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;build&lt;/span&gt;, dans le commit, ...)&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;une&lt;span style="font-weight: bold;"&gt; &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_13"&gt;contre mesure&lt;/span&gt; manuelle&lt;/span&gt; décrite par une petite &lt;span style="font-weight: bold;"&gt;procédure textuelle&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;l'amélioration d'une procédure existante.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Ainsi, nous avons constaté que notre wiki s'est enrichi de beaucoup de&lt;span style="font-weight: bold;"&gt; petites procédures pragmatiques&lt;/span&gt;. Il s'agit de l'officialisation des meilleures manières de faire à ce moment pour ce projet. Cela constitue un standard léger et évolutif, partagé par les équipiers.&lt;br /&gt;&lt;br /&gt;Je pensais que la standardisation étaient une démarche formelle, lourde et ralentissant l'évolution. Je suis désormais convaincu du contraire.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1750908712873697947?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1750908712873697947/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/12/resoudre-les-problemes.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1750908712873697947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1750908712873697947'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/12/resoudre-les-problemes.html' title='RESOUDRE LES PROBLEMES'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SzEx6Rav51I/AAAAAAAABf4/VrkeBvXqTOg/s72-c/blog_problems_indic.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3243961324840081997</id><published>2009-12-19T05:44:00.000-08:00</published><updated>2009-12-19T11:31:35.337-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>VOIR LES PROBLEMES</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SyzY62z-AAI/AAAAAAAABfw/MdOCBuSDezY/s1600-h/blog_non_quality.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 295px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SyzY62z-AAI/AAAAAAAABfw/MdOCBuSDezY/s400/blog_non_quality.jpg" alt="" id="BLOGGER_PHOTO_ID_5416942957477363714" border="0" /&gt;&lt;/a&gt;&lt;span style="font-style: italic;"&gt;"Loin des yeux, loin du cœur". &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Un problème qui n'est pas visible n'est pas traité&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Sur les conseils de &lt;a href="http://www.regismedina.com/"&gt;Régis Médina&lt;/a&gt; et après avoir assisté à sa conférence présentée à l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/11/agile-tour-2009-valence-cest-fini.html"&gt;Agile Tour à Valence&lt;/a&gt;, nous cherchons depuis quelques itérations à &lt;span style="font-weight: bold;"&gt;rendre nos problèmes visibles&lt;/span&gt; pour ne pas les laisser trainer. Pour cela, nous avons mis en place &lt;span style="font-weight: bold;"&gt;2 pratiques&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1. VOIR LES DÉFAUTS DU PROCESSUS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La première, déjà évoquée à l'occasion d'un &lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;billet sur la résolution systématique des problèmes&lt;/a&gt; consiste à &lt;span style="font-weight: bold;"&gt;afficher sur un tableau dédié les problèmes&lt;/span&gt; rencontrés par l'équipe (&lt;a href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SqPSWpXeg-I/AAAAAAAABaI/pic710fTjyE/s1600-h/problemSolving.jpg"&gt;voir photo&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2. VOIR LES DÉFAUTS DU PRODUIT&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La deuxième consiste à &lt;span style="font-weight: bold;"&gt;identifier, mesurer et afficher quotidiennement et automatiquement la non-qualité&lt;/span&gt; du produit. Il s'agit de la somme de tout ce qui est à corriger pour atteindre le niveau de qualité que nous recherchons pour notre produit&lt;span style="font-style: italic;"&gt; (et nous sommes TRÈS exigeants)&lt;/span&gt;.&lt;br /&gt;Ainsi, nous sommons&lt;br /&gt;&lt;ul&gt;&lt;li&gt;le nombre de &lt;span style="font-weight: bold;"&gt;warnings de compilation du code et des tests&lt;/span&gt;,&lt;br /&gt;&lt;/li&gt;&lt;li&gt;le &lt;span&gt;n&lt;/span&gt;&lt;span&gt;ombre d'&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;opérations qui dépassent un seuil de complexité&lt;/span&gt;,&lt;br /&gt;&lt;/li&gt;&lt;li&gt;le &lt;span&gt;nombre de &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;classes non couvertes à 100% par des tests automatisés&lt;/span&gt;,&lt;br /&gt;&lt;/li&gt;&lt;li&gt;le &lt;span&gt;nombre de &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;classes qui ne respectent pas les standards de codage&lt;/span&gt; ...&lt;/li&gt;&lt;/ul&gt;L'historique de cette métrique enrichie une courbe qui est affichée quotidiennement à l'endroit le l'open space où il y a le plus de passage, juste à côté des burndown charts.&lt;br /&gt;&lt;br /&gt;Depuis que nous avons décidé de rendre visibles ces problèmes, nous nous sommes mis de &lt;span style="font-weight: bold;"&gt;manière disciplinée et continue à réduire cette non-qualité&lt;/span&gt;, comme le révèle la courbe affichée.&lt;br /&gt;&lt;br /&gt;Dès que la courbe se stabilise à un niveau acceptable de non-qualité &lt;span style="font-style: italic;"&gt;(correspondant à un minimum de travail en cours)&lt;/span&gt; nous enrichissons cet indicateur d'une nouvelle classe de défauts. Vous verrez un tel saut commenté à la main sur la courbe affichée. Ainsi, nous relevons notre niveau d'exigence de manière maitrisée.&lt;br /&gt;&lt;br /&gt;Nous ne nous intéressons pas à la valeur de la métrique mais plutôt à la &lt;span style="font-weight: bold;"&gt;pente de la courbe&lt;/span&gt;. En effet, elle révèle très clairement si l'équipe s'améliore ou se relâche.&lt;br /&gt;&lt;br /&gt;Il est très intéressant d'afficher cette &lt;span style="font-weight: bold;"&gt;courbe de non-qualité&lt;/span&gt; à côté des &lt;span style="font-weight: bold;"&gt;burndown charts.&lt;/span&gt; En effet, on constate souvent que l&lt;span style="font-weight: bold;"&gt;'amélioration de la productivité&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(visible sur un burndown chart)&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;se fait au détriment de la qualité&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(visible sur la courbe de non-qualité).&lt;/span&gt; L'&lt;span style="font-weight: bold;"&gt;affichage quotidien et côte à côte de ces 2 courbes&lt;/span&gt; permet de visualiser que nous ne jouons pas aux vases communicants. Mieux, nous arrivons même à corréler que &lt;span style="font-weight: bold;"&gt;travailler mieux permet de travailler plus vite&lt;/span&gt;!&lt;br /&gt;&lt;br /&gt;Enfin, nous avons aussi &lt;span style="font-weight: bold;"&gt;valorisé &lt;/span&gt;cette mesure de la non-qualité du produit. A chaque catégorie de défaut identifié nous avons associé une valeur: il s'agit du temps théorique requis pour corriger un défaut de cette catégorie. Ainsi, nous mesurons le temps estimé nécessaire pour obtenir un produit  de la qualité recherchée.&lt;br /&gt;&lt;br /&gt;Avec la &lt;span style="font-weight: bold;"&gt;mesure quotidienne et combinée&lt;/span&gt; du &lt;span style="font-weight: bold;"&gt;restant à faire&lt;/span&gt; et de la &lt;span style="font-weight: bold;"&gt;non-qualité du produit&lt;/span&gt;, nous avons des &lt;span style="font-weight: bold;"&gt;outils objectifs, pertinents et complémentaires&lt;/span&gt; pour piloter notre développement.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3243961324840081997?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3243961324840081997/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html#comment-form' title='5 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3243961324840081997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3243961324840081997'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html' title='VOIR LES PROBLEMES'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SyzY62z-AAI/AAAAAAAABfw/MdOCBuSDezY/s72-c/blog_non_quality.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5292132577002647203</id><published>2009-11-14T06:00:00.000-08:00</published><updated>2009-11-16T05:31:15.849-08:00</updated><title type='text'>RECRUTE EQUIPIER</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sv65bD40dqI/AAAAAAAABes/TevLcg7RW34/s1600-h/equipier.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 290px; height: 267px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sv65bD40dqI/AAAAAAAABes/TevLcg7RW34/s400/equipier.jpg" alt="" id="BLOGGER_PHOTO_ID_5403960477442406050" border="0"&gt;&lt;/a&gt;Nous&lt;span style="font-weight: bold;"&gt; cherchons un équipier&lt;/span&gt; pour un &lt;span style="font-weight: bold;"&gt;CDD d'un an&lt;/span&gt;. Si vous êtes mobile pour venir sur &lt;span style="font-weight: bold;"&gt;Valence &lt;/span&gt;et que vous souhaitez intégrer un &lt;span style="font-weight: bold;"&gt;grand projet&lt;/span&gt; industriel, cette opportunité pourrait vous intéresser.&lt;br /&gt;&lt;br /&gt;Sincèrement, je pense que notre projet est une &lt;span style="font-weight: bold;"&gt;bonne école du génie logiciel&lt;/span&gt;. Nous exigeons un niveau de &lt;span style="font-weight: bold;"&gt;qualité maximal&lt;/span&gt;, convaincus que &lt;span style="font-weight: bold;"&gt;bien développer le bon produit permet de développer plus vite&lt;/span&gt;. Nous pratiquons l'&lt;span style="font-weight: bold;"&gt;eXtreme-Programming&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Scrum&lt;/span&gt;, le &lt;span style="font-weight: bold;"&gt;Lean&lt;/span&gt;, la démarche &lt;span style="font-weight: bold;"&gt;orientée objet&lt;/span&gt; et la &lt;span style="font-weight: bold;"&gt;programmation par contrat&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Si vous êtes tentés par  cette &lt;span style="font-weight: bold;"&gt;aventure enrichissante techniquement et humainement&lt;/span&gt;, l'&lt;a href="http://www.jd.apec.fr/offres-emploi-cadres/0_5_4_17747519_______1_offre-d-emploi-developpeur-logiciel-embarque-temps-reel-critique-h-f.html"&gt;offre est accessible via l'APEC ici&lt;/a&gt;. Si vous voulez en savoir plus sur notre équipe, &lt;a href="http://www.agilex.fr/2009/07/lean-engineering-chez-thales/"&gt;on en parle sur d'autres blogs, tels celui d'Alexandre Boutin&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;A bientôt?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5292132577002647203?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5292132577002647203/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/11/recrute-equipier.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5292132577002647203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5292132577002647203'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/11/recrute-equipier.html' title='RECRUTE EQUIPIER'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sv65bD40dqI/AAAAAAAABes/TevLcg7RW34/s72-c/equipier.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7787414777513538393</id><published>2009-11-10T14:12:00.001-08:00</published><updated>2009-12-19T06:26:47.283-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='My Bookshelf'/><title type='text'>THE TOYOTA WAY, JEFFREY K. LIKER</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/Svxy2OSomeI/AAAAAAAABec/2ceD5iUro8k/s1600-h/the_toyota_way.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 240px; height: 240px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/Svxy2OSomeI/AAAAAAAABec/2ceD5iUro8k/s400/the_toyota_way.jpg" alt="" id="BLOGGER_PHOTO_ID_5403319928812509666" border="0" /&gt;&lt;/a&gt;Après avoir lu plusieurs livres sur le &lt;span style="font-weight: bold;"&gt;Lean appliqué au développement logiciel&lt;/span&gt;, tels &lt;a href="http://emmanuelchenu.blogspot.com/2008/05/lean-software-strategies-peter-middletn.html"&gt;Lean Software Strategies&lt;/a&gt;, &lt;a href="http://emmanuelchenu.blogspot.com/2007/08/implementing-lean-software-developement_19.html"&gt;Implementing Lean Software Development&lt;/a&gt; et &lt;a href="http://emmanuelchenu.blogspot.com/2007/07/lean-sowtware-development-by-mary-and.html"&gt;Lean Software Development&lt;/a&gt;, j'ai eu besoin de pousser plus loin ma compréhension de cette philosophie pour aider à sa pratique sur notre projet.&lt;br /&gt;En insistant que le Lean s'apprenait par la pratique avec un mentor praticien et non dans les livres, &lt;a href="http://www.regismedina.com/"&gt;Régis Médina&lt;/a&gt; m'a tout de même conseillé la lecture de &lt;span style="font-weight: bold;"&gt;The Toyota Way&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Le &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way"&gt;Toyota Way&lt;/a&gt; est la &lt;span style="font-weight: bold;"&gt;philosophie de gestion&lt;/span&gt; pratiquée par Toyota. Elle est structurée en &lt;span style="font-weight: bold;"&gt;4 parties&lt;/span&gt;: la &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_I_.E2.80.93_Philosophie_.C3.A0_long_terme"&gt;philosophie à long terme&lt;/a&gt;, le &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_II_.E2.80.93_Le_bon_processus_produira_les_bons_r.C3.A9sultats"&gt;processus&lt;/a&gt;,  &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_III_.E2.80.93_Contribuer_.C3.A0_la_valeur_de_l.27organisation_en_d.C3.A9veloppant_ses_employ.C3.A9s"&gt;collaborateurs et partenaires&lt;/a&gt; et la &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_IV_.E2.80.93_R.C3.A9soudre_sans_cesse_les_probl.C3.A8mes_sous-jacents_conduit_.C3.A0_apprendre"&gt;résolution des problèmes&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="display: block; text-align: justify;" class="vertbar"&gt;&lt;span style="display: block;" class="w"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt; Nos années de pratique de l'&lt;span style="font-weight: bold;"&gt;eXtreme Programming&lt;/span&gt;, de &lt;span style="font-weight: bold;"&gt;Scrum &lt;/span&gt;et du &lt;span style="font-weight: bold;"&gt;Lean Software Development&lt;/span&gt; nous ont conduit à mettre l'accent sur l'aspect &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_II_.E2.80.93_Le_bon_processus_produira_les_bons_r.C3.A9sultats"&gt;processus&lt;/a&gt; du Lean. Notre pratique s'appuie essentiellement sur les nombreux outils du Lean, tels le flux continu, le kanban, le jidoka, les andon, le heijunka, le management visuel, etc. Le &lt;a href="http://www.regismedina.com/blog/2009/10/from-agile-to-lean"&gt;dernier billet de Régis Médina&lt;/a&gt; révèle que nous ne représentons pas un cas isolé.&lt;br /&gt;&lt;br /&gt;La lecture du Toyota Way nous a permis de comprendre que nous avions - non pas négligé - mais plutôt sous-estimé - les 3 autres facettes:  la &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_I_.E2.80.93_Philosophie_.C3.A0_long_terme"&gt;philosophie à long terme&lt;/a&gt;, les &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_III_.E2.80.93_Contribuer_.C3.A0_la_valeur_de_l.27organisation_en_d.C3.A9veloppant_ses_employ.C3.A9s"&gt;collaborateurs et les partenaires&lt;/a&gt; et la &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Section_IV_.E2.80.93_R.C3.A9soudre_sans_cesse_les_probl.C3.A8mes_sous-jacents_conduit_.C3.A0_apprendre"&gt;résolution des problèmes&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;En réaction, nous sommes actuellement en train de travailler sur la &lt;span style="font-weight: bold;"&gt;résolution des problèmes&lt;/span&gt;. Sur ce thème, nous travaillons actuellement sur plusieurs axes en parallèle:&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Rendre visibles les problèmes&lt;/span&gt; de l'équipe &lt;span&gt;(&lt;a href="http://emmanuelchenu.blogspot.com/2009/12/rendre-les-problemes-visibles.html"&gt;voir billet&lt;/a&gt;)&lt;/span&gt;;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Mettre en place une &lt;span style="font-weight: bold;"&gt;résolution systématique et structurée des problèmes&lt;/span&gt; &lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;(voir billet)&lt;/a&gt; ;&lt;/li&gt;&lt;li&gt;Animer régulièrement des&lt;span style="font-weight: bold;"&gt; chantiers d'amélioration&lt;/span&gt; de type &lt;a href="http://fr.wikipedia.org/wiki/Kaizen"&gt;Kaizen&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(billet à venir!)&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Avec des praticiens qui enseignent le métier, &lt;span style="font-weight: bold;"&gt;pratiquer un leadership de terrain&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(billet à venir!)&lt;/span&gt;.&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;A bientôt pour les billets annoncés!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7787414777513538393?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7787414777513538393/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/11/toyota-way-jeffry-k-liker.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7787414777513538393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7787414777513538393'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/11/toyota-way-jeffry-k-liker.html' title='THE TOYOTA WAY, JEFFREY K. LIKER'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/Svxy2OSomeI/AAAAAAAABec/2ceD5iUro8k/s72-c/the_toyota_way.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6724358405697896964</id><published>2009-11-09T12:59:00.000-08:00</published><updated>2009-11-12T23:40:04.001-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Conférence'/><title type='text'>AGILE TOUR 2009 VALENCE - C'EST FINI!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/Sv0NRK0SHvI/AAAAAAAABek/IRAeBMpqOnU/s1600-h/agiletour.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 317px; height: 240px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/Sv0NRK0SHvI/AAAAAAAABek/IRAeBMpqOnU/s400/agiletour.jpg" alt="" id="BLOGGER_PHOTO_ID_5403489716527046386" border="0" /&gt;&lt;/a&gt;Cette année, pour l'édition 2009 de l'&lt;a href="http://www.agiletour.org/"&gt;&lt;span style="font-weight: bold;"&gt;Agile Tour&lt;/span&gt;&lt;/a&gt; à Valence, nous avons reçu &lt;span style="font-weight: bold;"&gt;150 participants&lt;/span&gt; représentant un peu plus de &lt;span style="font-weight: bold;"&gt;40 organisations&lt;/span&gt;. Grâce aux intervenants et aux sponsors, nous avons accueilli plus de monde que &lt;a href="http://emmanuelchenu.blogspot.com/2008/11/agile-tour-valence-2008-synthese.html"&gt;l'année dernière&lt;/a&gt; autour du thème du développement agile.&lt;br /&gt;Quelques blogueurs parlent de l'évènement, tout comme:&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;a href="http://www.ehsavoie.com/2009/10/agile-tour-2009-cest-fini-enfin-pour.html"&gt;Emmanuel Hugonnet&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.agilex.fr/2009/10/feedback-immediat"&gt;Alexandre Boutin&lt;/a&gt; et&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.open-do.org/2009/10/27/agile-tour-2009"&gt;Florian Villoing&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Les &lt;a href="http://clubagile.org/evenements/conferences-2009"&gt;présentations sont consultables en ligne sur le site du CARA&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;En assistant à des conférences, on ramène toujours au moins une &lt;span style="font-weight: bold;"&gt;piste à explorer&lt;/span&gt;. Cette année, notre équipe à déjà commencé à mettre en pratique plusieurs idées recoltées à l'Agile Tour Valence:&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Rendre visibles les problèmes de l'équipe&lt;/span&gt;. Je consacrerai un billet à ce seul sujet.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Valoriser la dette technique&lt;/span&gt;: de manière automatisée, la partie visible de la dette technique du projet est mesurée, puis estimée en heures de correction.&lt;/li&gt;&lt;li&gt;Nos pratiques de résolution systématique des problèmes et d'amélioration continue n'ont pas toujours un impact visible sur nos indicateurs d'avancement &lt;span style="font-style: italic;"&gt;(burndown et vélocité)&lt;/span&gt;. Une explication consiste à conclure que ces pratiques sont inefficaces. Une autre explication consiste à supposer que notre panel d'indicateurs est inapproprié pour détecter l'effet de ces améliorations. Nous avons alors &lt;span style="font-weight: bold;"&gt;complété nos indicateurs de pilotages par 2 métriques révélant l'efficacité de nos pratiques d'amélioration continue&lt;/span&gt;. Je consacrerai également un billet à ce seul sujet.&lt;/li&gt;&lt;/ul&gt;A bientôt pour le détail de nos nouvelles pratiques.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6724358405697896964?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6724358405697896964/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/11/agile-tour-2009-valence-cest-fini.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6724358405697896964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6724358405697896964'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/11/agile-tour-2009-valence-cest-fini.html' title='AGILE TOUR 2009 VALENCE - C&apos;EST FINI!'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/Sv0NRK0SHvI/AAAAAAAABek/IRAeBMpqOnU/s72-c/agiletour.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6327717565347802354</id><published>2009-10-08T11:59:00.000-07:00</published><updated>2009-10-08T12:12:28.244-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Conférence'/><title type='text'>PROGRAMME DE L'AGILE TOUR 2009 VALENCE</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/Ss43X4PEqjI/AAAAAAAABeU/eii6NhaRk6c/s1600-h/agiletour_Valence_2009_Programme.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 290px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/Ss43X4PEqjI/AAAAAAAABeU/eii6NhaRk6c/s400/agiletour_Valence_2009_Programme.jpg" alt="" id="BLOGGER_PHOTO_ID_5390306687381187122" border="0" /&gt;&lt;/a&gt;Voici en avant première le programme l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/09/venez-lagile-tour-valence.html"&gt;étape de Valence de l'Agile Tour 2009&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Cette année, Valence accueillera &lt;span style="font-weight: bold;"&gt;14 orateurs&lt;/span&gt; qui animeront &lt;span style="font-weight: bold;"&gt;12 sessions&lt;/span&gt;  dans &lt;span style="font-weight: bold;"&gt;4 salles&lt;/span&gt;. Cela représente &lt;span style="font-weight: bold;"&gt;16 heures&lt;/span&gt; d'interventions dont &lt;span style="font-weight: bold;"&gt;50% d'ateliers&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Cette année, 6 heures de sessions seront consacrées au &lt;span style="font-weight: bold;"&gt;Lean&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Les sessions sont organisées pour offrir 4 heures de sessions aux participants selon 3 profils type:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;novice en agilité;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;manager / décideur / chef de projet;&lt;/li&gt;&lt;li&gt;développeur praticien.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Pour participer, l'inscription est gratuite et obligatoire. Venez nombreux &lt;a href="http://www.agiletour.org/fr/at2009_valence_inscription.html"&gt;en vous inscrivant ici&lt;/a&gt;.&lt;br /&gt;A très bientôt!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6327717565347802354?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6327717565347802354/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/10/programme-de-lagile-tour-2009-valence.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6327717565347802354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6327717565347802354'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/10/programme-de-lagile-tour-2009-valence.html' title='PROGRAMME DE L&apos;AGILE TOUR 2009 VALENCE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/Ss43X4PEqjI/AAAAAAAABeU/eii6NhaRk6c/s72-c/agiletour_Valence_2009_Programme.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7419470677249698677</id><published>2009-09-17T12:49:00.001-07:00</published><updated>2009-09-17T13:24:12.779-07:00</updated><title type='text'>VENEZ A L'AGILE TOUR A VALENCE</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SrKS5mOi1KI/AAAAAAAABaY/7qpJE_t_hP0/s1600-h/affiche_valence_at2009_v6.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 283px; height: 400px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SrKS5mOi1KI/AAAAAAAABaY/7qpJE_t_hP0/s400/affiche_valence_at2009_v6.png" alt="" id="BLOGGER_PHOTO_ID_5382526022872913058" border="0" /&gt;&lt;/a&gt;Venez nombreux à &lt;span style="font-weight: bold;"&gt;Valence &lt;/span&gt;assister aux &lt;span style="font-weight: bold;"&gt;conférences&lt;/span&gt; et participer aux &lt;span style="font-weight: bold;"&gt;ateliers &lt;/span&gt;de l'&lt;a href="http://www.agiletour.org/"&gt;&lt;span style="font-weight: bold;"&gt;Agile Tour 2009&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;L'évènement aura lieu le &lt;span style="font-weight: bold;"&gt;Jeudi 22 Octobre 2009&lt;/span&gt; dans les locaux de l'&lt;a href="http://www.iut-valence.fr/index-pole.html"&gt;&lt;span style="font-weight: bold;"&gt;IUT de Valence&lt;/span&gt;&lt;/a&gt;, de &lt;span style="font-weight: bold;"&gt;13h à 18h&lt;/span&gt;.&lt;br /&gt;Comme l'&lt;a href="http://emmanuelchenu.blogspot.com/2008/11/agile-tour-valence-2008-synthese.html"&gt;année précédente&lt;/a&gt;, l'évènement est &lt;span style="font-weight: bold;"&gt;gratuit&lt;/span&gt; et sera suivi d'un apéritif.&lt;br /&gt;&lt;br /&gt;Cet évènement est la &lt;span style="font-weight: bold;"&gt;deuxième édition&lt;/span&gt; de la conférence itinérante sur les&lt;span style="font-weight: bold;"&gt; &lt;a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_agile"&gt;méthodes&lt;/a&gt;&lt;/span&gt;&lt;a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_agile"&gt;&lt;span style="font-weight: bold;"&gt; Agiles&lt;/span&gt;&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(&lt;a href="http://fr.wikipedia.org/wiki/Extreme_programming"&gt;eXtremeProgramming&lt;/a&gt;, &lt;a href="http://fr.wikipedia.org/wiki/Scrum"&gt;Scrum&lt;/a&gt;, &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;Lean&lt;/a&gt; ...)&lt;/span&gt;. En 2008, l'évènement a rassemblé à Valence &lt;span style="font-weight: bold;"&gt;120 participants, professionnels, enseignants et étudiants &lt;/span&gt;représentant les principaux industriels, sociétés de services en informatique et écoles de la région.&lt;br /&gt;&lt;br /&gt;En particulier cette année, si vous êtes intéressés par le &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;Lean&lt;/a&gt;, l'&lt;a href="http://fr.wikipedia.org/wiki/Extreme_programming"&gt;eXtreme Programming&lt;/a&gt;, le &lt;a href="http://fr.wikipedia.org/wiki/TDD"&gt;pilotage par les tests&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(TDD)&lt;/span&gt;, la contractualisation des forfaits agiles, le management agile ou le CMMi, venez nous rejoindre le Jeudi  22 Octobre après-midi.&lt;br /&gt;&lt;br /&gt;Pour faciliter l'organisation, l'inscription est obligatoire en &lt;a href="http://www.agiletour.org/fr/at2009_valence_inscription.html"&gt;remplissant le formulaire ici&lt;/a&gt;. Pour toute question, n'hésitez pas à &lt;a href="mailto:contact-valence@agiletour.org"&gt;nous contacter par mail&lt;/a&gt;.&lt;br /&gt;A très bientôt!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7419470677249698677?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7419470677249698677/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/09/venez-lagile-tour-valence.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7419470677249698677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7419470677249698677'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/09/venez-lagile-tour-valence.html' title='VENEZ A L&apos;AGILE TOUR A VALENCE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SrKS5mOi1KI/AAAAAAAABaY/7qpJE_t_hP0/s72-c/affiche_valence_at2009_v6.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6586281746431404532</id><published>2009-09-07T11:43:00.000-07:00</published><updated>2009-09-14T00:41:44.965-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>LEAN, LA CULTURE</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/Sq1HiM-EAVI/AAAAAAAABaQ/k_LSWBbJBiI/s1600-h/racinesTop.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 305px; height: 400px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/Sq1HiM-EAVI/AAAAAAAABaQ/k_LSWBbJBiI/s400/racinesTop.jpg" alt="" id="BLOGGER_PHOTO_ID_5381035782700269906" border="0" /&gt;&lt;/a&gt;A travers 5 billets, nous avons balayé un jeu de &lt;span style="font-weight: bold;"&gt;pratiques de développement logiciel&lt;/span&gt; permettant d'implémenter les 5 piliers du &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Lean&lt;/span&gt;&lt;/a&gt;:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;définition de la valeur&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;cartographie du flux de création de valeur&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;le &lt;a href="http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html"&gt;flux continu de création de valeur&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;le &lt;a href="http://emmanuelchenu.blogspot.com/2009/07/lean-le-flux-tire-de-creation-de-valeur.html"&gt;flux tiré de création de valeur&lt;/a&gt; et &lt;/li&gt;&lt;li&gt;le &lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;perfectionnement&lt;/a&gt;. &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;A travers d'autres billets nous avons vu encore d'autres pratiques toujours relatives au &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Lean&lt;/span&gt;&lt;/a&gt; contribuant:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;au &lt;a href="http://emmanuelchenu.blogspot.com/2009/08/lean-andon.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;jidoka&lt;/span&gt;&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;au &lt;a href="http://emmanuelchenu.blogspot.com/2007/08/stop-line.html"&gt;Stop &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;The&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Line&lt;/span&gt;&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;au &lt;a href="http://emmanuelchenu.blogspot.com/2008/10/programmez-par-contrat.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;poka-yoke&lt;/span&gt;&lt;/a&gt; et&lt;/li&gt;&lt;li&gt;aux &lt;a href="http://emmanuelchenu.blogspot.com/2009/08/lean-et-5s.html"&gt;5S&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Une &lt;span style="font-weight: bold;"&gt;pratique quotidienne&lt;/span&gt; de ces outils et une &lt;span style="font-weight: bold;"&gt;attitude d'amélioration continue de tous les les jours&lt;/span&gt; ne suffit malheureusement pas pour devenir une &lt;span style="font-weight: bold;"&gt;organisation &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Lean&lt;/span&gt;&lt;/span&gt;. Au mieux, cela développe des îlots &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Lean&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Attention, c'est déjà beaucoup! Mais &lt;span style="font-weight: bold;"&gt;il est possible d'aller beaucoup plus loin &lt;/span&gt;si on relie ces îlots, si on leur donne du sens et si on assure une continuité par une &lt;span style="font-weight: bold;"&gt;culture d'entreprise appropriée&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Pour assurer la &lt;span style="font-weight: bold;"&gt;continuité &lt;/span&gt;des pratiques et réellement promouvoir l'amélioration &lt;span style="font-weight: bold;"&gt;continue&lt;/span&gt;, il faut une culture d'entreprise qui exige &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Principe_1"&gt;&lt;span style="font-weight: bold;"&gt;la prise de décision en se basant sur des objectifs à long terme&lt;/span&gt;&lt;/a&gt;. Le pilotage au jour le jour et au gré des tempêtes ne donne pas le temps de  progresser par la pratique.&lt;br /&gt;&lt;br /&gt;Pour donner du sens à ces pratiques et pour justifier leur adoption, il faut une &lt;span style="font-weight: bold;"&gt;culture d'entreprise connue des équipes&lt;/span&gt;. &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Principe_10"&gt;Les pratiques et l'attitude qui va avec sont d'autant plus facilement adoptées si les équipes comprennent en quoi cela sert leurs clients, leur entreprise et leur développement personnel&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Pour qu'une telle culture d'entreprise soit connue des équipes, il faut &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;qu&lt;/span&gt;'&lt;span style="font-weight: bold;"&gt;elle soit enseignée&lt;/span&gt;. Il est de la responsabilité des managers d'être des &lt;span style="font-weight: bold;"&gt;leaders &lt;/span&gt;qui &lt;span style="font-weight: bold;"&gt;pratiquent &lt;/span&gt;et &lt;span style="font-weight: bold;"&gt;enseignent &lt;/span&gt;la culture à leurs équipes. Pour cela, ces leaders doivent &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Principe_12"&gt;être sur le terrain, connaître le métier&lt;/a&gt; et &lt;a href="http://fr.wikipedia.org/wiki/The_Toyota_Way#Principe_9"&gt;enseigner le métier par l'exemple en se référant à la culture d'entreprise qui justifie la manière de le pratiquer&lt;/a&gt;. Dans une telle dynamique, les leaders deviennent des &lt;span style="font-weight: bold;"&gt;praticiens de la &lt;a href="http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html"&gt;résolution systématique des problèmes&lt;/a&gt;&lt;/span&gt; pour &lt;span style="font-weight: bold;"&gt;aider &lt;/span&gt;leurs équipes à devenir plus productives et les &lt;span style="font-weight: bold;"&gt;aider &lt;/span&gt;à tenir leurs objectifs.&lt;br /&gt;&lt;br /&gt;Alors, avec des pratiques solidement enracinées dans une culture d'entreprise, elle-même enseignée par des leaders praticiens, il devient envisageable de relier les îlots Lean pour développer une &lt;span style="font-weight: bold;"&gt;organisation Lean&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ET MAINTENANT?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Au boulot!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6586281746431404532?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6586281746431404532/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/09/lean-la-culture.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6586281746431404532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6586281746431404532'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/09/lean-la-culture.html' title='LEAN, LA CULTURE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/Sq1HiM-EAVI/AAAAAAAABaQ/k_LSWBbJBiI/s72-c/racinesTop.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2061994000302311783</id><published>2009-09-05T07:11:00.000-07:00</published><updated>2009-11-12T13:03:36.270-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>LEAN, LA PERFECTION</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SqPSWpXeg-I/AAAAAAAABaI/pic710fTjyE/s1600-h/problemSolving.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 275px; height: 317px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SqPSWpXeg-I/AAAAAAAABaI/pic710fTjyE/s400/problemSolving.jpg" alt="" id="BLOGGER_PHOTO_ID_5378373666513781730" border="0" /&gt;&lt;/a&gt;Après la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;définition de la valeur&lt;/a&gt;, la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;cartographie du flux de création de valeur&lt;/a&gt;, le&lt;a href="http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html"&gt; flux continu de création de valeur&lt;/a&gt;, et le &lt;a href="http://emmanuelchenu.blogspot.com/2009/07/lean-le-flux-tire-de-creation-de-valeur.html"&gt;flux tiré de création de valeur&lt;/a&gt;, le dernier pilier du &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Lean&lt;/span&gt; &lt;/a&gt;est la &lt;span style="font-weight: bold;"&gt;perfection&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DE QUOI S'AGIT&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;-IL&lt;/span&gt;?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Il s'agit de l'&lt;span style="font-weight: bold;"&gt;amélioration continue&lt;/span&gt; des pratiques de travail par la &lt;span style="font-weight: bold;"&gt;résolution systématique des problèmes.&lt;/span&gt;&lt;br /&gt;Utiliser le mot &lt;span style="font-weight: bold;"&gt;perfection &lt;/span&gt;pour nommer ce dernier pilier est maladroit. En effet, la perfection n'est jamais atteinte et il est toujours possible d'améliorer. Plutôt que perfection, il vaudrait peut être mieux parler de &lt;span style="font-weight: bold;"&gt;perfectionnement&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;QUELLES PRATIQUES?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Je trouve qu'il s'agit du principe le plus difficile à transformer en pratiques de travail. La lecture de &lt;a href="http://www.amazon.fr/gp/product/0071392319/ref=s9_simz_gw_s0_p14_i1?pf_rd_m=A1X6FK5RDHNB96&amp;amp;pf_rd_s=center-1&amp;amp;pf_rd_r=0GC9EDTTF70Q5BZ198VD&amp;amp;pf_rd_t=101&amp;amp;pf_rd_p=463375513&amp;amp;pf_rd_i=405320"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;The&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Toyota&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Way&lt;/span&gt;&lt;/a&gt; m'a fait réaliser que j'avais largement sous estimé &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;l'implémentation&lt;/span&gt; de ce principe. Voici où nous en sommes:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Les rétrospectives&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Chaque itération d'un mois se termine par une réunion en équipe complète appelée &lt;span style="font-weight: bold;"&gt;rétrospective&lt;/span&gt;.  En se basant sur des métriques, des faits marquants et des impressions, les équipiers identifient les principaux problèmes rencontrées dans l'itération et cherchent des &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_6"&gt;contre mesures&lt;/span&gt; à expérimenter dans la prochaine itération pour les résoudre. Ce travail périodique permet de &lt;span style="font-weight: bold;"&gt;régulièrement prendre du recul&lt;/span&gt; sur notre manière de travailler pour &lt;span style="font-weight: bold;"&gt;s'améliorer&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Notre pratique de la rétrospective d'itération &lt;span style="font-weight: bold;"&gt;contribue au perfectionnement des pratiques de travail&lt;/span&gt;, mais je ne pense pas qu'elle suffise. En effet, les problèmes identifiés tout au long de l'itération attendent la rétrospective pour être sérieusement évoqués en équipe. Ainsi, en attendant la rétrospective, l'équipe aura contourné ces problèmes en perdant en efficacité. Pire, certains des problèmes identifiés tôt dans l'itération auront empiré en attendant la rétrospective en fin d'itération. Les &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_7"&gt;contre mesures&lt;/span&gt; demanderont alors plus d'effort. Pire encore, certains problèmes ne sont même pas traités en rétrospective car l'équipe fatigue en fin d'itération &lt;span style="font-style: italic;"&gt;(ne me parlez pas de rythme soutenable)&lt;/span&gt; ou certains problèmes semblent trop petits pour être traités à 20 équipiers. Dans ce cas, on ne peut réellement parler d'amélioration &lt;span style="font-weight: bold;"&gt;continue&lt;/span&gt;. Nous cherchons donc à compléter la rétrospective d'itération par une autre pratique, plus régulière.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;La résolution systématique des problèmes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La lecture de  &lt;a href="http://www.amazon.fr/gp/product/0071392319/ref=s9_simz_gw_s0_p14_i1?pf_rd_m=A1X6FK5RDHNB96&amp;amp;pf_rd_s=center-1&amp;amp;pf_rd_r=0GC9EDTTF70Q5BZ198VD&amp;amp;pf_rd_t=101&amp;amp;pf_rd_p=463375513&amp;amp;pf_rd_i=405320"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;The&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Toyota&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Way&lt;/span&gt;&lt;/a&gt;  nous a conduit à expérimenter une approche systématique et structurée de résolution de problème. Nous parions que cette démarche nous permettra d'optimiser nos pratiques au quotidien et en continue en résolvant les problèmes de manière systématique dès qu'ils sont identifiés.&lt;br /&gt;Nous sommes actuellement en train de construire notre pratique de travail. Pour le moment, les équipiers rédigent une fiche dès qu'ils identifient un problème. Cette fiche datée synthétise:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;la &lt;span style="font-weight: bold;"&gt;description &lt;/span&gt;du problème constaté;&lt;/li&gt;&lt;li&gt;le résultat de la recherche de la &lt;span style="font-weight: bold;"&gt;cause racine&lt;/span&gt; du problème;&lt;/li&gt;&lt;li&gt;autant de cycles &lt;a href="http://fr.wikipedia.org/wiki/Roue_de_Deming"&gt;Plan, Do, Check, Act&lt;/a&gt; qu'il en faut pour faire disparaitre ce problème et l'empêcher de se présenter à nouveau.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Lorsqu'un problème est résolu par cette approche structurée, sa fiche cartonnée est conservée car elle sera réutilisée et enrichie si jamais le problème revient malgré les contre mesures mis en place. Certaines fiches ressortiront plusieurs fois et &lt;span style="font-weight: bold;"&gt;révèleront les problèmes récurrents&lt;/span&gt;.&lt;br /&gt;Puisque le &lt;span style="font-weight: bold;"&gt;management visuel &lt;/span&gt;sert à ne pas cacher les problèmes, les fiches cartonnées sont affichées sur un tableau baptisé "Problem Solving" &lt;span style="font-style: italic;"&gt;(voir photo)&lt;/span&gt;. Ainsi, n'importe quel équipier peut présenter les problèmes actuels à un manager.&lt;br /&gt;En quelque sorte, cette pratique est au défaut de processus ce que le &lt;a href="http://emmanuelchenu.blogspot.com/2007/08/stop-line.html"&gt;Stop The Line&lt;/a&gt; est au défaut de produit.&lt;br /&gt;&lt;br /&gt;Cette démarche présente de nombreux avantages:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;elle contribue à entretenir une &lt;span style="font-weight: bold;"&gt;amélioration continue&lt;/span&gt; des pratiques de travail;&lt;/li&gt;&lt;li&gt;elle contribue à créer un &lt;span style="font-weight: bold;"&gt;état d'esprit&lt;/span&gt; où les équipiers identifient les problèmes et arrêtent leur travail en cours pour les résoudre afin d'optimiser la création de valeur;&lt;/li&gt;&lt;li&gt;elle donne des &lt;span style="font-weight: bold;"&gt;faits &lt;/span&gt;pour comprendre les difficultés rencontrées par l'équipe;&lt;/li&gt;&lt;li&gt;elle rend &lt;span style="font-weight: bold;"&gt;visibles &lt;/span&gt;les problèmes de l'équipe;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;elle permet d'&lt;span style="font-weight: bold;"&gt;identifier les problèmes récurrents &lt;/span&gt;dont la résolution est stratégique pour la réussite du projet;&lt;/li&gt;&lt;li&gt;&lt;span&gt;elle &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;implique les managers&lt;/span&gt; de manière constructive dans le travail de l'équipe puisque la résolution de certains problèmes est hors de portée de celle-ci;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;elle aide l'équipe à devenir une &lt;span style="font-weight: bold;"&gt;organisation qui apprend à mieux travailler&lt;/span&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Cette pratique est aussi&lt;span style="font-weight: bold;"&gt; très difficile à mettre en place&lt;/span&gt;. En effet, il faut développer l'état d'esprit de l'identification et de la résolution systématique de problèmes chez les équipiers (&lt;span style="font-style: italic;"&gt;à commencer par soi-même!)&lt;/span&gt;. Il s'agit d'une &lt;span style="font-weight: bold;"&gt;attention de tous les jours&lt;/span&gt;. Il faut aussi et surtout convaincre les managers qu'il est important d'arrêter le travail en cours pour résoudre les problèmes qui freinent la productivité ou réduisent la qualité. Cela peut s'avérer très difficile si les décisions n'ont pas l'habitude d'être prises en &lt;span style="font-weight: bold;"&gt;se basant sur des objectifs à long terme&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ET MAINTENANT?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cette petite série de billets sur notre implémentation des 5 piliers du Lean est désormais close. Néanmoins, la pratique quotidienne des outils présentés dans ces 5 billets m'amène à en rédiger bientôt un 6ème. Il sera dédié à un atout qui me semble primordial pour devenir une organisation Lean: la &lt;span style="font-weight: bold;"&gt;culture d'entreprise&lt;/span&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2061994000302311783?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2061994000302311783/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2061994000302311783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2061994000302311783'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/09/lean-la-perfection.html' title='LEAN, LA PERFECTION'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SqPSWpXeg-I/AAAAAAAABaI/pic710fTjyE/s72-c/problemSolving.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4064823172599421867</id><published>2009-08-25T13:51:00.000-07:00</published><updated>2009-09-01T23:29:15.001-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>LEAN ET 5S</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sp4QgOR0jHI/AAAAAAAABZo/PBpf7wZOXv0/s1600-h/Kanban_5S.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 117px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sp4QgOR0jHI/AAAAAAAABZo/PBpf7wZOXv0/s400/Kanban_5S.jpg" alt="" id="BLOGGER_PHOTO_ID_5376753150901652594" border="0" /&gt;&lt;/a&gt;Nous sommes nombreux dans l'équipe. Suffisamment pour nous être organisé en &lt;span style="font-weight: bold;"&gt;plusieurs &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;sous-équipes&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, chacune avec son tableau "&lt;a href="http://fr.wikipedia.org/wiki/Kanban"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;kanban&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;" et son &lt;a href="http://en.wikipedia.org/wiki/Stand-up_meeting"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Daily&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Stand-Up&lt;/span&gt;&lt;/span&gt; Meeting&lt;/a&gt;.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Avec la croissance des l'équipe et la multiplication des &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;sous-équipes&lt;/span&gt;&lt;/span&gt;, il est alors devenu difficile d'assister au &lt;a href="http://en.wikipedia.org/wiki/Stand-up_meeting"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Daily&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Stand-Up&lt;/span&gt;&lt;/span&gt; Meeting&lt;/a&gt;  d'une &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;sous-équipe&lt;/span&gt;&lt;/span&gt;. &lt;span style="font-weight: bold;"&gt;Où et quand a lieu la réunion de telle ou telle &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;sous-équipe&lt;/span&gt;&lt;/span&gt;?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nous avons résolu ce petit problème de la manière suivante. Sachant que chaque &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;sous-équipe&lt;/span&gt;&lt;/span&gt; mène son  &lt;a href="http://en.wikipedia.org/wiki/Stand-up_meeting"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;Daily&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Stand-Up&lt;/span&gt;&lt;/span&gt; Meeting&lt;/a&gt; devant son tableau "&lt;a href="http://fr.wikipedia.org/wiki/Kanban"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;kanban&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;", nous avons étiqueté chacun d'eux.&lt;br /&gt;Sur chaque tableau, des étiquettes &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;indiquent&lt;/span&gt; le &lt;span style="font-weight: bold;"&gt;nom de la sous équipe&lt;/span&gt;, l'&lt;span style="font-weight: bold;"&gt;horaire &lt;/span&gt;de son &lt;a href="http://en.wikipedia.org/wiki/Stand-up_meeting"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;Daily&lt;/span&gt;&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;Stand-Up&lt;/span&gt;&lt;/span&gt; Meeting&lt;/a&gt; et les prénoms des &lt;span style="font-weight: bold;"&gt;équipiers &lt;/span&gt;devant &lt;span style="font-weight: bold;"&gt;intervenir &lt;/span&gt;lors de cette réunion.&lt;br /&gt;&lt;br /&gt;Cette petite solution toute simple rentre parfaitement dans le cadre de la pratique des &lt;a href="http://fr.wikipedia.org/wiki/5S"&gt;5S&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4064823172599421867?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4064823172599421867/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/08/lean-et-5s.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4064823172599421867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4064823172599421867'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/08/lean-et-5s.html' title='LEAN ET 5S'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sp4QgOR0jHI/AAAAAAAABZo/PBpf7wZOXv0/s72-c/Kanban_5S.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4863248314581483870</id><published>2009-08-25T13:11:00.000-07:00</published><updated>2010-04-19T06:48:04.531-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>INTEGRATION CONTINUE + ANDON = JIDOKA</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Spo4qcgvQRI/AAAAAAAABZQ/PhOkcX5BTGg/s1600-h/andon.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 163px; height: 200px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Spo4qcgvQRI/AAAAAAAABZQ/PhOkcX5BTGg/s200/andon.jpg" alt="" id="BLOGGER_PHOTO_ID_5375671407079276818" border="0" /&gt;&lt;/a&gt;Nous avons configuré notre outil d'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt; pour qu'il envoie un mail d'alerte à chaque équipier lorsqu'un &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;build&lt;/span&gt; automatisé &lt;/span&gt;&lt;span style="font-style: italic;"&gt;(compilation et tests)&lt;/span&gt; échoue. Notre &lt;span style="font-weight: bold;"&gt;priorité est alors de revenir au plus tôt à une situation nominale &lt;/span&gt;caractérisée par un &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;build&lt;/span&gt; réussi.&lt;br /&gt;&lt;br /&gt;Mais voilà, notre attention n'est pas concentrée sur notre messagerie. Nous avons beau être nombreux dans l'équipe, certains &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;builds&lt;/span&gt; échoués restent non détectés plusieurs heures. Il arrive également qu'un &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;build&lt;/span&gt; échoué soit détecté, mais qu'il ne soit pas corrigé dans l'heure. Alors les équipiers s'inquiètent car ils ne sont pas certains que quelqu'un soit en train de résoudre le problème.&lt;br /&gt;&lt;br /&gt;De sa propre initiative, l'équipe a décidé de se mettre la pression. Elle a réfléchi à la solution la plus simple pour mettre en place un &lt;a href="http://fr.wikipedia.org/wiki/Andon_%28gestion%29"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;andon&lt;/span&gt;&lt;/a&gt;. Il s'agit d'un signal lumineux visible de tous qui signale une anomalie.&lt;br /&gt;&lt;br /&gt;Un équipier a alors acheté un &lt;a href="http://www.i-buddy.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;i-buddy&lt;/span&gt;&lt;/a&gt; pour le poste d'intégration continue. Lorsque le &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;build&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;incrémental&lt;/span&gt; &lt;/span&gt;et le &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;build&lt;/span&gt; complet&lt;/span&gt; sont tous deux réussis, la tête de l' &lt;a href="http://www.i-buddy.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;i-buddy&lt;/span&gt;&lt;/a&gt; est &lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;verte&lt;/span&gt;. Si un de ces deux &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;builds&lt;/span&gt; échoue, la tête de l' &lt;a href="http://www.i-buddy.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;i-buddy&lt;/span&gt;&lt;/a&gt; est &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;rouge&lt;/span&gt;. Lorsqu'un build échoué est en réparation, le tête de l'i-buddy est &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;bleue&lt;/span&gt;.&lt;br /&gt;La loupiote est posée sur l'écran du poste d'intégration continue. Une &lt;span style="font-weight: bold;"&gt;légende explicative&lt;/span&gt; attachée à l'i-buddy rend l'interprétation de son signal lumineux &lt;span style="font-weight: bold;"&gt;évidente pour tous&lt;/span&gt; (application du &lt;a style="font-style: italic;" href="http://fr.wikipedia.org/wiki/5S"&gt;5S&lt;/a&gt;&lt;span style="font-style: italic;"&gt;) &lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Cette petite initiative a plusieurs avantages:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;un signal lumineux visible de tous &lt;span style="font-weight: bold;"&gt;signale clairement les problèmes de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;build&lt;/span&gt;&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;le signal lumineux &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;rouge&lt;/span&gt;, visible de tous, &lt;span style="font-weight: bold;"&gt;motive les équipiers à rapidement corriger&lt;/span&gt; le problème détecté;&lt;/li&gt;&lt;li&gt;le signae lumineux &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;bleu &lt;/span&gt;rassure l'équipe sur le fait que des équipiers se chargent du problème détecté;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;c'est une petite pratique sympa dont l'équipe est &lt;span style="font-weight: bold;"&gt;fière. &lt;/span&gt;&lt;span&gt;Elle &lt;/span&gt;soude ses membres en contribuant à son folklore.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Bref, &lt;span style="font-weight: bold;"&gt;intégration continue + &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;i-buddy&lt;/span&gt; = &lt;/span&gt;&lt;a style="font-weight: bold;" href="http://fr.wikipedia.org/wiki/Jidoka"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;jidoka&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PS: Il est de bon ton se caser quelques mots en japonais comme &lt;a href="http://fr.wikipedia.org/wiki/Andon_%28gestion%29"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;andon&lt;/span&gt;&lt;/a&gt; et  &lt;a href="http://fr.wikipedia.org/wiki/Jidoka"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;jidoka&lt;/span&gt;&lt;/a&gt; dans son billet ;o)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4863248314581483870?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4863248314581483870/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/08/lean-andon.html#comment-form' title='6 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4863248314581483870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4863248314581483870'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/08/lean-andon.html' title='INTEGRATION CONTINUE + ANDON = JIDOKA'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Spo4qcgvQRI/AAAAAAAABZQ/PhOkcX5BTGg/s72-c/andon.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-653043032288404121</id><published>2009-07-30T01:25:00.000-07:00</published><updated>2009-08-19T12:45:25.379-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>LEAN, LE FLUX TIRE DE CREATION DE VALEUR</title><content type='html'>&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SnFbaMTrPsI/AAAAAAAABYY/jyzpz0-4oYw/s1600-h/billet_lean_pull.jpg"&gt;&lt;img style="margin: 0px 10px 10px 0px; text-align: justify; width: 200px; float: left; height: 129px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5364169136713449154" alt="" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SnFbaMTrPsI/AAAAAAAABYY/jyzpz0-4oYw/s200/billet_lean_pull.jpg" border="0" /&gt;&lt;/a&gt; &lt;div  style="text-align: justify;font-family:arial;"&gt;Après les billets sur une pratique de la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;valeur&lt;/a&gt;, de la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;cartographie du flux de création de valeur&lt;/a&gt;, du &lt;a href="http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html"&gt;flux continu de création de valeur&lt;/a&gt;, voici la suite qui porte sur le &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;flux tiré de création de valeur&lt;/span&gt; &lt;span style="font-style: italic;" class="Apple-style-span"&gt;(ou "pull")&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div  style="text-align: justify;font-family:arial;"&gt;Alors que le flux continu de création de valeur est en place, il s'agit désormais de laisser le client tirer la création de valeur selon son besoin.&lt;/div&gt;&lt;br /&gt;&lt;div  style="text-align: justify;font-family:arial;"&gt;A ce jour, nous pratiquons le &lt;span style="font-weight: bold;"&gt;flux tiré de création de valeur&lt;/span&gt; à &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;3 niveaux&lt;/span&gt;.&lt;/div&gt;&lt;div  style="text-align: justify;font-family:arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div  style="text-align: justify;font-family:arial;"&gt;&lt;span style="font-weight: bold;" class="Apple-style-span"&gt;DÉVELOPPEMENT TIRE PAR PRIORITÉ&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;D'abord, au plus près du client final, les exigences à implémenter sont priorisées par le &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Product Owner&lt;/span&gt; dans le &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Product Backlog&lt;/span&gt;. La succession des itérations tire les exigences par ordre de priorité hors du &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Product Backlog&lt;/span&gt; pour les transformer en logiciel opérationnel. Ainsi, en accordant une priorité à ses exigences et en laissant l'équipe de développement mener un développement itératif et incrémental piloté par les priorités, le client final est en fait en train de tirer le développement de son produit.&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;Nous pouvons affirmer que le développement itératif et incrémental piloté par les priorités du client final est en fait un système "pull" pour le développement de produit.&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;&lt;span style="font-weight: bold;" class="Apple-style-span"&gt;IMPLÉMENTATION TIRÉE PAR KANBAN&lt;/span&gt;&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;A un niveau plus bas, lorsqu'une itération tire une exigence prioritaire hors du &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Product Backlog&lt;/span&gt; pour l'implémenter, toutes les activités à mener pour la transformer en logiciel opérationnel sont identifiées par la &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;Value Stream Map&lt;/a&gt; et tirées par un &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Kanban&lt;/span&gt;. Une étiquette du &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Kanban&lt;/span&gt; représente une exigence à implémenter. Les colonnes du &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Kanban&lt;/span&gt; sont les activités sérialisées de la &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Value Stream Map&lt;/span&gt;. Les cases à cocher dessinées sur les étiquettes sont les activités parallèlisées de la &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Value Stream Map&lt;/span&gt;. La traversée du &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Kanban&lt;/span&gt; par les étiquettes existantes est prioritaire à l'entrée de nouvelles étiquettes sur le &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Kanban&lt;/span&gt;. Le &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Kanban&lt;/span&gt; est actualisé une fois par jour, en équipe et en temps limité, lors du &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Daily Stand-Up Meeting&lt;/span&gt;. &lt;span style="font-style: italic;"&gt;(&lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.dailymotion.com/video/x9pv7w_le-lean-engineering-chez-thales_tech"&gt;voir la pratique en vidéo&lt;/a&gt;&lt;span style="font-style: italic;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div face="arial" style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;span style="font-weight: bold;" class="Apple-style-span"&gt;CODAGE TIRE PAR TEST&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;A un niveau encore plus bas, la pratique des tests de recette et des tests développeur conformément au développement piloté par les tests &lt;span style="font-style: italic;" class="Apple-style-span"&gt;(ou TDD)&lt;/span&gt; est un système "pull" pour l'activité de codage. En effet, des tests qui échouent sont implémentés en premier lieu. Puis, juste assez de codage est tiré pour faire passer ces tests avec succès. Nous pouvons afirmer que le &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Développement Piloté par les Tests&lt;/span&gt; &lt;span style="font-style: italic;" class="Apple-style-span"&gt;(ou TDD)&lt;/span&gt; est en fait un système "pull" pour l'activité de codage.&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;Ainsi, le &lt;span style="font-weight: bold;"&gt;flux tiré de création de valeur&lt;/span&gt; est pratiqué à plusieurs niveaux. Cette manière d'organiser la chronologie des développements et des activités évite les gaspillages de la surproduction, des défauts cachés dans l'inventaire et du développement d'exigences non prioritaires.&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify; font-family: arial;"&gt;Le prochain billet consacré au Lean portera sur la recherche de la &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;Perfection&lt;/span&gt;. Nous aurons alors survolé une certaine implémentation des &lt;span style="font-weight: bold;" class="Apple-style-span"&gt;5 piliers du Lean&lt;/span&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-653043032288404121?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/653043032288404121/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/07/lean-le-flux-tire-de-creation-de-valeur.html#comment-form' title='4 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/653043032288404121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/653043032288404121'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/07/lean-le-flux-tire-de-creation-de-valeur.html' title='LEAN, LE FLUX TIRE DE CREATION DE VALEUR'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SnFbaMTrPsI/AAAAAAAABYY/jyzpz0-4oYw/s72-c/billet_lean_pull.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7063347987263053035</id><published>2009-06-23T13:09:00.001-07:00</published><updated>2009-07-15T07:46:39.515-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>AGILITE AU SALON DU BOURGET</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sl3rKgrvBHI/AAAAAAAABXg/JOJbLm6fQLk/s1600-h/avion.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 219px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sl3rKgrvBHI/AAAAAAAABXg/JOJbLm6fQLk/s400/avion.jpg" alt="" id="BLOGGER_PHOTO_ID_5358697697445348466" border="0" /&gt;&lt;/a&gt;Nous avons eu la chance d'être invités au &lt;span style="font-weight: bold;"&gt;Salon du Bourget&lt;/span&gt;. Nous avons eu le plaisir d'y voir deux porteurs pour lesquels nous avons développé des &lt;span style="font-weight: bold;"&gt;logiciels de vol&lt;/span&gt; en appliquant les &lt;a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_agile"&gt;méthodes agiles&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Ces deux logiciels ont été livrés à temps et avec la qualité attendue. Très discrètement et pour certains initiés, les &lt;a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_agile"&gt;méthodes agiles&lt;/a&gt; étaient à l'honneur au Salon du Bourget!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7063347987263053035?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7063347987263053035/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/agilite-au-salon-du-bourget.html#comment-form' title='5 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7063347987263053035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7063347987263053035'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/agilite-au-salon-du-bourget.html' title='AGILITE AU SALON DU BOURGET'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sl3rKgrvBHI/AAAAAAAABXg/JOJbLm6fQLk/s72-c/avion.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3551245220641738124</id><published>2009-06-10T05:12:00.000-07:00</published><updated>2009-07-15T09:10:29.837-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Critique'/><title type='text'>AGILITE ET SURETE DE FONCTIONNEMENT</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/Sl3_bFkQ4FI/AAAAAAAABYQ/fhIclsdPLeo/s1600-h/avion2.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 186px; height: 200px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/Sl3_bFkQ4FI/AAAAAAAABYQ/fhIclsdPLeo/s200/avion2.png" alt="" id="BLOGGER_PHOTO_ID_5358719972456587346" border="0" /&gt;&lt;/a&gt;Voici une &lt;a href="http://www.adacore.com/2009/06/01/a350/"&gt;annonce citant l'utilisation des &lt;span style="font-weight: bold;"&gt;démarches agiles&lt;/span&gt; pour le&lt;span style="font-weight: bold;"&gt; développement d'applications critiques&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Pour comprendre pourquoi ce rapprochement est pertinent, lisez les billets suivants: &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-critique_13.html"&gt;EXTREME PROGRAMMING EMBARQUE&lt;/a&gt; et &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/de-linteret-des-tests-de-recette.html"&gt;MOINS CHERS ET PLUS SURS&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3551245220641738124?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3551245220641738124/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/agilite-et-surete-de-fonctionnement.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3551245220641738124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3551245220641738124'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/agilite-et-surete-de-fonctionnement.html' title='AGILITE ET SURETE DE FONCTIONNEMENT'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/Sl3_bFkQ4FI/AAAAAAAABYQ/fhIclsdPLeo/s72-c/avion2.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-365208377322160408</id><published>2009-06-06T01:08:00.000-07:00</published><updated>2009-06-08T10:25:41.479-07:00</updated><title type='text'>DOSSIER AGILE DANS [PRO]GRAMMEZ</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SiokOpsWRmI/AAAAAAAABR0/4Zd2bGxXvgA/s1600-h/PROgrammez.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 231px; height: 314px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SiokOpsWRmI/AAAAAAAABR0/4Zd2bGxXvgA/s400/PROgrammez.jpg" alt="" id="BLOGGER_PHOTO_ID_5344123741957146210" border="0" /&gt;&lt;/a&gt;Disponible en kiosque, le &lt;a href="http://www.programmez.com/magazine_articles.php?titre=Le-developpeur-devient-AGILE&amp;amp;id_article=1232&amp;amp;magazine=120"&gt;numéro 120 du magazine PROgrammez&lt;/a&gt; propose un dossier sur le développement logiciel Agile. Le journal y consacre une introduction et 7 articles, le tout couvrant 15 pages&lt;span style="font-style: italic;"&gt; (sur 82)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Voici la table des matières du dossier:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Développeur AGILE. Pour retrouver le goût du développement.&lt;/span&gt;&lt;span style="font-style: italic;"&gt; (introduction du dossier)&lt;/span&gt;&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;Les méthodes agiles pour mieux développer.&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;eXtreme Programming: les fondamentaux du développeur agile.&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;La journée d'un développeur agile.&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;Standardiser la résolution de problèmes dans une équipe agile.&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;L'agilité , une révolution culturelle.&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;Vendre SCRUM à une équipe en cycle V.&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;Adopter me mode agile en début d'un projet ou en cours de route.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;J'ai tout particulièrement apprécié la contribution de &lt;a href="http://www.pyxis-tech.com/fr/lequipe/#rpierquin"&gt;Raphaël Pierquin&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(eXtreme Programming: les fondamentaux du développeur agile)&lt;/span&gt;. Son propos est dynamique, bien vulgarisé et pédagogique. Je suis sûr que son article donne envie de s'y mettre! De plus, je trouve qu'il a le bon goût de mettre l'accent sur les &lt;span style="font-weight: bold;"&gt;pratiques techniques&lt;/span&gt;. Sans son article, le dossier aurait été bancal, traitant essentiellement de la &lt;a href="http://emmanuelchenu.blogspot.com/2009/04/partie-visible-et-partie-invisible.html"&gt;partie visible et organisationnelle de l'agilité&lt;/a&gt;. C'est d'ailleurs un choix étonnant pour le magazine &lt;a href="http://www.programmez.com/magazine.php"&gt;PROgrammez&lt;/a&gt; dont la cible est pourtant le programmeur.&lt;br /&gt;&lt;br /&gt;Je trouve que le dossier contient quelques maladresses, donnant trop d'importance à mon goût aux outils et aux fameuses "usines logicielles". On lit aussi un étonnant énoncé des différences entre Scrum et les autres méthodes agiles. Étant donné les arguments choisis, je pense que cela révèle simplement un manque de connaissance et de pratique d'XP. Personnellement, je ne vois pas ce que Scrum apporte par rapport à XP &lt;span style="font-weight: bold;"&gt;sur le fond&lt;/span&gt;. Pour moi, l'apport est &lt;span style="font-weight: bold;"&gt;sur &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;la forme&lt;/span&gt; avec une plus claire formalisation des rôles, artefacts et cérémonies. J'ai aussi été surpris de voir &lt;a href="http://fr.wikipedia.org/wiki/Unified_Process"&gt;UP&lt;/a&gt; catalogué parmi les démarches agiles. Ceci dit, on doit pouvoir se conformer aux valeurs et principes du &lt;a href="http://agilemanifesto.org/"&gt;Manifeste Agile&lt;/a&gt; avec un processus UP bien adapté.&lt;br /&gt;&lt;br /&gt;Accessoirement, j'ai aussi été agréablement surpris de reconnaitre un Sprint Burndown Chart de notre projet à la Figure 4 de la page 28. Après tout, si les photos sont en ligne, c'est bien pour qu'elles servent!&lt;br /&gt;&lt;br /&gt;Bref, à part quelques critiques mineures, j'ai apprécié l'initiative et la lecture de ce dossier. Aussi, j'en déduis qu'on prend les pratiques techniques très au sérieux chez &lt;a href="http://www.pyxis-tech.com/fr/"&gt;Pyxis&lt;/a&gt;. Je ne suis pas étonné.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-365208377322160408?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/365208377322160408/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/dossier-agile-dans-programmez.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/365208377322160408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/365208377322160408'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/dossier-agile-dans-programmez.html' title='DOSSIER AGILE DANS [PRO]GRAMMEZ'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SiokOpsWRmI/AAAAAAAABR0/4Zd2bGxXvgA/s72-c/PROgrammez.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2381892605580094733</id><published>2009-06-03T11:49:00.000-07:00</published><updated>2009-06-05T10:54:40.575-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>LEAN, LE FLUX CONTINU DE VALEUR</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sigh0eP1pqI/AAAAAAAABRs/xYWN2Wj7Fwg/s1600-h/autoroute.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 258px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sigh0eP1pqI/AAAAAAAABRs/xYWN2Wj7Fwg/s400/autoroute.jpg" alt="" id="BLOGGER_PHOTO_ID_5343558143231501986" border="0" /&gt;&lt;/a&gt;Voici le 3ème billet consacré au développement logiciel &lt;a href="http://fr.wikipedia.org/wiki/Lean"&gt;&lt;span style="font-weight: bold;"&gt;Lean&lt;/span&gt;&lt;/a&gt;. Après &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;un premier billet dédié à la valeur&lt;/a&gt; et &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;un deuxième traitant la cartographie du flux de valeur&lt;/a&gt;, celui-ci décortique&lt;span style="font-weight: bold;"&gt; le flot continu de valeur&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DE QUOI S'AGIT T-IL?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Il s'agit d'enchainer toutes &lt;span style="font-weight: bold;"&gt;les étapes créatrices de valeur&lt;/span&gt; en un &lt;span style="font-weight: bold;"&gt;flux continu et rapide&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;ALIMENTONS LE FLUX!&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;En s'inspirant des réseaux informatiques et des autoroutes, nous réduisons la taille des lots de travail pour alimenter un flux continu. Dans cette optique, nous avons adopté le rythme mensuel de &lt;a href="http://fr.wikipedia.org/wiki/Scrum"&gt;Scrum&lt;/a&gt;, le &lt;a href="http://fr.wikipedia.org/wiki/Scrum#Sprints"&gt;Sprint&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Chaque &lt;a href="http://fr.wikipedia.org/wiki/Scrum#Sprints"&gt;Sprint&lt;/a&gt; est une itération qui produit un incrément potentiellement livrable de produit. Un tel développement itératif et incrémental en cycles courts et réguliers alimente un flux continu de travail.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;Aussi, nous alimentons un flux continu d'information au sein de l'équipe en partageant tous un même espace de travail. Nous utilisons le contrôle visuel pour révéler les problèmes. En effet, notre espace de travail est décoré de &lt;a href="http://fr.wikipedia.org/wiki/Kanban"&gt;&lt;span style="font-weight: bold;"&gt;Kanbans&lt;/span&gt;&lt;/a&gt; qui identifient les goulets d'étranglement, de &lt;a href="http://fr.wikipedia.org/wiki/Scrum#Burndown_Charts"&gt;&lt;span style="font-weight: bold;"&gt;Burndown Charts&lt;/span&gt;&lt;/a&gt; qui mesurent l'avancement et de &lt;span style="font-weight: bold;"&gt;Blocking Boards&lt;/span&gt; qui exposent les problèmes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ensuite, le flux continu est maintenu en éliminant les problèmes qui le ralentissent.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;MANITENONS LE FLUX!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les &lt;span style="font-weight: bold;"&gt;désynchronisations &lt;/span&gt;ralentissent le flux de travail. Les développeurs consacrent du temps à synchroniser le produit avec leurs modifications&lt;span style="font-style: italic;"&gt; (intégrer)&lt;/span&gt; et à synchroniser les activités des équipiers&lt;span style="font-style: italic;"&gt; (s'organiser)&lt;/span&gt;. Ces deux sources de désynchronisations sont minimisées par deux pratiques agiles. D'abord, l'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt; alimente un flux régulier de logiciel testé, intégré et potentiellement livrable. Ensuite, la courte réunion quotidienne d'avancement maintient un travail d'équipe synchronisé. Par de petites et régulières synchronisations, ces deux pratiques éliminent les lourds efforts de synchronisation. Ainsi, le produit et l'équipe se désynchronisent aussi peu que possible.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les &lt;span style="font-weight: bold;"&gt;bugs &lt;/span&gt;ralentissent le flux de travail. Nous gaspillons du temps à corriger des bugs que nous avons injectés dans notre produit. Afin de minimiser l'impact des défauts sur la cadence, nous avons adopté une attitude préventive envers les bugs. Le &lt;a href="http://fr.wikipedia.org/wiki/Test_Driven_Development"&gt;développement piloté par les tests&lt;/a&gt; permet de prévenir les défauts. Les tests étant écrits avant le code à tester, ils empêchent l'introduction des défauts &lt;/span&gt;&lt;span style="font-family:arial;"&gt;à priori &lt;/span&gt;&lt;span style="font-family:arial;"&gt;au lieu de les détecter à postériori comme c'est le cas lors de phases de tests. De même, &lt;a href="http://fr.wikipedia.org/wiki/Pair_programming"&gt;la programmation en binôme&lt;/a&gt; évite l'introduction des défauts à priori car le code est relu avant d'être livré. Aussi,&lt;a href="http://fr.wikipedia.org/wiki/Programmation_par_contrat"&gt; la programmation par contrat&lt;/a&gt; permet d'écrire du code détrompé puisqu'il est impossible d'utiliser le code autrement que conformément à ses préconditions. Enfin, les modifications de code ne peuvent être livrées vers la référence du code que si les tests passent avec succès.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Malheureusement, malgré ces pratiques, des bugs parviennent tout de même à s'infiltrer dans le produit. Alors, pour conserver un flux régulier de travail fini, nous pratiquons le &lt;span style="font-weight: bold;"&gt;Stop The Line&lt;/span&gt;. La détection des défauts est automatisée et elle entraine l'arrêt du travail. La priorité de l'équipe est alors de corriger le défaut détecté. Dans cette optique, notre outil d'&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt; construit l'application et joue les tests dès qu'une modification est détectée dans la référence du code. Si la compilation ou les tests échouent, une alerte est automatiquement envoyée par mail à tous les équipiers. Notre priorité est alors de réparer le produit. Le build automatisé, les tests et les assertions dans le code sont les détecteurs de défauts. Cette pratique créé une culture de travail où les équipiers s'arrêtent pour corriger les problèmes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;EN BREF&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Notre développement itératif et incrémental en cycles courts et notre pratique de l'intégration continue alimente un flux régulier de travail. Ce flux régulier et rapide expose des problèmes. Le flux est alors maintenu en s'arrêtant pour corriger les problèmes exposés.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Un quatrième billet sur le Lean sera consacré au &lt;span style="font-weight: bold;"&gt;flux tiré de valeur&lt;/span&gt;. A bientôt!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2381892605580094733?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2381892605580094733/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2381892605580094733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2381892605580094733'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/06/lean-le-flux-continu-de-valeur.html' title='LEAN, LE FLUX CONTINU DE VALEUR'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sigh0eP1pqI/AAAAAAAABRs/xYWN2Wj7Fwg/s72-c/autoroute.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2398726987386765026</id><published>2009-05-20T08:23:00.000-07:00</published><updated>2009-07-15T07:53:47.820-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>2 ANTIPATTERNS DE BINOMMAGE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/Sl3tctlA3fI/AAAAAAAABX4/EAd5gLlLa9E/s1600-h/binome.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 282px; height: 243px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/Sl3tctlA3fI/AAAAAAAABX4/EAd5gLlLa9E/s400/binome.jpg" alt="" id="BLOGGER_PHOTO_ID_5358700209167719922" border="0" /&gt;&lt;/a&gt;Nous pratiquons le &lt;a href="http://fr.wikipedia.org/wiki/Programmation_en_bin%C3%B4me"&gt;Pair Programming&lt;/a&gt;. Pas 100% du temps, mais le plus possible.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Nous pilotons nos activités avec un &lt;a href="http://fr.wikipedia.org/wiki/Kanban"&gt;Kanban&lt;/a&gt;. Chaque étiquette du Kanban est un post-it sur un tableau. Chaque post-it représente une tâche à mener. Sur ces post-it, nous nommons les équipiers qui participent à sa réalisation.&lt;br /&gt;&lt;br /&gt;En surveillant la liste des équipiers sur les post-it, nous avons pu identifier 2 &lt;a href="http://fr.wikipedia.org/wiki/Antipattern"&gt;antipatterns&lt;/a&gt; de Pair Programming. Il en existe bien plus, mais ceux là nous amusent bien.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;A + B - B,  ou le &lt;span style="font-style: italic;"&gt;"Ca pue, je me casse"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nico est le premier assigné à une tâche. ManU vient binommer avec Nico. Après quelques heures, ManU trouve une tâche plus prioritaire à mener. En fait, après avoir vu ce sur quoi travaillait Nico, ManU s'est mis en tête de trouver une tâche plus prioritaire. Il s'agit d'une manière &lt;span style="font-style: italic;"&gt;agilement correcte&lt;/span&gt; de dire &lt;span style="font-style: italic;"&gt;"Ta tâche pue, je me casse!"&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;A + B - A,  ou le &lt;span style="font-style: italic;"&gt;"Je te délègue ma bouse"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ManU est le premier assigné à une tâche. Nico vient binommer avec ManU. Après quelques heures, ManU trouve une tâche plus prioritaire à mener. Il s'agit d'une manière &lt;span style="font-style: italic;"&gt;agilement correcte&lt;/span&gt; de dire &lt;span style="font-style: italic;"&gt;"Je te délègue ma bouse!"&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Les patterns sont un langage de travail&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Désormais, dans notre open space, nous entendons des développeurs se dire: "&lt;span style="font-style: italic;"&gt;Mais, tu ne serais pas en train d'essayer de me faire un A + B - A?&lt;/span&gt;".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Pas très agile tout ça&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Certains extrémistes s'évertueront à dénoncer qu'il s'agit de manquements aux valeurs, principes et pratiques de l'&lt;a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_agile"&gt;agilité&lt;/a&gt;. C'est vrai, mais parfois nous sommes aussi des hommes. Et puis on se marre bien dans l'équipe ;o)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2398726987386765026?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2398726987386765026/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/05/2-antipatterns-de-binommage.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2398726987386765026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2398726987386765026'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/05/2-antipatterns-de-binommage.html' title='2 ANTIPATTERNS DE BINOMMAGE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/Sl3tctlA3fI/AAAAAAAABX4/EAd5gLlLa9E/s72-c/binome.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4491873326773675390</id><published>2009-05-18T12:28:00.000-07:00</published><updated>2010-04-19T06:49:43.142-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Conférence'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>AGILITY AND LEAN FOR AVIONICS, EN VIDEO</title><content type='html'>&lt;div style="text-align: justify;"&gt;Voici la vidéo de ma conférence donnée chez &lt;a href="http://www.adacore.com/"&gt;AdaCore &lt;/a&gt;à l'occasion de l'évènement &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/cetait-ose-de-croiser-trois-domaines.html"&gt;The Lean, Agile Approach To High-Integrity Software&lt;/a&gt;. La vidéo est en quatre parties.&lt;br /&gt;&lt;br /&gt;Partie 1 sur 4:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/HU-lsPQKy88&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/HU-lsPQKy88&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Partie 2 sur 4:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/M3Rvy4ud_kg&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/M3Rvy4ud_kg&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Partie 3 sur 4:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Erk5XSBAR-w&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/Erk5XSBAR-w&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Partie 4 sur 4:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/BJIN3gWNHzQ&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/BJIN3gWNHzQ&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Les &lt;span style="font-weight: bold;"&gt;slides &lt;/span&gt;de la présentation sont&lt;a href="http://manu40k.free.fr/AgilityAndLeanForAvionicsSlides1.pdf"&gt; disponibles ici&lt;/a&gt; et l'&lt;span style="font-weight: bold;"&gt;article&lt;/span&gt; ayant servi à préparer la conférence est &lt;a href="http://manu40k.free.fr/AgilityAndLeanForAvionics1.pdf"&gt;consultable ici&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Les &lt;span style="font-weight: bold;"&gt;vidéos &lt;/span&gt;ont initialement été mis en ligne sur le &lt;a href="http://www.open-do.org/2009/05/07/avionics-agility-and-lean/"&gt;site OPEN-DO&lt;/a&gt;. Vous y trouverez les vidéos des autres présentations de l'évènement.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4491873326773675390?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4491873326773675390/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/05/agility-and-lean-for-avionics-en-video.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4491873326773675390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4491873326773675390'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/05/agility-and-lean-for-avionics-en-video.html' title='AGILITY AND LEAN FOR AVIONICS, EN VIDEO'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5077382650240070175</id><published>2009-05-16T03:40:00.000-07:00</published><updated>2009-05-16T03:44:25.610-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LA CHUTE</title><content type='html'>J'aime bien quand on rit de l'agilité. C'est agréable de ne pas se prendre au sérieux. L'analogie n'est pas heureuse, mais j'ai adoré ce détournement. Le son est obligatoire même s'il n'apporte aucune information. &lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/l1wKO3rID9g&amp;amp;hl=fr&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/l1wKO3rID9g&amp;amp;hl=fr&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5077382650240070175?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5077382650240070175/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/05/la-chute.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5077382650240070175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5077382650240070175'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/05/la-chute.html' title='LA CHUTE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5664582449307091454</id><published>2009-04-25T06:09:00.000-07:00</published><updated>2009-04-27T11:27:13.957-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>L'INTÉGRATION CONTINUE EST UN SYSTÈME MULTITACHE</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SfR1vLRAv-I/AAAAAAAABRE/RFN-xZz7gZ8/s1600-h/gizmo_ofn.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 394px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SfR1vLRAv-I/AAAAAAAABRE/RFN-xZz7gZ8/s400/gizmo_ofn.jpg" alt="" id="BLOGGER_PHOTO_ID_5329013712424583138" border="0" /&gt;&lt;/a&gt;Ce billet est consacré à une &lt;span style="font-weight: bold;"&gt;pratique de l'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;&lt;/span&gt; et au parallèle que nous pouvons dresser entre le &lt;span style="font-weight: bold;"&gt;développement concurrent avec &lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;&lt;/span&gt; et les &lt;a href="http://fr.wikipedia.org/wiki/Multit%C3%A2che"&gt;&lt;span style="font-weight: bold;"&gt;systèmes multitâches&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3 IDÉES&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;Je vais commencer par vous expliquer comment nous pratiquons une&lt;span style="font-weight: bold;"&gt; forme sécurisée de l'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;Ensuite, j'évoquerai un problème propre à l'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt; et je présenterai les solutions que nous avons mis en place pour y remédier.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;Enfin, pour illustrer mon propos je ferai un parallèle entre &lt;/span&gt;développement concurrent avec&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt; intégration continue&lt;/a&gt; et les &lt;a href="http://fr.wikipedia.org/wiki/Multit%C3%A2che"&gt;systèmes multitâches&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;INTÉGRATION SÉCURISÉE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pour qu'un développeur de notre équipe contribue au projet en délivrant ses travaux, il utilise un script&lt;span style="font-style: italic;"&gt; &lt;/span&gt;qui &lt;span style="font-weight: bold;"&gt;automatise &lt;/span&gt;les activités suivantes:&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Identification des modifications&lt;/span&gt;: Il s'agit du "commit" ou "checkin" des fichiers modifiés de l'espace personnel de travail. Un éditeur texte est ouvert pour que le développeur justifie ses modifications.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Synchronisation de l'espace personnel&lt;/span&gt;: L'espace personnel de travail est synchronisé par rapport à la référence du code en y important les nouveautés de la référence du code.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Build et test de l'espace personnel&lt;/span&gt;: Le build est lancé et l'intégralité des tests xUnit sont exécutés dans l'espace personnel. Cette étape s'assure que les modifications du développeur sont compatibles de la référence du code.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Synchronisation de la référence&lt;/span&gt;: Si le build et tous les tests ont réussi, alors les modifications de l'espace personnel sont délivrées dans la référence du code.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Build et test de la référence&lt;/span&gt;: En moins d'une minute, l'outil d'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt; détecte la modification de la référence du code et lance un build incrémental avec rejeu de tous les tests xUnit. En général, le défaut type détecté par cette étape est un nouveau fichier source introduit dans le produit par le développeur et non géré par l'outil de gestion des versions.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;Il s'agit d'une démarche de&lt;span style="font-weight: bold;"&gt; contribution sécurisée&lt;/span&gt; car le développeur ne peut délivrer des modifications incompatibles avec la référence du code. En effet, l'étape 3 interdit la livraison des modifications si le build ou le test de la version intégrée échoue. La référence du code est donc protégée contre l'injection de défauts.&lt;br /&gt;Cette &lt;span style="font-weight: bold;"&gt;synchronisation est fluide&lt;/span&gt; car elle est automatisée et courte. Elle ne dure que de 2 à 3 minutes environ. Ainsi, chaque développeur se synchronise plusieurs fois par jour pour entretenir une&lt;span style="font-weight: bold;"&gt; &lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;&lt;/span&gt; du produit en développement.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;INTÉGRATION CONTINUE OU INTÉGRATION PERPÉTUELLE?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Néanmoins, il existe un &lt;span style="font-weight: bold;"&gt;point faible&lt;/span&gt; dans cette démarche, entre l'étape 2 et l'étape 4. Pour le comprendre, analysons le scénario suivant.&lt;br /&gt;Supposons que Jacques et Paul soient deux développeurs de notre équipe. Jacques a terminé une étape de son travail et souhaite la délivrer dans la référence du code. Il lance le script d'intégration. A l'étape 2, il a récupéré chez lui les nouveautés de la référence du code. Il en est à l'étape 3: les tests sont en cours d'exécution dans son espace personnel.&lt;br /&gt;Il se trouve que Paul avait commencé une synchronisation quelques minutes ou secondes avant Jacques. Alors que Jacques en est encore à l'étape 3, Paul en est déjà à l'étape 4: il délivre le résultat de son travail dans la référence du code.&lt;br /&gt;Maintenant, c'est au tour de Jacques de passer à l'étape 4 et de délivrer son travail. Mais la référence du code a changée car elle a été enrichie des travaux de Paul. Donc, Jacques vient de finir son intégration et pourtant il n'est déjà plus synchronisé avec le version de référence du code! Il ne peut donc pas délivrer son travail et il doit reprendre son intégration depuis le début, à l'étape 1.&lt;br /&gt;&lt;br /&gt;Ce petit scénario n'est pas bien grave. Jacques n'a perdu que 3 minutes. Maintenant, comprenez que notre équipe est composée de plus de 15 développeurs qui se synchronisent plusieurs fois par jour. Ce scénario de collision a donc une forte probabilité d'occurrence et l'intégration de Jacques peut durer des heures. Pour Jacques, l'intégration continue est devenu une&lt;span style="font-weight: bold;"&gt; intégration perpétuelle&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE PROBLÈME &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nous nous sommes rendu compte qu'un seul développeur de l'équipe peut intégrer à la fois. L'intégrateur doit bénéficier d'un &lt;span style="font-weight: bold;"&gt;accès exclusif à la référence du code&lt;/span&gt; pour intégrer ses travaux sans être perturbé par les modifications d'autres développeurs. L'outil de gestion de configuration de gère pas cette exclusion mutuelle car l'intégration est composée de plusieurs commandes atomiques de gestion de versions.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;GIZMO, OU L'EXCLUSION MUTUELLE EN INTÉGRATION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Depuis plusieurs projets, nous avons décidé de régler ce problème à l'aide d'&lt;span style="font-weight: bold;"&gt;une simple peluche&lt;/span&gt;, baptisée Gizmo par l'équipe.&lt;/span&gt;&lt;span&gt; Pour intégrer ses travaux, un développeur doit poser cette unique peluche sur son écran. A la fin de sa synchronisation, il libère la référence du code en retirant le Gizmo de son moniteur. Ainsi, nous avons très simplement organisé l'intégration exclusive des travaux dans la référence du code.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;Il se trouve que la pratique du Gizmo a &lt;span style="font-weight: bold;"&gt;deux autres bénéfices &lt;/span&gt;très importants expliqués en détail dans la &lt;a href="http://manu40k.free.fr/articlePratiquesDEquipe.pdf"&gt;description de nos pratiques d'équipe&lt;/a&gt;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE VERROU NUMÉRIQUE D'INTÉGRATION &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La pratique du Gizmo suffit pour assurer l'exclusion mutuelle des développeurs en intégration dans le cas où &lt;span style="font-weight: bold;"&gt;l'équipe partage le même bureau&lt;/span&gt;. En effet, il faut visualiser où est Gizmo et pouvoir le prendre. Or, certains&lt;span style="font-style: italic;"&gt; (rares)&lt;/span&gt;  contributeurs à notre projet ne sont pas dans notre open-space. Nous avons alors décidé de doubler la peluche Gizmo par un &lt;span style="font-weight: bold;"&gt;verrou numérique&lt;/span&gt;. La séquence automatisée par le script d'intégration est donc devenue:&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;&lt;span&gt;[Nouveau]&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; Recherche du verrou&lt;/span&gt;. Si la référence du code est verrouillée en intégration, la séquence est interrompue et on demande au développeur d'intégrer plus tard;&lt;/li&gt;&lt;li&gt;&lt;span&gt;[Nouveau]&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Verrouillage de la référence du code&lt;/span&gt;.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Identification des changements&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Synchronisation de l'espace personnel&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Build et test de l'espace personnel&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Synchronisation de la référnce du code&lt;/span&gt;&lt;span style="font-style: italic;"&gt; (si les tests ont réussi!)&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span&gt;[Nouveau]&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Libération du verrou&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Build et test de la référence du code&lt;/span&gt; par l'outil d'intégration continue.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;Le verrou est un simple fichier créé et supprimé dans la référence du code. Ce verrou numérique ne remplace pas pour autant le Gizmo en peluche. En effet, l'utilisation de la peluche présente deux autres bénéfices très intéressants &lt;span style="font-style: italic;"&gt;(se référer à la &lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;a href="http://manu40k.free.fr/articlePratiquesDEquipe.pdf"&gt;description de nos pratiques d'équipe&lt;/a&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DÉVELOPPEMENT CONCURRENT AVEC INTÉGRATION CONTINUE ET SYSTÈME MULTITACHE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pour comprendre la nécessité d'un verrou d'intégration, il suffit de faire un parallèle avec la &lt;a href="http://fr.wikipedia.org/wiki/Programmation_concurrente"&gt;programmation concurrente&lt;/a&gt; et les &lt;a href="http://fr.wikipedia.org/wiki/Multit%C3%A2che"&gt;systèmes miltitâches&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Une équipe qui pratique le développement concurrent est un &lt;a href="http://fr.wikipedia.org/wiki/Multit%C3%A2che"&gt;système multitâche&lt;/a&gt;. En effet, chaque développeur &lt;span style="font-style: italic;"&gt;(ou binôme)&lt;/span&gt; est assimilable à un &lt;a href="http://fr.wikipedia.org/wiki/Processus_l%C3%A9ger"&gt;thread &lt;/a&gt;concurrent qui mène ses activités en parallèle des autres.&lt;br /&gt;&lt;br /&gt;Si les développeurs pratiquent l'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;, alors ils se partagent une &lt;a href="http://fr.wikipedia.org/wiki/Ressource_%28informatique%29"&gt;ressource&lt;/a&gt;. Il s'agit de la référence du code. La séquence de synchronisation avec la référence &lt;span style="font-style: italic;"&gt;(étapes 1 à 4)&lt;/span&gt; est donc une&lt;a href="http://fr.wikipedia.org/wiki/Section_critique"&gt; section critique&lt;/a&gt;. Un seul développeur à la fois doit la dérouler. Puisqu'il s'agit d'une &lt;a href="http://fr.wikipedia.org/wiki/Section_critique"&gt;section critique&lt;/a&gt;, il convient d'en assurer une utilisation exclusive à l'aide d'un mécanisme d'&lt;a href="http://fr.wikipedia.org/wiki/Exclusion_mutuelle"&gt;exclusion mutuelle&lt;/a&gt;, comme les &lt;a href="http://fr.wikipedia.org/wiki/Exclusion_mutuelle"&gt;mutex&lt;/a&gt; ou les&lt;a href="http://fr.wikipedia.org/wiki/S%C3%A9maphore_%28informatique%29"&gt; sémaphores&lt;/a&gt;. La peluche baptisée Gizmo ou le verrou numérique sont en fait un &lt;a href="http://fr.wikipedia.org/wiki/S%C3%A9maphore_%28informatique%29"&gt;sémaphore&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(à un jeton)&lt;/span&gt; tel qu'il en existe dans les OS temps-réel pour gérér l'&lt;a href="http://fr.wikipedia.org/wiki/Exclusion_mutuelle"&gt;exclusion mutuelle&lt;/a&gt; des thread dans les &lt;a href="http://fr.wikipedia.org/wiki/Section_critique"&gt;sections critiques&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Autrement dit:&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;Les développeurs sont les &lt;a href="http://fr.wikipedia.org/wiki/Processus_l%C3%A9ger"&gt;threads&lt;/a&gt; concurrents, la référence du code est la &lt;a href="http://fr.wikipedia.org/wiki/Ressource_%28informatique%29"&gt;ressource&lt;/a&gt; partagée,  la séquence d'intégration est la &lt;a href="http://fr.wikipedia.org/wiki/Section_critique"&gt;section critique&lt;/a&gt; et le verrou d'intégration est le &lt;a href="http://fr.wikipedia.org/wiki/Exclusion_mutuelle"&gt;mutex&lt;/a&gt;. Le développement avec &lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt; est un &lt;a href="http://fr.wikipedia.org/wiki/Multit%C3%A2che"&gt;système multitâche&lt;/a&gt;.&lt;/blockquote&gt;Une fois que ce parallèle est admis, alors les règles de la &lt;a href="http://fr.wikipedia.org/wiki/Programmation_concurrente"&gt;programmation concurrente&lt;/a&gt; s'appliquent également pour l'&lt;a href="http://fr.wikipedia.org/wiki/Int%C3%A9gration_continue"&gt;intégration continue&lt;/a&gt;. En effet, le temps passé en &lt;a href="http://fr.wikipedia.org/wiki/Section_critique"&gt;section critique&lt;/a&gt; doit être &lt;span style="font-weight: bold;"&gt;aussi court que possible&lt;/span&gt; car une &lt;a href="http://fr.wikipedia.org/wiki/Section_critique"&gt;section critique&lt;/a&gt; est un &lt;span style="font-weight: bold;"&gt;goulet d'étranglement&lt;/span&gt;. La pratique de l'&lt;a href="http://fr.wikipedia.org/wiki/Exclusion_mutuelle"&gt;exclusion mutuelle&lt;/a&gt; en intégration créé une file d'attente d'intégration qui peut pénaliser les travaux si la durée d'intégration est longue ou si l'équipe est nombreuse.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;COMMENT FONT LES AUTRES ÉQUIPES?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Je m'étonne toujours de constater que d'autres équipes &lt;span style="font-style: italic;"&gt;(même chez nous) &lt;/span&gt;ne semblent pas être confrontées à ce problème. Cela n'est pas une question de taille de l'équipe car nous avons instauré cette pratique pour la première fois lors d'un projet développé à 4 développeurs organisés en 2 binômes. Ce problème me semble indissociable du développement concurrent avec intégration continue.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alors, comment faites-vous?&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5664582449307091454?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5664582449307091454/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/lintegration-continue-est-un-systeme.html#comment-form' title='17 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5664582449307091454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5664582449307091454'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/lintegration-continue-est-un-systeme.html' title='L&apos;INTÉGRATION CONTINUE EST UN SYSTÈME MULTITACHE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SfR1vLRAv-I/AAAAAAAABRE/RFN-xZz7gZ8/s72-c/gizmo_ofn.jpg' height='72' width='72'/><thr:total>17</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1412600571451732892</id><published>2009-04-22T06:39:00.001-07:00</published><updated>2009-04-22T09:54:36.459-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='My Bookshelf'/><title type='text'>CLEAN CODE, ROBERT C. MARTIN</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Se8eODmvh-I/AAAAAAAABQ8/jfuF-9Qv2Kg/s1600-h/cleancode.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 240px; height: 240px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Se8eODmvh-I/AAAAAAAABQ8/jfuF-9Qv2Kg/s400/cleancode.jpg" alt="" id="BLOGGER_PHOTO_ID_5327510111037392866" border="0" /&gt;&lt;/a&gt;J'avais énormément appris en lisant le précédant livre d'&lt;a href="http://www.objectmentor.com/omTeam/martin_r.html"&gt;Uncle Bob&lt;/a&gt;, &lt;a href="http://emmanuelchenu.blogspot.com/2007/07/agile-software-development-by-robert.html"&gt;Agile Software Development: Principles, Practices and Patterns&lt;/a&gt;. Son catalogue des &lt;span style="font-weight: bold;"&gt;principes avancés de conception objet&lt;/span&gt; et ses &lt;span style="font-weight: bold;"&gt;métriques de couplage&lt;/span&gt; ont été une aide pour développer mieux.&lt;br /&gt;&lt;br /&gt;Autant dire que j'attendais le livre suivant &lt;span style="font-weight: bold;"&gt;Clean Code&lt;/span&gt;, traduit en français sous le titre &lt;a href="http://www.eyrolles.com/Informatique/Livre/coder-proprement-9782744023279"&gt;Coder Proprement&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Malheureusement, j'ai été déçu. Le livre est bien, mais j'ai appris bien moins qu'avec le précédant. Aussi, les chapitres rédigés par différents auteurs  sont assez irréguliers en qualité. Voici la synthèse de &lt;span style="font-weight: bold;"&gt;ce qui m'a plu&lt;/span&gt; et de &lt;span style="font-weight: bold;"&gt;ce que j'ai appris&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;QUELS SONT LES CRITÈRES DE QUALITÉ D'UN BON CODE?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Voici la définition qu'en donne l'&lt;span style="font-weight: bold;"&gt;eXtreme Programming&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;Par &lt;span style="font-weight: bold;"&gt;ordre de priorité&lt;/span&gt;, le bon code respecte les critères suivants:&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;Il passe ses &lt;span style="font-weight: bold;"&gt;tests&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Il ne contient &lt;span style="font-weight: bold;"&gt;pas de redondance&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Il est &lt;span style="font-weight: bold;"&gt;explicite&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Il est &lt;span style="font-weight: bold;"&gt;minimal&lt;/span&gt;.&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;Malheureusement, l'auteur insiste peu sur le fait que les critères 3 et 4 peuvent être &lt;span style="font-weight: bold;"&gt;contradictoires &lt;/span&gt;et que l'ordre des priorités entre ces deux critères est très important. En effet, un code explicite tend à être plus modulaire et à être découpé en petites classes ayant chacune une seule responsabilité et en courtes opérations ayant un seul niveau d'abstraction. Ceci amène à plus de déclarations et donc à plus de code, ce qui s'oppose au critère 4.&lt;br /&gt;D'ailleurs, dans tous les exemples de remaniement du livre, on constate que&lt;span style="font-weight: bold;"&gt; le code remanié est toujours 2 fois plus volumineux que le code d'origine&lt;/span&gt;! Cela ne me choque pas, mais je pense qu'il est important de le souligner clairement.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LIRE ET ÉCRIRE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nous passons plus de temps à lire du code qu'à en écrire. En rendant le code facile à lire, nous le rendons plus facile à écrire.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA RÈGLE DU BOY SCOUT&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lorsque nous ouvrons un fichier de code source, nous devons le laisser plus propre que nous l'avons trouvé.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA LIGNE VIDE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Une opération ne doit pas contenir de ligne vide. Une ligne vide dans une opération sert à aérer son code en regroupant les instructions contribuant à une même action. Une ligne vide est donc un indice indiquant que l'opération passe à autre chose et qu'il y a plusieurs niveaux d'abstraction au sein de la même opération.&lt;br /&gt;Alors, il plus cohérent d'exporter chaque groupe d'instructions contribuant à une même action dans une nouvelle opération nommée selon cette action et à appeler cette nouvelle opération dans l'opération d'origine. Ainsi, il ne reste dans l'opération d'origine que des instructions d'un même niveau d'abstraction.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LIRE LE CODE D'UNE OPÉRATION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Les étapes d'une opération doivent se trouver à un même niveau d'abstraction en dessous du nom de l'opération. Le code d'une opération bien écrite doit pouvoir se lire de la manière suivante:&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;POUR &lt;/span&gt;&lt;span style="font-style: italic;"&gt;nom_de_l_opération&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;IL FAUT&lt;/span&gt; &lt;span style="font-style: italic;"&gt;première_étape_de_l_opération&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;PUIS&lt;/span&gt; &lt;span style="font-style: italic;"&gt;deuxième_étape_de_l_opération&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;PUIS&lt;span style="font-style: italic;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;troisième_étape_de_l_opération &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;PUIS &lt;/span&gt;&lt;span style="font-style: italic;"&gt;...&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/div&gt;Les différentes étapes de l'opération sont des instructions du langage de programmation ou des appels d'opérations d'un même niveau d'abstraction.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;CLASSES ET STRUCTURES DE DONNÉES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Depuis quelques projets, nous remarquons qu'il semble par endroit plus adapté d'écrire un code procédural plutôt qu'un code orienté objet. Est-ce une &lt;span style="font-weight: bold;"&gt;hérésie&lt;/span&gt;? Le constat suivant d'Uncle Bob m'a beaucoup rassuré.&lt;br /&gt;&lt;br /&gt;Un &lt;span style="font-weight: bold;"&gt;code procédural&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(un code qui utilise des structures de données)&lt;/span&gt; facilite l'ajout de nouvelles fonctions sans modifier les structures de données existantes. Un &lt;span style="font-weight: bold;"&gt;code orienté-objet&lt;/span&gt; facilite l'ajout de nouvelles classes sans modifier les fonctions existantes.&lt;br /&gt;&lt;br /&gt;Un &lt;span style="font-weight: bold;"&gt;code procédural&lt;/span&gt; complexifie l'ajout de nouvelles structures de données car toutes les fonctions doivent être modifiées.&lt;br /&gt;Un &lt;span style="font-weight: bold;"&gt;code orienté objet&lt;/span&gt; complexifie l'ajout de nouvelles fonctions car toutes les classes de l'arbre d'héritage doivent être modifiées.&lt;br /&gt;&lt;br /&gt;Par conséquent, ce qui est difficile pour l'orienté objet est facile pour le procédural, tandis que ce qui est difficile pour le procédural est facile pour l'orienté objet!&lt;br /&gt;&lt;br /&gt;Dans un système, nous avons parfois le besoin d'une souplesse d'ajout de nouveaux types de données et choisissons alors une &lt;span style="font-weight: bold;"&gt;implémentation fondée sur les objets&lt;/span&gt;. Si nous voulons disposer d'une souplesse d'ajout de nouveaux comportements, alors nous optons pour les &lt;span style="font-weight: bold;"&gt;structures de données et les procédures&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Les programmeurs expérimentés savent très bien que&lt;span style="font-weight: bold;"&gt; l'idée du tout objet est un mythe&lt;/span&gt;. Les bons développeurs de logiciels abordent ces questions sans préjugé et &lt;span style="font-weight: bold;"&gt;retiennent l'approche adaptée à leurs besoins&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DES TESTS PROPRES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le code de test est aussi important que le code de production. Il doit rester aussi propre que le code de production.&lt;br /&gt;J'avais consacré un billet intitulé &lt;a href="http://emmanuelchenu.blogspot.com/2009/01/les-tests-sont-du-code.html"&gt;Les Tests Sont du Code&lt;/a&gt; à ce sujet et c'est d'ailleurs le thème du livre que je suis actuellement en train de lire : &lt;span class="caption"&gt;&lt;a href="http://www.amazon.fr/xUnit-Test-Patterns-Refactoring-Code/dp/0131495054/ref=sr_1_1?ie=UTF8&amp;amp;s=english-books&amp;amp;qid=1234512282&amp;amp;sr=1-1"&gt;xUnit Test Patterns: Refactoring Test Code&lt;/a&gt;. &lt;/span&gt;Je reviendrai plus longuement sur ce livre car il améliore grandement ma pratique du test automatisé.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;L'EVOLUTION DES SYSTEMES LOGICIELS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Les systèmes logiciels sont uniques si on les compare aux systèmes physiques. Leur architecture peut évoluer de manière incrémentale si nous maintenons la séparation adéquate des préoccupations&lt;span style="font-style: italic;"&gt; (et le test de leurs constituants!)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SUR LA CONCURRENCE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Incroyable, deux chapitres du livre sont dédiés au développement de logiciels avec traitements concurrents! Malheureusement, il n'y a rien de bien nouveau. Néanmoins, c'est rassurant de lire des recommandations que nous appliquons déjà &lt;span style="font-style: italic;"&gt;(voir mon précédant billet &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-embarque.html"&gt;Extreme Programming Embarqué&lt;/a&gt;)&lt;/span&gt;.  Voici ces constats et recommandations:&lt;br /&gt;&lt;br /&gt;La conception d'un système concurrent peut être très différente de celle d'un système monothread. Le découplage du &lt;span style="font-style: italic;"&gt;quoi &lt;/span&gt;et du &lt;span style="font-style: italic;"&gt;quand &lt;/span&gt;a généralement un impact très important sur la structure du système.&lt;br /&gt;&lt;br /&gt;Gardez le code lié à la concurrence séparé de tout autre code. Ne tentez pas de pourchasser à la fois les bogues du code normal et ceux du code multithread. Assurez-vous que votre code fonctionne en dehors des threads.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Malgré quelques déceptions, je ne regrette pas la lecture de ce lire. Néanmoins, je conseillerais plutôt &lt;a href="http://emmanuelchenu.blogspot.com/2007/07/agile-software-development-by-robert.html"&gt;le livre précédant&lt;/a&gt;, bien plus enrichissant à mon avis.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1412600571451732892?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1412600571451732892/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/clean-code-robert-c-martin.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1412600571451732892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1412600571451732892'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/clean-code-robert-c-martin.html' title='CLEAN CODE, ROBERT C. MARTIN'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Se8eODmvh-I/AAAAAAAABQ8/jfuF-9Qv2Kg/s72-c/cleancode.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3329132857698267679</id><published>2009-04-06T13:59:00.000-07:00</published><updated>2009-04-07T03:33:48.166-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>LOGO EXPERIENCED EXTREME PROGRAMMER</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdpvpftUfzI/AAAAAAAABPg/caIBDn7zKro/s1600-h/logos.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5321688668368568114" style="margin: 0pt 10px 10px 0pt; float: left; width: 150px; cursor: pointer; height: 95px;" alt="" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdpvpftUfzI/AAAAAAAABPg/caIBDn7zKro/s400/logos.jpg" border="0" /&gt;&lt;/a&gt;Je ne suis pas à l'aise et cohérent avec ce logo &lt;span style="font-weight: bold;"&gt;Certified ScrumMaster&lt;/span&gt;. D'un côté, je trouve qu'il en jette et qu'il épate ceux qui n'ont pas suivi la &lt;a href="http://emmanuelchenu.blogspot.com/2008/02/formation-et-certification-scrummaster.html"&gt;formation certifiante Scrum&lt;/a&gt;. D'un autre côté, je sais bien qu'il n'a aucune valeur.&lt;br /&gt;&lt;br /&gt;Pour je ne sais quelle raison idiote, je n'arrive pas à me convaincre de l'enlever de mon blog. Alors, j'ai décidé de le tempérer par un logo fait maison: celui du &lt;span style="font-weight: bold;"&gt;praticien expérimenté de l'eXtreme Programming&lt;/span&gt;. Ce logo est &lt;span style="font-weight: bold;"&gt;gratuit et auto-proclamé&lt;/span&gt;. Il n'a aucune valeur non plus. Pourtant, je l'aime bien parce que sur ce logo:&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;"eXPerienced"&lt;/span&gt; se subsititue à "Certified"; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Le binôme &lt;/span&gt;se substitue au cycle quotidien et au cycle itératif; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Un graphisme rustique, monochrome et à la main levée (la solution suffisante la plus simple)&lt;/span&gt; se substitue à la belle infographie en couleurs.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;Si cela vous amuse, vous pouvez utiliser ce logo: il est &lt;span style="font-weight: bold;"&gt;gratuit, auto-proclamé&lt;/span&gt;, non signé et ne profite à personne ;o) ;o)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3329132857698267679?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3329132857698267679/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/experienced-extreme-programmer.html#comment-form' title='13 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3329132857698267679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3329132857698267679'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/experienced-extreme-programmer.html' title='LOGO EXPERIENCED EXTREME PROGRAMMER'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SdpvpftUfzI/AAAAAAAABPg/caIBDn7zKro/s72-c/logos.jpg' height='72' width='72'/><thr:total>13</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4855362869971463221</id><published>2009-04-04T06:46:00.001-07:00</published><updated>2009-04-05T22:57:43.184-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>PARTIE VISIBLE ET PARTIE INVISIBLE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdkLogWIO_I/AAAAAAAABPI/sC_LlBeVFKw/s1600-h/racinesTop.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 305px; height: 400px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdkLogWIO_I/AAAAAAAABPI/sC_LlBeVFKw/s400/racinesTop.jpg" alt="" id="BLOGGER_PHOTO_ID_5321297225220373490" border="0" /&gt;&lt;/a&gt;Dans notre organisation, nous constatons que&lt;span style="font-weight: bold;"&gt; la partie visible&lt;/span&gt; de nos pratiques de développement &lt;span style="font-weight: bold;"&gt;séduit les décideurs&lt;/span&gt;. Cette partie visible correspond aux &lt;span style="font-weight: bold;"&gt;pratiques de pilotage&lt;/span&gt; de projet de développement. Dans notre cas, il s'agit de la pratique de Scrum complétée par le Lean avec le &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;Value-Stream-Mapping&lt;/a&gt; et les Kanbans.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA PARTIE VISIBLE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ces pratiques séduisent les décideurs pour plusieurs raisons.&lt;br /&gt;D'abord l'équipe &lt;span style="font-weight: bold;"&gt;développe le bon produit&lt;/span&gt; grâce au &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;rôle joué par le Product Owner&lt;/a&gt;, grâce à la construction itérative et incrémentale et en évaluant les incréments de produit lors des démonstrations d'itération.&lt;br /&gt;Ensuite,&lt;span style="font-weight: bold;"&gt; l'avancement est transparent&lt;/span&gt; grâce à l'identification, à la priorisation et à l'estimation du restant à faire dans le Product Backlog et l'Iteration Backlog, grâce à la visualisation du restant à faire par les Burndown-Charts, grâce à la mesure de la vélocité et enfin grâce aux incréments de fonctionnalité présentés en démonstration d'itération.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;La complexité est maitrisée&lt;/span&gt; par la construction itérative et incrémentale du produit.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;L'équipe se responsabilise pour tenir l'objectif&lt;/span&gt; en planifiant les itérations, en pilotant quotidiennement les activités lors des Daily-Stand-Up-Meeting et en présentant leur travail lors des démonstrations d'itération.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;L'équipe améliore ses pratiques&lt;/span&gt; en menant les rétrospectives d'itération, en portant un regard critique sur&lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt; la cartographie du flux de valeur&lt;/a&gt; et en traitant les goulots d'étranglement révélés par les Kanbans.&lt;br /&gt;&lt;br /&gt;Toutes ces pratiques sont &lt;span style="font-weight: bold;"&gt;pleines de bon sens&lt;/span&gt;. Elles ont aussi le grand avantage d'être &lt;span style="font-weight: bold;"&gt;visibles &lt;/span&gt;et &lt;span style="font-weight: bold;"&gt;touchent des décideurs n'ayant pas un profil technique&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE CHAOS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le développement logiciel est une activité assez chaotique. Or &lt;span style="font-weight: bold;"&gt;ces pratiques permettent de s'accommoder du chaos&lt;/span&gt; car elles se mènent en cycles très courts, permettent de collecter de l'information et apportent de la transparence.&lt;br /&gt;Par contre, &lt;span style="font-weight: bold;"&gt;ces pratiques génèrent également du chaos&lt;/span&gt;. Il s'agit du chaos lié à l'instabilité du produit construit par incrément en cycles très courts. La construction itérative et incrémentale amène à faire évoluer la conception et à reprendre le code déjà écrit. Si cette instabilité n'est pas maitrisée, elle conduit à des régressions. Et tout s'écroule ...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA PARTIE INVISIBLE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le chaos lié à l'instabilité du produit est maitrisé par &lt;span style="font-weight: bold;"&gt;la partie cachée&lt;/span&gt; des pratiques de développement. Ces pratiques ont le désavantage de ne pas être visibles. Il s'agit par exemple de l'intégration continue, du développement piloté par les tests, de la &lt;a href="http://emmanuelchenu.blogspot.com/2008/10/programmez-par-contrat.html"&gt;programmation par contrat&lt;/a&gt;, de la programmation orientée-objet, du strict respect des &lt;a href="http://www.crossbowlabs.com/files/docs/principesoo.pdf"&gt;grands principes de conception orientée-objet&lt;/a&gt; et de l'exception visible: le Pair Programming. Ces pratiques combinées et la recherche de l'excellence technique permettent de maitriser l'instabilité d'un produit en train de "pousser" par incréments. Malheureusement, le fait que ces pratiques ne soient pas visibles les rend &lt;span style="font-weight: bold;"&gt;plus difficiles à valoriser auprès de décideurs et des équipes de développement&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;OU EST LE PROBLÈME?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le risque est que décideurs et équipes de développement &lt;span style="font-weight: bold;"&gt;n'adoptent que la partie visible&lt;/span&gt; des pratiques de développement. Ces projets souffriront beaucoup du chaos et de l'instabilité du produit. L'adoption des nouvelles pratiques sera tenue responsable des échecs. Malheureusement, un échec cuisant peut avoir plus d'effet que plusieurs succès quand à la promotion d'une nouvelle démarche au sein d'une organisation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DES SOLUTIONS&lt;/span&gt;?&lt;br /&gt;&lt;br /&gt;Communiquer auprès des décideurs et des équipes en démontrant les pratiques visibles est très efficace pour séduire et convaincre. Cependant, il faut également insister lourdement sur l'&lt;span style="font-weight: bold;"&gt;absolue nécessité du socle technique&lt;/span&gt;.&lt;br /&gt;Aussi, nous avons remarqué que nos équipes qui ont pris le virage avec succès &lt;span style="font-weight: bold;"&gt;ont commencé par adopter les pratiques techniques&lt;/span&gt;. Peut-être qu'il est plus sûr de débuter par la partie invisible et d'attendre que les bienfaits se fassent sentir?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4855362869971463221?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4855362869971463221/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/partie-visible-et-partie-invisible.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4855362869971463221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4855362869971463221'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/partie-visible-et-partie-invisible.html' title='PARTIE VISIBLE ET PARTIE INVISIBLE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SdkLogWIO_I/AAAAAAAABPI/sC_LlBeVFKw/s72-c/racinesTop.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6399527371194433495</id><published>2009-04-02T11:53:00.000-07:00</published><updated>2009-04-05T01:41:30.117-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>TOUCHE PAS A MON SCRUM!</title><content type='html'>&lt;div style="text-align: justify;"&gt;J'écris ce billet en réaction à un test paru en ligne, intitulé &lt;a href="http://antoine.vernois.net/scrumbut/?page=test&amp;amp;lang=fr"&gt;Scrum But&lt;/a&gt;, dont &lt;a href="http://antoine.vernois.net/dotclear/index.php?post/2009/03/30/Le-test-%22Scrum-but%22"&gt;les questions et réponses auraient été proposées par Jeff Sutherland&lt;/a&gt;. &lt;span&gt;Je n'en veux pas à la personne qui a mis en ligne ce test, mais plutôt à celle qui l'a inspiré. &lt;span&gt;(quel parricide! ;o)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;QUESTIONS &amp;amp; RÉPONSES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Reprenons certaines questions et réponses qui m'ont chagriné. D'abord, il faut savoir que le score maximum de 8/8 est obtenu en répondant à la &lt;span style="font-weight: bold;"&gt;dernière réponse de chaque question&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;p style="font-weight: bold;" class="questionTitle"&gt;Question 2 : Pratique des test&lt;/p&gt;         &lt;input name="Q2" value="1" type="radio"&gt;&lt;span&gt; Pas d'Assurance Qualité (QA)&lt;/span&gt;&lt;br /&gt;&lt;input name="Q2" value="2" type="radio"&gt;&lt;span&gt; Le code est testé unitairement&lt;/span&gt;&lt;br /&gt;&lt;input name="Q2" value="3" type="radio"&gt;&lt;span&gt; Les fonctionnalités sont testées&lt;/span&gt;&lt;br /&gt;&lt;input name="Q2" value="4" type="radio"&gt;&lt;span&gt; Les fonctionnalités sont testées dès qu'elles sont finies&lt;/span&gt;&lt;br /&gt;&lt;input name="Q2" value="5" type="radio"&gt;&lt;span&gt; Le logiciel passe des tests d'acceptation&lt;/span&gt;&lt;br /&gt;&lt;input name="Q2" value="6" type="radio"&gt;&lt;span&gt; Le logiciel est déployé&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Personnellement, je préfère un logiciel testé unitairement &lt;span style="font-weight: bold;"&gt;ET &lt;/span&gt;qui passe ses tests d'acceptation &lt;span style="font-weight: bold;"&gt;ET &lt;/span&gt;qui est déployé à un logiciel déployé. Il est peut-être &lt;span style="font-weight: bold;"&gt;sous-entendu &lt;/span&gt;qu'un logiciel déployé est aussi testé unitairement et passe aussi ses tests d'acceptation. Ceci dit, ce sous entendu est dangereux: Je connais des équipes qui périodiquement déploient "de la merde".&lt;br /&gt;Si nous prenons le raccourci du sous-entendu, alors la meilleure réponse n'est qu'une &lt;span style="font-weight: bold;"&gt;interprétation &lt;/span&gt;de Scrum. En effet, le produit doit être &lt;span style="font-weight: bold;"&gt;potentiellement mis en production&lt;/span&gt; avec son incrément à la fin de chaque itération. Le déploiement systématique me semble être une &lt;span style="font-weight: bold;"&gt;interprétation dogmatique&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;p style="font-weight: bold;" class="questionTitle"&gt;Question 3 : Spécifications&lt;/p&gt;         &lt;input name="Q3" value="1" type="radio"&gt;&lt;span&gt; Pas de requirements&lt;/span&gt;&lt;br /&gt;&lt;input name="Q3" value="2" type="radio"&gt;&lt;span&gt; De lourds documents de requirements&lt;/span&gt;&lt;br /&gt;&lt;input name="Q3" value="3" type="radio"&gt;&lt;span&gt; Des user stories mal détaillées&lt;/span&gt;&lt;br /&gt;&lt;input name="Q3" value="4" type="radio"&gt;&lt;span&gt; De bons requirements&lt;/span&gt;&lt;br /&gt;&lt;input name="Q3" value="5" type="radio"&gt;&lt;span&gt; De bonnes user stories&lt;/span&gt;&lt;br /&gt;&lt;input name="Q3" value="6" type="radio"&gt;&lt;span&gt; Des spécifications Agile&lt;/span&gt;&lt;br /&gt;&lt;input name="Q3" value="7" type="radio"&gt;&lt;span&gt; De bonnes user stories couplées à des spécifications Agile si nécessaire&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Les pratiques de Scrum incluent pas &lt;span&gt;"De bonnes user stories couplées à des spécifications Agile si nécessaire"&lt;/span&gt;. Il s'agit d'une bonne pratique - parmi d'autres. Là, &lt;span style="font-weight: bold;"&gt;on confond modèle et implémentation&lt;/span&gt;. Je connais des contextes où Scrum est appliqué avec succès et où&lt;span&gt; "de bons requirements"&lt;/span&gt; sont absolument nécessaires à la réussite du projet.&lt;br /&gt;&lt;/div&gt;&lt;p style="font-weight: bold;" class="questionTitle"&gt;Question 4 : Product Owner&lt;/p&gt;         &lt;input name="Q4" value="1" type="radio"&gt;&lt;span&gt; Pas de Product Owner&lt;/span&gt;&lt;br /&gt;&lt;input name="Q4" value="2" type="radio"&gt;&lt;span&gt; Un Product Owner qui ne comprend pas Scrum&lt;/span&gt;&lt;br /&gt;&lt;input name="Q4" value="3" type="radio"&gt;&lt;span&gt; Un Product Owner qui dérange l'équipe&lt;/span&gt;&lt;br /&gt;&lt;input name="Q4" value="4" type="radio"&gt;&lt;span&gt; Un Product Owner qui n'est pas impliqué avec l'équipe&lt;/span&gt;&lt;br /&gt;&lt;input name="Q4" value="5" type="radio"&gt;&lt;span&gt; Un Product Owner avec un product backlog&lt;/span&gt;&lt;br /&gt;&lt;input name="Q4" value="6" type="radio"&gt;&lt;span&gt; Un Product Owner qui construit sa roadmap de release en se basant sur la vélocité de l'équipe&lt;/span&gt;&lt;br /&gt;&lt;input name="Q4" value="7" type="radio"&gt;&lt;span&gt; Un Product Owner qui motive l'équipe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Désolé, je vais pinailler, mais où avez-vous lu que le Product Owner doit motiver son équipe? Il me semble qu'il doit maximiser le retour sur investissement du projet. Motiver l'équipe est &lt;span style="font-weight: bold;"&gt;une manière agréable et louable d'y parvenir mais cela n'est pas l'objectif&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;p style="font-weight: bold;" class="questionTitle"&gt;Question 6 : Estimation&lt;/p&gt;         &lt;input name="Q6" value="1" type="radio"&gt;&lt;span&gt; Le Backlog de produit n'est pas estimé&lt;/span&gt;&lt;br /&gt;&lt;input name="Q6" value="2" type="radio"&gt;&lt;span&gt; Les estimations ne sont pas faites par l'équipe&lt;/span&gt;&lt;br /&gt;&lt;input name="Q6" value="3" type="radio"&gt;&lt;span&gt; Les estimations ne sont pas faites en utilisant le planning poker&lt;/span&gt;&lt;br /&gt;&lt;input name="Q6" value="4" type="radio"&gt;&lt;span&gt; Les estimations sont faites par l'équipe en utilisant le planning poker&lt;/span&gt;&lt;br /&gt;&lt;input name="Q6" value="5" type="radio"&gt;&lt;span&gt; L'erreur sur les estimations est &lt;&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;div style="text-align: justify;"&gt;&lt;span&gt;Il me semble que le planning poker est une bonne pratique d'estimation - sans être la meilleure. Pour moi, la meilleure pratique d'estimation est la plus adaptée au contexte du projet. De plus, le planning poker n'est pas une pratique Scrum. Il s'agit d'une bonne pratique compatible avec Scrum. Là encore, &lt;span style="font-weight: bold;"&gt;on confond modèle et implémentation&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span&gt;&lt;p style="font-weight: bold;" class="questionTitle"&gt;Question 8 : Dérangement de l'équipe&lt;/p&gt;         &lt;input name="Q8" value="1" type="radio"&gt;&lt;span&gt; Le manager ou le chef de projet dérange l'équipe&lt;/span&gt;&lt;br /&gt;&lt;input name="Q8" value="2" type="radio"&gt;&lt;span&gt; Le Product Owner dérange l'équipe&lt;/span&gt;&lt;br /&gt;&lt;input name="Q8" value="3" type="radio"&gt;&lt;span&gt; Le manager, chef de projet ou chef d'équipe assigne les tâches&lt;/span&gt;&lt;br /&gt;&lt;input name="Q8" value="4" type="radio"&gt;&lt;span&gt; Présence de chefs de projet en plus des rôles Scrum&lt;/span&gt;&lt;br /&gt;&lt;input name="Q8" value="5" type="radio"&gt;&lt;span&gt; Personne ne dérange l'équipe, uniquement des rôles Scrum&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span&gt;Les rôles Scrum sont très pertinents mais affirmer que seuls le PO et le SM peuvent "déranger" l'équipe me semble &lt;span style="font-weight: bold;"&gt;dogmatique&lt;/span&gt;. D'autres rôles peuvent apparaitre dans certains contextes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EN CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;En synthèse, il me semble que ce questionnaire &lt;span style="font-weight: bold;"&gt;confond modèle et implémentation&lt;/span&gt;. Je regrette que la note maximale soit obtenue par &lt;span style="font-weight: bold;"&gt;conformité à l'implémentation suggérée&lt;/span&gt; dans les réponses et non par&lt;span style="font-weight: bold;"&gt; conformité au modèle&lt;/span&gt;. Je rigole doucement, car c'est l'excellent&lt;a href="http://www.sei.cmu.edu/publications/documents/08.reports/08tn003.html"&gt; argument mis en avant par le SEI pour défendre le CMMi&lt;/a&gt;. De plus, je peux affirmer que l'application des pratiques suggérées peut faire échouer certains projets!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Aussi, cela me dérange que le questionnaire soit sanctionné par une note - comme une évaluation ou une certification. Cela me rappelle l'autre modèle souvent confondu avec des implémentations ;o)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Bref, personnellement, je préfère encore le &lt;a href="http://spreadsheets.google.com/viewform?key=p_DGqV8jkE4Wmpir24Xt8Zg"&gt;test Nokia&lt;/a&gt;. Il teste la conformité de votre implémentation de Scrum par rapport au modèle et non par rapport à une implémentation suggérée. &lt;a href="http://spreadsheets.google.com/viewform?key=p_DGqV8jkE4Wmpir24Xt8Zg"&gt;Relisez-le&lt;/a&gt;, vous constaterez que les questions ont un niveau d'abstraction supérieur. Aussi, le test Nokia ne sanctionne pas par une note. Il ne vous permet que de réfléchir à votre implémentation de Scrum. N'est-ce pas l'essentiel?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Ces deux derniers jours, le &lt;a href="http://antoine.vernois.net/scrumbut/"&gt;test Scrum But&lt;/a&gt; et &lt;a href="http://www.agilecertificationnow.com/"&gt;le site suivant&lt;/a&gt; m'ont tout deux troublé. Attention à la dérive de l'évaluation et de la certification! Ai-je bien fait de mettre le logo Certified ScrumMaster sur mon blog? Scrum saura t-il rester humble?&lt;/span&gt;&lt;span&gt; Je me considère praticien de Scrum et pourtant je ne me reconnais pas dans ce test.&lt;br /&gt;Je suis sûr qu'une collègue me dira: &lt;span&gt;"Bôf, c'est pas grave ..."&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6399527371194433495?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6399527371194433495/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/touche-pas-mon-scrum.html#comment-form' title='6 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6399527371194433495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6399527371194433495'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/touche-pas-mon-scrum.html' title='TOUCHE PAS A MON SCRUM!'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3780755372995854812</id><published>2009-04-01T10:06:00.001-07:00</published><updated>2009-04-01T10:22:41.736-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LANCEMENT D'UNE CERTIFICATION AGILE</title><content type='html'>&lt;div style="text-align: left; font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOfHyjtLyI/AAAAAAAABO4/MciUiujQvxg/s1600-h/business_card_cass.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 201px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOfHyjtLyI/AAAAAAAABO4/MciUiujQvxg/s400/business_card_cass.jpg" alt="" id="BLOGGER_PHOTO_ID_5319770541034123042" border="0" /&gt;&lt;/a&gt;Il est désormais possible d'être &lt;span style="font-weight: bold;"&gt;certifié en ligne&lt;/span&gt; &lt;a href="http://www.agilecertificationnow.com/"&gt;Certified Agile Software Specialist&lt;/a&gt;.&lt;br /&gt;Faites-vous certifier ici: &lt;a href="http://www.agilecertificationnow.com/"&gt;http://www.agilecertificationnow.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Prenez le temps de bien lire cette page:&lt;br /&gt;&lt;a href="http://www.agilecertificationnow.com/thank-you.php"&gt;http://www.agilecertificationnow.com/thank-you.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;(Merci à l'&lt;/span&gt;&lt;a style="font-style: italic;" href="http://agilitateur.azeau.com/"&gt;agilitateur&lt;/a&gt;&lt;span style="font-style: italic;"&gt; pour l'info)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dommage que &lt;a href="http://emmanuelchenu.blogspot.com/2008/02/formation-et-certification-scrummaster.html"&gt;je sois déjà certifié&lt;/a&gt; &lt;span style="font-style: italic;"&gt;(j'ai même le logo sur mon blog!)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3780755372995854812?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3780755372995854812/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/lancement-dune-certification-agile.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3780755372995854812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3780755372995854812'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/lancement-dune-certification-agile.html' title='LANCEMENT D&apos;UNE CERTIFICATION AGILE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOfHyjtLyI/AAAAAAAABO4/MciUiujQvxg/s72-c/business_card_cass.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6110340396919555133</id><published>2009-04-01T09:33:00.000-07:00</published><updated>2009-04-01T09:36:53.292-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>PUSH!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOXomEGFDI/AAAAAAAABOw/sIwTb5TA9ek/s1600-h/sw_mass_prod.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 155px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOXomEGFDI/AAAAAAAABOw/sIwTb5TA9ek/s400/sw_mass_prod.jpg" alt="" id="BLOGGER_PHOTO_ID_5319762308522972210" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt;Celle-ci me permet d'expliquer ce qu'est &lt;span style="font-style: italic;"&gt;"un bon vieux processus"&lt;/span&gt; en mode &lt;span style="font-weight: bold;"&gt;push&lt;/span&gt; avec &lt;span style="font-weight: bold;"&gt;séparation de penser et de faire&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6110340396919555133?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6110340396919555133/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/push.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6110340396919555133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6110340396919555133'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/push.html' title='PUSH!'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOXomEGFDI/AAAAAAAABOw/sIwTb5TA9ek/s72-c/sw_mass_prod.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-587817609776302467</id><published>2009-04-01T09:32:00.001-07:00</published><updated>2009-04-01T09:33:54.811-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>REPRESENTANTS DU CLIENT</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SdOXP6v8y7I/AAAAAAAABOo/IidsqKuH06E/s1600-h/talk_team.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 246px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SdOXP6v8y7I/AAAAAAAABOo/IidsqKuH06E/s400/talk_team.jpg" alt="" id="BLOGGER_PHOTO_ID_5319761884578892722" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt; Celle-ci me permet d'expliquer comment on s'organise lorsque on n'arrive pas à avoir &lt;span style="font-weight: bold;"&gt;un client sur site&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-587817609776302467?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/587817609776302467/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/representants-du-client.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/587817609776302467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/587817609776302467'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/representants-du-client.html' title='REPRESENTANTS DU CLIENT'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SdOXP6v8y7I/AAAAAAAABOo/IidsqKuH06E/s72-c/talk_team.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5554130213942650261</id><published>2009-04-01T09:30:00.001-07:00</published><updated>2009-04-01T09:32:18.420-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>STOP THE LINE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SdOWudes_cI/AAAAAAAABOg/PBz8bJswFEU/s1600-h/talk_stoptheline.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 240px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SdOWudes_cI/AAAAAAAABOg/PBz8bJswFEU/s400/talk_stoptheline.jpg" alt="" id="BLOGGER_PHOTO_ID_5319761309786242498" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt; Celle-ci me permet d'expliquer comment on peut pratiquer le &lt;span style="font-weight: bold;"&gt;Stop The Line&lt;/span&gt; avec une intégration continue digne de ce nom&lt;span style="font-style: italic;"&gt; (au minimum avec build et tests couvrants automatisés)&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5554130213942650261?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5554130213942650261/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/stop-line.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5554130213942650261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5554130213942650261'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/stop-line.html' title='STOP THE LINE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SdOWudes_cI/AAAAAAAABOg/PBz8bJswFEU/s72-c/talk_stoptheline.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6117087374536060142</id><published>2009-04-01T09:27:00.000-07:00</published><updated>2009-04-01T09:30:15.410-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>FORMALISATION</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOWReCfO5I/AAAAAAAABOY/fNswAiVlF4E/s1600-h/talk_formalism.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 338px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOWReCfO5I/AAAAAAAABOY/fNswAiVlF4E/s400/talk_formalism.jpg" alt="" id="BLOGGER_PHOTO_ID_5319760811720129426" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt; Celle-ci me permet d'expliquer que XP ne fournit le formalisme nécessaire à certains contextes et qu'il faut adapter certaines pratiques pour laisser des traces.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6117087374536060142?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6117087374536060142/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/formalisation.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6117087374536060142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6117087374536060142'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/formalisation.html' title='FORMALISATION'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SdOWReCfO5I/AAAAAAAABOY/fNswAiVlF4E/s72-c/talk_formalism.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2660139999600862361</id><published>2009-04-01T08:56:00.000-07:00</published><updated>2009-04-01T09:24:48.144-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>INTEGRATION CONTINUE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SdOOxW6EZFI/AAAAAAAABOQ/IWcdYRsj46E/s1600-h/talk_continteg.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 307px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SdOOxW6EZFI/AAAAAAAABOQ/IWcdYRsj46E/s400/talk_continteg.jpg" alt="" id="BLOGGER_PHOTO_ID_5319752563468559442" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt; Celle-ci me permet d'expliquer comment se pratique l'intégration continue.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2660139999600862361?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2660139999600862361/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/integration-continue.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2660139999600862361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2660139999600862361'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/integration-continue.html' title='INTEGRATION CONTINUE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SdOOxW6EZFI/AAAAAAAABOQ/IWcdYRsj46E/s72-c/talk_continteg.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7151476500435460745</id><published>2009-04-01T08:55:00.001-07:00</published><updated>2009-04-01T09:24:12.979-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>PREVENTION</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SdOOleV276I/AAAAAAAABOI/n7cfg7VXtPs/s1600-h/talk_preventiveattitude.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 183px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SdOOleV276I/AAAAAAAABOI/n7cfg7VXtPs/s400/talk_preventiveattitude.jpg" alt="" id="BLOGGER_PHOTO_ID_5319752359305736098" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt;Celle-ci me permet d'expliquer comment on peut adopter une gestion préventive des défauts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7151476500435460745?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7151476500435460745/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/prevention.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7151476500435460745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7151476500435460745'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/prevention.html' title='PREVENTION'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SdOOleV276I/AAAAAAAABOI/n7cfg7VXtPs/s72-c/talk_preventiveattitude.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-231890972207593577</id><published>2009-04-01T08:52:00.000-07:00</published><updated>2009-04-01T09:23:20.620-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Illustrations'/><title type='text'>LA COURSE A LA VELOCITE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SdOOJoe8VbI/AAAAAAAABOA/WtIyi1WfXxU/s1600-h/ManUVelocit%C3%A9Petit.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 225px; height: 257px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SdOOJoe8VbI/AAAAAAAABOA/WtIyi1WfXxU/s400/ManUVelocit%C3%A9Petit.jpg" alt="" id="BLOGGER_PHOTO_ID_5319751880991856050" border="0" /&gt;&lt;/a&gt;Je publie une série d'illustrations que j'utilise dans mes présentations ...&lt;br /&gt;Celle-ci me permet d'aborder la course à la vélocité qui transforme les itérations en sprints.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-231890972207593577?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/231890972207593577/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/la-course-la-velocite.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/231890972207593577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/231890972207593577'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/04/la-course-la-velocite.html' title='LA COURSE A LA VELOCITE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SdOOJoe8VbI/AAAAAAAABOA/WtIyi1WfXxU/s72-c/ManUVelocit%C3%A9Petit.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3940215174739979624</id><published>2009-03-27T13:29:00.000-07:00</published><updated>2009-05-18T12:45:25.806-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Conférence'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>AGILE, LEAN ET LOGICIEL CRITIQUE</title><content type='html'>&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sc033rYnz9I/AAAAAAAABN4/Gqkf7Z6dWJs/s1600-h/header_lean_event.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 162px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sc033rYnz9I/AAAAAAAABN4/Gqkf7Z6dWJs/s400/header_lean_event.png" alt="" id="BLOGGER_PHOTO_ID_5317968164672753618" border="0" /&gt;&lt;/a&gt;C'était osé de croiser trois domaines tels que l'&lt;span style="font-weight: bold;"&gt;agilité et le Lean&lt;/span&gt;, le &lt;span style="font-weight: bold;"&gt;logiciel critique&lt;/span&gt; et le &lt;span style="font-weight: bold;"&gt;logiciel libre&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(d'ailleurs, cela m'a permis de comprendre la symbolique du logo du projet &lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.open-do.org/"&gt;Open-DO&lt;/a&gt;&lt;span style="font-style: italic;"&gt;)&lt;/span&gt;.&lt;br /&gt;Ce mélange est bien à l'image d'&lt;a href="http://www.adacore.com/"&gt;AdaCore&lt;/a&gt;  qui a organisé cet évènement très réussi, baptisé &lt;a href="http://www.adacore.com/home/ada_answers/lectures/lean-event/"&gt;The Lean, Agile Approach to High-Integrity Software&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;J'ai beaucoup apprécié plusieurs choses:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DU LOGICIEL ET DES HOMMES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;D'abord, je trouve cela vraiment agréable de mettre des &lt;span style="font-weight: bold;"&gt;visages &lt;/span&gt;sur les outils qu'on utilise, sur les lignes de code qu'on réutilise et sur les signatures des experts qui vous dépannent. Ce genre d'évènement est une des rares occasions de rencontres, de retrouvailles et d'échanges informels et enrichissants entre professionnels du même milieu, parfois même entre concurrents.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DES HOMMES ET DES IDÉES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ensuite, j'ai vraiment ressenti qu'il y avait &lt;span style="font-weight: bold;"&gt;confrontation d'idées&lt;/span&gt; et &lt;span style="font-weight: bold;"&gt;divergences d'opinions&lt;/span&gt;. Pour moi, l'exemple le plus frappant était l'opposition entre ceux qui &lt;span style="font-weight: bold;"&gt;privilégient &lt;/span&gt;la preuve formelle par analyse statique à la compilation et ceux qui &lt;span style="font-weight: bold;"&gt;privilégient &lt;/span&gt;la preuve expérimentale par test à l'exécution. Attention, j'insiste sur le mot &lt;span style="font-weight: bold;"&gt;privilégier&lt;/span&gt;, car il accorde plus d'importance à un aspect &lt;span style="font-style: italic;"&gt;sans pour autant négliger les autres&lt;/span&gt;. D'ailleurs, la &lt;a href="http://en.wikipedia.org/wiki/Design_by_contract"&gt;programmation par contrat&lt;/a&gt; est peut-être une pratique qui réunit les deux mouvements, puisque les assertions sont spécifiées, compilées et exercées à l'exécution par les tests.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DES IDÉES ET DES PISTES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Aussi, je ramène toujours d'une conférence au moins une idée, ou plutôt une &lt;span style="font-weight: bold;"&gt;piste à explorer&lt;/span&gt;. Cette fois ci c'est &lt;a href="http://www.dicosmo.org/"&gt;Roberto Di Cosmo&lt;/a&gt; qui me l'a soufflé lors de sa géniale présentation. J'ai retenu que pour &lt;span style="font-weight: bold;"&gt;paralléliser &lt;/span&gt;les travaux de nombreux développeurs, certains projets de logiciels libres adoptent une architecture modulaire inspirée de la &lt;span style="font-weight: bold;"&gt;philosophie Unix&lt;/span&gt;. L'architecture s'appuye sur l'utilisation de nombreux modules indépendants ayant chacun &lt;span style="font-weight: bold;"&gt;une &lt;/span&gt;responsabilité &lt;span style="font-style: italic;"&gt;(forcément, on repense au &lt;/span&gt;&lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Single_responsibility_principle"&gt;Single Responsibility Principle&lt;/a&gt;&lt;span style="font-style: italic;"&gt; d'&lt;/span&gt;&lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Robert_Cecil_Martin"&gt;Uncle Bob&lt;/a&gt;&lt;span style="font-style: italic;"&gt;)&lt;/span&gt;. Dans un premier temps, une série de modules est développée. Puis dans un deuxième temps, une fonctionnalité est développée en s'appuyant sur ce catalogue de modules. Pour un agiliste, la première phase semble être génératrice de &lt;span style="font-weight: bold;"&gt;stock&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Ceci dit, &lt;span style="font-weight: bold;"&gt;en parallèle&lt;/span&gt; d'une démarche itérative et incrémentale pilotée par les tests de recette des fonctionnalités les plus prioritaires, pourquoi ne pas mener également le développement de modules à une responsabilité &lt;span style="font-weight: bold;"&gt;dont on sait bien qu'on aura besoin dans l'avenir&lt;/span&gt;. Certes, c'est du stock, mais cela peut permettre d'augmenter la vélocité des itérations futures. Ce deuxième flux de travail, en parallèle et en avance de phase, peut par exemple être piloté par simple Kanban. Une telle organisation ne permet pas de réduire les coûts de développement mais elle permet peut être de tenir la course aux jalons. De plus, elle permet d'&lt;span style="font-weight: bold;"&gt;avancer en parallélisant sans accentuer la pression sur l'architecture&lt;/span&gt;. Celle-ci peut donc évoluer au fil des remaniements pour accueillir les fonctionnalités à venir qui intégreront les petits modules préalablement développés. A méditer ...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DES PISTES ET DES SOUVENIRS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Enfin, je ramène de cette rencontre un &lt;span style="font-weight: bold;"&gt;collector&lt;/span&gt;: Mon exemplaire de &lt;a href="http://books.google.fr/books?id=h1-P74QXkVkC&amp;amp;dq=james+sutton+lean&amp;amp;printsec=frontcover&amp;amp;source=bl&amp;amp;ots=Un8va7A-VI&amp;amp;sig=Fewtd1E1xOTbMfasFPjo1tABBWA&amp;amp;hl=fr&amp;amp;ei=ZVHNSe-1BoiZjAf1-PjRCQ&amp;amp;sa=X&amp;amp;oi=book_result&amp;amp;resnum=2&amp;amp;ct=result#PPP1,M1"&gt;Lean Software Strategies&lt;/a&gt; est désormais signé par l'auteur ;o)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Merci AdaCore!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Références et liens:&lt;br /&gt;&lt;a href="http://www.open-do.org/?p=159"&gt;Présentation du projet Open-DO&lt;/a&gt; par &lt;a href="http://www.adacore.com/home/company/exec_team/"&gt;Cyrille Comar&lt;/a&gt;;&lt;br /&gt;&lt;a href="http://www.laurentmorisseau.com/2009/03/lean-agile-approach-to-high-integrity.html"&gt;Compte-rendu&lt;/a&gt; par &lt;a href="http://www.laurentmorisseau.com/"&gt;Laurent Morisseau;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.agilex.fr/2009/04/lean-vs-agile/"&gt;Lean vs Agile&lt;/a&gt;, par &lt;a href="http://www.agilex.fr/"&gt;Alexandre Boutin&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.open-do.org/?p=280"&gt;The Lean, Agile Approach To High-Integrity Software&lt;/a&gt;, par Jamie Ayre&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3940215174739979624?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3940215174739979624/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/cetait-ose-de-croiser-trois-domaines.html#comment-form' title='4 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3940215174739979624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3940215174739979624'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/cetait-ose-de-croiser-trois-domaines.html' title='AGILE, LEAN ET LOGICIEL CRITIQUE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sc033rYnz9I/AAAAAAAABN4/Gqkf7Z6dWJs/s72-c/header_lean_event.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-315736326771450904</id><published>2009-03-23T00:02:00.000-07:00</published><updated>2009-03-24T01:52:48.393-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><title type='text'>LEAN, CARTOGRAPHIE DU FLUX DE VALEUR</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/Scc0qJAej7I/AAAAAAAABNw/NEoAmLBb7xU/s1600-h/bur_value_stream_map.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 329px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/Scc0qJAej7I/AAAAAAAABNw/NEoAmLBb7xU/s400/bur_value_stream_map.jpg" alt="" id="BLOGGER_PHOTO_ID_5316275783711231922" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Il s'agit d'identifier toutes les &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;étapes créatrices de &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html"&gt;valeur&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt; en &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;éliminant les activités qui ne créent pas de valeur&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;COMMENT PROCÉDONS-NOUS?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il n'y a pas réellement de pratique agile qui implémente spécifiquement cet objectif. Ceci dit, toutes les pratiques de l'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Extreme-Programming&lt;/span&gt;&lt;span style="font-family:arial;"&gt; implémentent la valeur &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Simplicité&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, qui consiste à &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;maximiser le travail à ne pas faire&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Alors, nous pratiquons le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Value Stream Mapping&lt;/span&gt;&lt;span style="font-family:arial;"&gt; du Lean. Les activités à mener en série et en parallèle sont identifiées. Des temps moyens par poste sont mesurés afin de &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;révéler les contraintes&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et de &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mesurer une cadence type&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Nous avons aussi remarqué que cette cartographie est appréciée par les nouveaux arrivant sur le projet. La cartographie permet de visualiser comment nous procédons pour transformer les besoins en logiciel opérationnel.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;IDENTIFIER LES GASPILLAGES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Lorsqu'on pratique le Value Stream Mapping, il faut apprendre à &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;identifier les gaspillages&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Il s'agit des pratiques qui ne créent pas de valeur.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Par exemple, dans notre secteur, les développeurs sont terrorisés par le risque que le logiciel ne tienne pas sur la carte embarquée à cause d'un dépassement de charge de calcul ou d'utilisation de mémoire. Alors, nombreux dans notre filière optimisent leur code prématurément. Cette optimisation est pilotée par la peur et non par des faits. Voilà une source de gaspillage: il se peut bien que le code soit suffisamment performant! L'effort consacré à l'optimisation est alors perdu. De plus, le code est devenu plus complexe. C'est pourquoi, notre pratique est de ne pas optimiser prématurément le code.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Par contre, nous nous devons de surveiller les performances tôt et souvent. Le code est alors &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;optimisé au besoin et de manière ciblée&lt;/span&gt;&lt;span style="font-family:arial;"&gt; sur la base d'informations concrètes. En effet, nous pensions qu'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;il est plus aisé d'accélérer un code correcte que de corriger un code rapide&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. La prise de décision est facilitée en automatisant la mesure des performances et le profiling du code.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Néanmoins, cette pratique n'empêche pas d'optimiser prématurément le code. Voilà encore une raison pour laquelle nous pratiquons le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Pair Programming&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Le navigateur se doit de décourager le pilote d'optimiser prématurément le code.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Le prochain billet sera consacré au &lt;span style="font-weight: bold;"&gt;flux continu de valeur&lt;/span&gt;. A bientôt!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-315736326771450904?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/315736326771450904/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/315736326771450904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/315736326771450904'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html' title='LEAN, CARTOGRAPHIE DU FLUX DE VALEUR'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/Scc0qJAej7I/AAAAAAAABNw/NEoAmLBb7xU/s72-c/bur_value_stream_map.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7821693264258776774</id><published>2009-03-21T05:22:00.000-07:00</published><updated>2009-04-05T01:40:45.888-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>LEAN, LA VALEUR</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/ScTiw32yehI/AAAAAAAABNQ/2EY-R0qBcpc/s1600-h/Lean-process.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 343px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/ScTiw32yehI/AAAAAAAABNQ/2EY-R0qBcpc/s400/Lean-process.jpg" alt="" id="BLOGGER_PHOTO_ID_5315622789459376658" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Le premier des 5 piliers du &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Lean &lt;/span&gt;&lt;span style="font-family:arial;"&gt;est la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Valeur&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Il s'agit de spécifier la valeur du &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;point de vue du client final&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Pour nous, développeurs, il s'agit le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;développer le bon produit&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;COMMENT PROCÉDONS-NOUS?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Extreme-Programming&lt;/span&gt;&lt;span style="font-family:arial;"&gt; recommande d'adopter une organisation de projet avec un &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;client sur site&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.  Malheureusement, nous ne pouvons pas pas inclure un avionneur, un pilote et un certificateur dans chacune de nos équipes. Alors, comme recommandé dans &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Scrum&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, nos équipes ont chacune un &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Product Owner&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Il s'agit d'un expert du domaine qui représente l'avionneur et le pilote. D'autre part, un &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;responsable qualité&lt;/span&gt;&lt;span style="font-family:arial;"&gt; est affecté à chaque projet. Il est le représentant du certificateur. Ainsi, le point de vue des différents clients est pris en compte.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="display: block;font-family:arial;" id="formatbar_Buttons" &gt;&lt;span class="on down" style="display: block;" id="formatbar_Bold" title="Gras" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 3);ButtonMouseDown(this);"&gt;&lt;img src="http://www.blogger.com/img/blank.gif" alt="Gras" class="gl_bold" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;Le Product Owner exprime la valeur sous forme d'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;exigences&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Il donne ses critères de satisfaction en fournissant des &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;tests de recette&lt;/span&gt;&lt;span style="font-family:arial;"&gt; à automatiser.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le Product Owner &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;priorise &lt;/span&gt;&lt;span style="font-family:arial;"&gt;les exigences dans le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Backlog Produit&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Ces priorités cherchent à maximiser le retour sur investissement du client. Comme ces priorités pilotent la succession des itréations, c'est le déroulement du développement qui cherche à &lt;span style="font-weight: bold;"&gt;maximiser le retour sur investissement du client&lt;/span&gt;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Lorsque les équipes sont volumineuses, elles sont redivisées en sous-équipes plus petites. Chaque sous-équipe contient son propre Product Owner. Afin de s'assurer que les priorités de chaque sous-équipe restent compatibles et respectent celles du client final, le projet est piloté par un &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Super Product Owner&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Au delà de la découpe du produit en sous-éléments, il est le garant de la vision produit et du point de vue du client final.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;prochain billet abordera le second pilier du Lean: le &lt;/a&gt;&lt;/span&gt;&lt;a href="http://emmanuelchenu.blogspot.com/2009/03/lean-cartographie-du-flux-de-valeur.html"&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Flux de Valeur&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;. A bientôt!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7821693264258776774?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7821693264258776774/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html#comment-form' title='4 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7821693264258776774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7821693264258776774'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/lean-la-valeur.html' title='LEAN, LA VALEUR'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/ScTiw32yehI/AAAAAAAABNQ/2EY-R0qBcpc/s72-c/Lean-process.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4477922795937843552</id><published>2009-03-13T12:41:00.000-07:00</published><updated>2009-07-15T07:42:07.676-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Critique'/><title type='text'>EXTREME PROGRAMMING CRITIQUE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sl3qtVa418I/AAAAAAAABXY/_1FgM0HQO3Y/s1600-h/avion2.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 371px; height: 400px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sl3qtVa418I/AAAAAAAABXY/_1FgM0HQO3Y/s400/avion2.png" alt="" id="BLOGGER_PHOTO_ID_5358697196205692866" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;La pratique de l'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Extreme Programming&lt;/span&gt;&lt;span style="font-family:arial;"&gt; est très peu répandue pour le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;développement de logiciels critiques&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Ces applications sont utilisées dans l'avionique, le médical, le ferroviaire, le nucléaire et l'automobile.&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LES ALEAS DU LOGICIEL CRITIQUE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les logiciels critiques doivent être &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;certifiés &lt;/span&gt;&lt;span style="font-family:arial;"&gt;par un organisme spécialisé pour garantir la sûreté de fonctionnement.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;La certification est obtenue après une série d'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;audits&lt;/span&gt;&lt;span style="font-family:arial;"&gt; exigeant la fourniture des &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;preuves des activités&lt;/span&gt;&lt;span style="font-family:arial;"&gt; menées pour garantir la sûreté de fonctionnement.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Par exemple, l'organisme certifacteur va s'assurer que le logiciel contient &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;exclusivement &lt;/span&gt;&lt;span style="font-family:arial;"&gt;du code implémentant les besoins opérationnels du produit. L'implémentation de tous les besoins opérationnels et tout le code devront être &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;vérifiés par des tests&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Ces tests devront être joués sur la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;version finale&lt;/span&gt;&lt;span style="font-family:arial;"&gt; du logiciel. Ainsi, un changement même mineur du code de la version finale implique que l'intégralité des tests devront être rejoués. Ceci peut représenter un coût considérable si les tests sont joués manuellement par un opérateur. Enfin, tous les produits du développement &lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;(exigences, documents, traçabilité, architecture, code, tests) &lt;/span&gt;&lt;span style="font-family:arial;"&gt;devront être &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;revus&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les projets de développement de logiciels critiques sont clairement marqués par les processus, les outils, la documentation et la recherche de la conformité aux plans. Le développement logiciel agile et l'Extreme programming en particulier sont-ils applicables dans ce secteur?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;EXTREME SURETE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Certaines pratiques de l'Extreme Programming se révèlent être &lt;span style="font-weight: bold;"&gt;une grande aide au développement de logiciels critiques&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;La &lt;span style="font-weight: bold;"&gt;construction incrémentale&lt;/span&gt; pilotée par les &lt;span style="font-weight: bold;"&gt;besoins opérationnels&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(les user stories)&lt;/span&gt; et les &lt;span style="font-weight: bold;"&gt;tests d'acceptation&lt;/span&gt; assure que le code n'est écrit que pour faire passer les tests d'acceptation d'un besoin opérationnel. Ainsi, le logiciel contient exclusivement du code implémentant des besoins opérationnels.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les &lt;span style="font-weight: bold;"&gt;tests d'acceptation systématiques&lt;/span&gt; assurent que la prise en compte de tous les besoins opérationnels sont vérifiés par test.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les&lt;span style="font-weight: bold;"&gt; tests dévéloppeur systématiques &lt;/span&gt;assurent que tout le code est vérifié par test.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;La pratique du &lt;span style="font-weight: bold;"&gt;Test First Programming &lt;/span&gt;assure que les tests sont indépendants du code qu'ils vérifient puisqu'ils sont écrits avant même le code.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les tests d'acceptation et développeur sont automatisés et vérifient leurs résultats. L'intégralité de ces tests est &lt;span style="font-weight: bold;"&gt;automatiquement rejouée&lt;/span&gt; par l'outil d'Intégration Continue dès que le code est modifié. Ainsi, la dernière version du logiciel est toujours &lt;span style="font-weight: bold;"&gt;intégralement et rigoureusement testée de manière reproductible&lt;/span&gt; à faible coût.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le &lt;span style="font-weight: bold;"&gt;Pair Programming &lt;/span&gt;assure que les produits sont revus en continu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;ADAPTATION&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les pratiques d'XP ne fournissent pas le niveau de formalisme requis par les audits de certification. Certaines pratiques devront être adaptées et d'autres ajoutées. Par exemple, la documentation devra être considérée comme faisant partie du produit. Elle devra alors être incrémentalement rédigée au fil des itérations afin de rester potentiellement livrable.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;CONCLUSION&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les pratiques disciplinées et rigoureuses de l'Extreme Programming sont une aide au développement de logiciels critiques. Par contre, les pratiques doivent être adaptées pour fournir le niveau de formalisme requis par les audits de certification.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4477922795937843552?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4477922795937843552/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-critique_13.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4477922795937843552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4477922795937843552'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-critique_13.html' title='EXTREME PROGRAMMING CRITIQUE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sl3qtVa418I/AAAAAAAABXY/_1FgM0HQO3Y/s72-c/avion2.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7274809154887446650</id><published>2009-03-11T09:23:00.001-07:00</published><updated>2009-06-10T10:12:43.804-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Critique'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>MOINS CHERS ET PLUS SURS</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SbfrBlxjbDI/AAAAAAAABNI/Mk_dXqYuQls/s1600-h/ouvriereskl6.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 312px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SbfrBlxjbDI/AAAAAAAABNI/Mk_dXqYuQls/s400/ouvriereskl6.jpg" alt="" id="BLOGGER_PHOTO_ID_5311972698059140146" border="0" /&gt;&lt;/a&gt;Aujourd'hui, &lt;a href="http://www.agilex.fr/"&gt;Alex&lt;/a&gt; et moi avons rapidement traversé un labo d'intégration et de validation de logiciels critiques. Tout en discutant nous avons remarqué que: &lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;plusieurs opérateurs déroulaient des procédures de test &lt;span style="font-weight: bold;"&gt;à la main&lt;/span&gt;;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;un des opérateurs rédigeait un SMS sur son téléphone portable tout en déroulant &lt;span style="font-weight: bold;"&gt;à la main&lt;/span&gt; une procédure de test. Nous ne pouvons pas lui en vouloir, la procédure de test manuelle est sûrement assommante et ce n'est probablement la première fois que l'opérateur déroule cette même procédure. De plus, il ne s'agit pas d'une exécution de test comptant pour une certification de sûreté de fonctionnement.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;De cette petite visite, nous avons tiré les conclusions suivantes: &lt;/div&gt;&lt;ul  style="text-align: justify;font-family:arial;"&gt;&lt;li&gt;des tests automatisés&lt;span style="font-weight: bold;"&gt; réduiraient le coût&lt;/span&gt; des tests déroulés dans ce labo;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;a href="http://www.agilex.fr/"&gt;Alex&lt;/a&gt; et moi aurions &lt;span style="font-weight: bold;"&gt;plus confiance&lt;/span&gt; en un logiciel vérifié par un test automatisé qu'en un logiciel vérifié par un opérateur distrait.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Bref, par rapport à des tests manuels, les tests automatisés sont &lt;span style="font-weight: bold;"&gt;économiquement plus intéressants&lt;/span&gt; et &lt;span style="font-weight: bold;"&gt;améliorent la sûreté de fonctionnement&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Une troisième pensée me vient en rédigeant ce billet. Rien ne vaut &lt;span style="font-weight: bold;"&gt;aller et constater par soi-même&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(ou &lt;/span&gt;&lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Genchi_Genbutsu"&gt;Genchi Genbutsu&lt;/a&gt;&lt;span style="font-style: italic;"&gt; en Japonais)&lt;/span&gt;, conformément au &lt;a href="http://en.wikipedia.org/wiki/The_Toyota_Way"&gt;Toyota Way&lt;/a&gt;. Impossible de parler d'&lt;a href="http://www.agilex.fr/"&gt;Alex&lt;/a&gt; sans évoquer le Lean ;o)&lt;br /&gt;&lt;br /&gt;A la prochaine &lt;a href="http://www.agilex.fr/"&gt;Alex&lt;/a&gt;!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7274809154887446650?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7274809154887446650/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/de-linteret-des-tests-de-recette.html#comment-form' title='4 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7274809154887446650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7274809154887446650'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/de-linteret-des-tests-de-recette.html' title='MOINS CHERS ET PLUS SURS'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SbfrBlxjbDI/AAAAAAAABNI/Mk_dXqYuQls/s72-c/ouvriereskl6.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-626143268871312499</id><published>2009-03-09T10:19:00.000-07:00</published><updated>2009-04-05T01:39:52.436-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>EXTREME PROGRAMMING EMBARQUÉ</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SbWn_m9DzsI/AAAAAAAABM4/mgx-VSJCMmI/s1600-h/manuHW.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 245px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SbWn_m9DzsI/AAAAAAAABM4/mgx-VSJCMmI/s400/manuHW.jpg" alt="" id="BLOGGER_PHOTO_ID_5311336046783614658" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;La pratique de l'&lt;span style="font-weight: bold;"&gt;Extreme Programming&lt;/span&gt; est encore assez peu répandue pour le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;développement de logiciels embarqués&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LES AL&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;É&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;AS DE L'EMBARQU&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;É&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;En plus de difficultés classiques rencontrées en développement de logiciels, ce secteur est également confronté à des &lt;span style="font-weight: bold;"&gt;problèmes bien spécifiques&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le logiciel est souvent couplé à un HardWare &lt;span style="font-style: italic;"&gt;(HW)&lt;/span&gt; et un OperatingSystem &lt;span style="font-style: italic;"&gt;(OS) &lt;/span&gt;spécifiques. Parfois même, le HW et l'OS sont développés en parallèle du logiciel et ne sont donc disponibles que tard dans le projet et en faibles quantités. Ainsi, l'intégration avec le HW et l'OS est du type Big-Bang et trop tardive. L'activité de test est alors peu efficace puisque essentiellement composée de séances de debug sur la cible. Aussi, il est regrettable de vérifier des algorithmes métier complexes sur un environnement aussi peu ergonomique que la carte embarquée.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Enfin, les développeurs sont confrontés au temps-réel, à la concurrence et au ressources limitées en charge de calcul et en mémoire.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Historiquement, les projets embarqués ont plutôt la réputation d'être marqués par les processus, les outils, la documentation et la recherche de la conformité aux plans. Bref, nous sommes bien loin du développement logiciel agile.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;EXTRÊME PROGRAMMING EMBARQU&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;É&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Pourtant, certaines pratiques techniques de l'Extreme Programming se révèlent être &lt;span style="font-weight: bold;"&gt;une grande aide au développement de logiciels embarqués&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;La pratique du &lt;span style="font-weight: bold;"&gt;pilotage par les tests&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(TDD)&lt;/span&gt; amène naturellement  à découpler le code. Pour un logiciel embarqué cela conduit à isoler et réduire les dépendances vers le HW et l'OS pour de simples raisons de testabilité. Une telle conception pilotée par les tests permet alors de jouer des suites de tests sur une machine de développement&lt;span style="font-style: italic;"&gt; (et non sur la cible) &lt;/span&gt;avec des &lt;/span&gt;&lt;a style="font-family: arial;" href="http://martinfowler.com/articles/mocksArentStubs.html"&gt;mocks et stubs&lt;/a&gt; du HW et de l'OS.&lt;span style="font-family:arial;"&gt; Ainsi, la quasi-totalité du code est &lt;/span&gt;&lt;a style="font-family: arial;" href="http://masters.donntu.edu.ua/2005/fvti/semisalova/library/progressbeforehardware.pdf"&gt;testée et intégrée bien avant la disponibilité du HW et de l'OS&lt;/a&gt;&lt;span style="font-family:arial;"&gt;!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Lorsque la cible est enfin disponible, les suites de tests sont rejouées sur celle-ci. Avec un langage de programmation tel que Ada, la construction des suites de tests avec une version native de la runtime Ada embarquée permet même de rejouer les tests sur la cible sans adaptation particulière &lt;span style="font-style: italic;"&gt;(autre que la compilation croisée pour le processeur cible)&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le plus étonnant est que l'indisponibilté du HW et de l'OS, jadis une difficulté, est dévenue un atout! En effet, le découplage exigé par le TDD et rendu possible par un langage de programmation orienté-objet impose de bien concevoir les dépendances en séparant les problèmes. Les interfaces avec le HW et l'OS sont donc isolées du code métier. Les algorithmes métier complexes sont testés d'un côté sur une machine de développement et les les interfaces avec le HW et l'OS sont testés par ailleurs sur la cible.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ainsi, gràce à la confiance que le développeur a en son code pleinement testé, il sait que les problèmes qu'il rencontrera &lt;span style="font-style: italic;"&gt;(peut-être tardivement) &lt;/span&gt;en intégrant sur la cible ne concerneront plus que les interfaces avec le HW et l'OS, le temps-réel, la concurrence et les ressources limitées en mémoire et charge de calcul.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;EXTRÊME SÛRETÉ&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Parfois les logiciels embarqués sont également critiques, c'est à dire sûrs de fonctionnement. Je consacrerai &lt;a href="http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-critique_13.html"&gt;un prochain billet sur cette difficulté additionnelle&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-626143268871312499?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/626143268871312499/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-embarque.html#comment-form' title='4 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/626143268871312499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/626143268871312499'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/extreme-programming-embarque.html' title='EXTREME PROGRAMMING EMBARQUÉ'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SbWn_m9DzsI/AAAAAAAABM4/mgx-VSJCMmI/s72-c/manuHW.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1034181581411184914</id><published>2009-03-02T03:26:00.000-08:00</published><updated>2009-03-02T06:15:25.063-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><title type='text'>TESTER LES IHM</title><content type='html'>&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SavNUjpF9RI/AAAAAAAABMY/tsdzK1aZTCQ/s1600-h/humbledialog.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 282px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SavNUjpF9RI/AAAAAAAABMY/tsdzK1aZTCQ/s400/humbledialog.JPG" alt="" id="BLOGGER_PHOTO_ID_5308562338834937106" border="0" /&gt;&lt;/a&gt;Comme beaucoup de monde, nous nous sommes cassé les dents sur l'&lt;span style="font-weight: bold;"&gt;automatisation des tests d'IHM&lt;/span&gt;. Dommage que je ne connaissais pas à l'époque le petit pattern que &lt;a href="http://www.michaelfeathers.com/"&gt;Michael Feather&lt;/a&gt;&lt;a href="http://www.michaelfeathers.com/"&gt;s&lt;/a&gt; a décrit dans ce court article: &lt;a href="http://www.objectmentor.com/resources/articles/TheHumbleDialogBox.pdf"&gt;The Humble Dialog Box&lt;/a&gt;.&lt;br /&gt;Dans sa démarche, la couverture par les tests automatisés n'est pas exhaustive, mais elle est déjà bien optimisée. Et puis sa solution a le mérite de la simplicité. Ce n'est pas rien...&lt;br /&gt;&lt;br /&gt;Son principe est de ne &lt;span style="font-weight: bold;"&gt;mettre aucune logique dans les classes des widgets&lt;/span&gt;. Ce code est extrait du widget pour être mis dans une classe écrite en &lt;a href="http://en.wikipedia.org/wiki/Test-driven_development"&gt;Test First Programming&lt;/a&gt; et dépendant d'une interface du widget.&lt;br /&gt;Pour les besoins des tests automatisés, l'interface du &lt;a href="http://en.wikipedia.org/wiki/GUI_widget"&gt;widget&lt;/a&gt; est implémentée dans la &lt;a href="http://en.wikipedia.org/wiki/Test_fixture"&gt;fixture du test unitaire&lt;/a&gt; par un &lt;a href="http://martinfowler.com/articles/mocksArentStubs.html"&gt;stub ou un mock &lt;span style="font-style: italic;"&gt;(au choix selon les goûts)&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;En revanche, pour l'application en production, l'interface du widget est implémentée par un vrai widget qui a l'humilité de &lt;span style="font-weight: bold;"&gt;déléguer le traitement de tous les évènements graphiques&lt;/span&gt; à une instance de la classe "intelligente". Ce code de délégation n'est pas testé de manière automatisé mais le risque est limité à du code "humble".&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.michaelfeathers.com/"&gt;Michael Feather&lt;/a&gt;&lt;a href="http://www.michaelfeathers.com/"&gt;s&lt;/a&gt; est un testeur héroique. Il se confronte aux pires cas. Après le test automatisé des IHM, il s'est attaqué au test automatisé du "legacy code", c'est à dire des applications écrites sans tests. Il y a consacré un livre: &lt;a href="http://www.amazon.fr/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052/ref=sr_1_1?ie=UTF8&amp;amp;s=english-books&amp;amp;qid=1235668062&amp;amp;sr=1-1"&gt;Working Effectively With Legacy Code&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;J'étais déjà tombé par hasard sur &lt;a href="http://www.objectmentor.com/resources/articles/TheHumbleDialogBox.pdf"&gt;The Humble Dialog Box&lt;/a&gt; il y a quelques années mais je l'avais négligé à tord. C'est ma lecture du moment &lt;a href="http://www.amazon.fr/xUnit-Test-Patterns-Refactoring-Code/dp/0131495054/ref=sr_1_1?ie=UTF8&amp;amp;s=english-books&amp;amp;qid=1234512282&amp;amp;sr=1-1"&gt;xUnit Test Patterns: Refactoring Test Code&lt;/a&gt; qui m'a redirigé vers cet article. Je reparlerai plus tard de ce livre assez génial qui impacte beaucoup ma manière de tester en ce moment.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1034181581411184914?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1034181581411184914/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/tester-les-ihm.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1034181581411184914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1034181581411184914'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/03/tester-les-ihm.html' title='TESTER LES IHM'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SavNUjpF9RI/AAAAAAAABMY/tsdzK1aZTCQ/s72-c/humbledialog.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5133141476903209975</id><published>2009-02-28T05:01:00.000-08:00</published><updated>2009-03-01T00:44:08.361-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE GOUROU (V1)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sak16Y3st8I/AAAAAAAABL4/JFvbbSQEFmk/s1600-h/sw_guru.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 228px; height: 209px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sak16Y3st8I/AAAAAAAABL4/JFvbbSQEFmk/s400/sw_guru.jpg" alt="" id="BLOGGER_PHOTO_ID_5307832913057593282" border="0" /&gt;&lt;/a&gt;Le gourou s'est rendu indispensable pour l'organisation. Il maitrise un savoir faire incontournable. Les développeurs viennent le consulter dans son antre. Il dispense conseils et solutions techniques à la demande.&lt;br /&gt;&lt;br /&gt;Il intervient rarement à plein temps sur un projet mais  plutôt ponctuellement lors d'opérations de sauvetage.&lt;br /&gt;&lt;br /&gt;Le gourou est une évolution de l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html"&gt;architecte&lt;/a&gt;, du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt; ou plus rarement du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-pragmatique-v1.html"&gt;pragmatique&lt;/a&gt;. Plus particulièrement, il est l'évolution ultime du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt;. A force de se spécialiser dans une technologie stratégique et par rétention d'information, le &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt; sécurise son avenir en devenant enfin un gourou.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Généralement, le gourou intervient ponctuellement dans les équipes. Il détient une position transverse à tous les projets et à toutes les équipes. Cette situation présente l'inconvénient de la solitude et l'avantage de ne jamais couler avec un projet en difficulté.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;RELATIONS AVEC LES AUTRES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le gourou se moque doucement du folklore du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-collectiviste-v1.html"&gt;collectiviste&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5133141476903209975?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5133141476903209975/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-gourou-v1.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5133141476903209975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5133141476903209975'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-gourou-v1.html' title='LE GOUROU (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sak16Y3st8I/AAAAAAAABL4/JFvbbSQEFmk/s72-c/sw_guru.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4208894138985280225</id><published>2009-02-27T03:15:00.001-08:00</published><updated>2009-02-27T13:36:37.802-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE STAGIAIRE (V1)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SafLj6ZtfAI/AAAAAAAABLw/csUbVVBGEAM/s1600-h/sw_stagiaire.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 204px; height: 250px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SafLj6ZtfAI/AAAAAAAABLw/csUbVVBGEAM/s400/sw_stagiaire.jpg" alt="" id="BLOGGER_PHOTO_ID_5307434503712373762" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family: arial;"&gt;Le stagiaire est au plus bas de l'échelle sociale dans l'organisation. Il est de passage et corvéable à merci. Parfois son travail est utilisé.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Le stagiaire est rarement réellement intégré à l'équipe.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;RELATIONS AVEC LES AUTRES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Le stagiaire est ignoré par beaucoup, sauf par son maitre de stage (quoique...) et par le &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2009/02/le-collectiviste-v1.html"&gt;collectiviste&lt;/a&gt;&lt;span style="font-family: arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Il retrouve d'autres stagiaires lors des pauses et des repas.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4208894138985280225?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4208894138985280225/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-stagiaire-v1.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4208894138985280225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4208894138985280225'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-stagiaire-v1.html' title='LE STAGIAIRE (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SafLj6ZtfAI/AAAAAAAABLw/csUbVVBGEAM/s72-c/sw_stagiaire.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5020719476043776512</id><published>2009-02-26T12:00:00.001-08:00</published><updated>2009-02-26T12:25:34.984-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE COLLECTIVISTE (V1)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sab0-L4Ep-I/AAAAAAAABLo/9Zei8nGKHA0/s1600-h/sw_collectiviste.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 157px; height: 230px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/Sab0-L4Ep-I/AAAAAAAABLo/9Zei8nGKHA0/s400/sw_collectiviste.jpg" alt="" id="BLOGGER_PHOTO_ID_5307198560079751138" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Le collectiviste vit pour l'équipe. Selon lui, les individus se réalisent dans l'équipe. L'efficacité de l'équipe est la clé de la réussite du projet. Il est constamment à la recherche de pratiques permettant à l'équipe de s'améliorer. Le consensus, l'auto-organisation et l'amélioration continue sont sacrés.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le collectiviste a trouvé son salut dans le &lt;span style="font-weight: bold;"&gt;développement logiciel Agile&lt;/span&gt;. Voilà enfin une démarche centrée sur l'humain. Bien sur il est &lt;span style="font-weight: bold;"&gt;ScrumMaster &lt;/span&gt;ou &lt;span style="font-weight: bold;"&gt;coach Agile&lt;/span&gt;. S'il le pouvait, il ne ferait d'ailleurs que cela. Ses heures de gloire sont les stand-up meeting &lt;span style="font-style: italic;"&gt;(il y en a un par jour!)&lt;/span&gt;, les réunions de planification, de revue et LA RÉTROSPECTIVE! A l'occasion de cette réunion qu'il transforme en véritable messe, il sort de ses livres des outils anglo-saxons pour aider les équipiers à s'exprimer. Il prône de très courtes itérations. Cela multiplie la fréquence de ces moments de partage en équipe. &lt;br /&gt;&lt;br /&gt;Certains recherchent les anti-patterns dans le logiciel et remanient vers les design-patterns. Lui détecte les anti-patterns comportementaux et remanie l'équipe vers des patterns organisationnels.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial; font-weight: bold;font-family:arial;" &gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;  &lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le collectiviste mise tout sur le travail en équipe. Il est intiment convaincu que le travail de l'équipe est supérieur à la somme des contribution individuelles de ses membres.&lt;/span&gt;&lt;span style="font-family: arial;font-family:arial;" &gt; Il organise les tours de croissants le Vendredi, les rétrospectives d'itération, les repas d'équipe, les tours de tables, les pauses café en groupe, le démarrage de la bouilloire et la rotation des binômes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;span style="font-weight: bold;"&gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;Le collectiviste s'extasie devant le &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-binome-v1.html"&gt;binôme&lt;/a&gt;, symbole de partage.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;Le collectiviste cherche à débarrasser l'équipe du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt;, cet infâme individualiste..&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5020719476043776512?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5020719476043776512/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-collectiviste-v1.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5020719476043776512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5020719476043776512'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-collectiviste-v1.html' title='LE COLLECTIVISTE (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/Sab0-L4Ep-I/AAAAAAAABLo/9Zei8nGKHA0/s72-c/sw_collectiviste.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8332218683480653601</id><published>2009-02-25T10:33:00.000-08:00</published><updated>2009-04-05T01:39:16.539-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>L'HOMME/MOIS (V2)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SXs0LF7R0PI/AAAAAAAAA24/AxkIQZkQKKY/s1600-h/sw_homme_mois.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 228px; height: 258px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SXs0LF7R0PI/AAAAAAAAA24/AxkIQZkQKKY/s400/sw_homme_mois.jpg" alt="" id="BLOGGER_PHOTO_ID_5294883152078164210" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;L'homme/mois fournit un mois de développement par mois.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les hommes/mois se cumulent. Il parait que N hommes/mois travaillant en équipe pendant 1 mois développent comme un homme/mois pendant N mois. Ceci expliquerait pourquoi certains managers raffolent des hommes/mois. Il parait aussi que l'homme/mois est un mythe, comme l'affirme &lt;a href="http://emmanuelchenu.blogspot.com/2008/02/mythical-man-month-de-frederick-p.html"&gt;un certain Brooks&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'homme/mois apprécie l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html"&gt;architecte&lt;/a&gt; car il lui permet de faire sans penser.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html"&gt;architecte&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;apprécie&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;l'homme/mois &lt;/span&gt;&lt;span style="font-family:arial;"&gt;car il lui permet de &lt;/span&gt;&lt;span style="font-family:arial;"&gt;penser &lt;/span&gt;&lt;span style="font-family:arial;"&gt;sans &lt;/span&gt;&lt;span style="font-family:arial;"&gt;faire &lt;span style="font-style: italic;"&gt;(Merci Thomas L. pour cette remarque ;o)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8332218683480653601?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8332218683480653601/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/lhomme-mois-v1.html#comment-form' title='8 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8332218683480653601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8332218683480653601'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/lhomme-mois-v1.html' title='L&apos;HOMME/MOIS (V2)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SXs0LF7R0PI/AAAAAAAAA24/AxkIQZkQKKY/s72-c/sw_homme_mois.jpg' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3009821868847023651</id><published>2009-02-24T12:38:00.000-08:00</published><updated>2009-02-24T12:44:41.790-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE BINOME (V1)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SXb8lR58QeI/AAAAAAAAA2k/3qCgQBGbfx8/s1600-h/sw_binome.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 283px; height: 241px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SXb8lR58QeI/AAAAAAAAA2k/3qCgQBGbfx8/s400/sw_binome.jpg" alt="" id="BLOGGER_PHOTO_ID_5293696129412383202" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Le binôme ne développe jamais seul. Son partenaire n'est pas son siamois, il permute volontiers.&lt;/span&gt; &lt;span style="font-family:arial;"&gt;En général, il est une mutation du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-pragmatique-v1.html"&gt;développeur pragmatique&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il travaille en équipe: elle lui fournit ses partenaires.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le binôme est un &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-pragmatique-v1.html"&gt;pragmatique&lt;/a&gt;. Il trouve que le &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt; l'a rejeté impoliment lorsqu'il lui a proposé de binômer.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il trouve que l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html"&gt;architecte&lt;/a&gt; travaille bien seul ...&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3009821868847023651?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3009821868847023651/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-binome-v1.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3009821868847023651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3009821868847023651'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-binome-v1.html' title='LE BINOME (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SXb8lR58QeI/AAAAAAAAA2k/3qCgQBGbfx8/s72-c/sw_binome.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8122920525426444690</id><published>2009-02-24T12:33:00.001-08:00</published><updated>2009-02-24T12:37:43.291-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE PRAGMATIQUE (V1)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXb8akW5htI/AAAAAAAAA2c/laFRVun1EtI/s1600-h/sw_archi_pragma.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 290px; height: 267px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXb8akW5htI/AAAAAAAAA2c/laFRVun1EtI/s400/sw_archi_pragma.jpg" alt="" id="BLOGGER_PHOTO_ID_5293695945387116242" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Le développeur pragmatique est un praticien. Il pratique les tests, le remaniement, la programmation par assertions, la programmation par contrat, l'intégration continue.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il travaille en équipe: il sait qu'il n'arrivera jamais au bout du projet seul.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il trouve que la conception de l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html"&gt;architecte&lt;/a&gt; n'est pas encore pertinente car non testée.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il rappelle au &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt; et au &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-cowboy-codeur-v1.html"&gt;cowboy codeur&lt;/a&gt; qu'ils ont cassé le build et que leur code n'est pas couvert par des tests.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8122920525426444690?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8122920525426444690/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-pragmatique-v1.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8122920525426444690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8122920525426444690'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-pragmatique-v1.html' title='LE PRAGMATIQUE (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SXb8akW5htI/AAAAAAAAA2c/laFRVun1EtI/s72-c/sw_archi_pragma.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8340577110546945720</id><published>2009-02-23T11:18:00.000-08:00</published><updated>2009-03-04T06:47:30.953-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>L'ARCHITECTE (V2)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXb8RZoy7jI/AAAAAAAAA2U/LUfvQLsQDZ0/s1600-h/sw_archi_theo.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 192px; height: 265px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXb8RZoy7jI/AAAAAAAAA2U/LUfvQLsQDZ0/s400/sw_archi_theo.jpg" alt="" id="BLOGGER_PHOTO_ID_5293695787890568754" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;L'architecte pense, anticipe, modélise et documente. Désormais, il est au-delà du code et des tests. Éventuellement, il accepte de prototyper une de ses idées.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il travaille en équipe: l'équipe est là pour transformer ses architectures et prototypes en produits opérationnels. Elle concrétise ce qu'il a pensé.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;MUTATION CONNUE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une mutation de l'architecte est assez répandue: l'expert en processus de développement.  Il sait comment l'équipe doit travailler. Lui aussi travaille en équipe: l'équipe développe en appliquant son processus.&lt;/span&gt; &lt;span style="font-family:arial;"&gt;Son outil préféré est souvent la présentation Powerpoint.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ces deux personnages ont en commun le don de penser pour ceux qui font.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il se méfie du &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-cowboy-codeur-v1.html"&gt;cowboy codeur&lt;/a&gt; car il ne l'écoute pas.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il n'apprécie pas le &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html"&gt;moine codeur&lt;/a&gt; car il ne fait que ce qu'il veut.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-pragmatique-v1.html"&gt;pragmatique&lt;/a&gt; l'irrite car il a un avis à proposer.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-binome-v1.html"&gt;binôme&lt;/a&gt; l'irrite car ils sont deux à avoir un même avis à proposer.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;architecte apprécie&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/lhomme-mois-v1.html"&gt;homme/mois&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;car il lui permet de &lt;/span&gt;&lt;span style="font-family:arial;"&gt;penser &lt;/span&gt;&lt;span style="font-family:arial;"&gt;sans &lt;/span&gt;&lt;span style="font-family:arial;"&gt;faire &lt;span style="font-style: italic;"&gt;(Merci Thomas L. pour cette remarque ;o)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8340577110546945720?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8340577110546945720/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8340577110546945720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8340577110546945720'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html' title='L&apos;ARCHITECTE (V2)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SXb8RZoy7jI/AAAAAAAAA2U/LUfvQLsQDZ0/s72-c/sw_archi_theo.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4721298678735360726</id><published>2009-02-23T11:14:00.000-08:00</published><updated>2009-02-23T23:19:17.227-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE COWBOY CODEUR (V1)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SXb8JMhkkTI/AAAAAAAAA2M/lLx3qM-ZE6E/s1600-h/sw_cowboy.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 233px; height: 246px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SXb8JMhkkTI/AAAAAAAAA2M/lLx3qM-ZE6E/s400/sw_cowboy.jpg" alt="" id="BLOGGER_PHOTO_ID_5293695646931652914" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Le cowboy codeur n'a pas froid aux yeux. Quand il faut développer, il code. Gestion de versions, conception, modèles sur un tableau blanc et tests ne font pas partie de sa panoplie.  Le débuggeur suffit. Un build cassé est un étape transitoire et sans conséquence en attendant qu'il finisse de coder.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le cowboy codeur travaille en équipe : il sait qu'il ne pourra pas tout coder. Aussi, il parait qu'il existerait d'autres activités que le codage et il faudra bien que quelqu'un d'autre s'y consacre. Bref, l'équipe ne lui pose pas de problème tant qu'elle ne le déroute pas du codage.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Le cowboy codeur ignore l'&lt;a href="http://emmanuelchenu.blogspot.com/2009/02/larchitecte-v1.html"&gt;architecte &lt;/a&gt;sous toutes ses formes (concepteur et expert en processus).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4721298678735360726?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4721298678735360726/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-cowboy-codeur-v1.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4721298678735360726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4721298678735360726'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-cowboy-codeur-v1.html' title='LE COWBOY CODEUR (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SXb8JMhkkTI/AAAAAAAAA2M/lLx3qM-ZE6E/s72-c/sw_cowboy.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1617943431264709881</id><published>2009-02-22T07:50:00.001-08:00</published><updated>2009-02-24T12:40:34.262-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Caricatures'/><title type='text'>LE MOINE CODEUR (V1)</title><content type='html'>&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SXb8BbMEY5I/AAAAAAAAA2E/cFX2m8O-jwk/s1600-h/sw_moine.jpg"&gt;&lt;/a&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 208px; height: 244px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SXb8BbMEY5I/AAAAAAAAA2E/cFX2m8O-jwk/s400/sw_moine.jpg" alt="" id="BLOGGER_PHOTO_ID_5293695513429042066" border="0" /&gt;J'entame une galerie de portraits. Ils caricaturent des développeurs avec qui j'ai eu l'occasion de travailler. Il ne s'agit pas de personnes mais plutôt d'attitudes. Parfois ces comportements sont temporaires, périodiques ou tenaces. Peut être avez-vous rencontré certains de ces développeurs? L'exercice n'est pas professionnel voire un peu cruel, mais cela fait du bien. En tout cas, n'hésitez à me proposer d'autres candidats en laissant des commentaires!&lt;br /&gt;&lt;br /&gt;Dans la mesure du possible, je vais essayer d'illustrer ces développeurs en Lego. Si je n'y arrive pas, je reviendrai au dessin.&lt;br /&gt;&lt;br /&gt;La première caricature est dédiée au moine codeur. Pour le décrire, je lui avais déjà consacré une &lt;a href="http://emmanuelchenu.blogspot.com/2008/01/le-moine-codeur.html"&gt;petite bande dessinée&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Le moine codeur est un solitaire, un reclus. L'équipe est une contrainte. Elle le gène et le ralenti dans son travail. Il s'isole pour pratiquer son expertise. Il partage information et connaissances au compte goutte. Ainsi, il est et restera indispensable et incontournable. Il sait ce qu'il a à développer et en conséquence consulte exceptionnellement le client ou son représentant. Les notions de spécifications, backlog et priorités ont été inventés pour piloter les novices.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE TRAVAIL EN ÉQUIPE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Il n'a de pas de temps à consacrer au travail en équipe.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;RELATIONS AVEC LES DÉVELOPPEURS DE L'ÉCOSYSTÈME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le moine codeur est un &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-cowboy-codeur-v1.html"&gt;cowboy codeur&lt;/a&gt; solitaire et reclus. Pour lui, les &lt;a href="http://emmanuelchenu.blogspot.com/2009/02/le-binome-v1.html"&gt;binômes &lt;/a&gt;sont des faibles.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1617943431264709881?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1617943431264709881/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1617943431264709881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1617943431264709881'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/jentame-une-galerie-de-portraits.html' title='LE MOINE CODEUR (V1)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SXb8BbMEY5I/AAAAAAAAA2E/cFX2m8O-jwk/s72-c/sw_moine.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2042103727615395941</id><published>2009-02-22T05:12:00.000-08:00</published><updated>2010-06-18T13:20:45.605-07:00</updated><title type='text'>LE SOCLE TECHNIQUE</title><content type='html'>&lt;div style="text-align: justify;"&gt;Les bons résultats de nos pratiques éveillent la curiosité au sein de notre organisation. En conséquence, nous communiquons beaucoup en interne pour répondre à la demande d'information.&lt;br /&gt;&lt;br /&gt;Malheureusement, nous sommes maladroits dans nos communications puisque certains messages essentiels ne semblent pas passer efficacement. Nous voyons bien que les pratiques d'équipe et d'organisation séduisent et retiennent l'attention. Pourtant, ces pratiques ne sont viables que s'il existe un très solide socle de pratiques techniques. Produire des incréments de produit en courtes itérations mène à l'échec si ce socle technique n'est pas en place.&lt;br /&gt;&lt;br /&gt;Ce socle est constitué de rigoureuses pratiques techniques telles que le développement piloté par les tests, l'intégration continue, la programmation par contrats et la programmation orientée-objet. Le liant de ces pratiques est la recherche de l'excellence technique, à tout instant. Les solutions médiocres doivent être améliorées au plus vite pour ne pas augmenter la dette technique du projet.&lt;br /&gt;&lt;br /&gt;Malheureusement, ces pratiques sont moins séduisantes que les pratiques d'organisation telles que les stand up meetings, les backlogs, les réunions de planification et de rétrospective et le pilotage par Kanban.&lt;br /&gt;&lt;br /&gt;Étant donné le type de produits que nous développons, l'excellence technique est une exigence absolue. Dans le sens premier du terme, les tests sont vitaux dans notre créneau. Le pire qui pourrait nous arriver serait d'adopter les pratiques d'équipe et d'organisation en délaissant le pré-requis technique. Cela mettrait en péril le projet et donnerait une véhiculerait à tord une réputation aux méthodes agiles.&lt;br /&gt;&lt;br /&gt;Sans le même raisonnement, le pire qui pourrait nous arriver serait de louer les services de consultants qui ne seraient pas à 100% intégrés dans les équipes et qui ne s'impliqueraient pas personnellement dans l'application des pratiques techniques. Au risque de m'attirer les foudres de certains professionnels, je suis convaincu qu'il est plus pertinent de pousser des coach ayant un profil technique au sein de sa propre organisation comme recommandé dans le Toyota Way.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2042103727615395941?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2042103727615395941/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-socle-technique.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2042103727615395941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2042103727615395941'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/le-socle-technique.html' title='LE SOCLE TECHNIQUE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-2086329427035944608</id><published>2009-02-13T04:11:00.000-08:00</published><updated>2009-02-18T10:14:23.289-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='My Bookshelf'/><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>THE ENTERPRISE AND SCRUM, KEN SCHWABER</title><content type='html'>&lt;div style="text-align: justify; font-family: arial;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SZVjuKGlm9I/AAAAAAAAA4I/KOKe5UJiK-Q/s1600-h/enterpriseandscrum.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 186px; height: 227px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SZVjuKGlm9I/AAAAAAAAA4I/KOKe5UJiK-Q/s400/enterpriseandscrum.jpg" alt="" id="BLOGGER_PHOTO_ID_5302253780935744466" border="0" /&gt;&lt;/a&gt;En plus d'un an, nous avons beaucoup travaillé sur la mise en pratique de Scrum. Notamment, nous cherchons des solutions pour notre équipe qui monte encore en charge. Nous sommes dans le cadre d'un gros projet de développement.&lt;br /&gt;&lt;br /&gt;Alors, je me suis beaucoup documenté sur Scrum et avec &lt;a href="http://www.viadeo.com/fr/profile/nicolas.blanpain"&gt;Nicolas Blanpain&lt;/a&gt; nous avons même effectué la &lt;a href="http://emmanuelchenu.blogspot.com/2008/08/agile-project-management-with-scrum-ken.html"&gt;formation certifiante ScrumMaster&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;J'ai commencé par la lecture de &lt;a href="http://emmanuelchenu.blogspot.com/2008/01/agile-software-with-scrum-by-ken.html"&gt;Agile Software Development With Scrum&lt;/a&gt; puis de &lt;a href="http://emmanuelchenu.blogspot.com/2008/08/agile-project-management-with-scrum-ken.html"&gt;Agile Project Management With Scrum&lt;/a&gt;. Je viens de clore la trilogie de &lt;a href="http://www.controlchaos.com/"&gt;Ken Scwhaber&lt;/a&gt; avec &lt;a href="http://www.amazon.fr/Enterprise-Scrum-K-Schwaber/dp/0735623376/ref=sr_1_1?ie=UTF8&amp;amp;s=english-books&amp;amp;qid=1234527913&amp;amp;sr=1-1"&gt;The Enterprise And Scrum&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA FOLIE DES GRANDEURS?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ken a un sacré appétit. Il voit grand. De plus en plus grand.&lt;br /&gt;Etape 1: Scrum permet de bien piloter un développement de logiciel (&lt;a href="http://emmanuelchenu.blogspot.com/2008/01/agile-software-with-scrum-by-ken.html"&gt;Agile Software Development With Scrum&lt;/a&gt;);&lt;br /&gt;Etape 2: Scrum permet de bien piloter un projet. Scrum ne se limite plus au développement de logiciels. (&lt;a href="http://emmanuelchenu.blogspot.com/2008/08/agile-project-management-with-scrum-ken.html"&gt;Agile Project Management With Scrum&lt;/a&gt;);&lt;br /&gt;Etape 3: Scrum permet de bien piloter une entreprise. (&lt;a href="http://www.amazon.fr/Enterprise-Scrum-K-Schwaber/dp/0735623376/ref=sr_1_1?ie=UTF8&amp;amp;s=english-books&amp;amp;qid=1234527913&amp;amp;sr=1-1"&gt;The Enterprise And Scrum&lt;/a&gt;).&lt;br /&gt;La progression est notable.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;AGILE WORLD MANAGEMENT WITH SCRUM?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Et bien, je dois avouer que la gestion d'entreprise avec Scrum m'a ennuyé. Je n'ai pas accroché. Je suis fan de Ken Schwaber et de son style mais il ne m'a pas convaincu. Je ne dois pas être la cible type de ces propos. Pour autant, je ne regrette pas la lecture de ce livre. Au lieu de m'étendre sur mes déceptions je vais me concentrer sur ce qui m'a plu.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;QU'EST-CE QUI FREINE SCRUM?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Un chapitre est dédié aux comportements qui minimisent le retour sur investissement de l'application de Scrum. J'ai pu (malheureusement) reconnaitre dans mon expérience chacun des points identifiés. Je dois commencer à me faire vieux ... Notamment, j'ai bien reconnu l'&lt;span style="font-weight: bold;"&gt;engagement défiant les lois de la nature&lt;/span&gt;. Plus concrètement, une équipe identifie le restant à faire. L'équipe mesure et confirme sa vélocité sur plusieurs itérations. Mathématiquement, l'équipe voit qu'elle ne peut tenir le délai avec avec le contour souhaité par le client. Alors le management pousse à coup de "allez, on se retrousse les manches et on va réussir". Et bien non, on ne peut s'engager en défiant les lois de la nature. Cette attitude mène directement au point suivant.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA DETTE TECHNIQUE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dans ses conférences (&lt;a href="http://video.google.com/videoplay?docid=-7230144396191025011"&gt;chez Google&lt;/a&gt; et &lt;a href="http://www.infoq.com/presentations/agile-quality-canary-coalmine"&gt;Agile 2006&lt;/a&gt;), Ken Schwaber explique comment une organisation peut accumuler une dette technique et se saborder en essayant d'être trop ambitieuse sur sa vélocité. Un chapitre du livre et consacré à ce sujet. En deux mots: l'équipe s'engage (ou est poussée à d'engager) au delà des lois de la nature. Pour tenir les délais l'équipe lâche sur ce qui ne se voit pas : la qualité. Cette réaction marche à très court terme. Par contre, à moyen et long terme la dette technique accumulée immobilise le développement.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SCRUM ET LES PRATIQUES TECHNIQUES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;C'est le grand sujet du moment: Scrum n'est pas efficace sans l'ajout de sérieuses pratiques techniques. Ken Schwaber doit être lassé d'entendre cela car il insiste souvent sur le fait que tout incrément doit être potentiellement livrable. Cet objectif ne peut être tenu que si de solides pratiques techniques sont en place.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;L'ORGANISATION DE GRANDES EQUIPES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;J'ai retenu de bons conseils pour l'organisation de grosses équipes en petites sous-équipes Scrum. Pour minimiser les dépendances, les sous-équipes doivent produire des fonctionnalités orthogonales. Par contre, cela implique qu'aucune équipe n'est réellement responsable de la production d'un incrément de produit complet incluant toutes les fonctionnalités développées dans le sprint par les sous-équipes. C'est pourquoi Ken Schwaber recommande d'utiliser une sous-équipe Scrum chapeau ayant une vision produit complet. Cette équipe comprend le Product Owner du produit complet ainsi que toutes les compétences nécessaires pour transformer les fonctionnalités développées dans le sprint en un produit complet. Par exemple, cette équipe peut être responsable des moyens d'intégration et de recette du produit complet.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SCRUM POUR LES PRODUITS CRITIQUES&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dans le cadre du développement de logiciels critiques, Ken Schwaber recommande une pratique que nous appliquons déjà depuis plusieurs années. Chaque incrément doit être livré avec une traçabilité des exigences à jour.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EN CONCLUSION &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Finalement, je pense avoir bien fait de lire ce dernier livre de la trilogie. Je vais essayer d'en appliquer certaines recommandations concernant l'organisation des grosses équipes. Par contre, je vais désormais me remettre aux livres abordant des sujets techniques! C'est parti avec le pavé sur le remaniement des tests xUnit.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-2086329427035944608?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/2086329427035944608/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/enterprise-and-scrum-ken-scwhaber.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2086329427035944608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/2086329427035944608'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/enterprise-and-scrum-ken-scwhaber.html' title='THE ENTERPRISE AND SCRUM, KEN SCHWABER'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SZVjuKGlm9I/AAAAAAAAA4I/KOKe5UJiK-Q/s72-c/enterpriseandscrum.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8051382338134592770</id><published>2009-02-04T08:06:00.000-08:00</published><updated>2009-04-05T01:38:46.970-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><category scheme='http://www.blogger.com/atom/ns#' term='Articles'/><title type='text'>THE PRICK, LE SCRUMMASTER ET LE COACH (V3)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SY1loyuV6_I/AAAAAAAAA3o/YP_4z1_tk8s/s1600-h/sw_architectes.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 224px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SY1loyuV6_I/AAAAAAAAA3o/YP_4z1_tk8s/s400/sw_architectes.jpg" alt="" id="BLOGGER_PHOTO_ID_5300004087970262002" border="0" /&gt;&lt;/a&gt;Dans &lt;a href="http://video.google.com/videoplay?docid=-7230144396191025011"&gt;une de ses conférences, Ken Schwaber dit avec humour que le ScrumMaster d'un projet est aussi appelé le "prick"&lt;/a&gt;. Il hérite de ce surnom peu envieux car il est la personne la moins aimée du projet. Il est mal aimé car il harcèle l'équipe pour maintenir la discipline et la qualité. Il ne lâche pas car il est le garant de l'application du processus et de la qualité du produit.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;PUSH / PULL&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pour ne pas tomber dans ce travers dans notre organisation, le ScrumMaster est aussi un développeur de l'équipe. Il devient légitime car il applique ce qu'il demande des autres. Il montre le chemin en étant exemplaire dans son respect des pratiques. Il ne cherche pas à pousser les équipiers vers un niveau mais plutôt à les tirer vers le niveau qu'il s'efforce d'atteindre et de conserver. Concrètement, il est plus facile de faire adhérer à la pratique du test-first lorsqu'on l'applique  soi-même et qu'on binôme pour l'enseigner.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;MANAGEMENT / LEADERSHIP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nous rejoignons la nuance qu'il existe entre manager et leader. Un ScrumMaster développeur ne fait pas que proposer &lt;span style="font-style: italic;"&gt;("y a qu'à, faut qu'on")&lt;/span&gt; . Il entraine les autres par son exemple en montrant une voie. Attention, il ne dicte pas la voie. L'équipe choisit les pratiques. Mais pour exiger légitimement des autres qu'ils appliquent leurs pratiques encore faut-il commencer par les appliquer soi-même.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SCRUMMASTER / COACH&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Du coup, le ScrumMaster développeur ressemble beaucoup au Coach XP. Il est un praticien expérimenté qui enseigne par l'exemple.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;UN JOB A TEMPS PLEIN?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sur nos projets, nous constatons d'ailleurs que les activités du ScrumMaster pour une équipe atteignant 9 développeurs ne constituent pas un plein temps. Au delà de 9 personnes, l'équipe se scinde en sous-équipes donc le problème ne se pose pas. Alors, que peut faire le ScrumMaster le reste du temps? Le ScrumMaster peut-il s'investir sur d'autres équipes? Afin d'être légitimement accepté par l'équipe, nous choisissons de ne pas diviser la disponibilité d'un ScrumMaster entre plusieurs équipes. La deuxième partie de son temps est accordée au développement. ScrumMaster développeur est un job à temps plein.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SCRUMMASTER(S)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dans notre organisation, nous avons une autre particularité. Nous avons plusieurs ScrumMaster développeurs dans l'équipe. Ils ne se marchent pas sur les pieds. Aux contraire, ils se relayent. Ainsi, il y a toujours un garant de la discipline des pratiques et de la qualité, malgré les congés et les moments de fatigue. Il suffit de passer le relai. C'est aussi une manière d'investir sur les équipiers en formant des ScrumMasters praticiens au sein de l'organisation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SCRUM MOU / SCRUM + XP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Scrum doit se pratiquer avec de solides pratiques techniques. Chaque sprint doit fournir un incrément de produit potentiellement livrable, donc testé et documenté. Avoir un ScrumMaster développeur sur un projet est aussi un moyen de s'assurer que les pratiques techniques ne seront pas délaissées à la faveur des pratiques d'organisation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;A LA MANIÈRE DE TOYOTA&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cette conception du leadership rejoint les principes du &lt;a href="http://en.wikipedia.org/wiki/The_Toyota_Way"&gt;Toyota Way&lt;/a&gt;&lt;span style="font-style: italic;"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;i  style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Principe 9&lt;/span&gt;: "Grow leaders who thoroughly understand the work, live the philosophy, and teach it to others."&lt;/i&gt;&lt;br /&gt;Les leaders, scrummasters ou coachs &lt;span style="font-style: italic;"&gt;(choisissez votre terme préféré) &lt;/span&gt;viennent de l'équipe et font partie de l'équipe. Ils font le même travail que les équipiers et sont sur place pour les former.&lt;br /&gt;&lt;br /&gt;&lt;i  style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Principe 12&lt;/span&gt;: "Go and see for yourself to thoroughly understand the situation".&lt;/i&gt;&lt;br /&gt;Les leaders, scrummasters ou coachs &lt;span style="font-style: italic;"&gt;(choisissez votre terme préféré) &lt;/span&gt;font partie de l'équipe. Ils comprennent la situation puisqu'ils sont en situation sur le terrain.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EN CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Si vous n'êtes pas le client ou son représentant et que vous contribuez au développement d'un logiciel, alors développez!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8051382338134592770?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8051382338134592770/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/prick.html#comment-form' title='5 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8051382338134592770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8051382338134592770'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/prick.html' title='THE PRICK, LE SCRUMMASTER ET LE COACH (V3)'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SY1loyuV6_I/AAAAAAAAA3o/YP_4z1_tk8s/s72-c/sw_architectes.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1091429575486782364</id><published>2009-02-04T04:37:00.000-08:00</published><updated>2009-02-04T06:03:31.579-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Articles'/><title type='text'>NIKO-NIKO</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SYmMrNQ88zI/AAAAAAAAA3g/JQHXXP3b0nc/s1600-h/nikoniko.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 387px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SYmMrNQ88zI/AAAAAAAAA3g/JQHXXP3b0nc/s400/nikoniko.jpg" alt="" id="BLOGGER_PHOTO_ID_5298921110501126962" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;C'est &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.infoq.com/articles/agile-kanban-boards"&gt;un article&lt;/a&gt;&lt;span style="font-family:arial;"&gt; qui nous a donné l'idée de mettre en place un calendrier Niko-Niko.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;LA PRATIQUE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Chaque soir en quittant le travail, les membres de l'équipe collent une pastille de couleur sur le calendrier&lt;/span&gt;&lt;span style="font-family:arial;"&gt; dans la case du jour révolu. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;pastille verte&lt;/span&gt;&lt;span style="font-family:arial;"&gt; indique que le développeur a passé une bonne journée sur le projet. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;pastille jaune&lt;/span&gt;&lt;span style="font-family:arial;"&gt; représente une journée neutre. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;pastille rouge&lt;/span&gt;&lt;span style="font-family:arial;"&gt; marque une mauvaise journée.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une tendance de pastilles jaunes et rouges signale que l'équipe doit se réorganiser pour redistribuer les tâches ou repenser sa manière de travailler. Cette pratique permet également de suivre un indicateur sur le « sustainable pace ». Elle permet enfin à l'équipe de fusionner en la rendant maître de sa propre gestion.&lt;/span&gt;&lt;br /&gt;&lt;img style="font-family: arial;" src="file:///C:/DOCUME%7E1/FAMILL%7E1/LOCALS%7E1/Temp/moz-screenshot-3.jpg" alt="" /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;LES ENSEIGNEMENTS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pour le moment, nous ne savons pas encore ce qu'il faut concrètement retirer de cette pratique en cours d'expérimentation. En tout cas, elle permet de vérifier la corrélation entre la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;santé de l'équipe&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;santé du projet&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;qualité du logiciel&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Ceci confirme l'exactitude de l'équation "&lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2008/10/analogie-ente-equipe-et-produit-2nde.html"&gt;Equipe = Produit&lt;/a&gt;&lt;span style="font-family:arial;"&gt;". Enfin, le Niko-Niko permet aussi à chacun de s'exprimer sur la manière dont il vit le projet, sans avoir à attendre la rétrospective d'itération mensuelle.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;VERS UNE AUTRE PRATIQUE &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lors de la &lt;/span&gt;&lt;a style="font-family: arial;" href="http://clubagile.org/2009/02/compte-rendu-de-la-reunion-du-3-fevrier-a-valence/"&gt;2ème réunion du CARA à Valence&lt;/a&gt;&lt;span style="font-family:arial;"&gt;, j'ai fait une présentation à base de photos sur les &lt;/span&gt;&lt;a style="font-family: arial;" href="http://manu40k.free.fr/articlePratiquesDEquipe.pdf"&gt;pratiques de notre équipe&lt;/a&gt;&lt;span style="font-family:arial;"&gt;. Les discussions autour du Niko-Niko m'ont permis de revoir cette pratique sous un nouvel angle.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Plutôt que de signaler le ressenti de la journée, les pastilles pourraient indiquer l'efficacité de la journée.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;pastille verte&lt;/span&gt;&lt;span style="font-family:arial;"&gt; indiquerait une journée très efficace. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; Une &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;pastille jaune&lt;/span&gt;&lt;span style="font-family:arial;"&gt; représenterait une journée de production conforme. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; Une &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;pastille rouge&lt;/span&gt;&lt;span style="font-family:arial;"&gt; marquerait une journée gaspillée.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Une succession de pastilles rouges avertirait qu'une action corrective doit être menée pour revenir à un travail efficace. Il faut alors rechercher la cause racine de cette perte de productivité. Une telle tendance ne se détecte pas forcément par une remontée de la pente du burndown chart de l'itération. En effet, le burndown chart mesure la vélocité globale de l'équipe. Cette moyenne peut masquer l'enlisement de certains équipiers. Les difficultés des uns peuvent être compensées par la performance des autres. Certes, un développeur en difficulté signalera sa perte de productivité lors du stand-up-meeting quotidien. Son alerte risque de passer pour une anecdote sans conséquence durable alors que l'historique du Niko-Niko révélera un enlisement dans la durée.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nous pourrons discuter de l'intérêt de cette pratique alternative du Niko-Niko lors de notre prochaine rétrospective d'itération. Enfin, ces réflexions me démontrent l'utilité de présenter son travail. Cette autre pratique du Niko-Niko résulte des échanges menés lors d'une réunion du &lt;a href="http://clubagile.org/"&gt;CARA&lt;/a&gt;. Merci aux participants pour ce nouvel éclairage!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1091429575486782364?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1091429575486782364/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/niko-niko.html#comment-form' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1091429575486782364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1091429575486782364'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/02/niko-niko.html' title='NIKO-NIKO'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SYmMrNQ88zI/AAAAAAAAA3g/JQHXXP3b0nc/s72-c/nikoniko.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5366235965776586639</id><published>2009-01-30T03:50:00.000-08:00</published><updated>2009-02-10T00:22:51.550-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum'/><title type='text'>SCRUMMOU</title><content type='html'>&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SYL7c60dY_I/AAAAAAAAA3Y/PpPeT8Yj9Jc/s1600-h/rickety.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SYL7c60dY_I/AAAAAAAAA3Y/PpPeT8Yj9Jc/s400/rickety.jpg" alt="" id="BLOGGER_PHOTO_ID_5297072585985319922" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Après &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Ken Schwaber&lt;/span&gt;, &lt;span style="font-weight: bold;font-family:arial;" &gt;Jim Shore&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, &lt;span style="font-weight: bold;"&gt;Alan Shalloway&lt;/span&gt;,  c'est &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Martin Fowler&lt;/span&gt;&lt;span style="font-family:arial;"&gt; qui dénonce la pratique de Scrum sans l'ajout de solides pratiques techniques. Le titre "Flaccid Scrum" de son billet illustre avec humour son propos.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Pour les références sur ce thème, consultez les propos de:&lt;/span&gt;&lt;br /&gt;&lt;ul style="font-family: arial; text-align: justify;"&gt;&lt;li&gt;Ken Schwaber: &lt;a href="http://video.google.com/videoplay?docid=-7230144396191025011"&gt;conférence chez Google&lt;/a&gt; et conférence &lt;a href="http://www.infoq.com/presentations/agile-quality-canary-coalmine"&gt;Canary In A Coalmine&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="font-family: arial; text-align: justify;"&gt;&lt;li&gt;Jim Shore: &lt;a href="http://jamesshore.com/Blog/The-Decline-and-Fall-of-Agile.html"&gt;The Decline and Fall of Agile&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Alan Shalloway: &lt;a href="http://www.netobjectives.com/blogs/Is-Scrum-Failing-Us"&gt;Is Scrum Failing Us?&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="font-family: arial; text-align: justify;"&gt;&lt;li&gt;Martin Fowler: &lt;a href="http://martinfowler.com/bliki/FlaccidScrum.html"&gt;Flaccid Scrum&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Pour aller plus loin, je pense même qu'en plus de solides pratiques techniques &lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;(TDD, test-first, intégration continue, &lt;a href="http://emmanuelchenu.blogspot.com/2008/10/programmez-par-contrat.html"&gt;programmation par contrat&lt;/a&gt;)&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, le développement itératif et incrémental exige une &lt;span style="font-weight: bold;"&gt;augmentation significative de la maturité en génie logiciel&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; au sens large&lt;/span&gt;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Par exemple, l'application des &lt;span style="font-weight: bold;"&gt;principes avancés de conception&lt;/span&gt; tels &lt;/span&gt;&lt;br /&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Open/closed_principle"&gt;Open Closed Principle&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Liskov_Substitution_Principle"&gt;Liskov Substitution Principle&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Command-query_separation"&gt;Command Query Separation&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Single_responsibility_principle"&gt;Single Responsibility Principle&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Dependency_inversion_principle"&gt;Dependency Inversion Principle&lt;/a&gt;, &lt;/li&gt;&lt;li&gt;Interface Segregation Principle,  &lt;/li&gt;&lt;li&gt;Common Closure principle, &lt;/li&gt;&lt;li&gt;Acyclic Dependencies Principle, &lt;/li&gt;&lt;li&gt;Stable Dependencies Principle et &lt;/li&gt;&lt;li&gt;Stable Abstractions Principle&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family:arial;"&gt; aide à construire des &lt;span style="font-weight: bold;"&gt;l&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;ogiciels extensibles&lt;/span&gt;. En fait, je pense que le pilotage par les tests suffit, mais la combinaison avec le respect de ces principes permet de &lt;span style="font-weight: bold;"&gt;développer encore plus vite&lt;/span&gt;. ll en est de même pour l'utilisation des &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;design-pattern&lt;/span&gt;&lt;span style="font-family:arial;"&gt; du &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2007/08/design-patterns-gamma-heml-johnson-and.html"&gt;GoF&lt;/a&gt;&lt;span style="font-family:arial;"&gt; (voir billet &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2009/01/ou-sont-les-gof.html"&gt;Où sont les GoF?&lt;/a&gt;&lt;span style="font-family:arial;"&gt;).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Pour découvrir ces grands principes de génie logiciel lisez le &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2007/07/agile-software-development-by-robert.html"&gt;livre d'Uncle Bob&lt;/a&gt;&lt;span style="font-family:arial;"&gt; et/ou consultez le &lt;a href="http://www.crossbowlabs.com/dossiers/principes-avances-oo"&gt;dossier établi par Régis Médina&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Puisque j'ai évoqué le conférence &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.infoq.com/presentations/agile-quality-canary-coalmine"&gt;Canary In A Coalmine&lt;/a&gt;&lt;span style="font-family:arial;"&gt; de Ken Schwaber, voici le titre de Police en dédicace pour Claude Aubry ;o)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;div style="width: 220px; height: 55px;"&gt;&lt;object height="55" width="220"&gt;&lt;param name="movie" value="http://www.deezer.com/embedded/small-widget-v2.swf?idSong=1177905&amp;amp;colorBackground=0x555552&amp;amp;textColor1=0xFFFFFF&amp;amp;colorVolume=0x39D1FD&amp;amp;autoplay=0"&gt;&lt;embed src="http://www.deezer.com/embedded/small-widget-v2.swf?idSong=1177905&amp;amp;colorBackground=0x525252&amp;amp;textColor1=0xFFFFFF&amp;amp;colorVolume=0x39D1FD&amp;amp;autoplay=0" type="application/x-shockwave-flash" height="55" width="220"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);font-size:78%;" &gt;Découvrez &lt;a href="http://www.deezer.com/fr/the-police.html"&gt;The Police&lt;/a&gt;!&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5366235965776586639?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5366235965776586639/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/fragile.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5366235965776586639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5366235965776586639'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/fragile.html' title='SCRUMMOU'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SYL7c60dY_I/AAAAAAAAA3Y/PpPeT8Yj9Jc/s72-c/rickety.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7226897530704607419</id><published>2009-01-25T11:47:00.000-08:00</published><updated>2009-01-29T03:05:35.819-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>LES TESTS SONT DU CODE</title><content type='html'>&lt;div align="justify"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXzObQAkQ8I/AAAAAAAAA3Q/jzA9JIDEPno/s1600-h/tuteur.jpg"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5295334229429994434" style="margin: 0pt 10px 10px 0pt; float: left; width: 206px; cursor: pointer; height: 368px;" alt="" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXzObQAkQ8I/AAAAAAAAA3Q/jzA9JIDEPno/s400/tuteur.jpg" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;LA SOUPLESSE GAGNÉE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;L'Extreme-Programming est une sacrée aide. Grâce au TDD, au remaniement et à la conception simple, nous arrivons à mettre au point des logiciels ayant une&lt;span style="font-weight: bold;"&gt; architecture extensible&lt;/span&gt;. Nous ajoutons des incréments de fonctionnalité au fil des itérations. Les tests de recette et les tests développeur sont un tuteur qui aident le logiciel à pousser et un filet de sécurité contre les régressions. Ils permettent au logiciel de conserver sa souplesse, celle du &lt;span style="font-weight: bold;"&gt;SOFT&lt;/span&gt;ware .&lt;br /&gt;&lt;br /&gt;Nous pratiquons le TDD et le test-first. La couverture du code par les tests est intégrale. De plus, ayant les contraintes de sûreté de fonctionnement du logiciel critique, nous ne lésinons pas sur les cas de tests. &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;D'ailleurs, en démo nous nous livrons à un petit exercice. Nous proposons au client d'introduire un défaut dans la base de code et nous lui montrons que la suite de tests détecte sa modification.&lt;br /&gt;&lt;br /&gt;Depuis plusieurs projets, nous constatons que nous avons &lt;span style="font-weight: bold;"&gt;plus de deux fois plus de lignes de code de test que de lignes de code de production&lt;/span&gt;. Étant donné qu'il faut vérifier de nombreux scénarios, le code des tests est souvent assez répétitif.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Vous voyez où je veux en venir?&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA SOUPLESSE PERDUE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cette masse de tests est là en partie pour conserver la souplesse du logiciel testé. Elle est un tuteur construit autour de l'application. Mais si nous ne faisons pas très attention, cette masse de tests devient inflexible.&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Tous ces cas de tests si ressemblants sont autant de mauvaises occasions de dupliquer du code. Tous ces mocks et tous ces stubs aux comportements légèrement différents doivent tous évoluer si leur interface de base est amenée à changer. Pour modifier une ligne de code de production nous en arrivons à devoir changer plus de 10 lignes de code de test. Le code des tests tend naturellement à devenir une masse pénible à faire évoluer. Les tests deviennent inflexibles. Le tuteur est devenu un massif baobab. Le logiciel perd alors sa souplesse d'évolution parce que les tests sont devenus inflexibles. Avec de bonnes intentions nous avons rendu l'application inerte. Elle a perdue sa souplesse parce que l'échafaudage qui l'enrobe est devenu un gros sac de nœuds. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;LA SOUPLESSE GAGNÉE (BIS)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Heureusement, ce constat n'est pas une fatalité. Nous avons de la chance car les tests sont aussi du code. Nous devons donc porter au code des tests le même soin qu'au code de production. Les standards de codage s'appliquent au code de production et au code des tests. Nous devons systématiquement remanier le code des tests pour en éliminer les duplications, en réduire le volume et le rendre clair et expressif.&lt;br /&gt;Il existe une architecture des tests. Si une classe hérite d'une autre alors son test unitaire hérite du test unitaire de la super-classe. Ainsi, nous rejouons des tests hérités sur une instance fille. Ceci nous permet de vérifier le si puissant &lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Liskov_substitution_principle"&gt;&lt;span style="font-family:arial;"&gt;Principe de Substitution de Liskov&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;br /&gt;En remaniant les tests, nous devons faire bien attention à ne pas les faire régresser. Ceci est d'autant plus délicat que le code des tests est écrit sans tests! Quoique nous pouvons assimiler le code testé au test des tests &lt;em&gt;(vous me suivez toujours?).&lt;/em&gt; Modifiez un test et vous aurez peut-être la chance de le voir échouer s'il n'est plus en cohérence avec le code testé. Ceci ne marche malheureusement pas si la modification du test l'a rendu plus permissif ...&lt;/span&gt;&lt;/div&gt;&lt;p align="justify"&gt;&lt;span style="font-family:arial;"&gt;En tout cas, ce qui est génial, c'est que&lt;span style="font-weight: bold;"&gt; tester c'est coder&lt;/span&gt;! &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7226897530704607419?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7226897530704607419/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/les-tests-sont-du-code.html#comment-form' title='10 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7226897530704607419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7226897530704607419'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/les-tests-sont-du-code.html' title='LES TESTS SONT DU CODE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SXzObQAkQ8I/AAAAAAAAA3Q/jzA9JIDEPno/s72-c/tuteur.jpg' height='72' width='72'/><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3752851903737546379</id><published>2009-01-24T04:50:00.000-08:00</published><updated>2009-01-25T09:13:45.600-08:00</updated><title type='text'>ET ROCK'N ROLL</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SXsz-zNOn5I/AAAAAAAAA2w/bnhtI1674HQ/s1600-h/sw_rebel.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 211px; height: 259px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SXsz-zNOn5I/AAAAAAAAA2w/bnhtI1674HQ/s400/sw_rebel.jpg" alt="" id="BLOGGER_PHOTO_ID_5294882940894748562" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Cette année, &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.aubryconseil.com/"&gt;Claude Aubry&lt;/a&gt;&lt;span style="font-family:arial;"&gt; a rebaptisé son blog &lt;a href="http://www.aubryconseil.com/"&gt;Scrum, Agilité et Rock'n Roll&lt;/a&gt;. Il explique pourquoi dans un &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.aubryconseil.com/post/Rock-n-roll%2C-scrum-et-agilit%C3%A9"&gt;billet publié ce mois-ci&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; Je trouve son rapprochement entre les démarches agiles et l'esprit de rébellion très pertinent.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; Je rebondis sur son billet car je reconnais notre équipe dans ce qu'il décrit.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'&lt;span style="font-weight: bold;"&gt;esprit de groupe&lt;/span&gt; est très prononcé dans notre équipe. Nous avons notre lieu, nos rythmes de travail, nos pratiques, nos rituels et notre réputation. Tout ce folklore créé et renforce l'identité de l'équipe.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'&lt;span style="font-weight: bold;"&gt;équipe a le sens du rythme&lt;/span&gt;. Les itérations sont mensuelles, le build complet est journalier, le stand-up-meeting de 10 minutes (max) est quotidien et les réunions sont timeboxées avec des minuteurs.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;La démarche de travail est &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;brut de fonderie&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Tout ce qui n'apporte pas de valeur est supprimé. On élimine les stocks en travaillant en flux continu et tendu. La durée des réunions est bornée.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;L'équipe est &lt;/span&gt;&lt;span style="font-weight: bold; font-family: arial;"&gt;toujours en concert&lt;/span&gt;&lt;span style="font-family: arial;"&gt;. Elle enchaine des itérations de durée fixe devant son public. A la fin de chaque morceau, lors de la démonstration, elle espère les applaudissements du client.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;L'&lt;span style="font-weight: bold;"&gt;esprit de rébellion&lt;/span&gt; est aussi très prononcé. Obstinément, l'équipe remet en cause les habitudes inefficaces et cherche à éliminer les gaspillages. Changer pour mieux faire est un acquis. Cet esprit est même officialisé par la rétrospective d'itération.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Se rebeller demande du courage&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Il en faut lorsque l'équipe se heurte à une organisation rigide. De plus, l'équipe assume la part de risque qu'il y a dans toute démarche innovante.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Le rebelle prend aussi des coups&lt;/span&gt;. &lt;/span&gt;&lt;span style="font-family:arial;"&gt;Les membres de l'équipe n'ont jamais été autant repris par notre hiérarchie pour des problèmes d'attitude ou à cause de conflits. Notre obstination à remettre en cause les habitudes et à éliminer les gaspillages choquent et dérangent parfois. Une conduite du changement devrait éviter ces maladresses. J'ai déjà consacré plusieurs billets (&lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2008/10/le-changement-et-les-conflits.html"&gt;1&lt;/a&gt;&lt;span style="font-family:arial;"&gt; et &lt;/span&gt;&lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2008/11/agile-lean-et-icebergs.html"&gt;2&lt;/a&gt;&lt;span style="font-family:arial;"&gt;) à ces problèmes. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Je pense que notre management est très conscient de cet esprit de rébellion. La hiérarchie est satisfaite de voir le bulldozer avancer mais aussi soucieuse des dégâts collatéraux. La gestion de l'équipe par le management est donc une combinaison contrastée de reconnaissance et de rappels à l'ordre. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;C'est bien joli cet esprit de rébellion, mais apporte t-il de la valeur?&lt;/span&gt; Il se trouve que notre industrie est marquée par des pratiques anciennes, lourdes et peu efficaces. Tout le monde s'accorde pour reconnaitre qu'il faut conduire un changement assez radical. Pour porter une révolution au quotidien sur le terrain il faut des rebelles. Et puis maintenant nous avons l'avantage de ne plus en être à l'exploration. Après plusieurs années de pratique nous disposons désormais de métriques et de bilans d'affaires. Les faits montrent que les projets ne sont pas faciles mais ils s'arrangent.&lt;/span&gt; L'esprit rebelle a du bon. Par contre, j'imagine que cet esprit perdra en force (sans disparaitre pour autant) à mesure que les principaux obstacles seront surmontés.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Concluons en musique&lt;/span&gt;&lt;span style="font-family:arial;"&gt; avec la question qui hante le rebelle.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; Spéciale dédicace à Claude Aubry ;o)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="width: 220px; height: 55px; font-family: arial; text-align: justify;"&gt;&lt;object width="220" height="55"&gt;&lt;param name="movie" value="http://www.deezer.com/embedded/small-widget-v2.swf?idSong=536398&amp;amp;colorBackground=0x555552&amp;amp;textColor1=0xFFFFFF&amp;amp;colorVolume=0x39D1FD&amp;amp;autoplay=0"&gt;&lt;embed src="http://www.deezer.com/embedded/small-widget-v2.swf?idSong=536398&amp;amp;colorBackground=0x525252&amp;amp;textColor1=0xFFFFFF&amp;amp;colorVolume=0x39D1FD&amp;amp;autoplay=0" type="application/x-shockwave-flash" width="220" height="55"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3752851903737546379?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3752851903737546379/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/et-rockn-roll.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3752851903737546379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3752851903737546379'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/et-rockn-roll.html' title='ET ROCK&apos;N ROLL'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SXsz-zNOn5I/AAAAAAAAA2w/bnhtI1674HQ/s72-c/sw_rebel.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4319255612234732738</id><published>2009-01-20T02:33:00.000-08:00</published><updated>2009-01-24T07:51:48.346-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><category scheme='http://www.blogger.com/atom/ns#' term='Articles'/><title type='text'>OU SONT LES GOF?</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXX_12cFNSI/AAAAAAAAA1c/GJIPYlOxjUQ/s1600-h/architect.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5293418237655332130" style="margin: 0px 10px 10px 0px; float: left; width: 324px; height: 400px;" alt="" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXX_12cFNSI/AAAAAAAAA1c/GJIPYlOxjUQ/s400/architect.png" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;J'ai noté une mutation dans mon entourage. Peut-être l'avez-vous également remarqué autour de vous.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il y a quelques années, nous avions tous un exemplaire du &lt;a href="http://emmanuelchenu.blogspot.com/2007/08/design-patterns-gamma-heml-johnson-and.html"&gt;GoF&lt;/a&gt; sur notre bureau. L'ouvrage &lt;a href="http://emmanuelchenu.blogspot.com/2007/08/design-patterns-gamma-heml-johnson-and.html"&gt;Design Patterns de Gamma, Heml, Johnson et Vlissides (le Gang of Four)&lt;/a&gt; était Le Livre. Pour nous, ce catalogue était La Référence des programmeurs compétents. Il trônait fièrement sur nos bureaux et nos architectures étaient enrichies de ses enseignements.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Puis, il nous a fallu plusieurs années pour graduellement et efficacement mettre en pratique l'Extreme-Programming. Curieux constat, aujourd'hui le &lt;a style="font-family: arial;" href="http://emmanuelchenu.blogspot.com/2007/08/design-patterns-gamma-heml-johnson-and.html"&gt;GoF&lt;/a&gt; ne trône plus sur aucun de nos bureaux. Le mien est à la maison.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Comment expliquer cette lente mutation? Voici quelques causes possibles:&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Nous ne concevons plus, nous codons comme des coyotes &lt;em&gt;(alternative sauvage du cowboy-coding);&lt;/em&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Nous maitrisons les Design Pattern et les mettons en musique de manière intuitive et inconsciente&lt;em&gt; (rien que cela);&lt;/em&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Nous concevons autrement, piloté par les tests;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Nous connaissons suffisamment les design-pattern et nous les faisons émerger avec parcimonie à mesure de la conception pilotée par les tests &lt;em&gt;(fromage et dessert).&lt;/em&gt;&lt;/li&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Alors, est-ce un abandon, une digestion, une révolution ou une mutation?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Sur plusieurs projets d'affilée, j'ai remarqué que je me fais moins de nœuds au cerveau concernant l'architecture. Avant, nous réfléchissions pas mal avant de nous mettre sérieusement au code. Nous dessinions de nombreux modèles au tableau et nous potassions le GoF à la recherche d'élégantes solutions.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Désormais, nous sommes plus directs. Nous cherchons la solution la plus simple à tester tout en respectant le &lt;a href="http://en.wikipedia.org/wiki/Command-query_separation"&gt;principe de séparation commande/requête&lt;/a&gt;. Les associations, abstractions, héritages et implémentations viennent naturellement sur des critères de testabilité. Une fois que les tests passent, nous remanions notre travail pour réduire le volume de code, notamment en chassant les duplications. Au passage, nous nous assurons que l'organisation des classes respecte &lt;a href="http://emmanuelchenu.blogspot.com/2007/07/agile-software-development-by-robert.html"&gt;les principes de l'Oncle Bob&lt;/a&gt;. Et le plus incroyable est qu'au fur et à mesure des projets, il est de plus en plus aisé d'ajouter des fonctionnalités par incrément. Je trouve même que nos architectures sont élégantes. Elles ont l'élégance de la simplicité. Au passage, nous constatons que nos critères d'une bonne architecture sont par ordre de priorité: testabilité, simplicité, pas de dupplication, clarté.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Je ne pense pas pour autant que nous négligeons les patterns du GoF. Après en avoir abusé, nous les appliquons avec plus de parcimonie. En effet, dans nos architectures nous retrouvons toujours une séparation claire des responsabilités de fabrication des instances, d'utilisation des instances, de séquencement des instances et de gestion des états. Par contre, les Singleton sont toujours une vraie plaie pour les tests.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ainsi, nous n'avons pas brulé nos GoF. Nous avons pris le temps d'en assimiler les enseignements et de les appliquer sans en abuser. Mais, je reconnais que pour nous, le GoF n'est plus La Référence. Nous n'en conseillons plus la lecture aux nouveaux arrivants. Ainsi, nous nous reposons peut-être trop sur l'expérience de ceux qui l'ont lu et l'ont trop pratiqué pour enfin apprendre à bien le pratiquer.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Et vous, il est où votre GoF?&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4319255612234732738?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4319255612234732738/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/ou-sont-les-gof.html#comment-form' title='8 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4319255612234732738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4319255612234732738'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/ou-sont-les-gof.html' title='OU SONT LES GOF?'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SXX_12cFNSI/AAAAAAAAA1c/GJIPYlOxjUQ/s72-c/architect.png' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-6792022005711084350</id><published>2009-01-11T15:08:00.000-08:00</published><updated>2009-01-20T12:01:17.494-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><category scheme='http://www.blogger.com/atom/ns#' term='Articles'/><title type='text'>AGILITE ET CRITIQUES COURANTES - V3</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXYNR0rsAQI/AAAAAAAAA1k/0PRCGfvA2tc/s1600-h/avocat.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5293433011871416578" style="margin: 0px 10px 10px 0px; float: left; width: 313px; height: 400px;" alt="" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SXYNR0rsAQI/AAAAAAAAA1k/0PRCGfvA2tc/s400/avocat.jpg" border="0" /&gt;&lt;/a&gt; &lt;span style="font-family:arial;"&gt;Concernant les démarches agiles de développement logiciel, j'entends souvent les critiques suivantes:&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;ol style="font-style: italic; font-family: arial;"&gt;&lt;li&gt;Ces démarches manquent de rigueur et de discipline.&lt;/li&gt;&lt;li&gt;Ces démarches abolissent la conception.&lt;/li&gt;&lt;li&gt;Ces démarches n'offrent pas de vision à long terme du déroulement du projet. &lt;/li&gt;&lt;li&gt;Ces démarches engendrent une reprise perpétuelle du travail fini.&lt;/li&gt;&lt;li&gt;Ces démarches ne permettent pas de s'engager sur un contour fonctionnel fixe.&lt;/li&gt;&lt;li&gt;Ces démarches ne sont pas adaptées aux produits critiques.&lt;/li&gt;&lt;li&gt;Ces démarches échouent comme les autres.&lt;/li&gt;&lt;li&gt;Ces démarches sont peu adaptées pour le développement géographiquement distribué.&lt;/li&gt;&lt;li&gt;Ces démarches sont peu adaptées aux grosses équipes.&lt;/li&gt;&lt;li&gt;Ces démarches sont adaptées pour des développeurs compétents et motivés. &lt;/li&gt;&lt;li&gt;&lt;i&gt;Ces démarches risquent d'élaborer des architectures non-évolutives.&lt;/i&gt;&lt;/li&gt;&lt;li&gt;Ces démarches vivent sur l'utopie du consensus dans l'équipe.&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family:arial;"&gt;A l'occasion de cours, de rencontres, de conférences, de présentations et du travail au quotidien, je suis souvent confronté à ces critiques et je suis amené à argumenter à leur encontre.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://manu40k.free.fr/AgiliteEtCritiquesCourantes.pdf"&gt;Cet article&lt;/a&gt; est une tentative de mettre par écrit ces argumentaires afin de les réutiliser plus aisément. Les publier permettra peut-être de les enrichir sur la base de l'expérience d'autres praticiens.&lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: arial;" href="http://manu40k.free.fr/AgiliteEtCritiquesCourantes.pdf"&gt;L'article est disponible ici.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-style: italic;"&gt;La 2ème édition de cette note répond à la critique numéro 11.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;La 3ème édition reformule l'argumentaire de la critique 5.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-6792022005711084350?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/6792022005711084350/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/agilite-et-critiques-courantes.html#comment-form' title='6 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6792022005711084350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/6792022005711084350'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/agilite-et-critiques-courantes.html' title='AGILITE ET CRITIQUES COURANTES - V3'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SXYNR0rsAQI/AAAAAAAAA1k/0PRCGfvA2tc/s72-c/avocat.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-3197691490429585071</id><published>2009-01-06T09:24:00.000-08:00</published><updated>2009-01-06T09:36:43.399-08:00</updated><title type='text'>ETES-VOUS AGILE?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_pwMHzqjHPX4/SWOUuwF1kXI/AAAAAAAAA0U/3rlOk8GlFnE/s1600-h/agile.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 276px; height: 400px;" src="http://2.bp.blogspot.com/_pwMHzqjHPX4/SWOUuwF1kXI/AAAAAAAAA0U/3rlOk8GlFnE/s400/agile.bmp" alt="" id="BLOGGER_PHOTO_ID_5288233918367371634" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://www.ergotinfo.fr/about.html"&gt;Denis Dollfus&lt;/a&gt; a conçu et mis en ligne sur &lt;a href="http://www.ergotinfo.fr/"&gt;son blog&lt;/a&gt; un questionnaire pour évaluer la mise en place du développement logiciel agile dans votre organisation.&lt;br /&gt;&lt;br /&gt;L'évaluation est faite sur deux axes: les pratiques techniques et les pratiques de management.&lt;br /&gt;&lt;br /&gt;L'idée n'est pas de se noter, mais de réfléchir à ce qui peut être fait sur votre projet.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ergotinfo.fr/architecture/2009/01/d%C3%A9veloppeurs-d%C3%A9terminez-votre-niveau-dagilit%C3%A9.html"&gt;Pour remplir le questionnaire, allez là&lt;/a&gt;.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-3197691490429585071?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/3197691490429585071/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/etes-vous-agile.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3197691490429585071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/3197691490429585071'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2009/01/etes-vous-agile.html' title='ETES-VOUS AGILE?'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_pwMHzqjHPX4/SWOUuwF1kXI/AAAAAAAAA0U/3rlOk8GlFnE/s72-c/agile.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4590292794869454269</id><published>2008-12-21T02:32:00.001-08:00</published><updated>2009-01-25T09:18:52.184-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Extreme Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='My Bookshelf'/><title type='text'>PLANNING EXTREME PROGRAMMING, KENT BECK ET MARTIN FOWLER</title><content type='html'>&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_pwMHzqjHPX4/SU4bZfqiOJI/AAAAAAAAAwo/vLXg-HMKUrQ/s1600-h/planning_xp.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 240px; height: 240px;" src="http://4.bp.blogspot.com/_pwMHzqjHPX4/SU4bZfqiOJI/AAAAAAAAAwo/vLXg-HMKUrQ/s400/planning_xp.jpg" alt="" id="BLOGGER_PHOTO_ID_5282189537762752658" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Ce livre a été conjointement  écrit en 2001 par &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Kent Beck&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Martin Fowler&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et préfacé par &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Tom DeMarco&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Cela fait trois grosses signatures pour un seul et même ouvrage.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LA GESTION DE PROJET&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les auteurs consacrent le livre à la &lt;span style="font-weight: bold;"&gt;planification et au pilotage d'un projet&lt;/span&gt; mené dans une démarche XP. Ils cherchent à montrer qu'en plus de &lt;span style="font-weight: bold;"&gt;pratiques techniques&lt;/span&gt;, la panoplie XP contient toutes les &lt;span style="font-weight: bold;"&gt;pratiques nécessaires et suffisantes pour planifier et piloter un projet&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;XP + SCRUM OU XP?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;On dit souvent que &lt;span style="font-weight: bold;"&gt;Scrum &lt;/span&gt;apporte aux pratiques techniques d'XP les pratiques de pilotage de projet et d'équipe. Ce livre tend à montrer que XP est déjà auto-suffisant pour la gestion de projet. La sur-couche Scrum ne fait que recouvrir avec son propre vocabulaire et ses rôles des pratiques pré-existantes dans XP.  &lt;/span&gt;&lt;span style="font-family:arial;"&gt;Ceci dit Scrum apporte plus de formalisme et de cérémonial, ce qui est une bonne chose à mon avis.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;DE L'EAU DANS LE VIN&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;D'une manière générale, Martin et surtout Kent ont mis de l'eau dans leur vin&lt;/span&gt;. Dans ce livre, je trouve que l'aspect extrême d'XP est diminué. Déjà, en préface, les auteurs rappellent que XP n'est pas une destination mais un parcours. Une pratique conforme au livre d'XP doit servir à identifier ce qui dans la démarche doit être adapté au contexte du projet. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;La &lt;span style="font-weight: bold;"&gt;durée de l'itération&lt;/span&gt; est devenue un sujet d'expérimentation. Le cycle hebdomadaire n'est plus une référence. L'essentiel est de rester en dessous du mois et de ne pas glisser! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;De même, la &lt;span style="font-weight: bold;"&gt;pluridisciplinarité &lt;/span&gt;de chaque membre de l'équipe n'est plus encadrée par une rotation systématique des binômes sur toutes les parties de l'application. La spécialisation des développeurs est même encouragée à partir du moment qu'elle est liée à une motivation personnelle.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Aussi, les auteurs sont plus permissifs quand à l'existence de &lt;span style="font-weight: bold;"&gt;bugs &lt;/span&gt;dans le produit. La correction de bugs mineurs n'est pas nécessairement une priorité pour l'équipe.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Enfin, les auteurs sont moins impératifs sur la nécessité de développer les&lt;span style="font-weight: bold;"&gt; fonctionnalités de bout en bout&lt;/span&gt;. L'essentiel est désormais que tout ce qui est développé dans l'itération soit testé à la sortie de l'itération.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Personnellement je désapprouve le calcul d'une &lt;span style="font-weight: bold;"&gt;vélocité individuelle&lt;/span&gt; pour chaque développeur. Je suis peut-être un peu Bisounours, mais je ne vois pas comment cela peut rester compatible d'un esprit d'équipe efficace. Je préfère calculer la vélocité de l'équipe pour mesurer sa capacité de travail par itération et éventuellement diviser cette vélocité par le nombre de développeurs pour surveiller l'impact de l'intégration de nouveaux membres dans l'équipe.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Enfin, j'ai apprécié le désaccord entre Kent et Martin portant sur la &lt;span style="font-weight: bold;"&gt;priorité des fonctionnalités&lt;/span&gt; à développer. Kent accorde une plus grande priorité à celles qui apporte le plus de valeur au client alors que Martin accorde les plus hautes priorités à celles qui comportent le plus de risques. C'est le pilotage par retour sur investissement contre le pilotage par les risques.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;EN CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Bref, si on connait déjà XP et Scrum, il ne me semble pas que la lecture de ce livre soit si importante. Par contre, si on croit que XP ne contient que des pratiques techniques, alors ce livre est une occasion de se détromper. Il se lit très vite gràce au style reconnaissable de Kent: une succession de petits chapitres de 2 ou 3 pages au plus.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4590292794869454269?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4590292794869454269/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/planning-extreme-programming-kent-beck.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4590292794869454269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4590292794869454269'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/planning-extreme-programming-kent-beck.html' title='PLANNING EXTREME PROGRAMMING, KENT BECK ET MARTIN FOWLER'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_pwMHzqjHPX4/SU4bZfqiOJI/AAAAAAAAAwo/vLXg-HMKUrQ/s72-c/planning_xp.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-4316992737615752218</id><published>2008-12-16T12:29:00.000-08:00</published><updated>2008-12-17T14:34:56.538-08:00</updated><title type='text'>ARMURE OU MOBILITE?</title><content type='html'>&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SUgTjAFqZMI/AAAAAAAAAwg/0kxCeTitXjI/s1600-h/Clausewitz.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 225px; height: 300px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SUgTjAFqZMI/AAAAAAAAAwg/0kxCeTitXjI/s400/Clausewitz.jpg" alt="" id="BLOGGER_PHOTO_ID_5280492055132005570" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;En 2000, &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Tom DeMarco&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;(co-auteur du brillant &lt;/span&gt;&lt;a style="font-style: italic; font-family: arial;" href="http://emmanuelchenu.blogspot.com/2008/07/peopleware-tom-demarco-timothy-lister.html"&gt;PeopleWare&lt;/a&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;)&lt;/span&gt;&lt;span style="font-family:arial;"&gt; a rédigé une préface vraiment intéressante pour le livre &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Planning Extreme Programming&lt;/span&gt;&lt;span style="font-family:arial;"&gt; de &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Kent Beck&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Martin Fowler&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LE BALANCIER&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il évoque que dans le livre&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt; On War&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Carl von Clausewitz&lt;/span&gt; constate que l'&lt;span style="font-weight: bold;font-family:arial;" &gt;histoire de la guerre&lt;/span&gt;&lt;span style="font-family:arial;"&gt; est assimilable au mouvement d'un balancier. Au fil du temps, ce balancier oscille entre avantages relatifs de l'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;armure&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et de la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mobilité&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Les chevaliers en lourdes armures ont écrasé les fantassins peu protégés. La cavalerie légère a décimé les chevaliers trop lents. Les chars ont piétiné la cavalerie trop fragile. Les guérilléros armés de lance-roquettes transpercent les chars trop aveugles .. &lt;span style="font-style: italic;"&gt;(et Paix sur Terre aux hommes de bonne volonté)&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;ET LE DÉVELOPPEMENT LOGICIEL DANS TOUT CELA?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Tom DeMarco constate que le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;développement logiciel&lt;/span&gt;&lt;span style="font-family:arial;"&gt; suit le même mouvement de balancier entre l'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;armure &lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;(les processus lourds)&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mobilité &lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;(les démarches légères)&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Au commencement, les développeurs adoptaient des démarches empiriques et rapides.  Puis, avec le volume croissant des logiciels et les pertes de visibilité sur les projets, des processus lourds et formels ont été mis en place pour &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;se protéger des échecs&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Désormais, fatigués par l'inertie de ces démarches lentes et lourdes, les équipes passent à l'offensive et cherchent à &lt;span style="font-weight: bold;"&gt;réussir par des &lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;développement éclairs&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;On dit d'ailleurs d'un process qu'il est lourd &lt;/span&gt;&lt;span style="font-style: italic;font-family:arial;" &gt;(comme une armure?)&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Aussi, l'"&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;agilité&lt;/span&gt;&lt;span style="font-family:arial;"&gt;" est un mot proche de "&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mobilité&lt;/span&gt;&lt;span style="font-family:arial;"&gt;". De plus, l'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;agilité &lt;/span&gt;&lt;span style="font-family:arial;"&gt;prône la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;réactivité&lt;/span&gt;&lt;span style="font-family:arial;"&gt; et&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;celle-ci&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;n'est autre que la &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mobilité&lt;/span&gt;&lt;span style="font-family:arial;"&gt; transposée au développement!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il fut un temps où on cherchait ce qu'on pouvait &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;ajouter à son process&lt;/span&gt;&lt;span style="font-family:arial;"&gt; pour mieux se &lt;span style="font-weight: bold;"&gt;protéger&lt;/span&gt; contre le fiasco. Maintenant, les équipes pistent ce qu'elles peuvent &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;retirer de leur process&lt;/span&gt;&lt;span style="font-family:arial;"&gt; pour &lt;span&gt;gagner &lt;/span&gt;en rapidité et &lt;span style="font-weight: bold;"&gt;gagner &lt;/span&gt;tout court.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;PLUS GÉNÉRALEMENT&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il semble que lorsqu'on renforce son armure, &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;on cherche à ne pas perdre&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. Par contre, lorsqu'on allège son armure, &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;on cherche à gagner&lt;/span&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;LE MOT DE LA FIN&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ces réflexions me ramènent bien sur au &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;CMMi &lt;/span&gt;&lt;span style="font-family:arial;"&gt;et à l'&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;agilité&lt;/span&gt;&lt;span style="font-family:arial;"&gt;. De quel côté se trouve le CMMi? De quel côté se range l'agilité? Cela a t-il un sens de les associer? Doit-on parler de CMMi &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;et &lt;/span&gt;&lt;span style="font-family:arial;"&gt;d'Agile ou de CMMi &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;puis &lt;/span&gt;&lt;span style="font-family:arial;"&gt;d'Agile? Le &lt;a href="http://www.sei.cmu.edu/publications/documents/08.reports/08tn003.html"&gt;CMMi ouvre-t-il la porte à l'agilité&lt;/a&gt; car il voit le balancier le quitter pour pencher vers la mobilité? Vers où penchera le balancier &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;après &lt;/span&gt;&lt;span style="font-family:arial;"&gt;l'agilité?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-4316992737615752218?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/4316992737615752218/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/armure-ou-mobilite.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4316992737615752218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/4316992737615752218'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/armure-ou-mobilite.html' title='ARMURE OU MOBILITE?'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SUgTjAFqZMI/AAAAAAAAAwg/0kxCeTitXjI/s72-c/Clausewitz.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-5633551973881036606</id><published>2008-12-16T10:16:00.001-08:00</published><updated>2008-12-16T11:12:14.211-08:00</updated><title type='text'>CARA, PREMIERE REUNION A VALENCE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/SUfwhuEHYEI/AAAAAAAAAwY/vkWqJClGjv8/s1600-h/cara.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 128px; height: 128px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/SUfwhuEHYEI/AAAAAAAAAwY/vkWqJClGjv8/s400/cara.png" alt="" id="BLOGGER_PHOTO_ID_5280453550206836802" border="0" /&gt;&lt;/a&gt;Hier soir, s'est tenue la première réunion du &lt;span style="font-weight: bold;"&gt;CARA&lt;/span&gt; à &lt;span style="font-weight: bold;"&gt;Valence&lt;/span&gt;. Elle a eu lieu dans les locaux de l'&lt;span style="font-weight: bold;"&gt;IUT&lt;/span&gt;.&lt;br /&gt;Nous étions &lt;span style="font-weight: bold;"&gt;13 participants&lt;/span&gt; provenant de plus d'une demi-douzaine d'entreprises locales.&lt;br /&gt;Le &lt;span style="font-weight: bold;"&gt;compte-rendu&lt;/span&gt; de la session est &lt;a href="http://clubagile.org/le-club/reunions-du-club/cr-reunion-valence-1512/"&gt;disponible sur le site du CARA&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Les premières rencontres sont toujours un peu délicates car il n'y a pas de programme pré-établi. Nous avons donc choisi de conduire un&lt;span style="font-weight: bold;"&gt; forum-ouvert&lt;/span&gt;. En tout cas, nous n'avons pas eu de flottement et les discussions coulaient naturellement.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Merci aux participants&lt;/span&gt; et rendez-vous au mois de &lt;span style="font-weight: bold;"&gt;Janvier&lt;/span&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-5633551973881036606?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/5633551973881036606/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/cara-premiere-reunion-valence.html#comment-form' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5633551973881036606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/5633551973881036606'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/cara-premiere-reunion-valence.html' title='CARA, PREMIERE REUNION A VALENCE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_pwMHzqjHPX4/SUfwhuEHYEI/AAAAAAAAAwY/vkWqJClGjv8/s72-c/cara.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-8455389557557351356</id><published>2008-12-13T08:22:00.001-08:00</published><updated>2009-01-25T09:21:03.757-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lean'/><category scheme='http://www.blogger.com/atom/ns#' term='Conférence'/><title type='text'>LEAN EVENT, PAR ADACORE</title><content type='html'>&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SUPhX60wrJI/AAAAAAAAAwI/SqsclcppBFE/s1600-h/Adacore.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 177px; height: 58px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SUPhX60wrJI/AAAAAAAAAwI/SqsclcppBFE/s400/Adacore.gif" alt="" id="BLOGGER_PHOTO_ID_5279310989252144274" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Je suis invité au mois de Mars pour présenter une conférence sur les thèmes de&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span&gt;l'&lt;span style="font-weight: bold;"&gt;avionique&lt;/span&gt;, de l'&lt;span style="font-weight: bold;"&gt;agilité &lt;/span&gt;et du &lt;span style="font-weight: bold;"&gt;Lean&lt;/span&gt;&lt;span&gt; à l'occasion&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;d'un &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.adacore.com/2008/11/26/lean-event/"&gt;évènement sur le Lean organisé&lt;/a&gt;&lt;span style="font-family:arial;"&gt; par &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.adacore.com/"&gt;AdaCore&lt;/a&gt;&lt;span style="font-family:arial;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;Jim Sutton&lt;/span&gt;, co-auteur de &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Lean Software Strategies&lt;/span&gt;&lt;span style="font-family:arial;"&gt;, sera la guest-star de l'évènement.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; Les conférences seront en anglais. Il faut donc que je me mette au travail!&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/SUPiTHpLvtI/AAAAAAAAAwQ/CAe5KIvmGcM/s1600-h/leanSwStrategies.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 166px; height: 240px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/SUPiTHpLvtI/AAAAAAAAAwQ/CAe5KIvmGcM/s400/leanSwStrategies.jpg" alt="" id="BLOGGER_PHOTO_ID_5279312006305529554" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-8455389557557351356?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/8455389557557351356/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/lean-event-par-adacore.html#comment-form' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8455389557557351356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/8455389557557351356'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/lean-event-par-adacore.html' title='LEAN EVENT, PAR ADACORE'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/SUPhX60wrJI/AAAAAAAAAwI/SqsclcppBFE/s72-c/Adacore.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-7754175465670012877</id><published>2008-12-07T07:01:00.001-08:00</published><updated>2009-01-15T11:42:36.108-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>ITERATION OU SPRINT?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_pwMHzqjHPX4/ST7rrXTrZFI/AAAAAAAAAwA/1SX9zMFbybE/s1600-h/ManUVelocit%C3%A9Petit.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 225px; height: 257px;" src="http://1.bp.blogspot.com/_pwMHzqjHPX4/ST7rrXTrZFI/AAAAAAAAAwA/1SX9zMFbybE/s400/ManUVelocit%C3%A9Petit.jpg" alt="" id="BLOGGER_PHOTO_ID_5277914943548253266" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Dans Scrum, il y a un terme que je n'apprécie plus trop: le &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Sprint&lt;/span&gt;.&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;ITÉRATION OU SPRINT?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Après 130 jours ouvrés de développement, nous en sommes à notre septième itération et nous en avons encore pour plus d'un an de développement.&lt;br /&gt;Déjà, nos itérations se sont transformées en sprints dans le sens premier du terme. Nous n'en sommes plus à un rythme durablement soutenable.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;VÉLOCITÉ ET COURSE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Nous mesurons notre vélocité, nous la publions et nous l'utilisons pour planifier les itérations. Nous subissons une forte pression provenant de nous même comme du management pour améliorer continuellement cette vélocité.&lt;br /&gt;Classiquement, une telle course à la productivité se fait au détriment de la qualité. C'est la nature même du développeur. Heureusement, le secteur du logiciel critique n'autorise pas de prendre la qualité comme variable d'ajustement. Alors, nous rognions sur certaines tâches de fond que nous poussons devant nous au risque de nous ralentir un jour. Par exemple, nous délaissons la réorganisation de la base de gestion de configuration, la rapidité du build et la rotation des développeurs sur les différentes parties de l'application.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;TUNNEL ET TRANSPARENCE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ce qui est fou, c'est que nous sommes à l'origine de cette course à la vélocité.&lt;br /&gt;Avant, nos projets avançaient "tranquillement" dans un tunnel. La pression venait tard car nous n'avions que tardivement une vision objective et réaliste de l'avancement du projet.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Depuis quelques projets, avec la publication régulière d'une vélocité pertinente et des estimations basées sur cette productivité, nous sommes rapidement conscients de la partie immergée de l'iceberg. La vision réaliste du projet est vite révélée. Et la pression arrive tôt.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;DU MOU&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;En rétrospective d'itération, l'équipe a identifié&lt;span style="font-weight: bold;"&gt; la course à la vélocité&lt;/span&gt; comme étant le principal problème à régler. Nous avons demandé à expérimenter la chose suivante: le premier jour d'une itération sera exclusivement consacré à des tâches de fond et à des améliorations. Ce jour là, personne ne cherche à produire un incrément de fonctionnalité. Cela peut paraître un peu maigre comme avancée, mais il n'est pas évident de convaincre les managers de ralentir une locomotive rapide, mais en retard sur un horaire.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;UNE QUESTION DE VOCABULAIRE?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Je suppose que le mot "sprint" plait aux managers et aux clients. Il sous-entend que l'équipe ne peut aller plus vite sans prendre le risque d'un claquage. Le problème est que nous ne pouvons sprinter longtemps. Je préfère le mot "itération". Il me parait plus serein. Il reste à concrétiser cette nuance de vocabulaire en un rythme durablement soutenable pour l'équipe.&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-7754175465670012877?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/7754175465670012877/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/iteration-ou-sprint_07.html#comment-form' title='6 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7754175465670012877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/7754175465670012877'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/iteration-ou-sprint_07.html' title='ITERATION OU SPRINT?'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_pwMHzqjHPX4/ST7rrXTrZFI/AAAAAAAAAwA/1SX9zMFbybE/s72-c/ManUVelocit%C3%A9Petit.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5762312448351689453.post-1579614589532917426</id><published>2008-12-05T13:37:00.000-08:00</published><updated>2009-01-15T11:42:58.832-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Teaching'/><category scheme='http://www.blogger.com/atom/ns#' term='Best of'/><title type='text'>METAPHORE V VERSUS ITERATIF ET INCREMENTAL</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_pwMHzqjHPX4/STmoVL-zp-I/AAAAAAAAAvY/cDZ0pU9TSYk/s1600-h/boussole.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 103px; height: 120px;" src="http://3.bp.blogspot.com/_pwMHzqjHPX4/STmoVL-zp-I/AAAAAAAAAvY/cDZ0pU9TSYk/s400/boussole.jpg" alt="" id="BLOGGER_PHOTO_ID_5276433520388188130" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;Aujourd'hui, nous cherchions une &lt;span style="font-weight: bold;"&gt;métaphore &lt;/span&gt;pour comparer le &lt;span style="font-weight: bold;"&gt;cycle en V&lt;/span&gt; à un &lt;span style="font-weight: bold;"&gt;cycle itératif et incrémental&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE PARCOURS PRÉDICTIF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Il nous a semblé que conduire un &lt;span style="font-weight: bold;"&gt;cycle en V&lt;/span&gt; revient à&lt;span style="font-weight: bold;"&gt; prendre le temps de visualiser&lt;/span&gt; où on souhaite se rendre, à prévoir la trajectoire à suivre pour atteindre ce lieu, à estimer le temps qu'il faut pour parcourir le chemin, puis à fermer les yeux et se diriger sans voir vers cette destination. Quand la durée estimée du trajet est atteinte, on ouvre les yeux.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LE PARCOURS ADAPTATIF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Conduire un &lt;span style="font-weight: bold;"&gt;cycle itératif et incrémental&lt;/span&gt; revient à répéter en boucle la démarche suivante: &lt;span style="font-weight: bold;"&gt; jeter un coup d'œil rapide&lt;/span&gt; vers sa destination,  fermer les yeux, faire quelques pas sans voir vers cet objectif et ouvrir les yeux. Plus le nombre de pas entre deux coups d'œil est réduit, et plus le pilotage est fin.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LA MÉTAPHORE CONCRÉTISÉE PAR UN ATELIER&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Cette métaphore peut être &lt;span style="font-weight: bold;"&gt;jouée en atelier&lt;/span&gt;. Deux volontaires côte à côte se voient attribuer une même destination. Le premier doit se rendre à ce lieu en suivant la première démarche. Le second adopte la deuxième démarche.&lt;br /&gt;Pour pimenter l'atelier,  le parcours peut être&lt;span style="font-weight: bold;"&gt; initialement perturbé par un obstacle&lt;/span&gt;, comme une chaise ou une personne. Il est également intéressant &lt;span style="font-weight: bold;"&gt;d'ajouter un obstacle supplémentaire&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(une autre chaise ou une autre personne)&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;en cours de parcours&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Ensuite, il peut être intéressant de rejouer le même atelier, mais cette fois avec deux volontaires adoptant la deuxième démarche. Le premier ouvre les yeux tous les pas. Le deuxième n'ouvre les yeux que tous les trois pas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;A EXPÉRIMENTER&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;J'utiliserai cette métaphore et j'essayerai ces petits ateliers avec les étudiants lors de mes prochains cours de génie logiciel pragmatique.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EN CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cette métaphore ne suffit pas à illustrer les différences entre les deux démarches. Aussi, cette comparaison est caricaturale. Personne ne mène un cycle en V aussi aveuglément&lt;span style="font-style: italic;"&gt; (rassurez-moi)&lt;/span&gt;. En cours de développement, il y a bien sûr des réajustements&lt;span style="font-style: italic;"&gt; (tardifs certes, mais il y en a toujours)&lt;/span&gt;. Néanmoins, cette métaphore me semble être une bonne &lt;span style="font-weight: bold;"&gt;vulgarisation&lt;/span&gt;.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5762312448351689453-1579614589532917426?l=emmanuelchenu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://emmanuelchenu.blogspot.com/feeds/1579614589532917426/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/metaphore-v-versus-iteratif-et.html#comment-form' title='3 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1579614589532917426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5762312448351689453/posts/default/1579614589532917426'/><link rel='alternate' type='text/html' href='http://emmanuelchenu.blogspot.com/2008/12/metaphore-v-versus-iteratif-et.html' title='METAPHORE V VERSUS ITERATIF ET INCREMENTAL'/><author><name>Emmanuel CHENU</name><uri>http://www.blogger.com/profile/00989041538576544218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='30' src='http://4.bp.blogspot.com/_pwMHzqjHPX4/SW76oYlyPNI/AAAAAAAAA0k/f0Y4LSUd4Jw/S220/Manu.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='htt
