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

<channel>
	<title>Scrum, XP et TFS 2010</title>
	<atom:link href="http://www.didiergeorges.com/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.didiergeorges.com/blog</link>
	<description>Un projet agile</description>
	<lastBuildDate>Fri, 11 Sep 2009 13:41:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Scrum: La réunion de planning de sprint (1ère partie)</title>
		<link>http://www.didiergeorges.com/blog/scrum-la-reunion-de-planning-de-sprint-1ere-partie</link>
		<comments>http://www.didiergeorges.com/blog/scrum-la-reunion-de-planning-de-sprint-1ere-partie#comments</comments>
		<pubDate>Fri, 11 Sep 2009 13:41:18 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Méthodes Agiles]]></category>
		<category><![CDATA[Planning de sprint]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=191</guid>
		<description><![CDATA[Teneur de la réunion
Comme son nom l&#8217;indique, cette réunion qui se déroule avant chaque nouveau sprint à pour but de planifier le sprint à venir.
Cette réunion est donc critique pour le bon déroulement de tout le sprint. A l&#8217;issue de cette réunion l&#8217;équipe devrait disposer d&#8217;assez d&#8217;informations pour travailler sereinement pendant plusieurs semaines.
Lors de cette [...]]]></description>
			<content:encoded><![CDATA[<h3>Teneur de la réunion</h3>
<p>Comme son nom l&#8217;indique, cette réunion qui se déroule avant chaque nouveau sprint à pour but de planifier le sprint à venir.</p>
<p>Cette réunion est donc <strong>critique </strong>pour le bon déroulement de tout le sprint. A l&#8217;issue de cette réunion l&#8217;équipe devrait disposer d&#8217;assez d&#8217;informations pour travailler sereinement pendant plusieurs semaines.</p>
<p>Lors de cette réunion, l&#8217;équipe au complet et le directeur de produit vont donc débattre, en se basant notamment sur le backlog de produit afin de déterminer:</p>
<ul>
<li><strong>Un but</strong> à atteindre pour le Sprint</li>
<li>Un certain nombre &laquo;&nbsp;<strong>d&#8217;histoires</strong>&nbsp;&raquo; et de &laquo;&nbsp;<strong>tâches</strong>&nbsp;&raquo; qui découpent le travail à effectuer</li>
<li>La <strong>durée du sprint</strong> ainsi qu&#8217;une <strong>date précise</strong> pour la démonstration de fin de sprint</li>
<li><strong>Une heure et un lieu</strong> pour la mêlée quotidienne</li>
</ul>
<p>Il s&#8217;agit là de concepts qui méritent d&#8217;être précisés.</p>
<h4>Le but du sprint</h4>
<p>Définit par le directeur de produit, et résumé en début de réunion, il s&#8217;agit bien sûr de l&#8217;objectif à viser et à atteindre dans le prochain sprint.</p>
<p>Attention: Le but reste totalement <strong>fonctionnel</strong> et doit pas entrer dans les détails techniques!</p>
<h5>Exemples de but:</h5>
<p>&laquo;&nbsp;Implémentation d&#8217;un outil d&#8217;analyse des retour clients&nbsp;&raquo;, &laquo;&nbsp;Implémentation d&#8217;un moteur de recherche&nbsp;&raquo;, etc&#8230;</p>
<h4>Les histoires et les tâches</h4>
<p>Il est important de distinguer les histoires des tâches:</p>
<ul>
<li><strong>Les histoires</strong> cadrent une fonctionnalité désirée de manière globale.</li>
<li><strong>Les tâches</strong> sont des sous-entités d&#8217;histoires qui découpent ces dernières en tâches unitaires</li>
</ul>
<h5>Exemple:</h5>
<p>Pour l&#8217;histoire: &laquo;&nbsp;Recherche d&#8217;utilisateurs&nbsp;&raquo;</p>
<p>Nous auront les tâches:</p>
<ul>
<li>Écriture des scénarios de test</li>
<li>Implémentation de la liste de utilisateurs</li>
<li>Test, intégration et débogage</li>
<li>Implémentation du formulaire de requête</li>
</ul>
<h4>Durée du sprint et date de démonstration</h4>
<p>La durée des sprints est fixe en théorie cependant, au début de l&#8217;application de Scrum vous tatillonnerez pour trouver la durée qui vous convient le plus.</p>
<p>Il n&#8217;y a pas de règle dans ce domaine. En réalité cela va dépendre du type de projet sur lesquels vous travaillez, sur la taille de votre (vos) équipe(s) et surtout de votre expérience acquise au fil des sprints.</p>
<ul>
<li>Des sprints courts entraînent <strong>des livraisons plus fréquentes</strong>, donc <strong>des retours plus rapides</strong> du clients ce qui permet de <strong>perdre moins de temps</strong> pour les modifications et corrections. On a donc une entreprise <strong>plus réactive</strong> et <strong>plus agile</strong>.</li>
<li>Des sprint longs permettent à l&#8217;équipe de mieux <strong>monter en puissance</strong>, de passer plus de temps sur l&#8217;implantation et la correction pour <strong>plus de qualité</strong> et cela entraine de surcroit une <strong>baisse de la charge</strong> de réunions et de démonstrations.</li>
</ul>
<p>Les deux stratégies présentent donc leurs avantages et c&#8217;est à vous de trouver le bon compromis dans votre situation. Une valeur moyenne et acceptable pour les sprint semble être de 3 semaines mais encore une fois cela seras différent dans chaque entreprise.</p>
<p>Une fois la longueur du sprint fixée, il est important de tout de suite planifier la date et l&#8217;heure précise de démonstration pour le travail effectué lors du sprint. Cette date<strong> </strong>reste fixe et <strong>la démonstration aura lieu quelque soit l&#8217;état d&#8217;avancement.</strong></p>
<h4>L&#8217;heure et le lieu de la mêlée quotidienne</h4>
<p>La mêlée quotidienne doit avoir lieu tous les jours à une heure et dans un lieu fixes. Il convient de décider d&#8217;une heure qui convient à tous les membres de votre équipe cependant on préfèrera programmer celle-ci le matin le plus tôt possible.</p>
<p>En effet il est plus simple d&#8217;effectuer cette réunion tôt le matin car chacun y fait un feedback sur le travail effectué la veille et annonce ce qu&#8217;il va faire dans la journée à venir.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/scrum-la-reunion-de-planning-de-sprint-1ere-partie/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scrum: Le Backlog de produit</title>
		<link>http://www.didiergeorges.com/blog/scrum-le-backlog-de-produit</link>
		<comments>http://www.didiergeorges.com/blog/scrum-le-backlog-de-produit#comments</comments>
		<pubDate>Mon, 07 Sep 2009 09:14:06 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Méthodes Agiles]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[backlog de produit]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=169</guid>
		<description><![CDATA[Le Backlog de sprint, Quésaco?
A la base de tout projet mettant en œuvre la méthode Scrum, il y a la création du backlog de produit.
Le backlog de produit est le document cadre qui servira à la planification de tout le projet et qui servira de référence fonctionnelle sur les exigences du client.
Il se présente sous [...]]]></description>
			<content:encoded><![CDATA[<h3>Le Backlog de sprint, Quésaco?</h3>
<p>A la base de tout projet mettant en œuvre la méthode Scrum, il y a la création du <strong>backlog de produit</strong>.</p>
<p>Le backlog de produit est le document cadre qui servira à la planification de tout le projet et qui servira de référence fonctionnelle sur les exigences du client.</p>
<p>Il se présente sous la forme d&#8217;<strong>une liste priorisée</strong> d&#8217;exigences, d&#8217;histoires et de caractéristiques décrites par le client. Ce document sera rédigé par le client, en la personne du Directeur de produit puis présenté et completé avec toute l&#8217;équipe de développement notamment pour l&#8217;estimation du temps..</p>
<p>Ce document, qui peut se présenter sous la forme d&#8217;un fichier Excel accessible mis à disposition de l&#8217;équipe sur le portail Sharepoint du projet ou dans un dossier partagé.</p>
<h3>Structure du backlog</h3>
<p>Le backlog comprend les champs de base suivants:</p>
<ul>
<li>Le champ <strong>Importance</strong>, qui définit comme son nom l&#8217;indique l&#8217;importance contractuelle de la réalisation de cette partie du projet.</li>
<li>Le champ <strong>ID </strong>qui détermine un identifiant unique pour l&#8217;histoire en question.</li>
<li>Le champ <strong>Nom</strong>, ou <strong>Description </strong>qui décris de manière claire et succincte la fonctionnalité désirée par le client</li>
<li>Le champ <strong>Estimation </strong>qui estime en &laquo;&nbsp;points&nbsp;&raquo; la charge de travail. (L&#8217;unité de point fixée au début du projet correspond à des &laquo;&nbsp;Jours/Homme idéaux&nbsp;&raquo;: 1 point = 1 jour/homme idéal)</li>
<li>Le champ <strong>Comment démontrer</strong> qui fait office de spécification de test ultra simplifiée (1 à 2 phrases succinctes).</li>
<li>Le champ <strong>Notes </strong>qui permet d&#8217;ajouter toute information complémentaire indispensable à la bonne compréhension de l&#8217;histoire.</li>
</ul>
<div id="attachment_181" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/09/backlog1.png"><img class="size-medium wp-image-181" title="backlog de produit" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/09/backlog1-300x97.png" alt="backlog de produit" width="300" height="97" /></a><p class="wp-caption-text">backlog de produit</p></div>
<p>Bien sûr chaque projet est différent et ce tableau doit pouvoir s&#8217;adapter au contexte, à l&#8217;organisation, et à toute sortes de paramètres qui peuvent être important de préciser dans le backlog. C&#8217;est pourquoi vous êtes libres d&#8217;ajouter à ces champs d&#8217;autres champs que vous pourrez juger utiles tels que:</p>
<ul>
<li>Un champ <strong>Catégorie </strong>qui fera la distinction entre les nouveau développements et les optimisations par exemple.</li>
<li>Un champ <strong>ID de suivi de bug</strong> si vous utilisez un système de suivi de bug.</li>
</ul>
<p>On peut donner de nombreux exemple, et c&#8217;est à vous de juger si la nécessité de tel ou tel champs se justifie. N&#8217;oubliez pas cependant que ce document n&#8217;as qu&#8217;un rôle de cadre et qu&#8217;il ne doit en aucun cas être surchargé afin de rester lisible.</p>
<h3>L&#8217;Importance</h3>
<p>Le champs importance est déterminé selon une échelle totalement libre. En effet une histoire avec une importance à 80 ne seras pas forcément 4 fois plus importante qu&#8217;une histoire avec une importance de 20.</p>
<p>Simplement, il est important que chaque histoire ait une importance unique afin de créer une hiérarchie claire entre celles-ci et il est également important de laisser un écart suffisant entre chacune d&#8217;elle à la création du backlog. Il faudra être en mesure de pouvoir insérer de nouvelles histoires que l&#8217;on aurait pas forcément prévu.</p>
<p>Pour aider à déterminée l&#8217;échelle que l&#8217;on va utiliser, on peut se fixer 3 seuils avec un code couleur:</p>
<ul>
<li>&gt;= 50: <span style="color: #000000;">(Rouge)</span> Histoire indispensable à la release. Si elle ne sont pas livrées à temps, cela entraînera des pénalités.</li>
<li>20 &lt; x &lt; 50: <span style="color: #000000;">(Jaune)</span> Histoire indispensable mais qui autorise un petit délai de livraison sans pénalité.</li>
<li>&lt;= 20: (Vert) Histoire secondaire qui pourront être livrées dans une version mineure suivante.</li>
</ul>
<p>Une fois ceci effectué, on complètera le backlog avec le code couleur choisit pour une meilleur lisibilité du document.</p>
<div id="attachment_183" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/09/backlog2.png"><img class="size-medium wp-image-183" title="backlog de produit avec code couleur" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/09/backlog2-300x97.png" alt="backlog de produit avec code couleur" width="300" height="97" /></a><p class="wp-caption-text">backlog de produit avec code couleur</p></div>
<h3>A retenir</h3>
<p>Garder bien en tête que le Directeur de produit doit rester focalisé sur les objectifs métier et ne pas se soucier des aspects techniques. C&#8217;est également le cas pour ce document qu&#8217;il rédige et qui ne servira que de cadre fonctionnel à l&#8217;équipe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/scrum-le-backlog-de-produit/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Work Items: Gestion et relations</title>
		<link>http://www.didiergeorges.com/blog/work-items-gestion-et-relations</link>
		<comments>http://www.didiergeorges.com/blog/work-items-gestion-et-relations#comments</comments>
		<pubDate>Tue, 11 Aug 2009 16:07:33 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Task]]></category>
		<category><![CDATA[Work item]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=154</guid>
		<description><![CDATA[Création d’un work item
La gestion des work item s’effectue dans la console Team Explorer de Visual Studio ou depuis le site portail de projet.
Pour cet exemple, nous allons effectuer la création d&#8217;une nouvelle tâche depuis la vue Team Explorer de Visual Studio.
Connectez-vous à votre projet dans Team Explorer puis dérouler les sous-éléments du projet. Vous [...]]]></description>
			<content:encoded><![CDATA[<h3><strong>Création d’un work item</strong></h3>
<p>La gestion des work item s’effectue dans la console Team Explorer de Visual Studio ou depuis le site portail de projet.</p>
<p>Pour cet exemple, nous allons effectuer la création d&#8217;une nouvelle tâche depuis la vue<strong> Team Explorer</strong> de Visual Studio.</p>
<p>Connectez-vous à votre projet dans Team Explorer puis dérouler les sous-éléments du projet. Vous devriez voir un élément Work Item</p>
<p>Cliquez sur <strong>Add Work Item</strong> &gt; <strong>Task</strong></p>
<div id="attachment_155" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newWI.png"><img class="size-medium wp-image-155" title="Menu Add Work Item" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newWI-300x243.png" alt="Menu Add Work Item" width="300" height="243" /></a><p class="wp-caption-text">Menu Add Work Item</p></div>
<p>Saisissez ensuite les informations nécessaires puis cliquez sur <strong>Save Work Item</strong>.</p>
<h3><strong>Afficher et valider les Work Item</strong></h3>
<p>Une fois le Work Item créé, dans <strong>Team Explorer</strong> déroulez <strong>Work Items</strong> puis cliquez sur <strong>Open Work Items</strong> afin d&#8217;afficher tous les work items ouverts et de vérifier qu&#8217;aucun problème n&#8217;est survenu lors de la création.</p>
<p>Sélectionnez la tâche afin d&#8217;en visualiser les informations. De là vous pouvez changer l’état de la tâche, et faire remonter des informations pour les autres membres de l’équipe en fonction de son état d’avancement.</p>
<div id="attachment_157" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/doWI1.png"><img class="size-medium wp-image-157" title="Edition d'un Work Item" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/doWI1-300x180.png" alt="Edition d'un Work Item" width="300" height="180" /></a><p class="wp-caption-text">Edition d&#39;un Work Item</p></div>
<h3><strong>Relations entre les Work Items</strong></h3>
<p>La gestion des liens entre les work items est une des <strong>nouvelles fonctionnalités</strong> de Team Foundation Serveur 2010.</p>
<p>Le principe est de pouvoir reporter dans le système les relations de dépendances entre les éléments de travail. Ces liens peuvent être de type :</p>
<ul>
<li>Enfant &lt;=&gt; Parent</li>
<li>Prédécesseur &lt;=&gt; Successeur</li>
<li>Testé par &lt;=&gt; Test</li>
<li>Lié</li>
<li>Etapes partagées</li>
<li>Scenario de test manuel (test case)</li>
</ul>
<p>Ces relations sont mises en place grâce à l’onglet Links de chaque Work Item.</p>
<p>Nous allons mettre en œuvre ce principe afin de voir de quelle façon cela va changer notre approche dans la gestion de projet.</p>
<h3><strong>Lier des work items</strong></h3>
<p>Pour cet exemple je pars du principe que nous avons déjà plusieurs work item créés. Ici il s’agit de quelques tâches de développement et de tests qu’il est importants de lier à ces derniers.</p>
<div id="attachment_158" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/WorkItemsList.png"><img class="size-medium wp-image-158" title="Liste Work Items ouverts" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/WorkItemsList-300x95.png" alt="Liste Work Items ouverts" width="300" height="95" /></a><p class="wp-caption-text">Liste Work Items ouverts</p></div>
<p>Pour cet exemple je me base sur <strong>2 tâches</strong> d’ajout de fonctionnalité au programme et <strong>3 scénarios de test</strong> qui devront valider le bon fonctionnement de ces fonctionnalités.</p>
<h3><strong>Configuration des liens</strong></h3>
<p>Dans le Team explorer, éditez la première tâche. Ouvrez l’onglet <strong>Other Links</strong> puis cliquez sur <strong>Add</strong> (Link).</p>
<div id="attachment_159" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/AddLink.png"><img class="size-medium wp-image-159" title="Ajout d'un lien Successeur" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/AddLink-300x234.png" alt="Ajout d'un lien Successeur" width="300" height="234" /></a><p class="wp-caption-text">Ajout d&#39;un lien Successeur</p></div>
<p>Sélectionnez le type de lien <strong>Successeur</strong>, puis saississez l’<strong>ID</strong> de la  seconde tâche ou cliquez sur <strong>Browse</strong> si vous ne connaissez pas son ID.</p>
<p>Vous pouvez saisir un commentaire pour votre équipe si vous le souhaitez.</p>
<p>Validez l’ajout en cliquant sur <strong>OK</strong> puis sauvegardez le work item.</p>
<p>La tâche dispose maintenant d’un lien vers sa tâche successeur. La seconde tâche dispose quand à elle d’un lien <strong>prédécesseur</strong> vers la première :</p>
<div id="attachment_160" class="wp-caption aligncenter" style="width: 302px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/LinkAdded.png"><img class="size-medium wp-image-160" title="Lien ajouté" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/LinkAdded-292x300.png" alt="Lien ajouté" width="292" height="300" /></a><p class="wp-caption-text">Lien ajouté</p></div>
<h3><strong>Affichage des relations</strong></h3>
<p>Afin de bien tester les options d’affichage des liens entre work item, j’ai ajouté les relations suivantes :</p>
<ul>
<li>La seconde tâche est <strong>successeur</strong> de la première</li>
<li>La première tâche est <strong>testée par</strong> le premier test</li>
<li>Le second test fait parti des <strong>tests</strong> de la seconde tâche</li>
<li>Le troisième test est <strong>lié</strong> au second</li>
</ul>
<p>Par défaut, l’affichage &laquo;&nbsp;plat&nbsp;&raquo; proposé par la requête <strong>Open Work Items</strong> ne permet pas d’identifier les relations entre work item du premier coup d’œil.</p>
<div id="attachment_161" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/defautdisplay.png"><img class="size-medium wp-image-161" title="Affichage &quot;plat&quot; par défaut" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/defautdisplay-300x57.png" alt="Affichage &quot;plat&quot; par défaut" width="300" height="57" /></a><p class="wp-caption-text">Affichage &quot;plat&quot; par défaut</p></div>
<p>Cependant, Team Foudation Server 2010 propose deux nouveaux modes d’affichage beaucoup plus pratiques pour la gestion des work items.</p>
<p>Pour modifier l’affichage afficher la requête puis cliquez sur <strong>Edit Query</strong> :</p>
<div id="attachment_162" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/changeDisplay.png"><img class="size-medium wp-image-162" title="Edition de la requête" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/changeDisplay-300x96.png" alt="Edition de la requête" width="300" height="96" /></a><p class="wp-caption-text">Edition de la requête</p></div>
<p>Dans la liste <strong>Type of query</strong>, vous pouvez changer le type d’affichage :</p>
<div id="attachment_163" class="wp-caption aligncenter" style="width: 304px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/ListTypes.png"><img class="size-full wp-image-163" title="Types d'affichages disponibles" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/ListTypes.png" alt="Types d'affichages disponibles" width="294" height="108" /></a><p class="wp-caption-text">Types d&#39;affichages disponibles</p></div>
<p>L’affichage par défaut est une liste plate de work item : 1 ligne par work item. Vous pouvez donc changer de type d’affichage et sauvegarder la requête afin de valider la modification.</p>
<h4><strong>Mode Work Item et  Liens Directs</strong></h4>
<p><strong> </strong></p>
<p>Cet affichage permet de liste sous chaque work item de la liste les liens qui lui sont associés. Cela est être très utile lorsque l’on souhaite connaitre tous les liens d’un ou plusieurs work item.</p>
<div id="attachment_164" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/DirectLinks.png"><img class="size-medium wp-image-164" title="Mode Work Items et Liens Directs" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/DirectLinks-300x144.png" alt="Mode Work Items et Liens Directs" width="300" height="144" /></a><p class="wp-caption-text">Mode Work Items et Liens Directs</p></div>
<h4><strong>Mode Arbre de Work Items</strong></h4>
<p>Ce mode offre une vue d’ensemble des dépendances de types Parent &lt;=&gt; Enfant et Prédécesseur &lt;=&gt; Successeur sous forme d’un arbre.</p>
<div id="attachment_165" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/WITree.png"><img class="size-medium wp-image-165" title="Mode Arbre de Work Items" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/WITree-300x65.png" alt="Mode Arbre de Work Items" width="300" height="65" /></a><p class="wp-caption-text">Mode Arbre de Work Items</p></div>
<p style="text-align: left;"><span style="color: #ff0000;">Attention :</span> les tests liés à des tâches ne sont pas inclus sous forme de branches mais listés à part.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/work-items-gestion-et-relations/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Présentation du site protail de projet</title>
		<link>http://www.didiergeorges.com/blog/presentation-du-site-protail-de-projet</link>
		<comments>http://www.didiergeorges.com/blog/presentation-du-site-protail-de-projet#comments</comments>
		<pubDate>Mon, 10 Aug 2009 16:19:08 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Projet]]></category>
		<category><![CDATA[Sharepoint]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=139</guid>
		<description><![CDATA[Interface indispensable à la collaboration dans les équipes de développement, le portail SharePoint créé lors de la création d’un nouveau projet d’équipe rassemble toutes les informations et les outils nécessaire à un travail en équipe.
Accéder au portail
Pour accéder au portail de projet vous pouvez procéder comme suit :

Dans Team Explorer (Visual Studio), effectuez un clic droit [...]]]></description>
			<content:encoded><![CDATA[<p>Interface indispensable à la collaboration dans les équipes de développement, le portail SharePoint créé lors de la création d’un nouveau projet d’équipe rassemble toutes les informations et les outils nécessaire à un travail en équipe.</p>
<h3>Accéder au portail</h3>
<p>Pour accéder au portail de projet vous pouvez procéder comme suit :</p>
<ul>
<li>Dans Team Explorer (Visual Studio), effectuez un clic droit sur votre projet dans l’arborescence TFS, puis cliquez sur <strong>Show project portal</strong></li>
</ul>
<ul>
<li>Vous pouvez également accéder à ce portail par son adresse web qui sera de la forme :</li>
</ul>
<p align="center">http://<strong>nomServeurTFS</strong>/sites/<strong>nomCollection</strong>/<strong>nomProjet</strong></p>
<p>Après vous être identifié, et si vous avez les droits d’accès au site bien entendu, vous arrivez sur la page d’accueil du site:</p>
<div id="attachment_140" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal.png"><img class="size-medium wp-image-140" title="Portail de projet" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-300x177.png" alt="Portail de projet" width="300" height="177" /></a><p class="wp-caption-text">Portail de projet</p></div>
<p>Ce site est basé sur la plateforme de sites collaboratifs <strong>SharePoint </strong>de Microsoft et en reprend l&#8217;apparence de la future version 2010. La navigation devraient devrait se faire naturellement pour toute personne ayant déjà eu une expérience utilisateur même basique de ces portails.</p>
<p>Pour les autres, pas de panique ! Voici une présentation des différents menus et outils de ce portail :</p>
<h3><strong>La Navigation<br />
</strong></h3>
<h4>La <strong>barre de menu</strong></h4>
<p>La barre de menu horizontale propose des raccourcis vers 3 fonctionnalités régulièrement utilisées à savoir :</p>
<ul>
<li>La création d’un Work Item</li>
<li>La création d’un rapport de SQL Server Reporting Services en format Excel</li>
<li>La duplication du tableau de bord afin de créer plusieurs tableaux de bords spécifiques</li>
<li>A la droite de cette barre de menus un champ de recherche permet d’afficher les détails d’un Work Item à partir de son numéro</li>
</ul>
<div id="attachment_185" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal_menu.png"><img class="size-medium wp-image-185" title="portail de projet - barre de menu" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal_menu-300x15.png" alt="portail de projet - barre de menu" width="300" height="15" /></a><p class="wp-caption-text">portail de projet - barre de menu</p></div>
<h4>Le <strong>menu vertical</strong></h4>
<p>Ce menu que vous retrouverez systématique à gauche des pages du site portail, permet la navigation entre les différentes informations disponibles :</p>
<ul>
<li><strong>Home</strong> : Raccourci vers la page d’accueil du portail</li>
<li><strong>Portals</strong> : Sélection du portail de projet parmis les collections de projets du serveur TFS</li>
<li><strong>View all site content</strong> : Liste complète du contenu disponible sur le site</li>
<li><strong>Web Access</strong> : Accès à TFS Web qui offre une alternative web du Team Explorer de Visual studio</li>
<li><strong>Dashboards</strong> : Liste des tableaux de bords disponibles. Vous pouvez bien entendu créer mais aussi personnaliser ces derniers.</li>
<li><strong>Excel Reports</strong> : Liste des rapports générés au format Excel. Le système en offre une quinzaine déjà configurés dès l’installation mais vous pouvez également créer les votres.</li>
<li><strong>Reports</strong> : Liens vers le Gestionnaire de rapports de Reporting Services</li>
<li><strong>Documents</strong> : Liste les documents d’équipe du projet  par type : documents partagés, rapports, wikis, guide de processus et tableaux de bords</li>
<li><strong>Lists</strong> : Liste les informations de type « Liste SharePoint » qui est une type générique permettant la mise à disposition de nombreux types d’information de manière très simplifiée</li>
<li><strong>Process Guidance</strong> : Guide aide-mémoire rappelant les principes et étapes de la méthode de développement choisie (Agile ou CMMI de base)</li>
</ul>
<div id="attachment_187" class="wp-caption aligncenter" style="width: 132px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal_leftMenu.png"><img class="size-medium wp-image-187" title="Portail de projet - Menu Vertical" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal_leftMenu-122x300.png" alt="Portail de projet - Menu Vertical" width="122" height="300" /></a><p class="wp-caption-text">Portail de projet - Menu Vertical</p></div>
<h4>Le <strong>fil d’Ariane</strong></h4>
<p>Le fil d&#8217;ariane permet de vous situer à tout moment sur le site et de revenir à des étapes précédentes de votre navigation.</p>
<div id="attachment_143" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-filAriane.png"><img class="size-medium wp-image-143" title="Portail de projet - Fil d'ariane" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-filAriane-300x16.png" alt="Portail de projet - Fil d'ariane" width="300" height="16" /></a><p class="wp-caption-text">Portail de projet - Fil d&#39;ariane</p></div>
<h4>Le<strong> menu personnel</strong></h4>
<p>Vous le trouverez toujours en haut à droite de la page que vous consultez. Ce menu vous permet d’éditer vos informations personnelles, de vous déconnecter ou bien encore d&#8217;accéder à l&#8217;interface de personnalisation de  l’affichage du site.</p>
<div id="attachment_144" class="wp-caption aligncenter" style="width: 261px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-menuPerso.png"><img class="size-full wp-image-144" title="Portail de projet - Menu personnel" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-menuPerso.png" alt="Portail de projet - Menu personnel" width="251" height="185" /></a><p class="wp-caption-text">Portail de projet - Menu personnel</p></div>
<h4>Le <strong>champ de recherche</strong></h4>
<p>Vous pouvez effectuer une recherche sur le contenu du site de projet.</p>
<div id="attachment_188" class="wp-caption aligncenter" style="width: 281px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal_search.png"><img class="size-full wp-image-188" title="Portail de projet - Champ de recherche" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal_search.png" alt="Portail de projet - Champ de recherche" width="271" height="26" /></a><p class="wp-caption-text">Portail de projet - Champ de recherche</p></div>
<p><strong> </strong></p>
<p align="center">
<h4>Le menu <strong>Actions du site</strong></h4>
<p>Il vous permet d’ajouter et éditer du contenu sur le site de projet, ainsi que d’en modifier les paramètres si vous avez les avec les droits suffisants.</p>
<p><strong> </strong></p>
<div id="attachment_146" class="wp-caption aligncenter" style="width: 262px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-menuActions.png"><img class="size-full wp-image-146" title="Portail de projet - Menu actions" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-menuActions.png" alt="Portail de projet - Menu actions" width="252" height="151" /></a><p class="wp-caption-text">Portail de projet - Menu actions</p></div>
<h3><strong>La gestion de projet</strong></h3>
<h4>Dans la zone de contenu : Affichage du tableau de bords</h4>
<ul>
<li><strong>Affichage de graphiques</strong> de Reporting Services. L’affichage par défaut offre des graphiques d’analyse de l’efficacité de l’équipe par rapport aux estimations. Ces graphiques sont bien entendu modifiables et personnalisables</li>
</ul>
<div id="attachment_148" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-reports.png"><img class="size-medium wp-image-148" title="Portail de projet - Graphes de rapports" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-reports-300x143.png" alt="Portail de projet - Graphes de rapports" width="300" height="143" /></a><p class="wp-caption-text">Portail de projet - Graphes de rapports</p></div>
<ul>
<li><strong>Le Product Backlog</strong> est un journal permettant de voir les opérations en retard et par conséquent à effectuer en priorité sur le projet</li>
</ul>
<ul>
<li><strong>Le volet récapitulatif </strong>sur la droite fédère de manière succincte les principales informations nécessaires à une vision globale de l’état du projet en un seul coup d’œil à savoir:
<ul>
<li>Les évènements à venir</li>
<li>Les éléments de travail</li>
<li>Les dernières builds réalisées</li>
<li>Les derniers check-ins de code réalisés</li>
</ul>
</li>
</ul>
<div id="attachment_147" class="wp-caption aligncenter" style="width: 158px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-panelDroit.png"><img class="size-medium wp-image-147" title="Portail de projet - Volet récapitulatif" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/projectPortal-panelDroit-148x300.png" alt="Portail de projet - Volet récapitulatif" width="148" height="300" /></a><p class="wp-caption-text">Portail de projet - Volet récapitulatif</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/presentation-du-site-protail-de-projet/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>TFS 2010: Le point sur les tests</title>
		<link>http://www.didiergeorges.com/blog/tfs-2010-le-point-sur-les-tests</link>
		<comments>http://www.didiergeorges.com/blog/tfs-2010-le-point-sur-les-tests#comments</comments>
		<pubDate>Wed, 05 Aug 2009 13:27:16 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Test case]]></category>
		<category><![CDATA[TFS 2010]]></category>
		<category><![CDATA[User story]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=130</guid>
		<description><![CDATA[La version 2010 de la suite Team System apporte son lot de nouveautés dans le domaine des tests et j&#8217;ai pensé qu&#8217;il serait intéressant de faire un petit état des différentes possibilités qui s&#8217;offrent à nous dans ce domaine.
Si vous voulez vous informer sur la mise en œuvre des tests je vous conseille vivement de [...]]]></description>
			<content:encoded><![CDATA[<p>La version 2010 de la suite Team System apporte son lot de nouveautés dans le domaine des tests et j&#8217;ai pensé qu&#8217;il serait intéressant de faire un petit état des différentes possibilités qui s&#8217;offrent à nous dans ce domaine.</p>
<p>Si vous voulez vous informer sur la mise en œuvre des tests je vous conseille vivement de consulter le blog d&#8217;<a title="Testing the world - Etienne Margraff" href="http://blogs.codes-sources.com/etienne/" target="_blank">Etienne Margraff</a>.</p>
<h3>Types de tests disponibles:</h3>
<ul>
<li>Tests <strong>manuels</strong></li>
</ul>
<ul>
<li>Tests <strong>unitaires</strong></li>
</ul>
<p><strong> </strong></p>
<ul>
<li>Tests<strong> unitaires </strong>de <strong>bases de données</strong></li>
</ul>
<ul>
<li>Tests fonctionnels de <strong>sites Web</strong>:
<ul>
<li>Tests de navigation:  types <strong>règle de validation &gt; action</strong> avec possibilité d’ajout de boucles et conditions (Simulation des échanges http)</li>
</ul>
</li>
</ul>
<ul>
<li>Tests fonctionnels d&#8217;interface graphiques <strong>Winforms</strong> et <strong>WPF</strong>:
<ul>
<li>Enregistrement de <strong>scénarios</strong><a href="http://msdn.microsoft.com/fr-fr/vstudio/dd262186.aspx">: http://msdn.microsoft.com/fr-fr/vstudio/dd262186.aspx</a></li>
</ul>
</li>
</ul>
<ul>
<li>Tests de <strong>montée en charge</strong>:
<ul>
<li><strong>Web services</strong> et <strong>BDD</strong>: stress tests</li>
<li>Génération de <strong>rapports détaillés</strong></li>
<li>Définition précise de l’environnement <strong>matériel</strong> et <strong>logiciel</strong></li>
</ul>
</li>
</ul>
<ul>
<li>Tests <strong>Ordonnés</strong> : Exécution de séries de tests dans un ordre prédéfini</li>
</ul>
<div id="attachment_133" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/image_thumb_6_thumb_2A8B7952.png"><img class="size-medium wp-image-133" title="Outils de tests" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/image_thumb_6_thumb_2A8B7952-300x181.png" alt="Outils de tests" width="300" height="181" /></a><p class="wp-caption-text">Outils de tests</p></div>
<h3>Autres fonctionnalités:</h3>
<ul>
<li>Enregistrement de <strong>vidéos</strong> lors de l&#8217;exécution des tests</li>
</ul>
<ul>
<li>Captures d’écran</li>
</ul>
<ul>
<li>Journaux d’erreurs et d’évènements à l&#8217;exécution des tests pour une traçabilité très poussée</li>
</ul>
<ul>
<li>Planification et exécution de <strong>campagnes de tests</strong> avec le Test Plan Manager</li>
</ul>
<ul>
<li><strong>Tests unitaires </strong><strong>impactés</strong> : sélection automatique des tests concernés lors de la modification d’une portion de code par un développeur</li>
</ul>
<ul>
<li>Génération de rapports avec le reporting service de SQL Server</li>
</ul>
<ul>
<li><strong>Débuggeur historique</strong> (pas à pas inversé)</li>
</ul>
<ul>
<li><strong>Débuggeur déployable à distance</strong> en mode déconnecté: Visual Studio 2010 Remote Debugger</li>
</ul>
<ul>
<li><strong>Génération et déploiement</strong> des environnements de tests virtualisés avec Hyper-V Server et Lab Management</li>
</ul>
<ul>
<li><strong>Points de sauvegardes </strong>de la machine virtuelle<strong> </strong>avec Hyper-V<strong><br />
</strong></li>
</ul>
<ul>
<li>Développement guidé par les tests</li>
</ul>
<ul>
<li>Création de listes de tests dans Visual Studio (Test Suite Manager)</li>
</ul>
<h3>Webcasts:</h3>
<p>Je vous recommande également la vidéo de présentation des TechDays 2009: <a title="Visual Studio 2010" href="http://www.microsoft.com/france/vision/mstechdays09/Webcast.aspx?EID=da9a15d8-d080-463e-88e5-eb1d934dea20" target="_blank">Visual Studio 2010 : les nouveautés de l’édition Test</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/tfs-2010-le-point-sur-les-tests/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Team Foundation Build: configuration et utilisation</title>
		<link>http://www.didiergeorges.com/blog/team-foundation-build-configuration-et-utilisation</link>
		<comments>http://www.didiergeorges.com/blog/team-foundation-build-configuration-et-utilisation#comments</comments>
		<pubDate>Mon, 03 Aug 2009 13:54:04 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Build agent]]></category>
		<category><![CDATA[Build controller]]></category>
		<category><![CDATA[Team foundation build]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=112</guid>
		<description><![CDATA[Team Foundation Build est le service de gestion et planification des builds de la suite Team System. Nous allons commencer par configurer ce service pour notre collection de projet puis nous créerons notre première build d’équipe.
Structure du service
Afin de mieux comprendre la structure du service voici un schéma l’illustrant :
On remarque qu’un serveur de build permet [...]]]></description>
			<content:encoded><![CDATA[<p>Team Foundation Build est le service de gestion et planification des builds de la suite Team System. Nous allons commencer par configurer ce service pour notre collection de projet puis nous créerons notre première build d’équipe.</p>
<h3><strong>Structure du service</strong></h3>
<p>Afin de mieux comprendre la structure du service voici un schéma l’illustrant :</p>
<div id="attachment_113" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/BuildSvcStruct.png"><img class="size-medium wp-image-113" title="Build Service Structure" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/BuildSvcStruct-300x159.png" alt="Build Service Structure" width="300" height="159" /></a><p class="wp-caption-text">Build Service Structure</p></div>
<p>On remarque qu’un serveur de build permet de gérer <strong>plusieurs contrôleurs</strong> et ce afin de pouvoir répartir la charge entre plusieurs serveurs assumant chacun le rôle de contrôleur.</p>
<p>Chaque Contrôleur de build est dédié à <strong>une et une seule collection de projets</strong>.</p>
<p>Ils permettent eux de gérer <strong>plusieurs agents de Build</strong> dans le but de simplifier au maximum les différents types de builds que l’on souhaite mettre en place et de coller au plus près à la structure de vos projets.</p>
<p>Les agents de builds effectuent directement les tâches suivantes :</p>
<ul>
<li>Récupérer et valider le code depuis le gestionnaire de sources</li>
<li>Compile le code</li>
<li>Exécute les tests</li>
</ul>
<p>La structure de notre service de builds pourra donc être très simple comme très complexe en fonction de vos besoins.</p>
<p>Ainsi on peut imaginer attribuer un Build Agent par Collection de projets puis dans chaque contrôleur, créer un Build agent pour les builds complètes programmées chaque soir, un autre pour des builds spécifiques ou par module, et une dernière pour l’intégration continue (à chaque check-in).</p>
<p>Toutes les possibilités sont exposées sur le site msdn :</p>
<p><a href="http://msdn.microsoft.com/en-us/library/dd793166%28VS.100%29.aspx">http://msdn.microsoft.com/en-us/library/dd793166(VS.100).aspx</a></p>
<h3><strong>Configuration du service</strong></h3>
<p>Ouvrez une session sur le serveur avec un compte membre des <strong>Administrateurs de la machine</strong>.</p>
<p>Depuis la console MMC <strong>Team Foundation Server Administration Console</strong>, ouvrez le detail du serveur de Build en cliquant sur <strong>Team Foundation Build</strong>.</p>
<p>Par défaut aucun service n’est configuré. Pour configurer le Service de Build :</p>
<ul>
<li>Cliquez sur <strong>Configure</strong> sous le nom de votre serveur</li>
</ul>
<p>Dans la fenêtre de configuration :</p>
<div id="attachment_114" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/002.png"><img class="size-medium wp-image-114" title="Configuration du service de Build" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/002-300x288.png" alt="Configuration du service de Build" width="300" height="288" /></a><p class="wp-caption-text">Configuration du service de Build</p></div>
<ul>
<li>Cliquez sur <strong>Browse</strong> afin de sélectionner votre collection de projet</li>
<li>Choisissez le compte <strong>TFSService</strong> afin d’exécuter le service de Build</li>
<li>Saisissez le mot de passe du compte TFSService</li>
<li>Cliquez sur Start</li>
</ul>
<h3><strong>Configuration du Contrôleur</strong></h3>
<p>Une fois le service de build installé et lancé, cliquez sur <strong>New Controller</strong>.</p>
<p><strong> </strong></p>
<p>Un contrôleur par défaut est créé, nous devons le configurer, cliquez sur <strong>Properties</strong></p>
<p><strong> </strong></p>
<div id="attachment_115" class="wp-caption aligncenter" style="width: 235px"><strong><strong><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/005.png"><img class="size-medium wp-image-115" title="Configuration du contrôleur de build" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/005-225x300.png" alt="Configuration du contrôleur de build" width="225" height="300" /></a></strong></strong><p class="wp-caption-text">Configuration du contrôleur de build</p></div>
<p><strong> </strong></p>
<ul>
<li>Spécifiez un <strong>nom </strong>plus parlant que Default controller</li>
<li>Entrez une <strong>description </strong>si nécessaire</li>
<li>Passez le statut d’Unreachable à <strong>Enabled</strong></li>
<li>Cliquez sur <strong>OK</strong></li>
</ul>
<p>Le contrôleur est alors configuré correctement mais n’est pas encore lancé, cliquez sur <strong>Start</strong> pour le démarrer.</p>
<h3><strong>Configuration de l’agent</strong></h3>
<p>Une fois le contrôleur correctement configuré et prêt, cliquez sur <strong>New Agent</strong></p>
<p><strong> </strong></p>
<div id="attachment_116" class="wp-caption aligncenter" style="width: 310px"><strong><strong><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/008.png"><img class="size-medium wp-image-116" title="Configuration de l'agent de build" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/008-300x263.png" alt="Configuration de l'agent de build" width="300" height="263" /></a></strong></strong><p class="wp-caption-text">Configuration de l&#39;agent de build</p></div>
<p><strong> </strong></p>
<p>Dans les propriétés du nouvel agent :</p>
<ul>
<li>Saisissez un <strong>nom</strong> et une <strong>description</strong> claire pour l’agent</li>
<li>Sélectionnez le <strong>Contrôleur</strong> que l’on à créé pour la collection</li>
<li>Changez le statut à <strong>Enabled</strong></li>
<li>Cliquez sur <strong>OK</strong></li>
</ul>
<p>Une fois toutes ces étapes complétées, vous devriez obtenir l’affichage suivant :</p>
<p align="center">
<div id="attachment_117" class="wp-caption aligncenter" style="width: 509px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/009.png"><img class="size-full wp-image-117" title="Service, contrôleur et agent opérationnels" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/009.png" alt="Service, contrôleur et agent opérationnels" width="499" height="275" /></a><p class="wp-caption-text">Service, contrôleur et agent opérationnels</p></div>
<h3><strong>Virtualisation des contrôleurs</strong></h3>
<p>Si vous disposez d’un serveur puissant doté d’<strong>Hyper-V</strong>, vous pourrez créer une machine virtuelle par contrôleur. L’exécution de contrôleurs de build, et de leurs agents dans une machine virtuelle freine sensiblement les performances, mais offre une sécurité supplémentaire grâce à Hyper-V et sa gestion avancée des points de sauvegardes qui permettent un retour en arrière en cas de problème.</p>
<p>Microsoft préconise dans ce cas d’attribuer au moins <strong>un cœur</strong> du processeur ainsi qu’<strong>un disque dur physique</strong> par contrôleur afin de ne pas trop altérer les performances des agents.</p>
<h3><strong>Création d’une Build programmée</strong></h3>
<p><strong> </strong></p>
<p>Pour cet exemple, nous allons programmer une compilation de l’intégralité du projet qui interviendra <strong>tous les jours ouvrés</strong> de la semaine à <strong>1h du matin</strong> afin que les développeurs disposent d’une version à jour chaque matin à leur arrivée.</p>
<p>Ouvrez Visual Studio, puis dans le Team Explorer déroulez votre projet puis effectuez un clic droit sur le dossier des builds et enfin cliquez sur <strong>New Build Definition</strong>.</p>
<ul>
<li>Dans l’onglet <strong>Général</strong>, vous devez saisir un <strong>nom</strong> et une <strong>description</strong> pour la Build qui vous permettrons de l’identifier par la suite.</li>
</ul>
<div id="attachment_120" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild002.png"><img class="size-medium wp-image-120" title="Configuration générale" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild002-300x229.png" alt="Onglet Général" width="300" height="229" /></a><p class="wp-caption-text">Onglet Général</p></div>
<ul>
<li>Dans l’onglet <strong>Trigger</strong>, vous pouvez configurer les conditions dans lesquelles la compilation devra s’exécuter. Les possibilités sont les suivantes :
<ul>
<li><strong>Manual</strong> : Déclenché par l’utilisateur</li>
<li><strong>Continuous integration</strong> : Déclenché à chaque dépôt sur le contrôleur de code source</li>
<li><strong>Rolling builds</strong> : Déclenchement après un intervalle de temps spécifique</li>
<li><strong>Gated check-in</strong> : compile et teste l’intégrité du code avant de valider chaque dépôt de code</li>
<li><strong>Schedule </strong>: Déclenché selon un planning déterminé</li>
</ul>
<p>C’est donc ce dernier que l’on va utiliser en programmant une nouvelle compilation tous les jours ouvrables à 1h du matin :</li>
</ul>
<div id="attachment_119" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild003.png"><img class="size-medium wp-image-119" title="Configuration du déclenchement" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild003-300x228.png" alt="Onglet Trigger" width="300" height="228" /></a><p class="wp-caption-text">Onglet Trigger</p></div>
<ul>
<li>Dans l’onglet <strong>Workspace</strong>, il s’agit de déterminer l’espace de travail sur lequel porte la compilation, par défaut il s’agit du dossier de travail de votre projet. Dans notre cas nous laisserons donc la valeur par défaut.</li>
</ul>
<div id="attachment_121" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild004.png"><img class="size-medium wp-image-121" title="Configuration espace de travail" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild004-300x228.png" alt="Onglet Workspace" width="300" height="228" /></a><p class="wp-caption-text">Onglet Workspace</p></div>
<ul>
<li>Dans l’onglet <strong>Build Defaults</strong>, sélectionnez le <strong>contrôleur</strong> créé précédemment et saisissez un chemin réseau pointant sur un <strong>partage du serveur </strong>créé à cet effet :Important : Pensez à donner les droits en <strong>Lecture</strong>, <strong>Ecriture</strong> et <strong>Modification</strong> sur le partage au compte de service utilisé par Team Foundation Service (TFSService).</li>
</ul>
<div id="attachment_122" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild005.png"><img class="size-medium wp-image-122" title="Contrôleur et partage réseau" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild005-300x228.png" alt="Onglet Build defaults" width="300" height="228" /></a><p class="wp-caption-text">Onglet Build defaults</p></div>
<ul>
<li>Dans l’onglet <strong>Process</strong>, il est possible de définir un fichier template de Build codé avec le language XAML afin de personnaliser le processus de compilation.Nous nous contenterons pour l’instant de garder le template par défaut.</li>
</ul>
<div id="attachment_123" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild006.png"><img class="size-medium wp-image-123" title="Build Template" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild006-300x228.png" alt="Onglet Process" width="300" height="228" /></a><p class="wp-caption-text">Onglet Process</p></div>
<ul>
<li>L’onglet <strong>Retention Policy</strong> permet de configurer le nombre de builds conservés en historique pour chaque résultat possible (stoppé manuellement, échoué, partiellement réussi et réussi).
<p align="center">
<p><div id="attachment_124" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild007.png"><img class="size-medium wp-image-124" title="Historique des Builds" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/08/newBuild007-300x228.png" alt="Onglet Retention policy" width="300" height="228" /></a><p class="wp-caption-text">Onglet Retention policy</p></div></li>
</ul>
<p>Sauvegarder la Build Definition. Elle apparaît maintenant dans Team Explorer et sera exécutée en temps et en heure.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/team-foundation-build-configuration-et-utilisation/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scrum: Réunion quotidienne sportive</title>
		<link>http://www.didiergeorges.com/blog/scrum-reunion-sportive</link>
		<comments>http://www.didiergeorges.com/blog/scrum-reunion-sportive#comments</comments>
		<pubDate>Mon, 03 Aug 2009 08:06:58 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Méthodes Agiles]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[sport]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=106</guid>
		<description><![CDATA[En lisant mes flux rss, je suis tombé sur un article de Brett Schuchert, rédacteur sur le blog Object Mentor qui nous fait part d&#8217;un concept original pour la réunion d&#8217;avancement quotidienne.
Pour rappel, la réunion d&#8217;avancement a pour but de faire le point sur l&#8217;avancement et décider des objectifs du jour de manière très succincte. [...]]]></description>
			<content:encoded><![CDATA[<p>En lisant mes flux rss, je suis tombé sur un article de Brett Schuchert, rédacteur sur le blog <a title="ObjectMentor" href="http://blog.objectmentor.com/" target="_blank">Object Mentor</a> qui nous fait part d&#8217;un concept original pour la réunion d&#8217;avancement quotidienne.</p>
<p>Pour rappel, la réunion d&#8217;avancement a pour but de faire le point sur l&#8217;avancement et décider des objectifs du jour de manière très succincte. Pour s&#8217;assurer que ces réunions ne tirent pas en longueur et que chacun aille à l&#8217;essentiel, il nous propose de les effectuer tous debout et d&#8217;en profiter pour effectuer quelques exercices.</p>
<p>La personne qui a la parole pourra par exemple porter un poids, d&#8217;abords léger, puis au fur de plus en plus lourd au fil du temps afin de profiter de cette réunion afin d&#8217;offrir une séance sportive quotidienne à votre équipe.<br />
Cependant afin de ne pas se retrouver rapidement avec des développeurs aux bras de culturistes sur des corps de poulets, il est important de suivre un programme varié à la semaine.</p>
<p>Voici donc une proposition de programme que vous pourrez adapter à votre convenance (commencer avec des poids léger tout de même).</p>
<ul>
<li><strong>Lundi</strong> <span style="color: #ff0000;">haut du corps</span>: avec haltères, bras le long du corps, levez le bras vers l&#8217;avant ou le côté.</li>
</ul>
<ul>
<li> <strong>Mardi</strong> <span style="color: #ff0000;">cardio</span>: trottiner sur place, sautez en ramenant les genoux le plus haut possible.</li>
</ul>
<ul>
<li> <strong>Mercredi</strong> <span style="color: #ff0000;">bas du corps</span>: haltère sur les épaules, flexion de haut en bas.</li>
</ul>
<ul>
<li> <strong>Jeudi</strong> <span style="color: #ff0000;">cardio</span>: trottiner sur place, sautez en ramenant les talons aux fesses.</li>
</ul>
<ul>
<li> <strong>Vendredi</strong> <span style="color: #ff0000;">abdominaux</span>: mains sur la taille, jambes légèrement écartées et tourner le buste de gauche à droite avec le plus d&#8217;amplitude possible.</li>
</ul>
<p>Une idée vraiment pas bête tant l&#8217;exercice fait défaut dans notre métier. Qu&#8217;en pensez-vous?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/scrum-reunion-sportive/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Les Work Item: Présentation</title>
		<link>http://www.didiergeorges.com/blog/les-work-item-presentation</link>
		<comments>http://www.didiergeorges.com/blog/les-work-item-presentation#comments</comments>
		<pubDate>Mon, 27 Jul 2009 11:42:42 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Bug]]></category>
		<category><![CDATA[Issue]]></category>
		<category><![CDATA[Shared steps]]></category>
		<category><![CDATA[Task]]></category>
		<category><![CDATA[Test case]]></category>
		<category><![CDATA[User story]]></category>
		<category><![CDATA[Work item]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=83</guid>
		<description><![CDATA[Les Work Item sont les éléments de bases du travail en équipe sur Team Foundation server.
Ce sont des éléments de travail que l’on utilisera afin de guider le travail des membres de l’équipe en leur attribuant des tâches et en effectuant un suivi précis de celles-ci.
Les Différents Types de Work Items
Bug
Utilisé lorsqu’un bug est identifié, [...]]]></description>
			<content:encoded><![CDATA[<p>Les Work Item sont les éléments de bases du travail en équipe sur Team Foundation server.</p>
<p>Ce sont des <span style="color: #ff0000;">éléments de travail</span> que l’on utilisera afin de guider le travail des membres de l’équipe en leur attribuant des tâches et en effectuant un suivi précis de celles-ci.</p>
<h3>Les Différents Types de Work Items</h3>
<h4><strong>Bug</strong></h4>
<p>Utilisé lorsqu’un bug est identifié, la tâche décris la manière de reproduire le bug, le comportement actuel ainsi que le résultat attendu.</p>
<p>Exemple : Le bouton de validation reste inactif même si tous les champs sont remplis.</p>
<h4><strong>Issue</strong></h4>
<p>Utilisé pour demander <span style="color: #ff0000;">une modification</span> d’un élément déjà existant exemple</p>
<p>Exemple : Changer le lien hypertexte vers l’aide par un bouton</p>
<p><strong> </strong></p>
<h4><strong>Shar</strong><strong>ed Steps</strong></h4>
<p><strong> </strong></p>
<p>Les étapes partagées sont des <span style="color: #ff0000;">tâches récurrentes</span> des tests manuel qui seront donc réutilisées à chaque fois que l’on en a besoin afin d’éviter de recréer un nouvel item à chaque fois.</p>
<ol>
<li>saisir le login</li>
<li>saisir le mot de passe</li>
<li>cliquer sur « connecter »</li>
</ol>
<p><strong> </strong></p>
<h4><strong>Task</strong></h4>
<p>Une tâche est typiquement une <span style="color: #ff0000;">nouvelle fonctionnalité</span> à implémenter</p>
<p>Exemple : Ajouter un champ pour une adresse e-mail de secours</p>
<p><strong> </strong></p>
<h4><strong>Test Case</strong></h4>
<p>Les tests cases sont des <span style="color: #ff0000;">scénarios de test manuel</span> c’est à dire qui ne seront pas effectuer grâce à du code mais par un testeur qui effectuera les opérations demandées manuellement et effectuera un retour sur le résultat obtenu.</p>
<p>Exemple :</p>
<ol>
<li>se connecter</li>
<li>aller sur « mon profil »</li>
<li>cliquer sur « parrainage »</li>
<li>entrez une adresse email de test</li>
<li>cliquez sur envoyer l’invitation</li>
</ol>
<h4><strong>User Story</strong></h4>
<p><strong> </strong></p>
<p>Les user story sont également des <span style="color: #ff0000;">scenarios de tests manuels</span> mais beaucoup <span style="color: #ff0000;">moins détaillés</span> que les tests cases. Il s’agit uniquement de décrire en <span style="color: #ff0000;">language usuel</span> la fonctionnalité que l’on souhaite tester et le résultat attendu et ceci en une à deux phrases maximum. Il s’agit d’un concept phare de la méthode agile <a title="L'eXtreme Programming" href="http://www.didiergeorges.com/blog/presentation-de-lxp-extreme-programming" target="_self">extreme programming</a>. On peut lier des tests cases à une user story afin de détailler les étapes.</p>
<p>Exemple : les clients peuvent inviter un ami par mail.</p>
<h3>Les paramètres des Work Items</h3>
<h4>Tableau récapitulatif</h4>
<div id="attachment_85" class="wp-caption aligncenter" style="width: 593px"><img class="size-full wp-image-85" title="Champs des Work Items" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/WI_table.png" alt="Champs des Work Items" width="583" height="602" /><p class="wp-caption-text">Paramètres des Work Items</p></div>
<h4>Détail des paramètres</h4>
<h4>Status</h4>
<ul>
<li>Title : titre du work item</li>
<li>Assigned to : utilisateur qui devra réaliser la tâche</li>
<li>State : état de réalisation de la tâche</li>
<li>Area : partie du projet concernée par la tâche</li>
<li>Iteration : iteration à laquelle la tâche doit être réalisée</li>
<li>Reason : raison(s) de l’existence de cette tâche</li>
<li>Activity :</li>
<li>Automation Status : automatiser l’exécution</li>
</ul>
<h5>Planning</h5>
<ul>
<li>Stack Rank : rang dans l’ordre de realisation des tâches</li>
<li>Priority : degré d’urgence de la réalisation</li>
<li>Story points : Nombre d’étapes dans le scenario de test</li>
<li>Risk : degré de risqué d’échec estimé</li>
<li>Severity : degré d’importance de la tâche</li>
<li>Due Date : date de realisation prévue</li>
</ul>
<h5>Effort</h5>
<ul>
<li>Original Estimate : estimation du temps nécessaire</li>
<li>Remaining : estimation du temps restant avant réalisation</li>
<li>Completed : temps de travail déjà effectué</li>
</ul>
<h5>Autres</h5>
<ul>
<li>Description : description du work item</li>
<li>History : raisons pour laquelle le work item à été créé</li>
<li>Steps to Reproduce : étapes à reproduire dans le work item</li>
<li>Links : lier des éléments au work item (work item, lien…)</li>
<li>File Attachement : lier  des fichiers (image, fichier texte…)</li>
<li>System Infos : état du system au moment du test</li>
<li>Test Cases : tests manuels pour tester la correction du bug</li>
<li>Steps : étapes de la tâche partagée</li>
<li>Implementation : lier des tâches parentes et enfants</li>
<li>Tested Work Item : lier des tests préalables</li>
<li>Associated Automation : associer un test automatisé</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/les-work-item-presentation/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Création d’un nouveau projet</title>
		<link>http://www.didiergeorges.com/blog/creation-d%e2%80%99un-nouveau-projet</link>
		<comments>http://www.didiergeorges.com/blog/creation-d%e2%80%99un-nouveau-projet#comments</comments>
		<pubDate>Wed, 22 Jul 2009 12:59:05 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[collection de projets]]></category>
		<category><![CDATA[droits d'accès]]></category>
		<category><![CDATA[Projet]]></category>
		<category><![CDATA[TFS 2010]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=45</guid>
		<description><![CDATA[Une fois l&#8217;installation et la configuration de TFS effectuée, (en suivant la procédure décrite dans le fichier d&#8217;aide TFSInstall.chm également disponible à la racine du Dvd d&#8217;installation de TFS) vous allez pouvoir commencer à en expérimenter les fonctionnalités.
Collection de projet
Une des nouveautés de la version 2010 est l&#8217;apparition de collection de projets permettant un classement [...]]]></description>
			<content:encoded><![CDATA[<p>Une fois l&#8217;installation et la configuration de TFS effectuée, (en suivant la procédure décrite dans le fichier d&#8217;aide <span style="color: #0000ff;"><a title="Guide d'installation de TFS 2010" href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=2d531219-2c39-4c69-88ef-f5ae6ac18c9f" target="_blank">TFSInstall.chm</a></span> également disponible à la racine du Dvd d&#8217;installation de TFS) vous allez pouvoir commencer à en expérimenter les fonctionnalités.</p>
<h3>Collection de projet</h3>
<p>Une des nouveautés de la version 2010 est l&#8217;apparition de <span style="color: #ff0000;">collection de projets</span> permettant un classement beaucoup plus efficace de vos projets. Vous pouvez par exemple décider de créer des collections de projets par client pour une société de service, par service pour du développement en interne.</p>
<p>A chaque collection de projet est associé <span style="color: #ff0000;">une base de donnée</span> ainsi qu&#8217;<span style="color: #ff0000;">un site portail</span> permettant ainsi de désolidariser les projets n&#8217;ayant aucun lien.</p>
<p>Avant de créer notre premier projet nous allons donc créer une nouvelle collection de projet « <strong>ProjetsTestTFS</strong> » qui va contenir notre nouveau projet.</p>
<h4>Ajouter une collection de projet</h4>
<ul>
<li>Ouvrez la <strong>Team Foundation Administration Console</strong></li>
</ul>
<ul>
<li>Déroulez l’arboresence de votre serveur TFS et cliquez sur <strong>Team Project Collections</strong></li>
</ul>
<p>Il existe déjà une collection appelée DefaultCollection qui a été créée au moment de l’installation de TFS.</p>
<ul>
<li>Cliquez sur <strong>Create Team Project Collection</strong></li>
</ul>
<p>L’assistant de création rend l’opération très simple :</p>
<ul>
<li>Entrez un <strong>nom </strong>et une <strong>description </strong>pour la collection.</li>
</ul>
<ul>
<li>Sélectionnez votre instance de SQL Server.</li>
</ul>
<ul>
<li>Sélectionnez l’application Web SharePoint sur laquelle vous souhaitez installer le site de projet.</li>
</ul>
<ul>
<li>Cliquez sur le bouton <strong>Verify</strong> afin de vérifier la validité des informations de configuration.</li>
</ul>
<ul>
<li>Une fois toutes les conditions remplies avec succès, cliquez sur <strong>Create.</strong></li>
</ul>
<p>Une fois la création terminée, cliquez sur <strong>Complete</strong>. Vous verrez alors votre nouvelle collection dans la liste</p>
<div id="attachment_62" class="wp-caption aligncenter" style="width: 310px"><a title="La nouvelle collection" rel="lightbox" href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/Collection.png"><img class="size-medium wp-image-62" title="La nouvelle collection" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/Collection-300x172.png" alt="La nouvelle collection" width="300" height="172" /></a><p class="wp-caption-text">La nouvelle collection</p></div>
<h4>Configurer les droits de la collection de site</h4>
<p>Dans la <span style="color: #ff0000;">Console d&#8217;administration de Team Foundation</span>, dans la liste des collections de projets, sélectionnez la collection <strong>ProjetsTestTFS</strong> puis cliquez sur <strong>Administrer Group Membership</strong></p>
<p>Double-cliquez alors sur le groupe <strong>Project Collection Administrator </strong>et ajoutez les comptes utilisateurs responsables de la création des projets dans la collection.</p>
<h3>Projet</h3>
<p>Chaque projet dispose de son propre site portail ce qui permet de gérer les droit séparément pour chaque projet afin de s&#8217;adapter à l&#8217;équipe.</p>
<h4>Ajouter un nouveau projet</h4>
<p>Vous allez maintenant ajouter un nouveau projet dans cette collection.</p>
<p>Ouvrez une session avec un compte disposant des droits d’administration sur la collection et ouvrez <strong>Visual Studio</strong>.</p>
<p><span style="color: #ff0000;">Attention</span> : Vous devez impérativement avoir <strong>Team Explorer</strong> installé sur Visual Studio. Ce dernier est compris dans les versions Team Suite, architect, tester… Vous trouverez également son fichier d’installation sur le dvd de Team Foundation Server.</p>
<p>Ouvrez la vue <strong>Team Explorer</strong> et connectez-vous à votre <strong>serveur TFS</strong>, sélectionnez votre <strong>collection de projet</strong> puis cliquez sur <strong>Connect.</strong></p>
<p>Une fois votre Team Explorer connecté à la nouvelle collection de projets, effectuez un clic droit sur la collection puis cliquez sur <strong>New Team Project.</strong></p>
<ul>
<li>Saisissez un <strong>nom</strong> ainsi qu’une <strong>description</strong> du projet.</li>
</ul>
<ul>
<li>Sélectionnez le template Microsoft pour les développement Agile.</li>
</ul>
<ul>
<li>Vous pouvez ensuite laissez les autres options par défaut et lancer la création en cliquant sur <strong>Finish</strong>.</li>
</ul>
<p>Votre projet est maintenant créé et vous le retrouvez dans votre Team Explorer.</p>
<div id="attachment_56" class="wp-caption aligncenter" style="width: 310px"><a title="Le projet dans Team Explorer" rel="lightbox" href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/addpro04.png"><img class="size-medium wp-image-56" title="Nouveau Projet Team Explorer" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/addpro04-300x161.png" alt="Le projet dans Team Explorer" width="300" height="161" /></a><p class="wp-caption-text">Le projet dans Team Explorer</p></div>
<h4>Configurer les droits du projet</h4>
<p>Effectuez un clic droit sur le projet dans le <strong>Team Explorer</strong>, puis cliquez sur Team Project Settings et enfin <strong>Group Membership</strong>.</p>
<p>Sélectionnez le groupe <strong>Contributors</strong> et ouvrez ses propriétés afin d’ajouter <strong>les membres de l’équipe</strong> du projet.</p>
<div id="attachment_57" class="wp-caption aligncenter" style="width: 310px"><a title="Groupe du projet" rel="lightbox" href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/addpro06.png"><img class="size-medium wp-image-57" title="Groupes de projet" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/addpro06-300x173.png" alt="Groupes de sécurité du projet" width="300" height="173" /></a><p class="wp-caption-text">Groupes de sécurité du projet</p></div>
<p>Une fois dans les propriétés du groupe, sélectionnez le type <strong>Windows User or Group</strong>, puis cliquez sur <strong>Add</strong>.</p>
<p>Renseignez les utilisateurs qui contribueront au projet, puis cliquez sur <strong>OK</strong></p>
<p>Vous pouvez bien évidemment recommencer l’opération pour le groupe des responsables des Builds (Builders) et pour donner un accès en consultation (Readers).</p>
<p>Vos utilisateurs pourront maintenant participer au projet en se connectant avec leur compte. Cependant il faut encore donner <strong>les droits d’accès au site de projet sharepoint.</strong></p>
<h4><strong>Configuration des droits d’accès au site portail</strong></h4>
<p>Connectez-vous au site de projet avec un compte <strong>administrateur de la collection</strong> (<span style="color: #ff0000;">http://<em>nomServeur</em>/sites/<em>nomCollection</em>/<em>nomProjet</em></span>)</p>
<p>Nous pourrions attribuer les droits au cas par cas cependant il est plus prudent dans un souci de maintenance de créer des <strong>groupes d’utilisateurs</strong> et d’attribuer les rôles aux groupes plutôt qu’aux personnes.</p>
<p>Dans les paramètres du site (<strong>Site Actions</strong> &gt; <strong>Site Settings</strong>) ouvrez la liste des utilisateurs autorisés (<strong>People and Groups</strong>) puis rendez-vous sur le formulaire de création d’un groupe en cliquant <strong>New</strong> &gt; <strong>New Group</strong> :</p>
<ul>
<li>Donnez un <strong>nom</strong> au groupe</li>
</ul>
<ul>
<li>Saisissez une <strong>description</strong> pour le groupe</li>
</ul>
<ul>
<li>Gardez le compte administrateur de la collection de site comme <strong>propriétaire</strong> ou choisissez un autre compte qui sera en charge du groupe</li>
</ul>
<ul>
<li>Attribuez les droits adéquats (ici <strong>Contribute</strong>)</li>
</ul>
<ul>
<li>Cliquez sur <strong>Create</strong> pour créer le nouveau groupe</li>
</ul>
<p>Une fois le projet créée la liste des membres apparaît, avec pour seul membre notre propriétaire défini dans le précédent formulaire :</p>
<ul>
<li>Cliquez sur <strong>New</strong> &gt; <strong>Add Users</strong></li>
</ul>
<p>Renseignez alors le nom d’un utilisateur membre puis sélectionnez le groupe précédemment créé et cliquez sur <strong>OK</strong> pour valider.</p>
<div id="attachment_59" class="wp-caption aligncenter" style="width: 310px"><a title="Ajout d'un utilisateur" rel="lightbox" href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/addpro11.png"><img class="size-medium wp-image-59" title="Ajout d'utilisateur au groupe" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/addpro11-300x192.png" alt="Ajout d'utilisateur au groupe" width="300" height="192" /></a><p class="wp-caption-text">Ajout d&#39;utilisateur au groupe</p></div>
<p>Effectuez ces opérations pour <strong>tous les utilisateurs</strong> nécessitant un accès. Vous pouvez également ajouter des groupes de sécurité Active Directory comme membre d’un groupe SharePoint.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/creation-d%e2%80%99un-nouveau-projet/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Présentation de Team System 2010</title>
		<link>http://www.didiergeorges.com/blog/presentation-de-team-system-2010</link>
		<comments>http://www.didiergeorges.com/blog/presentation-de-team-system-2010#comments</comments>
		<pubDate>Tue, 21 Jul 2009 15:24:30 +0000</pubDate>
		<dc:creator>Philippe Didiergeorges</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[team system]]></category>
		<category><![CDATA[TFS 2010]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://www.didiergeorges.com/blog/?p=22</guid>
		<description><![CDATA[Team System est une plateforme collaborative complète destinée au développement d’applications en équipes.
La suite se compose de nombreux produits. Team Foundation Server est le noyau dur de la suite et de nombreux produits associés permettent d’en exploiter toutes les possibilités.
Les composants de Team System 2010

Côté Serveur : 

Team Foundation Server :

Il s’agit du cœur du [...]]]></description>
			<content:encoded><![CDATA[<p>Team System est une plateforme collaborative complète destinée au développement d’applications en équipes.</p>
<p>La suite se compose de nombreux produits. Team Foundation Server est le noyau dur de la suite et de nombreux produits associés permettent d’en exploiter toutes les possibilités.</p>
<h3><strong>Les composants de Team System 2010</strong></h3>
<p align="center">
<div id="attachment_23" class="wp-caption aligncenter" style="width: 310px"><a title="Structure de Team System" rel="lightbox" href="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/VS2010_thumb3_d9809c9c-5f87-431d-bcb7-02e39a308dd9.png"><img class="size-medium wp-image-23" title="VS2010_map" src="http://www.didiergeorges.com/blog/wp-content/uploads/2009/07/VS2010_thumb3_d9809c9c-5f87-431d-bcb7-02e39a308dd9-300x193.png" alt="Structure de Visual Studio Team System" width="300" height="193" /></a><p class="wp-caption-text">Structure de Visual Studio Team System</p></div>
<h4><strong>Côté Serveur </strong>:<strong> </strong></h4>
<ul>
<li><strong>Team Foundation Server</strong> :</li>
</ul>
<p>Il s’agit du cœur du système. Team Foundation Server fournit :</p>
<p>-         <strong>Source Control</strong> : gestionnaire de sources</p>
<p>-         <strong>Work Item tracking</strong> : suivi des éléments de travail (Work Item)</p>
<p>-         <strong>Builds Management</strong> : gestion des Builds</p>
<p>-         <strong>Test Case Management</strong> : gestion des tests</p>
<p>-         <strong>Lab Management</strong> : gestion des environnements de test</p>
<ul>
<li><strong>Windows SharePoint Services</strong> :</li>
</ul>
<p>Il s’agit du moteur de sites collaboratifs de Microsoft, utilisé pour les sites de projet, l’interface privilégiée de collaboration et de communication au sein de l’équipe.</p>
<p>Il propose par défaut un guide de processus, des documents de projet, des modèles et des fonctions de suivi des éléments de travail (Work Item).</p>
<ul>
<li><strong>SQL Server Reporting Services</strong> :</li>
</ul>
<p>Il s&#8217;agit d&#8217;un service de génération de rapport utilisé par Team Foundation Server pour fournir des outils d’analyse personnalisables au chef de projet et aux membres de l’équipe.</p>
<h4><strong>Côté Client</strong> :</h4>
<ul>
<li><strong>Visual Studio </strong>:</li>
</ul>
<p>On ne présente plus le meilleur ami du développeur en environnement .Net. Les outils de Team Foundation Server sont parfaitement intégrés dans Visual Studio.</p>
<p>Il existe une version spécialisée pour chaque métier :</p>
<p>-         Visual Studio for Software Architects</p>
<p>-         Visual Studio for Software Developpers</p>
<p>-         Visual Studio for Software Testers</p>
<p>-         Visual Studio for Database Professionals</p>
<p>Il est également possible de n’installer Visual Studio Team Explorer pour la gestion et l’analyse des projets.</p>
<p>Visual Studio version Team System regroupe les fonctionnalités de toutes ces versions.</p>
<ul>
<li><strong>Team Explorer</strong> :</li>
</ul>
<p>Team Explorer est l’outil, intégré à Visual Studio permettant aux utilisateurs d’interagir avec le Serveur TFS. Il offre</p>
<ul>
<li><strong>Web Access</strong> :</li>
</ul>
<p>Ce service offre des fonctionnalités similaires au Team Explorer depuis une interface web. Il permet donc d’administrer vos projets depuis un ordinateur distant ou ne disposant pas de Team Explorer installé.</p>
<ul>
<li><strong>Test &amp; Lab Manager</strong> :</li>
</ul>
<p>Le Test &amp; Lab Manager est une nouvelle interface dédiée aux testeurs. Il permet la création, la planification et l’exécution des campagnes de tests, la gestion des configurations de test (couplé avec Hyper-V) ainsi qu’un suivi et un reporting des bugs.</p>
<ul>
<li><strong>Test Runner :</strong></li>
</ul>
<p>Le Test Runner est un outil intégré au Test &amp; Lab Manager permettant de guider les testeurs lors des phases de tests manuels et offrant également un support pour le suivi de ces derniers.</p>
<ul>
<li><strong>Office</strong> :</li>
</ul>
<p>Intégration au sein de MS Project ainsi que MS Excel pour le suivi des éléments de travail (work items).</p>
<ul>
<li><strong>Expression</strong> :</li>
</ul>
<p><strong> </strong></p>
<p>Il s’agit de la suite d’outils centrée sur le développement web et multimédia et qui intègre également des outils d’interaction avec le serveur TFS.</p>
<h4><strong>Extensibilité<br />
</strong></h4>
<p>Microsoft a prévu la possibilité d’étendre le modèle de TFS avec le SDK (Software Development Kit) pour Team Foundation Server. Ceci pour permettre à la communauté d’utilisateur d’adapter le produit à leurs besoins et d’étendre ses fonctionnalités.</p>
<h3><strong>Configuration matérielle</strong></h3>
<p><strong> </strong></p>
<p>Voici les spécifications matérielles minimales préconisées par Microsoft pour l’installation de Team Foundation Server :</p>
<p><strong> </strong></p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="109" valign="top">
<p align="center"><strong>Utilisateurs</strong></p>
</td>
<td width="164" valign="top">
<p align="center"><strong>Processeur</strong></p>
</td>
<td width="159" valign="top">
<p align="center"><strong>Disque dur</strong></p>
</td>
<td width="96" valign="top">
<p align="center"><strong>Mémoire</strong></p>
</td>
<td width="129" valign="top">
<p align="center"><strong>Configuration</strong></p>
</td>
</tr>
<tr>
<td width="109" valign="top">
<p align="center">Moins de 20</p>
</td>
<td width="164" valign="top">
<p align="center">1 cœur &gt;= 2,2GHz</p>
</td>
<td width="159" valign="top">
<p align="center">8Go</p>
</td>
<td width="96" valign="top">
<p align="center">2Go</p>
</td>
<td width="129" valign="top">
<p align="center">1 Serveur*</p>
</td>
</tr>
<tr>
<td width="109" valign="top">
<p align="center">20 à 250</p>
</td>
<td width="164" valign="top">
<p align="center">1 cœur &gt;= 3,6GHz</p>
</td>
<td width="159" valign="top">
<p align="center">230Go</p>
</td>
<td width="96" valign="top">
<p align="center">2Go</p>
</td>
<td width="129" valign="top">
<p align="center">1 Serveur</p>
</td>
</tr>
<tr>
<td width="109" valign="top">
<p align="center">250 à 450</p>
</td>
<td width="164" valign="top">
<p align="center">2 cœurs &gt;= 2,8GHz</p>
</td>
<td width="159" valign="top">
<p align="center">500Go</p>
</td>
<td width="96" valign="top">
<p align="center">4Go</p>
</td>
<td width="129" valign="top">
<p align="center">1 Serveur</p>
</td>
</tr>
<tr>
<td width="109" valign="top">
<p align="center">450 à 2200</p>
</td>
<td width="164" valign="top">
<p align="center">2 cœurs &gt;= 2,8GHz</p>
</td>
<td width="159" valign="top">
<p align="center">31Go+137Go raid1</p>
</td>
<td width="96" valign="top">
<p align="center">3,5Go</p>
</td>
<td width="129" valign="top">
<p align="center">2+ Serveurs**</p>
</td>
</tr>
<tr>
<td width="109" valign="top">
<p align="center">2200 à 3600</p>
</td>
<td width="164" valign="top">
<p align="center">4 cœurs &gt;= 2,2GHz</p>
</td>
<td width="159" valign="top">
<p align="center">31Go+137Go raid1</p>
</td>
<td width="96" valign="top">
<p align="center">3,5Go</p>
</td>
<td width="129" valign="top">
<p align="center">2+ Serveurs</p>
</td>
</tr>
</tbody>
</table>
<p>* Configuration à 1 serveur : Team Foundation Server 2010, Team Build Server, SharePoint et MS SQL Server sur la même machine.</p>
<p>** Configuration à 2 ou plus serveurs : Configuration répartissant les différents services sur plusieurs serveurs afin de répartir la charge.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.didiergeorges.com/blog/presentation-de-team-system-2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

