<?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-225905308527208627</id><updated>2012-02-19T15:54:55.692+01:00</updated><category term='TFS11'/><category term='Silverlight 4.0'/><category term='UnitTests'/><category term='Architecture'/><category term='Mnemonic'/><category term='QTP'/><category term='MCP'/><category term='Events - Tech-Days'/><category term='events'/><category term='T4'/><category term='AZURE'/><category term='Open Workbench'/><category term='Log'/><category term='Genetic Algorithm'/><category term='Visual Studio 2010'/><category term='agile experience'/><category term='Augmented Reality'/><category term='PRINCE2'/><category term='Visual Studio 2008'/><category term='ALM'/><category term='Build Definition'/><category term='Workflow Foundation 4'/><category term='BDD'/><category term='CodeMetrics'/><category term='training kit'/><category term='SQL Azure'/><category term='Batch'/><category term='performance'/><category term='Testimonials'/><category term='bug popup'/><category term='.Net programming'/><category term='TFS 11'/><category term='Startup'/><category term='Cloud'/><category term='PMBOK'/><category term='load test'/><category term='Windows 7'/><category term='SQL_tips'/><category term='Intelligent Systems'/><category term='UI Tests'/><category term='charts'/><category term='Reports'/><category term='Project Management'/><category term='WebMatrix'/><category term='WIX'/><category term='TFS'/><category term='Branching'/><category term='VOLVO'/><category term='MSBuild'/><category term='IIS'/><category term='Best Practices'/><category term='PMI'/><category term='Entity Framework 4'/><category term='Visual Studio 11'/><category term='SCRUM'/><category term='eCommerce'/><category term='3D'/><category term='tutorials'/><category term='Lesson Learned'/><category term='BI'/><category term='Design Pattern'/><category term='quality'/><category term='comparison tool'/><category term='Class Diagrams'/><category term='TortoiseSVN'/><category term='Events - Tech-Ed'/><title type='text'>MemoProjects : Just so we don't forget</title><subtitle type='html'>1/ Project Management with TFS Team Foundation Server 2010 (without forgetting EXCEL and a bit of ... Office Project 2010 !)
2/ Web development (ASP.Net and Silverlight 4.0)
3/ Email me : TFS(AT)Thavo(DOT)com or via LinkedIn below.
4/ Check my French Blog http://blogs.developpeur.org/thavo/</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>94</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-6068835006122739407</id><published>2012-02-17T19:25:00.004+01:00</published><updated>2012-02-19T15:54:55.704+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Azure'/><category scheme='http://www.blogger.com/atom/ns#' term='AZURE'/><title type='text'>[Azure] Migrating your SQL Server 2008 Database to SQL Azure</title><content type='html'>They are many ways you could do to migrate your SQL Server 2008 database (SSIS bulk copy, Data Sync, dedicated tools, …). Here is one of them, that was quite painless, and free of charge (at opposed of using commercial tools).&lt;br /&gt;Because the Windows Azure world is moving really fast, this method might be already out of date as you are reading !&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Pre-requisites:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Get a &lt;b&gt;Windows Azure account &lt;/b&gt;(currently you have 90 days free &lt;a href="http://www.microsoft.com/france/windows-azure/Offres/Essai-90-jours.aspx"&gt;http://www.microsoft.com/france/windows-azure/Offres/Essai-90-jours.aspx&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Get “&lt;b&gt;Free Download Manger&lt;/b&gt;” application &lt;a href="http://www.freedownloadmanager.org/" title="http://www.freedownloadmanager.org/"&gt;http://www.freedownloadmanager.org/&lt;/a&gt; (if you have a proxy at work, you could use a direct link from sourceforge: &lt;a href="http://sourceforge.net/projects/freedownload/files/Free%20Download%20Manager/FDM%203.8.1173/fdminst.exe/download" title="http://sourceforge.net/projects/freedownload/files/Free%20Download%20Manager/FDM%203.8.1173/fdminst.exe/download"&gt;http://sourceforge.net/projects/freedownload/files/Free%20Download%20Manager/FDM%203.8.1173/fdminst.exe/download&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Download the &lt;b&gt;TFS11 and VS11&lt;/b&gt; (i.e. what will probably be VS2012 and TFS2012): &lt;a href="http://blogs.msdn.com/b/briankel/archive/2011/09/16/visual-studio-11-application-lifecycle-management-virtual-machine-and-hands-on-labs-demo-scripts.aspx" title="http://blogs.msdn.com/b/briankel/archive/2011/09/16/visual-studio-11-application-lifecycle-management-virtual-machine-and-hands-on-labs-demo-scripts.aspx"&gt;http://blogs.msdn.com/b/briankel/archive/2011/09/16/visual-studio-11-application-lifecycle-management-virtual-machine-and-hands-on-labs-demo-scripts.aspx&lt;/a&gt;&lt;br /&gt;from Brian Keller’s blog, using Free Download Manger&lt;/li&gt;&lt;li&gt;Install the &lt;b&gt;SQL Azure Migration Wizard&lt;/b&gt;: &lt;a href="http://sqlazuremw.codeplex.com/" title="http://sqlazuremw.codeplex.com/"&gt;http://sqlazuremw.codeplex.com/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;How-to?&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-fOb2TkNvuGg/T0EFxDkZmXI/AAAAAAAADDM/9ZdY0VisxRg/s1600/SQL+Azure+Migration+Wizard.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Let us assume you have &lt;b&gt;VS 2010 &lt;/b&gt;and &lt;b&gt;SQL Server 2008 R2&lt;/b&gt;, and you have an existing DB that you are happy with,&lt;/li&gt;&lt;li&gt;Install and use&lt;span style="color: lime;"&gt; &lt;/span&gt;&lt;b style="background-color: lime; color: black;"&gt;“SQL Azure Migration Wizard”&lt;/b&gt;&lt;span style="background-color: lime;"&gt; &lt;/span&gt;tool to connect to your existing database. It will generate you as T-SQL Script will errors that would occur in SQL Azure (you could find all the infringement rules alongside this CodePlex project),&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-fOb2TkNvuGg/T0EFxDkZmXI/AAAAAAAADDM/9ZdY0VisxRg/s1600/SQL+Azure+Migration+Wizard.JPG" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="275" src="http://1.bp.blogspot.com/-fOb2TkNvuGg/T0EFxDkZmXI/AAAAAAAADDM/9ZdY0VisxRg/s320/SQL+Azure+Migration+Wizard.JPG" width="320" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Modify your T-SQL accordingly to &lt;b&gt;fix highlighted errors &lt;/b&gt;and generate a new database. Let call it DB_SQL_AZURE_COMPLIANT,&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b style="background-color: lime;"&gt;&lt;u&gt;Migration DONE&lt;/u&gt; !! &lt;/b&gt;(either let the tool correct for you or do it your self). This tool could even push your database (without its data) directly into SQL Azure.&lt;br /&gt;The steps after are to enable you to work in a &lt;u&gt;secure manner &lt;/u&gt;and &lt;u&gt;ensure  &lt;/u&gt;your project is still compatible with SQL Azure, and provide a link to show how to also push your data (using BACPAC),&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;With VS 2010, create (or use an existing) a SQL Server &lt;b&gt;Data-tier Application&lt;/b&gt; &lt;a href="http://lh5.ggpht.com/-i-RyGnSdKDA/Tz6YqrI4zbI/AAAAAAAADB8/KHnhegmqW-U/s1600-h/image%25255B2%25255D.png"&gt;&lt;img alt="image" border="0" height="139" src="http://lh4.ggpht.com/-guMicfb6zNQ/Tz6YswTuUJI/AAAAAAAADCA/IKzGNQH6ndM/image_thumb.png?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="244" /&gt;&lt;/a&gt; &lt;/li&gt;&lt;li&gt;Reverse Engineer you SQL database into Visual Studio Database DAC project using "&lt;b&gt;Import Data-tier Application...&lt;/b&gt;", and connect to your new DB_SQL_AZURE_COMPLIANT database&lt;br /&gt;&lt;a href="http://lh3.ggpht.com/-OcSmaCpvu2o/Tz6Yto-uJNI/AAAAAAAADCM/Ze6TpMGSy2I/s1600-h/image%25255B5%25255D.png"&gt;&lt;img alt="image" border="0" height="92" src="http://lh5.ggpht.com/-NNBPJfL5jxo/Tz6Yuxd7xaI/AAAAAAAADCU/s9SoTlM7OII/image_thumb%25255B1%25255D.png?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="244" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;You will have a VS 2010 DB project that is able to generate &lt;b&gt;DACPAC v2.0 &lt;/b&gt;deployment file (basically, it is a ZIP file that contains schema of you database, without any data. As opposed to BACPAC that is a extension of DACPAC, where a BACPAC also contains you data as JSON format). More info on DACPAC format: &lt;a href="http://msdn.microsoft.com/en-us/library/ff719373.aspx"&gt;http://msdn.microsoft.com/en-us/library/ff719373.aspx&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Now you have a DB project that is &lt;u&gt;most likely&lt;/u&gt; be able to be &lt;b&gt;deployed into SQL Azure&lt;/b&gt; (you can be certain only once you have migrated everything). You could verify that by running again the “&lt;b&gt;SQL Azure Migration Wizard&lt;/b&gt;” tool and deploy into SQL Azure. You now should have no errors.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;To &lt;b&gt;double check&lt;/b&gt; it is really compliant, we are going to use our VM,&lt;/li&gt;&lt;li&gt;Mount your VM and configure your &lt;b&gt;network card&lt;/b&gt; (so you could access it vis MSTSC)&lt;/li&gt;&lt;li&gt;Make a &lt;b&gt;Snap shot&lt;/b&gt; of your VM (in case you want to rollback)&lt;/li&gt;&lt;li&gt;Copy/Paste you DAC project (created with VS2010) into the VM and open it with &lt;b&gt;VS11&lt;/b&gt;, and confirm the you want your project &lt;b&gt;to be migrated &lt;/b&gt;into a VS11 DB project,&lt;/li&gt;&lt;li&gt;Because you’ve done a great job correcting the T-SQL Errors, and you have great Stored procedures, views, … and no errors, you could activate ALL rules &lt;b&gt;CodeAnalysis&lt;/b&gt; (below) with confidence !!&lt;br /&gt;Also, ensure you have a Data-tier Application (.dacpac file) &lt;b&gt;checkbox is selected&lt;/b&gt;, and that the &lt;b&gt;“Target platform”&lt;/b&gt; is &lt;b&gt;“SQL Azure”&lt;/b&gt;.&lt;br /&gt;&lt;a href="http://lh4.ggpht.com/-f1pT6iC5sR8/Tz6Yv5QyhBI/AAAAAAAADCc/BoN0aIniYdg/s1600-h/image%25255B20%25255D.png"&gt;&lt;img alt="image" border="0" height="92" src="http://lh6.ggpht.com/-eZsMsDK82S4/Tz6YxPgbtSI/AAAAAAAADCk/s-QhJE2WpFk/image_thumb%25255B6%25255D.png?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="244" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Install &lt;b&gt;Silverlight 5&lt;/b&gt; add &lt;u&gt;on the VM&lt;/u&gt;. This is because the existing one on the VM is old and will not support new SQL Azure web portal &lt;br /&gt;(generally, unless you know what you do, do not install SL5 on your DEV machine if you are working on SL4, else you would spend hours uninstalling. Indeed, it will break your SL4 dev environment)&lt;/li&gt;&lt;li&gt;Connect to your &lt;b&gt;Windows Azure web portal&lt;/b&gt;, and go to “Database” (this is in Silverlight 4)&lt;br /&gt;&lt;a href="http://lh4.ggpht.com/-pqNd3PBrcKE/Tz6YyHZFC1I/AAAAAAAADCs/dWXVu2Jj8xs/s1600-h/image%25255B11%25255D.png"&gt;&lt;img alt="image" border="0" height="215" src="http://lh3.ggpht.com/-JKrhQOigiG8/Tz6YzUDb_eI/AAAAAAAADC0/zh7VedahNM8/image_thumb%25255B3%25255D.png?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="244" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Click&lt;b&gt; “Manage”&lt;/b&gt; this will open the Web portal to manage SQL Azure&lt;b&gt; &lt;/b&gt;&lt;br /&gt;&lt;a href="http://lh5.ggpht.com/-DvhLRTPEvqM/Tz6Y1c75cCI/AAAAAAAADC8/mgArO8Rq6DU/s1600-h/image%25255B14%25255D.png"&gt;&lt;img alt="image" border="0" height="136" src="http://lh5.ggpht.com/-Rsdn8UKWhQI/Tz6Y3q4k2bI/AAAAAAAADDE/IqbYlNR7OUw/image_thumb%25255B4%25255D.png?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="244" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;The opens a new &lt;b&gt;Web portal to manage SQL Azure &lt;/b&gt;(in Silverlight 5)&lt;/li&gt;&lt;li&gt;Now you could play with your newly database migrated into SQL Azure (type in plain T-SQL and run it). This web portal contains &lt;u&gt;MANY MANY MANY&lt;/u&gt; great functionalities that you should discover ONLY progressively (because it looks nice, but a bit messy !!)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The &lt;b&gt;final step &lt;/b&gt;is to populate your database with data (simply use a T-SQL script as a quick hack). Indeed, again DACPAC only deals with schema and for data, this is done using BACPAC: &lt;a href="http://www.4tecture.ch/blog/sql-azure-import-export-service-is-now-in-production"&gt;http://www.4tecture.ch/blog/sql-azure-import-export-service-is-now-in-production&lt;/a&gt;&lt;br /&gt;But this is another story, based on other Windows Azure platform components and further CodePlex projects !&amp;nbsp; &lt;/li&gt;&lt;/ol&gt;By the way, with a large database, I never managed to make the Microsoft “&lt;b&gt;SQL Azure Compatibility Assessment&lt;/b&gt;” tool working. &lt;a href="http://www.microsoft.com/en-us/sqlazurelabs/labs/sqlassessment.aspx" title="http://www.microsoft.com/en-us/sqlazurelabs/labs/sqlassessment.aspx"&gt;http://www.microsoft.com/en-us/sqlazurelabs/labs/sqlassessment.aspx.&lt;/a&gt;It seams really promising, but it always tells me that my DACPAC is of an incorrect format, and that I should use a SQL Server Data Tools (CTP4) to generate it. &lt;br /&gt;But how come ?? unless my version of SQL Server Data Tools installed in my VS11 is out of date ! In which case, I must again run after the latest tool and latest news concerning Windows Azure.&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-6068835006122739407?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/6068835006122739407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2012/02/azure-migrating-your-sql-server-2008.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6068835006122739407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6068835006122739407'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2012/02/azure-migrating-your-sql-server-2008.html' title='[Azure] Migrating your SQL Server 2008 Database to SQL Azure'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-fOb2TkNvuGg/T0EFxDkZmXI/AAAAAAAADDM/9ZdY0VisxRg/s72-c/SQL+Azure+Migration+Wizard.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-5931401105070928443</id><published>2011-11-08T02:32:00.001+01:00</published><updated>2011-11-08T02:32:06.343+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quality'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 11'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS 11'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><title type='text'>[TFS11 &amp; VS11] NDepend to reverse Engineer Microsoft Fabrikam Fiber</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;u&gt;1. Introduction&lt;br&gt;&lt;/u&gt;&lt;/strong&gt;In order to practice our skills with the latest version of TFS 11 and VS 11, I decided to reverse engineer rapidly the standard Microsoft Fabrikam Fiber project.&lt;br&gt;Because I am a big fan of &lt;a href="http://www.ndepend.com/"&gt;NDepend&lt;/a&gt; (often used as quality and technical audit tool), I will use this tool to understand more about Fabrikam Fiber project.&lt;/p&gt; &lt;p&gt;Usually, I use NDepend along a Software Factory as a quality gate on the top of FxCop and StyleCop (Vincent Labatut has got a &lt;a href="http://blogs.developpeur.org/vlabz/archive/2011/10/26/int-gration-de-ndepend-dans-tfs-2010-sur-codeplex.aspx"&gt;CodePlex&lt;/a&gt; project to integrate easily NDepend to TFS 2010's Build definition).&lt;/p&gt; &lt;p&gt;&lt;u&gt;&lt;strong&gt;2. Presentation of Fabrikam Fiber&lt;/strong&gt;&lt;br&gt;&lt;/u&gt;In the context of TFS 11 and VS 11 usage, Fabrikam Fiber is a Microsoft Web Project that to be a pseudo real case projec. As such it allows us to understand new concepts and practice ALM 11 tutorials. The source code is split accross 3 branches in TFS 11 : Main / Dev / Release1 &lt;br&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt; &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="200"&gt;&lt;a href="http://lh5.ggpht.com/-8oZZrZvF5fU/TriGKah_FVI/AAAAAAAACuw/117P1ugMmE0/s1600-h/image%25255B9%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-N1LXhd0vkMA/TriGLU5DrUI/AAAAAAAACu4/db62Z3ULWjI/image_thumb%25255B2%25255D.png?imgmax=800" width="244" height="196"&gt;&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="200"&gt;&lt;a href="http://lh6.ggpht.com/-bdQhG66Fi6c/TriGL3ZeiVI/AAAAAAAACvA/vfz2pbPImnw/s1600-h/image%25255B5%25255D.png"&gt;&lt;br&gt;&lt;br&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-eA0jJdly118/TriGM8_v8DI/AAAAAAAACvE/UQTpW4Pyz5c/image_thumb%25255B1%25255D.png?imgmax=800" width="244" height="138"&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p&gt;&lt;br&gt;&lt;u&gt;&lt;strong&gt;3. How is it organized ?&lt;/strong&gt;&lt;br&gt;&lt;/u&gt;It's where NDepend comes into play. It will help us not only reverse engineer quickly the solution, but it will also present Microsoft's Best Practices coding conventions.&lt;/p&gt; &lt;p&gt;To enable NDepend analysing your VS11 Solution just edit the version inside the *.SLN:&lt;br&gt;&lt;a href="http://lh4.ggpht.com/-1iQvAbsLrAU/TriGNlhRb3I/AAAAAAAACvM/tcF7db8eFlc/s1600-h/image%25255B29%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-Hg9gFyNHqwE/TriGPG7jIzI/AAAAAAAACvU/kqOIzrgC1z8/image_thumb%25255B12%25255D.png?imgmax=800" width="291" height="69"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-WsmHXO-sZ1c/TriGP672HfI/AAAAAAAACvY/XB26RFu-7AE/s1600-h/image%25255B33%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-trUqaTEEQ9g/TriGQjtQN5I/AAAAAAAACvk/Ffkw-bkzDlM/image_thumb%25255B14%25255D.png?imgmax=800" width="293" height="58"&gt;&lt;/a&gt;&lt;br&gt;&lt;strong&gt;&lt;em&gt;&lt;br&gt;3.1 Overview of the solution &lt;/em&gt;&lt;br&gt;&lt;/strong&gt;You'll be able to zoom in / out with NDepend, as well as move or edit the &lt;strong&gt;Dependency Graph&lt;/strong&gt; below:&lt;br&gt;&amp;nbsp;&lt;a href="http://lh4.ggpht.com/-YKOC02L1Dbg/TriGR9j4aLI/AAAAAAAACvw/1hrPFYleKh8/s1600-h/DependencyGraphSnapshot%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DependencyGraphSnapshot" border="0" alt="DependencyGraphSnapshot" src="http://lh3.ggpht.com/-E9rp-KyTkfQ/TriGTN2Cb9I/AAAAAAAACv4/_Vj-TQiRCaI/DependencyGraphSnapshot_thumb%25255B1%25255D.png?imgmax=800" width="544" height="170"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;3.2 Investigating on specific elements&lt;br&gt;&lt;/em&gt;&lt;/strong&gt;Moving the mouse over the main web project FabrikamFiber.Web, &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-Mlv5T79KSj4/TriGULSrGqI/AAAAAAAACwA/f2JgBFR8XvE/s1600-h/image%25255B17%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-dsAnLYlll84/TriGVN-aGXI/AAAAAAAACwI/bRZuVVr9Thk/image_thumb%25255B6%25255D.png?imgmax=800" width="542" height="271"&gt;&lt;/a&gt;&lt;/p&gt; &lt;table border="0" cellspacing="0" cellpadding="2" width="535"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="344"&gt;tells us with a color coded conventions how many DLLs this projects are connected to. &lt;br&gt;&lt;br&gt;In the same time, it also presents a property window with loads of information (on the right). Moving the mouse to another assembly will dynamically change those info.&lt;br&gt;&lt;br&gt;&lt;br&gt;The test project (below) is using NUnit framework with mocking. Which means, we will be able to play with the new VS 11 to use many type of tests (and not only MSTests). &lt;br&gt;&lt;a href="http://lh5.ggpht.com/-gr9OPz7oK_g/TriGVzbp5II/AAAAAAAACwQ/c9qrum3Bjn4/s1600-h/image%25255B37%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-er7zZIyvXRw/TriGW1Pq-4I/AAAAAAAACwU/RkI255hutzY/image_thumb%25255B16%25255D.png?imgmax=800" width="326" height="87"&gt;&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="189"&gt;&lt;a href="http://lh4.ggpht.com/-4eVkfY_yHMU/TriGXq45GNI/AAAAAAAACwc/Ezdr05PXV_8/s1600-h/image%25255B25%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-T79l5-YtHes/TriGY475EiI/AAAAAAAACwo/CAn8OgvFioY/image_thumb%25255B10%25255D.png?imgmax=800" width="179" height="394"&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Let’s have a look at the NUnit tests. To do so, I can use another view called “Dependency Matrix”, where I can see that there’s 2 members coupled between nunit.framework and the test project:&lt;/p&gt; &lt;p&gt; &lt;table border="0" cellspacing="0" cellpadding="2" width="525"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="200"&gt;&lt;a href="http://lh4.ggpht.com/-8ABH4jCc_Jo/TriGZ20wRQI/AAAAAAAACww/AENICna7Bd0/s1600-h/image%25255B45%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-NZiy4Xvl-fM/TriGbd3NhVI/AAAAAAAACw4/GYQIZPccqDs/image_thumb%25255B19%25255D.png?imgmax=800" width="304" height="471"&gt;&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="323"&gt;Then, I can drill down to have more details, and get another Dependency Diagram that explains me the various relationships.&lt;br&gt;&lt;br&gt;And finally drill down to the source code.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;4. Code Quality of the source code&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;Out of the &lt;a href="http://www.ndepend.com/Features.aspx#Metrics"&gt;82 Code Metrix&lt;/a&gt; provided by default, I am presenting you one of them&lt;strong&gt;&amp;nbsp; &lt;/strong&gt;below. It concerns performance issue of type “Boxing/unboxing methods that should be avoided” (you could create as many metrics as you want to suit your needs, using &lt;a href="http://www.ndepend.com/CQL.htm"&gt;CQL language&lt;/a&gt;). It shows potentially 27 Performance issues.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-pCywzPmqNaQ/TriGeEerP9I/AAAAAAAACxA/8VghuYaBdPo/s1600-h/image%25255B53%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-pyzkUquNdvw/TriGfriALHI/AAAAAAAACxI/I_xLVICPRQU/image_thumb%25255B23%25255D.png?imgmax=800" width="511" height="370"&gt;&lt;/a&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Pan &lt;strong&gt;&lt;font color="#c0504d"&gt;(1)&lt;/font&gt;&lt;/strong&gt; : The CQL query along with some advices  &lt;li&gt;Pan &lt;strong&gt;&lt;font color="#c0504d"&gt;(2)&lt;/font&gt;&lt;/strong&gt; : Where this query is classified into the SQL Query Explorer (you could create your own entry)  &lt;li&gt;Pan &lt;strong&gt;&lt;font color="#c0504d"&gt;(3)&lt;/font&gt;&lt;/strong&gt; : The number of quality infringements that satisfies the query  &lt;li&gt;Pan &lt;strong&gt;&lt;font color="#c0504d"&gt;(4)&lt;/font&gt;&lt;/strong&gt; : The 27 quality infringements are graphically filled in blue. The entire fractal representing your entire solution (decomposed graphically into Assemblies, namespace, … and methods). On mouse over the blue rectangles, you have more details.  &lt;li&gt;Pan &lt;strong&gt;&lt;font color="#c0504d"&gt;(5)&lt;/font&gt;&lt;/strong&gt; : The 27 quality infringements&amp;nbsp; listed  &lt;li&gt;Pan &lt;strong&gt;&lt;font color="#c0504d"&gt;(6)&lt;/font&gt;&lt;/strong&gt; : Details property&lt;br&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;5. HTML report&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;Here is an overview of the HTML report. Similarly to the “heavy” client, those reports are filled with plenty of help you understand various quality concepts.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-7wV6ZygVMvk/TriGhuU58II/AAAAAAAACxQ/cgR4A9VdIuU/s1600-h/image%25255B62%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-7veUMFVNOIU/TriGiktZ73I/AAAAAAAACxY/vEViyzzkyPM/image_thumb%25255B28%25255D.png?imgmax=800" width="511" height="446"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I don’t know why, but the HTML report is the only way to visualize an interesting diagram “Abscractness versus Instability”.&lt;br&gt;&lt;a href="http://lh4.ggpht.com/-CVgjhRjvkrc/TriGkDzf17I/AAAAAAAACxg/0dQCvJvQ3fs/s1600-h/image%25255B58%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-SpwrYuGrZHg/TriGkz76JPI/AAAAAAAACxo/JQi05oEz5xQ/image_thumb%25255B26%25255D.png?imgmax=800" width="520" height="428"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This graph places all your assemblies into coloured zones and along 2 axis. From my experience, anything that does not fal into the green circled area should be considered as a pain to maintain. If an assembly falls into a red zone, you should fire the developer straight away !&lt;/p&gt; &lt;p&gt;Which mean this code’s implementation seams good from this diagram. Then we should double check with other indicators.&lt;/p&gt; &lt;p&gt;Since it is unfortunately a static PNG image, in large projects all assemblies are superimposed in the circled zone. Hence it becomes hard / impossible to read. As a result, I just use this graph as a trend indicator. Assembly in Orange or Red zone should be seldom, therefore you’ll be able to read its name.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Now I got a better idea of what this project is about, I can deep dive into the source code, and coming back and forth to NDepend, then drill down to the code again.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-5931401105070928443?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/5931401105070928443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/11/tfs11-vs11-ndepend-to-reverse-engineer.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5931401105070928443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5931401105070928443'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/11/tfs11-vs11-ndepend-to-reverse-engineer.html' title='[TFS11 &amp;amp; VS11] NDepend to reverse Engineer Microsoft Fabrikam Fiber'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-N1LXhd0vkMA/TriGLU5DrUI/AAAAAAAACu4/db62Z3ULWjI/s72-c/image_thumb%25255B2%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-379009757597041582</id><published>2011-10-24T00:10:00.001+02:00</published><updated>2011-10-24T00:10:08.071+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Azure'/><category scheme='http://www.blogger.com/atom/ns#' term='AZURE'/><title type='text'>[SQL Azure] Overview of tools for using SQL Azure {plenty of Silverlight Line Of Business}</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/-uoAaRc7kiwM/TqSQUQSi3lI/AAAAAAAAClQ/wo5lIjCz_SY/s1600-h/image%25255B2%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-tCzuWKK4BBk/TqSQU6D-fcI/AAAAAAAAClY/4-kQlApa13s/image_thumb.png?imgmax=800" width="216" height="35"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This post is about presenting rapidly tools for creating and managing SQL Azure.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-_SQ9MnfLcHg/TqSQViNFd6I/AAAAAAAAClc/rKeANkOY3NY/s1600-h/image%25255B5%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-CMQVF8Ey6gk/TqSQWAz20tI/AAAAAAAAClo/nmTO5bTU9jE/image_thumb%25255B1%25255D.png?imgmax=800" width="238" height="72"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I am delighted to see how much effort Microsoft put into Silverlight LOB tools {cf. Silverlight is not dead}. &lt;/p&gt; &lt;p&gt;has invested a lot of effort into those tools. put into their tools for managing their Windows AZURE platform.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 1. &lt;/strong&gt;First of all let`s login to the Windows AZURE platform Web portal: &lt;a title="https://windows.azure.com/" href="https://windows.azure.com/"&gt;https://windows.azure.com/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-uzoQXd2Vwy4/TqSQXWpva2I/AAAAAAAAClw/kHjfH0MBjZQ/s1600-h/image%25255B14%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-E54FVkosUl4/TqSQYqDBPXI/AAAAAAAACl4/A8oAvz1IRnQ/image_thumb%25255B6%25255D.png?imgmax=800" width="714" height="575"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The entire interface is a &lt;font color="#ff0000"&gt;Silverlight LOB&lt;/font&gt; application to manage a large amount of information and management operations&amp;nbsp; {notice that HTML has not been forgotten and identified in &lt;font color="#00bb00"&gt;Green above&lt;/font&gt; when resizable Rich Text is required. See note at the end}.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 2.&lt;/strong&gt; Go to Database Tab and instantiate a new SQL AZURE server, and choose one of the 6 Datacenter the MS `offers` you:&lt;/p&gt; &lt;p&gt; &lt;table cellspacing="0" cellpadding="2" width="673" border="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="200"&gt;&lt;a href="http://lh4.ggpht.com/-kDNCx5EY-FU/TqSQZfaCUOI/AAAAAAAACl8/Jlc08Pvmh7s/s1600-h/image%25255B28%25255D.png"&gt;&lt;br&gt; &lt;p&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-64Qrxs7JvBw/TqSQZ-BfAwI/AAAAAAAACmI/K1Yz1ZyeaqY/image_thumb%25255B14%25255D.png?imgmax=800" width="324" height="283"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="471"&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-Japv5Md9sZY/TqSQbN24gNI/AAAAAAAACmQ/HXdGwwmXwjE/s1600-h/image%25255B32%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-1DAGzu990e0/TqSQcApnbwI/AAAAAAAACmY/oyVpYd6Ndo4/image_thumb%25255B16%25255D.png?imgmax=800" width="373" height="144"&gt;&lt;/a&gt;&lt;/p&gt;&lt;a href="http://lh4.ggpht.com/-kDNCx5EY-FU/TqSQZfaCUOI/AAAAAAAACl8/Jlc08Pvmh7s/s1600-h/image%25255B28%25255D.png"&gt;  &lt;li&gt;North Central US – Chicago, Illinois  &lt;li&gt;South Central US – San Antonio, Texas  &lt;li&gt;North Europe – Amsterdam, Netherlands,  &lt;li&gt;West Europe – Dublin, Ireland  &lt;li&gt;East Asia – Hong Kong  &lt;li&gt;Southeast Asia – Singapore&lt;/a&gt; &lt;/li&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p&gt;If you are concerned with data regulation when storing your database somewhere in the Cloud, here is a list of the countries and cities` location. &lt;/p&gt; &lt;p&gt;&lt;img src="http://www.nullsession.com/media/articleimages/ms-datacenters.png" width="704" height="536"&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 3.&lt;/strong&gt; Create a database with Admin accounts. In this example, I just create a small database {1 GB max}.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-7cKTqHI2mds/TqSQdEsXThI/AAAAAAAACmg/K6YyypBr98w/s1600-h/image%25255B36%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-CgYq_JtGdts/TqSQdysA2kI/AAAAAAAACmo/X4QmuZlH2vM/image_thumb%25255B18%25255D.png?imgmax=800" width="472" height="336"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 4.&lt;/strong&gt; Administering tool. To administer your database, use another SaaS tool&amp;nbsp; provided by Microsoft: SQL Azure Management Portal.&lt;/p&gt; &lt;p&gt;Knowing that dhaigdshn8 is the name of my server, the address to administer it is located here: &lt;a title="https://dhaigdshn8.database.windows.net" href="https://dhaigdshn8.database.windows.net"&gt;https://dhaigdshn8.database.windows.net&lt;/a&gt;&lt;/p&gt; &lt;p&gt;It is again a Silverlight LOB application:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-Z8ThLAXpY34/TqSQegZJpEI/AAAAAAAACmw/Pe4uIP0LHDM/s1600-h/image%25255B40%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-RcNCBF-oWUs/TqSQfvdsVGI/AAAAAAAACm4/Qp-LtcuWTGw/image_thumb%25255B20%25255D.png?imgmax=800" width="367" height="314"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Once logged in, you have here is the home page:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-0MwQeNzjwqA/TqSQhRd-CKI/AAAAAAAACnA/d49oGOpHfcU/s1600-h/image%25255B45%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-a34lzjyxIPM/TqSQiV9U4wI/AAAAAAAACnI/byOOspTI0nQ/image_thumb%25255B23%25255D.png?imgmax=800" width="598" height="413"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Create any databases that is required&lt;br&gt;&lt;a href="http://lh6.ggpht.com/-Q1p9leY2KWY/TqSQjBJN-xI/AAAAAAAACnQ/7g72zQdjXRw/s1600-h/image%25255B48%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-DNzQ9zJz3oQ/TqSQjxuAdrI/AAAAAAAACnU/f5c56PNHAVI/image_thumb%25255B24%25255D.png?imgmax=800" width="244" height="156"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 5. &lt;/strong&gt;Administer your database {Create tables, views, stored procedures, run commands…}. Notice the nice “Office ribbon”&lt;br&gt;&lt;a href="http://lh6.ggpht.com/-xX6xpxbT4Bk/TqSQk6PmzpI/AAAAAAAACng/zsItoxP-Hps/s1600-h/image%25255B53%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-RDNouSqnGl0/TqSQluDh3PI/AAAAAAAACno/HbBOzV6nSeQ/image_thumb%25255B27%25255D.png?imgmax=800" width="718" height="341"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 6. &lt;/strong&gt;Use your database.&lt;/p&gt; &lt;p&gt;Once setup, just use tools such as &lt;/p&gt; &lt;p&gt;. SQL Server Management Studio&lt;br&gt;. or Visual Studio {here under VS 2011}&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-XfjBpw2G9jw/TqSQm3oGwkI/AAAAAAAACnw/dzKLnl2mhC4/s1600-h/image%25255B62%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-U_se2ofZUa8/TqSQnzxK-iI/AAAAAAAACn4/tW46vAZzBeo/image_thumb%25255B32%25255D.png?imgmax=800" width="728" height="372"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt; &lt;table cellspacing="0" cellpadding="2" width="400" border="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="200"&gt;&lt;a href="http://lh6.ggpht.com/-nnW1sBTCiA0/TqSQok77pTI/AAAAAAAACoA/CoOQzsAafwE/s1600-h/image%25255B70%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh5.ggpht.com/-DYNAVoHyMuE/TqSQpWNPOmI/AAAAAAAACoI/DKFFB3-04eM/image_thumb%25255B36%25255D.png?imgmax=800" width="368" height="156"&gt;&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="200"&gt;&lt;a href="http://lh6.ggpht.com/-w_qwV9lRcnQ/TqSQqNUp_LI/AAAAAAAACoM/V7AXH3P1CnQ/s1600-h/image%25255B69%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-lhFXmeOVocA/TqSQqhEwkGI/AAAAAAAACoU/7v11ZRV1c5Y/image_thumb%25255B35%25255D.png?imgmax=800" width="351" height="202"&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;STEP 7.&lt;/strong&gt; That`s all, just enjoy your cloud database create in few seconds. How long would it take if you would have asked you IT service to create such database in production environment ? &lt;img class="wlEmoticon wlEmoticon-winkingsmile" style="border-top-style: none; border-bottom-style: none; border-right-style: none; border-left-style: none" alt="Winking smile" src="http://lh6.ggpht.com/-XVZfcRz-VZs/TqSQrBT52OI/AAAAAAAACog/-Wg5Cn3RB98/wlEmoticon-winkingsmile%25255B2%25255D.png?imgmax=800"&gt;&lt;/p&gt; &lt;p&gt;=================&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;NOTE 1&lt;/u&gt;: &lt;/strong&gt;For information, you could apply to be part of Beta Programs on AZURE as shown:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-XBoOxLeQ30E/TqSQstjlthI/AAAAAAAACoo/jxajPYNTZtw/s1600-h/image%25255B20%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-G-cO1e9u0V4/TqSQt7qrmVI/AAAAAAAACow/qo8xSklOJSA/image_thumb%25255B10%25255D.png?imgmax=800" width="719" height="618"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;NOTE 2&lt;/u&gt;&lt;/strong&gt;: We can notice that MS used the Blob storage to store html pages {just change &lt;font color="#ff0000"&gt;fr&lt;/font&gt; by en for English version}. &lt;br&gt;&lt;a title="https://azureportalprod.blob.core.windows.net/dashboard-fr/commontasks.html" href="https://azureportalprod.blob.core.windows.net/dashboard-fr/commontasks.html"&gt;https://azureportalprod.blob.core.windows.net/dashboard-&lt;font color="#ff0000"&gt;fr&lt;/font&gt;/commontasks.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-ovUnQIkrxLQ/TqSQuxHsaWI/AAAAAAAACo4/0dT-gx2SPfM/s1600-h/image%25255B24%25255D.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://lh5.ggpht.com/-dzLp6y_4OLE/TqSQvugmqiI/AAAAAAAACpA/fe0sRvEHIqM/image_thumb%25255B12%25255D.png?imgmax=800" width="719" height="326"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-379009757597041582?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/379009757597041582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/10/sql-azure-overview-of-tools-for-using.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/379009757597041582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/379009757597041582'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/10/sql-azure-overview-of-tools-for-using.html' title='[SQL Azure] Overview of tools for using SQL Azure {plenty of Silverlight Line Of Business}'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-tCzuWKK4BBk/TqSQU6D-fcI/AAAAAAAAClY/4-kQlApa13s/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7567974072739595196</id><published>2011-10-15T02:10:00.001+02:00</published><updated>2011-10-15T14:06:13.813+02:00</updated><title type='text'>Free Load test on AZURE to test the scalability of your Website</title><content type='html'>&lt;p&gt;&lt;em&gt;&lt;/p&gt;&lt;/em&gt; &lt;p&gt;When seeking for information on AZURE, I found out another free tool on its basic version for testing Web scalability: &lt;a title="CloudNetCare" href="http://www.cloudnetcare.com" target="_blank"&gt;CloudNetCare&lt;/a&gt; &lt;/p&gt; &lt;p&gt;However, if you want to test Silverlight applications, I suspect that he may need to combine other tools such as Selenium Silverlight {see below} and customize Scripts. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Super quick and easy to configure, it has a double feature:&lt;/strong&gt;  &lt;p&gt;· It is based on AZURE to increase its ability to inject load, &lt;p&gt;· It creates not HTTP requests to simulate the load {Virtual Users}, but with the ability to scale-out on Azure, it instantiates many and true web browsers.  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-UZQvzstonao/TpjPEdAooHI/AAAAAAAACjg/31kmvPv_Um8/s1600-h/image%25255B24%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-7nMo9i7S05s/TpjPFAhXIZI/AAAAAAAACjk/P8I_K-hFUJk/image_thumb%25255B13%25255D.png?imgmax=800" width="532" height="385"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp; &lt;/p&gt; &lt;p&gt;&amp;nbsp; &lt;table cellspacing="0" cellpadding="2" width="535" border="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="332"&gt;&lt;a href="http://lh5.ggpht.com/-n5IJN-rOGSw/TpjPGUdHK3I/AAAAAAAACjs/mRAfD4SE3X0/s1600-h/image%25255B21%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-wk59ErpZYlc/TpjPG8ZuT0I/AAAAAAAACj0/l7Q5iBXidPE/image_thumb%25255B10%25255D.png?imgmax=800" width="306" height="323"&gt;&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="201"&gt;&lt;br&gt; &lt;p&gt;As it`s quite tedious to copy / paste many URLs, which does not allow to simulate some GUI behaviors, an interesting variation is based on Selenium Scripts that are recorded via the GUI of Firefox.&lt;/p&gt; &lt;p&gt;&lt;br&gt;Note that there are many helps and videos, that are hidden by default, to accompany us all along the process.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p&gt;Then, a very `cloud ` approach when setting up the tests is to choose for example the DataCenter that will be used, and at what time you want to start the load. &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-_4gttcniDZ8/TpjPIKBIRUI/AAAAAAAACkA/RjFgn-8ULRA/s1600-h/image%25255B7%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-n2NL3Hc2RTE/TpjPI-nKhJI/AAAAAAAACkI/EO6Q0emXPPg/image_thumb%25255B3%25255D.png?imgmax=800" width="511" height="369"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;then the characteristics of the tests:&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-jjA7UhKyNCQ/TpjPJ7h6ctI/AAAAAAAACkQ/eFiAOqWbNKg/s1600-h/image%25255B25%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-shd5WhkLGQ0/TpjPKUUAJ9I/AAAAAAAACkY/97v841k5iv4/image_thumb%25255B14%25255D.png?imgmax=800" width="532" height="314"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;`Pour un test de plus de 100 utilisateurs… = `For a test that has got more than 100 users…` &lt;br&gt;=&amp;gt; &lt;/em&gt;&lt;/strong&gt;Since the purpose of such application is to load up until the maximum limit for your Web servers and determine the breaking point, CloudNetCare includes a protection:&lt;/p&gt; &lt;p&gt;As a result and unfortunately you will not be not possible to assign 5000 servers in the cloud and break down your favorite e-Commerce web site and thus be on the front page of every newspapers.   &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-4djPbsLBizA/TpjPLX8PFmI/AAAAAAAACkg/dAz4NOYRUoE/s1600-h/image%25255B33%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh4.ggpht.com/-NTs69y3Q_jA/TpjPMFE3YdI/AAAAAAAACko/hLgMAxzyKBM/image_thumb%25255B18%25255D.png?imgmax=800" width="528" height="722"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Finally, you can share the results either by CSV export, or by creating a Web link. Here is a link to my test report {well, I just changed the GUID of my real one}:&amp;nbsp; &lt;a title="http://www.cloudnetcare.com/WF_ShareResult.aspx?id=7fc52303d17f465e8dc7195502c3238c&amp;amp;Language=FR" href="http://www.cloudnetcare.com/WF_ShareResult.aspx?id=7fc52303d17f465e8dc7195502c3238c&amp;amp;Language=FR"&gt;http://www.cloudnetcare.com/WF_ShareResult.aspx?id=7fc52303d17f465e8dc7195502c3238c&amp;amp;Language=FR&lt;/a&gt; . &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-foH3GxAe3oo/TpjPNI1SPYI/AAAAAAAACkw/yJC72gY0c1o/s1600-h/image%25255B37%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-Y4KM8qUtn4I/TpjPNhGP7dI/AAAAAAAACk4/r9BD0O-7qsA/image_thumb%25255B20%25255D.png?imgmax=800" width="523" height="233"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-4yEctdv9IxI/TpjPODzuMeI/AAAAAAAAClA/yWxX8SRWT74/s1600-h/image%25255B41%25255D.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh6.ggpht.com/-loZg3A6UWNA/TpjPZHFZw8I/AAAAAAAAClI/ZCLTvshz41M/image_thumb%25255B22%25255D.png?imgmax=800" width="526" height="230"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Really interesting concept, and &lt;strong&gt;big thank you&lt;/strong&gt; &lt;a href="http://www.cloudnetcare.com/" target="_blank"&gt;CloudNetCare&lt;/a&gt; to have given us the ability to use free of charge the basic version.  &lt;p&gt;The only problem with the public cloud, it that it is more difficult to test my Intranet applications... I cannot complain, I cannot have everything ... free and as easily. Anyway, I am gladly adding this tool my ALM item list to make life easier and more agile.  &lt;p&gt;So have a good Agility, and a great Scrum hopefully. &lt;/p&gt; &lt;div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:bcb4f2f2-1786-4a9a-a7e9-29a319b7d184" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Azure+Load+Tests+ALM" rel="tag"&gt;Azure Load Tests ALM&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7567974072739595196?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7567974072739595196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/10/free-load-test-on-azure-to-test.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7567974072739595196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7567974072739595196'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/10/free-load-test-on-azure-to-test.html' title='Free Load test on AZURE to test the scalability of your Website'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/-7nMo9i7S05s/TpjPFAhXIZI/AAAAAAAACjk/P8I_K-hFUJk/s72-c/image_thumb%25255B13%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-3280839196483786861</id><published>2011-10-01T22:30:00.014+02:00</published><updated>2011-10-14T22:11:29.822+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='load test'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='comparison tool'/><title type='text'>Alleluia !! a Load Test tool for Silverlight 4 that gives results within 5 min ! {download, install and running the tests included}</title><content type='html'>After many searches, having read many people complaining about Load testing a Silverlight applications, watching nice demo of "Hello World" cases, installed commercial tools {but was stuck at some configuration points. See the notes at the end where I listed some of my tests}, and I finally …. gave up tonight !!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="background-color: #f3a447;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;But thanks to a final search on Fiddler2 fields {because it gave me the most promising results}, I came across &lt;b&gt;&lt;a href="http://stresstimulus.stimulustechnology.com/" target="_blank"&gt;stresstimulus&lt;/a&gt;&lt;/b&gt; tool. So sorry for those of you who already know this &lt;b&gt;free&lt;/b&gt; Fiddler add-on, and also may be its limitations {in which case, please tell us your view points}.&lt;br /&gt;&lt;br /&gt;For the purists, I don't want to test Silverlight UI as such {i.e. for this type of test, I am not interested in Visual Studio 2010 Coded UI}, since it runs Client-side. Rather, I wanted to validate that, once deployed into production, this RIA will not put our IIS servers down. Hence, I want to simulate the load on Server-side, by generating lots of various calls to our web services &lt;b&gt;easily&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;For my first trial of this tools, I chose a complex Line Of Business application &lt;br /&gt;{ &lt;b&gt;Disclaimer for those who recognizes this application &lt;u&gt;/!\&lt;/u&gt;&lt;/b&gt;&amp;nbsp;&lt;b&gt;I just did it gently&lt;/b&gt; so that I do not break it}.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lh4.ggpht.com/-R9kvFSMwjWk/Tod4U8pF3LI/AAAAAAAACiE/IgI1Ak498Ak/s1600-h/image%25255B26%25255D.png"&gt;&lt;img alt="image" border="0" height="373" src="http://lh5.ggpht.com/-4Aanr-n_BYE/Tod4VmMDOMI/AAAAAAAACiI/uBwYYJUZ9Z8/image_thumb%25255B14%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="502" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Within the next 5 min I got the detailed results !! I could have nearly cried so much it was easy and … cheap !! {I am moving to the Pro version since I checked that it works fine on our real application, even with STS WIF and WCF binary activated !! which seams to be so difficult to handle for other tools}.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://forums.asp.net/t/1666267.aspx/1?Free+Load+Testing+Tool+Fiddler+add+on+StresStimulus"&gt;&lt;img height="374" src="http://stresstimulus.stimulustechnology.com/images/Screenshot_12.gif" width="487" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lh3.ggpht.com/-lnzEgT7jJ7c/Tod4XEhrfsI/AAAAAAAACiM/IFRkxxiWaHo/s1600-h/image%25255B28%25255D.png"&gt;&lt;img alt="image" border="0" height="390" src="http://lh5.ggpht.com/-Id7B6T3qdtY/Tod4YDct-pI/AAAAAAAACiQ/26xbZ3XhyO4/image_thumb%25255B16%25255D.png?imgmax=800" style="background-image: none; border-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="502" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here are some results &lt;br /&gt;&lt;b&gt;&lt;u&gt;Performance Graphs&lt;/u&gt;: Number of simultaneous users, request per seconds, Average response time, Bytes received per seconds, Errors per seconds&lt;/b&gt;.&lt;a href="http://lh6.ggpht.com/-ZNmIkapvbW8/Tod4bgPwUgI/AAAAAAAACiU/NFB4euRtuf0/s1600-h/image%25255B29%25255D.png"&gt;&lt;img alt="image" border="0" height="367" src="http://lh4.ggpht.com/-tZC9qCZpkVk/Tod4cDqIPpI/AAAAAAAACiY/-zm3BDKTH48/image_thumb%25255B17%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="502" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;A summary page&lt;/u&gt;:&amp;nbsp; &lt;/b&gt;&lt;br /&gt;&lt;table border="0" cellpadding="2" cellspacing="0" style="width: 484px;"&gt;&lt;tbody&gt;&lt;tr&gt; &lt;td valign="top" width="275"&gt;Test Summary&lt;br /&gt;Test Case Summary&lt;br /&gt;File Name: Thavonekham-Tests.ssconfig&lt;br /&gt;Primary Pages: 2&lt;br /&gt;URLs : 39&lt;/td&gt; &lt;td valign="top" width="207"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt; &lt;td valign="top" width="275"&gt;&lt;br /&gt;Test Parameters&lt;br /&gt;Think time between base pages: &lt;br /&gt;As recorded&lt;br /&gt;&lt;br /&gt;Iteration timing: Think time between iterations - 2s&lt;br /&gt;Load pattern: Constant load&lt;br /&gt;Users: 5&lt;br /&gt;Browser Type: IE8&lt;br /&gt;Network Type: Dial-Up 56k&lt;br /&gt;Complete test after: 5 iterations&lt;br /&gt;Warm-up time: 0 seconds&lt;br /&gt;Test Run Information&lt;br /&gt;Date: Oct-1 2011&lt;br /&gt;Start Time: 21:46:34.19&lt;br /&gt;End Time: 21:48:00.11&lt;br /&gt;Warm-up (s): 0&lt;br /&gt;Aggregate Session time (s): 851.53&lt;br /&gt;Test run duration (s): 85.92&lt;/td&gt; &lt;td valign="top" width="207"&gt;&lt;br /&gt;Overall Result&lt;br /&gt;Status: Completed&lt;br /&gt;Max User Load: 5&lt;br /&gt;Total bytes sent: 138,960&lt;br /&gt;Total bytes received: 41,191,492&lt;br /&gt;Bytes sent/sec: 1,617.292&lt;br /&gt;Bytes received/sec: 479,409.064&lt;br /&gt;Errors&lt;br /&gt;Http Errors: 0&lt;br /&gt;Total Timeouts: 0&lt;br /&gt;Page Timeouts: 0&lt;br /&gt;Missed Goals: 0&lt;br /&gt;Test Iterations&lt;br /&gt;Iterations Started: 5&lt;br /&gt;Iterations Completed: 5&lt;br /&gt;Avg. iteration time (s): 78.76&lt;br /&gt;Requests (HTTP transactions)&lt;br /&gt;Total requests: 195&lt;br /&gt;Requests/sec: 2.27&lt;br /&gt;Avg. response time (s): 4.37&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;Page detailed {in terms of *.aspx for instance}&lt;/u&gt;:&lt;/b&gt;&amp;nbsp; &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/-nA9zJvBJU3A/Tod9COXJm0I/AAAAAAAACho/Khd-cmWNFd8/s1600-h/image%25255B17%25255D.png"&gt;&lt;img alt="image" border="0" height="253" src="http://lh5.ggpht.com/-0QtUIdfBdQY/Tod9CmSLYvI/AAAAAAAAChs/ErKWzoCYs44/image_thumb%25255B9%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="520" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;Request details {including resources such as xaml, png, xap, svc, …} &lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href="http://lh6.ggpht.com/-bsR-Jxc8djA/Tod9Dl6gL6I/AAAAAAAAChw/wFvjkeFrtts/s1600-h/image%25255B21%25255D.png"&gt;&lt;img alt="image" border="0" height="239" src="http://lh6.ggpht.com/--VHUPxbzdc4/Tod9EIMyEbI/AAAAAAAACh0/fMl4B043Pow/image_thumb%25255B11%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="521" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And finally &lt;br /&gt;&lt;b&gt;&lt;u&gt;Iteration Details &lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href="http://lh4.ggpht.com/-dsCl4pmgBN4/Tod9EnQeiVI/AAAAAAAACic/Iecplno_OfY/s1600-h/image%25255B30%25255D.png"&gt;&lt;img alt="image" border="0" height="316" src="http://lh5.ggpht.com/-n0g_KoEJe4s/Tod9FIHB6iI/AAAAAAAACig/hPds8ZApqKc/image_thumb%25255B18%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="440" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And it does really stress my Windows 8 computer ! {I only ran the test below for 30 seconds}&lt;br /&gt;&lt;a href="http://lh3.ggpht.com/-6PUW2o0LxN0/TofIZLprNfI/AAAAAAAACik/kUZGkkANP8E/s1600-h/image_thumb1%25255B3%25255D.png"&gt;&lt;img alt="image_thumb1" border="0" height="474" src="http://lh6.ggpht.com/-aKCVJsVcy1I/TofIZtysicI/AAAAAAAACio/9Zi4muaT6MY/image_thumb1_thumb.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image_thumb1" width="439" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;u&gt;At least one limitation&lt;/u&gt;&lt;/i&gt;: The generated reports do not track down to a specific WebMethod…. except on the example above. Indeed, the calls to WebMethods were passed within the Query String.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Monitoring the load on the Database: &lt;/b&gt;&lt;br /&gt;As a complementary tool, use Microsoft SQL Server Profiler {in profiling mode, with a filter set to the name of your database to filter out unwanted SQL queries}. When you play back your tests with &lt;b&gt;StresStimulus&lt;/b&gt;, it does call my Web services WCF bin and generated large amount of hits on the database. Now, just spot your top slower queries, and here you go ! Optionally, you could save your trace and run SQL Tuning Advisor.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/-roxfWzmhREw/Tot5wu7QUiI/AAAAAAAACis/7Mw7PbQSwMM/s1600/sqlProfiler.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://2.bp.blogspot.com/-roxfWzmhREw/Tot5wu7QUiI/AAAAAAAACis/7Mw7PbQSwMM/s400/sqlProfiler.gif" width="388" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;HOWEVER &lt;/b&gt;it is NOT a win yet, I have to try on our real life project. Indeed, I love Silverlight it is just a great RIA, but I also I apply even more the proverb &lt;i&gt;“A bird in the hand is worth two in the bush”.&lt;br /&gt;Finally, it seams that with Silverlight we are left behind within the .Net world {eg. Unit Testing, CodeCoverage, proper ALM, …}&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;If you find better tools, please let me know.&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;TIPS / IDEAS / Alternative solutions&lt;/b&gt; for testing SL apps|&lt;b&gt;:&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/articles/Silverlight-Load-Testing"&gt;http://www.infoq.com/articles/Silverlight-Load-Testing&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.astaticstate.com/2010/06/silverlight-ria-services-load-and.html"&gt;http://www.astaticstate.com/2010/06/silverlight-ria-services-load-and.html&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.dynatrace.com/2011/09/28/to-load-test-or-not-to-load-test-that-is-not-the-question"&gt;http://blog.dynatrace.com/2011/09/28/to-load-test-or-not-to-load-test-that-is-not-the-question&lt;/a&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en/vstswebtest/thread/417bdf50-fef7-4035-811a-050998ee370d"&gt;http://social.msdn.microsoft.com/Forums/en/vstswebtest/thread/417bdf50-fef7-4035-811a-050998ee370d&lt;/a&gt;&amp;nbsp; &lt;/li&gt;&lt;li&gt;&lt;a href="http://blogs.codes-sources.com/thavo/archive/2011/10/01/sl4-alleluia-enfin-un-outil-de-load-test-pour-silverlight-4-qui-marche-en-5-min-download-install-et-execution-compris.aspx"&gt;http://blogs.codes-sources.com/thavo/archive/2011/10/01/sl4-alleluia-enfin-un-outil-de-load-test-pour-silverlight-4-qui-marche-en-5-min-download-install-et-execution-compris.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Great and Free account, based on AZURE&amp;nbsp;&lt;a href="http://www.cloudnetcare.com/"&gt;http://www.cloudnetcare.com&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;NB :&lt;/b&gt; &lt;/i&gt;If you want to know what other tools I tried "{ &lt;img alt="Devil" class="wlEmoticon wlEmoticon-devil" src="http://lh3.ggpht.com/-AjhVTSBqKl0/Tod9Fvs52OI/AAAAAAAACiA/qX0MOH4uPeo/wlEmoticon-devil%25255B2%25255D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;and start to feel the pain I went through}&amp;nbsp; see below: &lt;br /&gt;&lt;br /&gt;&lt;table border="1" cellpadding="2" cellspacing="0" style="width: 481px;"&gt;&lt;tbody&gt;&lt;tr&gt; &lt;td valign="top" width="479"&gt;&lt;h5&gt;Re: Load Testing vis Silverlight Client?&lt;/h5&gt;1 hour, 16 minutes ago | &lt;a href="http://forums.silverlight.net/post/596846.aspx"&gt;LINK&lt;/a&gt; &lt;br /&gt;Hi, &lt;br /&gt;I also struggled finding a proper load testing tool for Silverlight 4 {I know plenty of smart people would claim that there is no need to test RIA, but I want to test the WCF that my SL is using} : &lt;br /&gt;Plenty of "Hello World" nice and sunny video, ... but the reality is so different. &lt;br /&gt;1&amp;gt; Despite the fact I was using VS 2010 ultimate, it seams not to work "out of the box" for SL ! {despite its price} &lt;br /&gt;2&amp;gt; I successfully used Fiddler2 {free of charge} to record aspx calls, and most importantly the binary WCF calls { svc}. Fiddler2 offers the surprising ability to "SAVE AS VISUAL STUDIO WEB TEST" &lt;br /&gt;[Visual Studio WebTest &lt;a href="http://www.fiddler2.com/fiddler/help/WebTest.asp"&gt;http://www.fiddler2.com/fiddler/help/WebTest.asp&lt;/a&gt;]. &lt;br /&gt;The only problem I had is that VS 2010 did not understand the binary messages that was recorded ! Damned !! I guess I unfortunately have to add an plain text endpoint. That was my most promising experience in Load testing with SL. &lt;br /&gt;3&amp;gt; Otherwise you can find at least 2 CodePlex projects {&lt;a href="http://wcfloadtest.codeplex.com/"&gt;http://wcfloadtest.codeplex.com/&lt;/a&gt; and &lt;a href="http://teamtestplugins.codeplex.com/"&gt;http://teamtestplugins.codeplex.com/&lt;/a&gt;}. &lt;br /&gt;that seams to be OK, but they are not really maintained. My first go with those tools did not succeed all the way through. only partially. &lt;br /&gt;4&amp;gt; It seams HP Loadrunner 11 supports Silverlight 3 and 4 with WCF bin mode {but not advanced bindings, which is fine with me}. &lt;br /&gt;I will try that in the following months {just the time for me to sort out the license and first install}. &lt;br /&gt;5&amp;gt; Selenium Silverlight &lt;a href="http://code.google.com/p/silverlight-selenium/updates/list"&gt;http://code.google.com/p/silverlight-selenium/updates/list&lt;/a&gt; and &lt;a href="http://www.neotys.com/"&gt;www.neotys.com&lt;/a&gt; &lt;br /&gt;If you are more lucky with EASY tools {i.e. I know my VS 2010 would work with plenty of cheats and "CodePlexes" }, please HEEELLLLPPPPP !! &lt;br /&gt;&lt;b&gt;UPDATE &amp;gt; &lt;b&gt;&lt;/b&gt;alleluia I just tried a Free {but with limited Virutal Users} add on to the great Fiddler2 beta.&lt;/b&gt; &lt;br /&gt;&lt;b&gt;It is stresstimulus &amp;gt; Follow the &lt;a href="http://memoprojects.blogspot.com/2011/10/alleluia-load-test-tool-for-silverlight.html"&gt;link here&lt;/a&gt; &lt;a href="http://memoprojects.blogspot.com/2011/10/alleluia-load-test-tool-for-silverlight.html"&gt;http://memoprojects.blogspot.com/2011/10/alleluia-load-test-tool-for-silverlight.html&lt;/a&gt;.&lt;/b&gt; &lt;br /&gt;Vincent THAVONEKHAM. &lt;br /&gt;SL4LoadTest@thavo.com &lt;br /&gt;&lt;a href="http://www.thavo.com/"&gt;www.thavo.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-3280839196483786861?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/3280839196483786861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/10/alleluia-load-test-tool-for-silverlight.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3280839196483786861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3280839196483786861'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/10/alleluia-load-test-tool-for-silverlight.html' title='Alleluia !! a Load Test tool for Silverlight 4 that gives results within 5 min ! {download, install and running the tests included}'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-4Aanr-n_BYE/Tod4VmMDOMI/AAAAAAAACiI/uBwYYJUZ9Z8/s72-c/image_thumb%25255B14%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4922063717576524399</id><published>2011-09-21T00:18:00.003+02:00</published><updated>2011-09-22T12:42:05.910+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TFS11'/><title type='text'>Quicky TFS 11 | Finally easier to manage Iterations and Areas</title><content type='html'>Having problems with projects regarding&amp;nbsp;Iterations and Areas ?&lt;br /&gt;&lt;br /&gt;This sounds stupid, but on large projects lasting for many years with many program versions, you end up having hundreds of&amp;nbsp;Iterations and Areas. Moreover having no proper start/end dates on your iterations just increases the mess, since&amp;nbsp;Iterations and Areas are &lt;b&gt;the only 2 key concepts&lt;/b&gt; to split your Work Items into chunks of respectively timespan and Business area.&lt;br /&gt;All your reports will depends on those 2 parameters properly set up.&lt;br /&gt;&lt;br /&gt;Our nightmare finally ends with TFS 11&amp;nbsp;(Preview version) throught a Web interface and the Scrum 2.0 Process Template :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Drag and Drop &lt;/b&gt;for creating new child, sub child, ...&lt;/li&gt;&lt;li&gt;&lt;b&gt;Right click&lt;/b&gt; with contextual menu&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-HrH8F6Pstms/TnkGcrtr9VI/AAAAAAAACgs/CUo4awdJsJQ/s1600/EasyToNanageAreaIteration.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="294" src="http://4.bp.blogspot.com/-HrH8F6Pstms/TnkGcrtr9VI/AAAAAAAACgs/CUo4awdJsJQ/s320/EasyToNanageAreaIteration.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;&lt;b&gt;Double click&lt;/b&gt; on the iteration and opens a detailed view, either to rename or add properties. Our reports for the Sprint Reviews will FINALLY have Start Date and End Date easier to manage&amp;nbsp;:&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-LbGe9PaqBJs/TnkI6PW7RxI/AAAAAAAACg0/eLCfke6dKnw/s1600/DoubleClickProperty.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="290" src="http://2.bp.blogspot.com/-LbGe9PaqBJs/TnkI6PW7RxI/AAAAAAAACg0/eLCfke6dKnw/s320/DoubleClickProperty.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: left;"&gt;Now we can create a new Work Item for example inside Visual Studio 11.&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;A good surprise is that I can &lt;b&gt;attach a file to the Work Item&lt;/b&gt; simply by Drag and Drop (in TFS 2010 I think I also got it working Once Upon a Time, but never manage to make it work on this current projet)&amp;nbsp;:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-n4RzFToMsxI/TnsQ9QqPYkI/AAAAAAAACg8/efxyXYNbtVU/s1600/Drag+and+Drop+a+file.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="217" src="http://1.bp.blogspot.com/-n4RzFToMsxI/TnsQ9QqPYkI/AAAAAAAACg8/efxyXYNbtVU/s320/Drag+and+Drop+a+file.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Finally &lt;b&gt;not all previous feature have been reworked&lt;/b&gt;. We still have the horrible non intuitive popup to manage Build Qualities:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-PJkJDxACPMM/TnkGeaDN-dI/AAAAAAAACgw/Lp4M1HNj4sg/s1600/BuildQualityUnchanged.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="253" src="http://4.bp.blogspot.com/-PJkJDxACPMM/TnkGeaDN-dI/AAAAAAAACgw/Lp4M1HNj4sg/s320/BuildQualityUnchanged.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&amp;nbsp;Hope I will have other nice surprises as I dog food this version with a real project.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4922063717576524399?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4922063717576524399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/09/quicky-tfs-11-finally-easier-to-manage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4922063717576524399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4922063717576524399'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/09/quicky-tfs-11-finally-easier-to-manage.html' title='Quicky TFS 11 | Finally easier to manage Iterations and Areas'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-HrH8F6Pstms/TnkGcrtr9VI/AAAAAAAACgs/CUo4awdJsJQ/s72-c/EasyToNanageAreaIteration.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-8876806195817250326</id><published>2011-09-16T14:43:00.004+02:00</published><updated>2011-09-17T00:31:39.687+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='AZURE'/><title type='text'>Start playing with "Windows Azure"-based TFS Service (Preview)</title><content type='html'>Got an account on&amp;nbsp;&lt;a href="http://blogs.msdn.com/b/bharry/archive/2011/09/14/team-foundation-server-on-windows-azure.aspx"&gt;Team Foundation Server on Windows Azure&lt;/a&gt;, thanks to&amp;nbsp;a great guy - just the best of the best ;-) currently attending the &lt;a href="http://www.buildwindows.com/"&gt;Microsoft BUILD Windows 2011 conference&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Here my first go on setting up the system, with &lt;i&gt;MSF for Agile Software Development 6.0 - Preview 1&lt;/i&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-B9gMFI7pNN4/TnNAK-ZNJgI/AAAAAAAACgk/av8wEdWuZog/s1600/TFS+on+Azure.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="355" src="http://1.bp.blogspot.com/-B9gMFI7pNN4/TnNAK-ZNJgI/AAAAAAAACgk/av8wEdWuZog/s400/TFS+on+Azure.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;I have to install locally tools to play with this TFS clould based. So please wait...&lt;br /&gt;Feel free to contact me to obtain an invitation to have your own account (I only got 5 of them).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In the meantime, once connected to TFS Azure, it offer a menu that reminds TFS Web Access :&lt;br /&gt;"Home" / "Work Items" / "Source" / "Build" / "Members" / "Security"&lt;br /&gt;It's quite rapid to use and here are some snap-shots:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-yv7jXCh7gVU/TnPNswSgZ_I/AAAAAAAACgo/6GAaL05CCbg/s1600/ALM-TFS_Azure_VinceThavonekham.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://1.bp.blogspot.com/-yv7jXCh7gVU/TnPNswSgZ_I/AAAAAAAACgo/6GAaL05CCbg/s640/ALM-TFS_Azure_VinceThavonekham.png" width="480" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Next step will be to onfigure and run a build &amp;nbsp;;-)&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-8876806195817250326?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/8876806195817250326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/09/start-playing-with-windows-azure-based.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/8876806195817250326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/8876806195817250326'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/09/start-playing-with-windows-azure-based.html' title='Start playing with &quot;Windows Azure&quot;-based TFS Service (Preview)'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-B9gMFI7pNN4/TnNAK-ZNJgI/AAAAAAAACgk/av8wEdWuZog/s72-c/TFS+on+Azure.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-5590499974174343958</id><published>2011-08-28T15:28:00.001+02:00</published><updated>2011-08-29T21:25:04.988+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='Lesson Learned'/><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>Fwd-Agile is dead - L'Agile est mort - Rumination From a Tortured Mind</title><content type='html'>This post is quite special because I am translating a French Post talking about Agile.&lt;br /&gt;It is rather a long one (about 9 pages), but the author states some sharp truths and view points, which let you think for quite a while!&lt;br /&gt;&lt;br /&gt;With the authorization of the author, I translated it entirely. Here is the original French version&amp;nbsp; "L'Agile est mort" &lt;a href="http://douche.name/blog/2011/08/08/l-agile-est-mort"&gt;http://douche.name/blog/2011/08/08/l-agile-est-mort&lt;/a&gt;/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I share most of his views, except some points such the one concerning Scrum (no! I am not a Scrum consultant and started my agile quest in 2001, as a  developer working for an ISV that had to be a UK market leader in his  field. Moreover, I currently work for another software vendor. I am just an  agile lover).&lt;br /&gt;&lt;br /&gt;To my perspective, Scrum is not that bad:&lt;br /&gt;&amp;nbsp;- If you &lt;b&gt;ignore its related marketing aspect,&lt;/b&gt;&lt;br /&gt;&amp;nbsp;- If you are &lt;b&gt;already understand the philosophy of Agile&lt;/b&gt; but are just missing some guidance to actually transform your philosophy into practical project,&lt;br /&gt;&amp;nbsp;- If you could &lt;b&gt;break free from Scrum template&lt;/b&gt;, once mature with Agile,&lt;br /&gt;&lt;br /&gt;As far as I am concerned, my career lead me though the following path:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Get the Agile state of mind (yes, you should feel it ! it should enlighten and change/explain your way of thinking),&lt;/li&gt;&lt;li&gt;Practice it in real cases (for instance 2 projects) and read a lot at the same time (Blogs, Books, articles...) and speak to as many agilist as you can (conferences, user groups, ...). Then, start to go deeper into agile,&lt;/li&gt;&lt;li&gt; Start to realize that &lt;b&gt;the more you know about Agile&lt;/b&gt;, the &lt;b&gt;more you are convinced you just scratch&lt;/b&gt; the surface of it. This is a good sign! Now you have to improve and adapt all the time (for years, day in day out),&lt;/li&gt;&lt;li&gt; Then get into Scrum and practice to help you. And read A LOT about Scrum and Agile to go beyond the marketing aspect (read Mike Cohn that quote hundreds of references and examples, and other authors that will make you think even more, with other references to other books and quotes and examples) !! &lt;br /&gt;This should &lt;b&gt;give you mature answers to your own questions and past mistakes&lt;/b&gt; (at least it did for me). Some advanced elements of Agile would have taken me a while to converge to a satisfying answer, if I had to rely only on my own "try and error and improve" approach.&lt;/li&gt;&lt;li&gt;FINALLY adapt Scrum to have more freedom inside the Agile world, and don't forget to &lt;a href="http://memoprojects.blogspot.com/2011/03/comparing-prince2s-agility-with-scrum.html"&gt;BLEND it with other methodologies&lt;/a&gt; and most importantly adapt it to your company / situation / team / constraints...&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Here is the translated &lt;a href="http://www.blogger.com/It%20is%20quite%20a%20long%20post%20that%20I%20chose%20to%20translated%20rather%20than%20summarizing%20it:%20%20http://douche.name/blog/2011/08/08/l-agile-est-mort/"&gt;post&lt;/a&gt; . Do not hesitate to give any feedbacks to the author or myself as needed.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-family: Times; font-size: 18pt;"&gt;Rumination From a Tortured Mind&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;i&gt;&lt;span lang="EN-US" style="font-family: Times; font-size: 10pt;"&gt;(Original French Post: &lt;a href="http://douche.name/blog/2011/08/08/l-agile-est-mort/"&gt;http://douche.name/blog/2011/08/08/l-agile-est-mort/&lt;/a&gt;&lt;br /&gt;Credits of the translation into English: Vincent THAVONEKHAM – www.Thavo.com)&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span lang="EN-US" style="font-family: Times; font-size: 10pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Agile is dead&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;Under this title - that might seem provocative - can be found some rather bitter facts. It is even sadder given that fact that we could have predicted this situation many years ago. Agile has become mainstream, we talk regularly about it in newspapers for IT decision-makers (which is a proof of its spreads, isn’t it?), developers claim to practice it daily, so does project managers. So why being pessimistic? Because each month proves it, for instance, when someone stands in from of me saying:&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; “Agility is real crap!”&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;And that happens to me very often (but not necessarily that vulgar). It would take less than 2 minutes to determine that that person does not work within an Agile context at all. Last but not least, a good sign that Agile is dead is when you hear so-called experts saying non-sense on blogs, newspapers or mailing lists.&lt;br /&gt;Oh, I see you saying, "but who are you to define what is and what is not Agile?". Excellent question! In fact, if defining the edges of agility is difficult (especially in 2011 when many practices or movements call themselves Agile), it is a lot easier to claim what is &lt;b&gt;not Agile&lt;/b&gt;, when it &lt;b&gt;totally contrasts&lt;/b&gt; to &lt;b&gt;the philosophy that Agile wants to embody&lt;/b&gt;. While the amount of practices has increased, the basics are still set in stone and clear. All those practices must be derived from the same core.&lt;br /&gt;&lt;br /&gt;I like to compare agility to Free Software (I am into both Agile and Free Software fields for a while – 10 and 15 years respectively) since it mixes high-tech and human being. They both are a partial&lt;b&gt; representation of the world&lt;/b&gt; with relationships between people:&lt;br /&gt;&lt;br /&gt;If I release a software as a Free Software, such as BSD, but I do not offer a bug-tracker or mailing list, or I refuse any external contribution, or I make my code obfuscated, or I ignore users’ requests, I am indeed writing a Free Software (and my license proves it). However, it is only a substitute (i.e. fake), as I do not respect the initial philosophy of Free Software. It is similar with agility.&lt;br /&gt;As far as I am concerned, agility sums up in three points, which you could easily verify the presence.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Searching for a value&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Often called inappropriately “a working software”, the goal is to provide the end users with a functional, usable and handy application. Unless you are developing the same application for a while again and again, it is usually a discovery land for both the customer and the development team. So it is an utopia to believe that we can define in advance the full specifications of the software. The primary aim is to produce a software nice and functional, not to release it quickly. The “waterfall method” is in many ways the most efficient approach to generate rapidly software:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I listen to the needs&lt;/li&gt;&lt;li&gt;I understand and validate the specifications.&lt;/li&gt;&lt;li&gt;I am developing it.&lt;/li&gt;&lt;li&gt;I test.&lt;/li&gt;&lt;li&gt;I deliver.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;There is no faster way of doing a software. If you are doing the same thing for 20 years, no worries. I only heard two (yes two, not three) companies that can deliver successfully within schedule 99% of the time, and they are based on “waterfall method”. And not surprisingly those two companies were coding in Cobol on a mature platform with highly similar needs, with:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A constant Team.&lt;/li&gt;&lt;li&gt;A well known technology and platform's architecture.&lt;/li&gt;&lt;li&gt;Business strongly mastered.&lt;/li&gt;&lt;li&gt;Similar products.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;In a nutshell, an ideal environment. But it is unrealistic to expect from a client the ability to accurately define his needs. Not only he does not know what he wants, but often and afterwards he realizes that what he managed to explain was in fact irrelevant! Worst, his business or his needs have changed between the developments' start and the end. I do not even mention the ability of a development team to deliver a quality product in one go, especially if it is discovering the customer's business. In short, it is utopian. Let's consider that this is due to the immaturity of our job, the youth of our tools and a training too basic.&lt;br /&gt;On the contrary, agility is intended as a quest for meaning:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;What should I get?&lt;/li&gt;&lt;li&gt;What features are really useful?&lt;/li&gt;&lt;li&gt;Is this functionality needed?&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #bfbfbf; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 13px;"&gt;&lt;i&gt;&lt;span lang="EN-US" style="font-family: Times; font-size: 10pt;"&gt;(Note: cannot translate the original text “N'est elle pas le symptôme d'un problème non technique ?”)&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;To the extreme, is this software useful?&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;It is a collective effort, starting from the developer up until the customer to understand, analyze and develop business value. Otherwise, you will have a cascading style: we agree on a functional scope, the cost and the timescale and let’s go!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Let's talk about the second point.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Human centric&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;What also emerges is this constant desire to put people on the first stage, and not the tools nor the processes. The latter are helping human, and not the other way round! The development primarily dealing with developers. You have &lt;b&gt;to trust people, respect them in their ability to develop, in their judgments&lt;/b&gt;. To me, this emphasis seems to be missing from previous approaches such as waterfall or RUP. These are rather process oriented, with dozens of procedures and huge documentation. The developer being just a single drop within the system.&lt;br /&gt;CMMi is a good example of this vision: the official and lengthy documentation deals with organization and processes. And worse, you must be CMMi certified to read a CMMi documentation (where is the error?) so much it is unreadable and full of incomprehensible terms. In fact most of them are using “cascade” which indicates their belief in the processes.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"&gt;It was not until 2010 when we seriously hear about CEI’s agility&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #222222; font-family: Times; font-size: 13px; line-height: 13px;"&gt;&lt;i&gt;&lt;span style="color: #bfbfbf;"&gt;(added to the original text:&amp;nbsp; see&amp;nbsp;&lt;a href="http://www.ceiamerica.com/outsourcing/methodologies.aspx" style="color: #249fa3; text-decoration: none;"&gt;http://www.ceiamerica.com/outsourcing/methodologies.aspx&lt;/a&gt;)&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;, i.e. 11 years after the book of Ken Beck!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;On the contrary, agility favors “the interaction over processes”, the result over documentation. This is possible by collocating physically all participants, by organizing short but regular meetings, and by listening to people.&lt;br /&gt;&lt;br /&gt;Now, let's see the third point.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Development is a discipline&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;The developer is back at the center of the developments. In exchange we asked him to master his job: not only we want software that works, he must always keep questioning himself, learn to do better and to refine its development techniques.&lt;br /&gt;The software industry likes to be seen as an artisan (each fields likes to describe themselves elegantly) just like drivers, bakers, cooks, musicians ... except that the software industry is not only very complex but also is just at its early days: 60 years. This is little.&lt;br /&gt;&lt;br /&gt;Agility brings a lot of interesting solutions: for instance, the TDD, testing, peer review, continuous integration and refactoring. Of course a developer worked very well for a while without ever having read a single book on agility. After all Ken Beck and his acolytes have discovered these techniques, why not others? Yes, but ignoring agility would mean putting aside years of thinking on software development practices. That would be a shame.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;So why saying that Agile is dead?&lt;/b&gt;&lt;br /&gt;I am unfortunately not old enough to know what was happening in the 70th, 80th and 90th in the software industry, but I might not be wrong saying that agility is a decisive milestone. However, I am an old Geek who bought quite a few books on programming 20 years ago. Nevertheless I have no memories of books (well at least in France anyway!) that even have any slightest talks on agility. Instead, we learned by mimicking codes from masters (cracking software, listening to demo-makers or chatting on the BBS). Practices that were nearly unknown 10 years ago are considered essential practices nowadays (you did write a lot of Unit Tests in year 2000?).&lt;br /&gt;&lt;br /&gt;Agility has &lt;b&gt;enlightened thousands of developers&lt;/b&gt;, including myself, and improved our job by building for the first time a stable ground. It is still the beginning, but every day we try to better understand this job and its dear difficulties.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;But you know what? &lt;b&gt;Who cares?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Agility is a new fashionable technique&lt;/b&gt;&lt;br /&gt;It soon becomes clear that the majority of organizations uses Agile because they have heard it works but they do not give a damn of what is inside. And for good reason, because this would mean for organizations to reconsider two fundamental visions:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;IT is a cost, not an investment.&lt;/li&gt;&lt;li&gt;Employees can be replaced, not the bases of the company.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Not wanting to question these two assumptions, it can result in an abuse of the Agile movement. And that is what is going on. The Agile is therefore a fashion, just following the one on Object Oriented development, Design Patterns, C++, Java, frameworks, RUP and others. New ones will bloom in few years time, when the promises of Agile evangelists will have crashed against the wall of the businesses’ reality.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;But what are “They” doing?&lt;/b&gt;&lt;br /&gt;Some &lt;b&gt;iterative and incremental&lt;/b&gt; development. “They” cut their developments into smaller chunks, with regular checks. What is the common point with the Agile I described previously? Nothing! Trusting people? Let's be serious, “They” practice regularly &lt;i&gt;command &amp;amp; control&lt;/i&gt;, which is a technique of getting people working as puppets, and then accuse them of doing badly their job when something goes wrong. See development as a discipline? You talk about CFO's purchasing departments that crush down the developer’s daily rate? Concerning the seeking of business values, this would mean criticizing the current of the organization’s processes.&lt;br /&gt;&lt;br /&gt;Do you start to understand me?&lt;br /&gt;“They” are selling you Scrum, which consists of having chunks (called iterations) with regular demos and daily meetings, and a retrospective from time to time. And the trick is done, thus “They” are doing Agile!&lt;br /&gt;Tell me if these few examples remind to you anything:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The Project manager is called ScrumMaster, because he attended a two-day training.&lt;/li&gt;&lt;li&gt;The relevance of business functionality is not evaluated.&lt;/li&gt;&lt;li&gt;Under qualified or inexperienced developers are picked because they are cheaper.&lt;/li&gt;&lt;li&gt;The pair-programming and code review are too expensive and unnecessary.&lt;/li&gt;&lt;li&gt;The ScrumMaster assigns tasks during each daily meeting.&lt;/li&gt;&lt;li&gt;The retrospective is done with the customer.&lt;/li&gt;&lt;li&gt;A specification document is created before developing.&lt;/li&gt;&lt;li&gt;Time is never spared to review the elements/processes that cause problems.&lt;/li&gt;&lt;li&gt;Late hours are required to catch up or manage the new requests from the marketing.&lt;/li&gt;&lt;li&gt;The project will hit the wall but no one does anything.&lt;/li&gt;&lt;li&gt;People are micro-managed.&lt;/li&gt;&lt;li&gt;The project is divided into delocalized teams thus never have any eye contacts.&lt;/li&gt;&lt;li&gt;Team members are not given the ability to increase their knowledge.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;I could add many other examples, but you get the idea. Where is the Agile philosophy? Absent, because organizations do not want to change their views on software development, and even less concerning the way they work.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Why are “They” doing it?&lt;/b&gt;&lt;br /&gt;Because it sells, of course! Consulting firms went onto the market; associations were formed to develop this business. So it sells, and pretty well now.&lt;br /&gt;But how to perform Agile:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;in a &lt;i&gt;command &amp;amp; control&lt;/i&gt; environment?&lt;/li&gt;&lt;li&gt;in a culture that blames and searches for the guilty, and where each manager opens their umbrella at the slightest trouble?&lt;/li&gt;&lt;li&gt;When a specification document is handed without questioning what the business’ needs are?&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;By tweaking Agile so that it could fit into boxes.&lt;br /&gt;&lt;br /&gt;An example? The great &lt;b&gt;hypocrisy &lt;/b&gt;of the Agile development on fixed price contracts. Let us have a closer look: the fixed price contract consists in defining a functional scope, a timebox and price for development. Does it remind you of something? That is the reason why "Agile for fixed price contracts" topics sneaked into every Agile conference for years. It is because every IT decision makers are wandering how doing it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Agile died in 2001&lt;/b&gt;&lt;br /&gt;More precisely in &lt;b&gt;February 2001&lt;/b&gt;, in Snowbird Utah, United States. It corresponds to the creation of the &lt;i&gt;Agile Manifesto&lt;/i&gt; and the term Agile. Generally speaking, it is the willingness to develop a &lt;b&gt;model&lt;/b&gt; / a framework. Staring from 2002, books with the agile term in the title begun to bloom.&lt;br /&gt;This may seem surprising to say this (since it is also the beginning of the Agile movement) but the purpose of standardizing terms and principles, and freezing them was primarily done to selling it. It is curious to notice that out of the &lt;b&gt;17 signatories of the manifesto, 17 of them are consultants&lt;/b&gt;: all sell books and trainings. The Agile Alliance was formed in the row to promote it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;A sclerotic model that cannot evolve&lt;/b&gt;&lt;br /&gt;What are the results in 2011? Despite some progresses, the official discourse is close to the Agile of 2001. We did not learn anything 10-years time? Of course there is: the development by iterations and taking into account of the organization in the development are just two fundamental examples. But still, the Agile model remains quite insensitive to those changes.&lt;br /&gt;&lt;br /&gt;We have seen some new features but nothing too serious. Why? Because we are more interested in selling to thinking. Because before being able to think &lt;b&gt;one must do first!&lt;/b&gt; Writing books and doing consulting cannot help. XP is the result of many years of practice of software development. Taiichi Ono (founder of the Toyota Production System) spent several decades to perfect its organization. He probably did not ask his new organization to pass a TPS certification 5 years later!&lt;br /&gt;&lt;br /&gt;There have been slight shifts from the developer to the organization. Although the Agile model opens to the outside world, it is limited: just look at the role of the PO (Product Owner), a proxy of the company. Where are the stakeholders? What about marketing? Techniques? What about searching for new markets? What about deployment? And the operational side? The user experience? Design? Basically, where is everything else?! The void, the brains of the Agile model are still strongly talking about TDD and planning poker, what a big deal!&lt;br /&gt;&lt;span class="Apple-style-span"&gt;Worse, this slight positive is balanced by the &lt;b&gt;craftsmanship movement&lt;/b&gt;,&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #222222; font-family: Times; font-size: 13px; line-height: 13px;"&gt;&lt;i&gt;&lt;span style="color: #bfbfbf;"&gt;(added to the original text : http://www.infoq.com/news/2008/08/manifesto-fifth-craftsmanship)&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&amp;nbsp;which aims a return back to the origin, self-centered to the developer. The only interesting progress has just been sent to the void! If you want to know why, just look at the business of the founder's movement, Bob Martin, who sells books and training ... on how to code. Surely, the company-level is not useful to his business. It is also funny to see people swoon over this movement as if it was new. XP said roughly the same thing 13 years ago. Moreover, it is significant that it is mostly Scrumistes (in France at least) who promotes it, as they openly criticized XP.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Conclusion&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;I hope I have clarified my point on Twitter (140 characters is sometimes too short :-)). No, do not stop doing the testing, pair programming and daily meetings. No, do not underestimate the impact of agility on our job. It is quite the opposite! I encourage you to read books and blogs, and take what you need.&lt;br /&gt;&lt;br /&gt;You only have to have a systemic vision of the movement&amp;nbsp;&lt;span class="Apple-style-span" style="background-color: white; color: #222222; font-family: Times; font-size: 13px; line-height: 13px;"&gt;&lt;i&gt;&lt;span style="color: #bfbfbf;"&gt;(comment added to the original text: i.e. ignore the causes, and try not to analyze it psychologically, and do no use models)&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;, understand where it comes from, why it was created and why some people sell Agile. This allows for example to understand the &lt;i&gt;Agile Manifesto&lt;/i&gt;, instead of stupidly repeating its content that is far from optimal in 2011. This also explains the model created in 2001 (and Scrum in 1996, and XP in 1999) and why it has been slow to spread, and does not bring any new elements for many years. If money was always the engine, the model is now warped &lt;b&gt;to fit into the matrix of consulting&lt;/b&gt;, far away from the original objectives. And neither the &lt;i&gt;official &lt;/i&gt;voices (Agile Alliance, Scrum Alliance), nor its &lt;i&gt;thinkers &lt;/i&gt;rose up against that. Worse, they were actively involved in this perversion (who said certification?).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I could sum up my opinion as follow: &lt;b&gt;Agility is an important step forward, but the Agile model is useless&lt;/b&gt;. This may be the fate of any model. In any case, it is time for each organization to invent, as Toyota did for its own vehicles' production. A model &lt;b&gt;adapted to the business, the customers, and the employees&lt;/b&gt;. A model that &lt;b&gt;takes into account all the new improvements&lt;/b&gt; that can be found in movements such as Devops, Lean, Lean Startup or Kanban. A model that is constantly &lt;b&gt;evolving &lt;/b&gt;along with its maturity and its ability to organize its production.&lt;br /&gt;But having tried to do it constantly for the last 4 years, I can guarantee you that it is way more difficult and painful than having a 2-day training, or urging to apply what one has read in a book…&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-5590499974174343958?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/5590499974174343958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/08/fwd-agile-is-dead-rumination-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5590499974174343958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5590499974174343958'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/08/fwd-agile-is-dead-rumination-from.html' title='Fwd-Agile is dead - L&apos;Agile est mort - Rumination From a Tortured Mind'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7079104647212256918</id><published>2011-07-25T23:50:00.003+02:00</published><updated>2011-07-26T09:53:53.669+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><title type='text'>Timeline of Scrum in 1 slide !</title><content type='html'>&lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e4611652-7934-4e02-a589-4faffbb03eac" style="display: inline; float: none; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Mots clés Technorati : &lt;a href="http://technorati.com/tags/SCRUM+in+one+slide" rel="tag"&gt;SCRUM in one slide&lt;/a&gt;&lt;/div&gt;&lt;h2&gt;&lt;/h2&gt;&lt;br /&gt;July 2011 : The creators of Scrum released a new version this month.&lt;br /&gt;Ken Schwaber and Jeff Sutherland published “&lt;a href="http://www.scrum.org/scrumguides/"&gt;The Scrum Guide&lt;/a&gt;” in many languages (&lt;a href="http://www.scrum.org/scrumguides/" title="http://www.scrum.org/scrumguides/"&gt;http://www.scrum.org/scrumguides/&lt;/a&gt;).&lt;br /&gt;To celebrate that, I wanted to summarize Scrum and &lt;b&gt;fit most of it into 1 slide&lt;/b&gt; !&lt;br /&gt;Since it is not quite easy, here is my first iteration on that :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-fZ8Sh9VTjRo/Ti5yf5rJO2I/AAAAAAAACdw/5uOoR2x87LU/s1600/ScrumInOneSlide.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="257" src="http://4.bp.blogspot.com/-fZ8Sh9VTjRo/Ti5yf5rJO2I/AAAAAAAACdw/5uOoR2x87LU/s400/ScrumInOneSlide.png" t$="true" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;li&gt;To keep it as simple as possible, I skipped on purpose some concepts.&lt;/li&gt;&lt;li&gt;However, alsthough it is not part of Scrum as such, I have added in bracket “Continuous Build and Deploy”, as I find that a keystone to Agility,&lt;/li&gt;&lt;li&gt;The “Definition of DONE” is applicable at many level and could also be representing “Behavior”, if you do “Behavior Development Driven” (BDD).x²&lt;/li&gt;&lt;/ul&gt;Feel free to use it / modify it, and if possible send me your feedbacks so I can make it evolve too.&lt;br /&gt;I think this timeline is a complement to the well known graphic of Scrum :&lt;br /&gt;&lt;a href="http://lh5.ggpht.com/-732DmZ-Lyn8/Ti3lMrsJgUI/AAAAAAAACdc/H-x6cy0R5CA/s1600-h/ScrumLargeLabelled%25255B3%25255D.png"&gt;&lt;img alt="ScrumLargeLabelled" border="0" height="191" src="http://lh6.ggpht.com/-C5V-SDanfBw/Ti3lNpDOKTI/AAAAAAAACdg/uPfN37CSwfk/ScrumLargeLabelled_thumb%25255B1%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="ScrumLargeLabelled" width="390" /&gt;&lt;/a&gt;&lt;br /&gt;© Mike Cohn, &lt;a href="http://www.mountaingoatsoftware.com/scrum/overview"&gt;Mountain Goat&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Well, obviously, Scrum is much more than that, and answers many other questions such as :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;how to decompose the Product Backlog into a Spring Backlog into User stories, tasks, with repectively Story points, …&lt;/li&gt;&lt;li&gt;how to determine the amount of Story points, …&lt;/li&gt;&lt;/ul&gt;However, this would be out of scope of this post.I would however higly recommand you this great book :&lt;br /&gt;&lt;br /&gt;- &lt;a href="http://www.amazon.com/Agile-Estimating-Planning-Mike-Cohn/dp/0131479415"&gt;Agile Estimating and Planning&lt;/a&gt; (Mike Cohn)&lt;br /&gt;as well as some of his other books "&lt;a href="http://www.mountaingoatsoftware.com/"&gt;Succeeding with Agile: Software Development Using Scrum&lt;/a&gt;".&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7079104647212256918?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7079104647212256918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/07/timeline-of-scrum-in-1-slide.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7079104647212256918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7079104647212256918'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/07/timeline-of-scrum-in-1-slide.html' title='Timeline of Scrum in 1 slide !'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-fZ8Sh9VTjRo/Ti5yf5rJO2I/AAAAAAAACdw/5uOoR2x87LU/s72-c/ScrumInOneSlide.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-3232670899623444323</id><published>2011-06-23T09:58:00.003+02:00</published><updated>2011-06-23T10:02:11.576+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BDD'/><category scheme='http://www.blogger.com/atom/ns#' term='T4'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='UnitTests'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>[ALM, Unit Tests, SpecFlow et T4] Magically generate your Unit Tests from the Specifications !!</title><content type='html'>&lt;h5 class="posthead" style="border-bottom-color: rgb(223, 223, 223); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(223, 223, 223); border-left-style: dotted; border-left-width: 0px; border-right-color: rgb(223, 223, 223); border-right-style: dotted; border-right-width: 0px; border-top-color: rgb(223, 223, 223); border-top-style: dotted; border-top-width: 0px; font-family: Tahoma, Arial, Helvetica, sans-serif; font-weight: normal; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 6px;"&gt;&lt;br /&gt;&lt;/h5&gt;&lt;h5 class="posthead" style="border-bottom-color: rgb(223, 223, 223); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(223, 223, 223); border-left-style: dotted; border-left-width: 0px; border-right-color: rgb(223, 223, 223); border-right-style: dotted; border-right-width: 0px; border-top-color: rgb(223, 223, 223); border-top-style: dotted; border-top-width: 0px; color: #529e00; font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 1.5em; font-weight: normal; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 6px;"&gt;&lt;/h5&gt;&lt;h5 class="posthead" style="border-bottom-color: rgb(223, 223, 223); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(223, 223, 223); border-left-style: dotted; border-left-width: 0px; border-right-color: rgb(223, 223, 223); border-right-style: dotted; border-right-width: 0px; border-top-color: rgb(223, 223, 223); border-top-style: dotted; border-top-width: 0px; color: #529e00; font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 1.5em; font-weight: normal; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 6px;"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: black; font-size: 13px;"&gt;(Not yet translated from my French Blog :&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: small;"&gt;&lt;a href="http://blogs.codes-sources.com/thavo/"&gt;http://blogs.codes-sources.com/thavo/&lt;/a&gt;. Please use Google Translation&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;)&lt;/span&gt;&lt;/i&gt;&lt;/h5&gt;&lt;h5 class="posthead" style="border-bottom-color: rgb(223, 223, 223); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(223, 223, 223); border-left-style: dotted; border-left-width: 0px; border-right-color: rgb(223, 223, 223); border-right-style: dotted; border-right-width: 0px; border-top-color: rgb(223, 223, 223); border-top-style: dotted; border-top-width: 0px; color: #529e00; font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 1.5em; font-weight: normal; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 6px;"&gt;&lt;span class="Apple-style-span" style="color: black; font-size: 13px;"&gt;Ce serait le rêve de générer par magie ses tests unitaires à partir des specs avant même d’avoir écrit son_code ?&lt;/span&gt;&lt;my &amp;nbsp;!!="" be="" french="" google="" has="" in="" please="" post="" progress="" to="" translated...="" translator="" use=""&gt;&lt;/my&gt;&lt;/h5&gt;&lt;ul style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;li&gt;A la fois on serait en TDD, qui est déjà un rêve pour une majorité d’entre nous. Vous avez déjà entendu d’un Directeur/Chef de projet “Oui, c’est super les TU… mais on n’a pas le budget, le temps, il y a plus prioritaire, etc…”&lt;/li&gt;&lt;li&gt;A la fois nos TU pourraient être “écrits” par le “Business Analyst” ou Chef de projet, si c’était le cas.&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;BDD existe déjà depuis un bout de temps, mais je voulais parler d’un outil particulier que nous allons découvrir ci-dessous.&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;PS: Dans ce cas BDD pas comme “Base De Données”, mais comme&amp;nbsp;&lt;strong&gt;Behaviour Development Driven&lt;/strong&gt;).&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;Comment cela peut fonctionner dans une ALM TFS en mode Agile ??&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;1.&amp;nbsp; Le&amp;nbsp;&lt;strong&gt;Chef de projet ou Business Analyst&amp;nbsp;&lt;/strong&gt;écrit les specs dans TFS en tant que User Story. Voici un exemple :&amp;nbsp;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_0ABC3F33.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="372" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_74397ADE.png" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;2. Toujours le&amp;nbsp;&lt;strong&gt;Chef de projet&amp;nbsp;&lt;/strong&gt;ou&amp;nbsp;&lt;strong&gt;Business Analyst&amp;nbsp;&lt;/strong&gt;écrit les scénarii de validation de tests d’acceptance afin de valider la User Story précédente.&lt;br /&gt;Pour cela, écrit dans un fichier texte *.feature (compatible avec le standard Cucumber-Gherkin syntax) sous Visual Studio 2010 pour disposer de l’&lt;b&gt;IntelliSense&lt;/b&gt;&amp;nbsp;!!.&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;PS1: il y aurait moyen de créer cela en tant que WorkItem puis générer ce fichier texte.&lt;br /&gt;PS2:&amp;nbsp; Pour faire le lien avec Scrum, on peut comparer cela à la “Definition Of Done”, qui doit être composé d’éléments&amp;nbsp;&lt;u&gt;mesurables&lt;/u&gt;, donc vérifiable (pas du genre… lorsque l’on clic sur le bouton “OK”, l’écran doit s’afficher&amp;nbsp;&lt;em&gt;rapidement&lt;/em&gt;).&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_2B335918.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="262" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_6371D030.png" style="background-image: none; border-bottom-color: initial; border-bottom-style: initial; border-bottom-width: 0px; border-left-color: initial; border-left-style: initial; border-left-width: 0px; border-right-color: initial; border-right-style: initial; border-right-width: 0px; border-top-color: initial; border-top-style: initial; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;/div&gt;&lt;table cellpadding="2" cellspacing="0" style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;3. Ensuite, toute la magie intervient dès que l’on fait Ctrl-S pour “enregistrer” ce fichier.&lt;br /&gt;&lt;br /&gt;Cela génère près de 100 lignes de code de tests unitaires C# (de type MsTest, mais cela pourrait être aussi xUnit, NUnit, MbUnit).&lt;br /&gt;&lt;br /&gt;”La magie” s’appelle T4 et&amp;nbsp;&lt;a href="http://www.specflow.org/" style="color: #006ff7;"&gt;SpecFlow&lt;/a&gt;&amp;nbsp;!!&lt;/td&gt;&lt;td&gt;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_1AD7E15F.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="148" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_6F271762.png" style="background-image: none; border-bottom-color: initial; border-bottom-style: initial; border-bottom-width: 0px; border-left-color: initial; border-left-style: initial; border-left-width: 0px; border-right-color: initial; border-right-style: initial; border-right-width: 0px; border-top-color: initial; border-top-style: initial; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="170" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_756DEDF0.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="513" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_1C0C5471.png" style="background-image: none; border-bottom-color: initial; border-bottom-style: initial; border-bottom-width: 0px; border-left-color: initial; border-left-style: initial; border-left-width: 0px; border-right-color: initial; border-right-style: initial; border-right-width: 0px; border-top-color: initial; border-top-style: initial; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="640" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;4. Enfin, on peut compiler le tout et lancer les Tests Unitaires. Ne pas paniquer, si cela ne passe pas, puisque cela respecte bien le principe de TDD se basant sur le “RGR” (&lt;span style="background-color: red;"&gt;Red&lt;/span&gt;&amp;nbsp;&lt;span style="background-color: lime;"&gt;Green&lt;/span&gt;&lt;span style="background-color: yellow;"&gt;Refactor&lt;/span&gt;). “&lt;span style="background-color: red;"&gt;Red&lt;/span&gt;”… enfin, techniquement, ci-dessous c’est Orange, car Inconclusive.&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_46980F81.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="131" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_702BDAB4.png" style="background-image: none; border-bottom-color: initial; border-bottom-style: initial; border-bottom-width: 0px; border-left-color: initial; border-left-style: initial; border-left-width: 0px; border-right-color: initial; border-right-style: initial; border-right-width: 0px; border-top-color: initial; border-top-style: initial; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="747" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;5. Comme c’est en “&lt;span style="background-color: red;"&gt;Red&lt;/span&gt;”, le développeur doit coder le code Business (ou bien le connecter ou bien injecter des objets existants) afin de le faire passer au&amp;nbsp;&lt;span style="background-color: lime;"&gt;Green&lt;/span&gt;. Pour cela, il suffit de copier / coller le code en bleu ci-dessous généré par TeamSpec (il y a probablement un autre moyen).&lt;br /&gt;&lt;br /&gt;On colle cela dans un autre fichier; bon, pour faire passer au&amp;nbsp;&lt;span style="background-color: lime;"&gt;Green&lt;/span&gt;, j’ai mis partout des Assert True à titre d’exemple.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;table cellpadding="2" cellspacing="0" style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_3CEFA14B.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="656" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_60C852D8.png" style="background-image: none; border-bottom-color: initial; border-bottom-style: initial; border-bottom-width: 0px; border-left-color: initial; border-left-style: initial; border-left-width: 0px; border-right-color: initial; border-right-style: initial; border-right-width: 0px; border-top-color: initial; border-top-style: initial; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="384" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://blogs.codes-sources.com/blogs/thavo/image_6968AB64.png" style="color: #006ff7;"&gt;&lt;img alt="image" border="0" height="511" src="http://blogs.codes-sources.com/blogs/thavo/image_thumb_3B9AE29F.png" style="background-image: none; border-bottom-color: initial; border-bottom-style: initial; border-bottom-width: 0px; border-left-color: initial; border-left-style: initial; border-left-width: 0px; border-right-color: initial; border-right-style: initial; border-right-width: 0px; border-top-color: initial; border-top-style: initial; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="235" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;Lorsque tout est&amp;nbsp;&lt;span style="background-color: lime;"&gt;Green&lt;/span&gt;, on connecte le tout à la TeamBuild TFS afin d’être certain qu’il n’y a pas de régression à chaque Check-in (si Gated Check in), ou bien tous les soirs.&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;Ensuite, on “&lt;span style="background-color: yellow;"&gt;Refactor&lt;/span&gt;” la partie Business, voir ses TU afin de faire plus propre. Puis, le CDP réitère en rajoutant des nouvelles “Definition Of Done”, donc cas recasse et nous voila reparti pour le cycle&amp;nbsp;&lt;span style="background-color: red;"&gt;Red&lt;/span&gt;&amp;nbsp;&lt;span style="background-color: lime;"&gt;Green&lt;/span&gt;&amp;nbsp;&lt;span style="background-color: yellow;"&gt;Refactor&lt;/span&gt;.&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;Pour aller plus loin dans les tests : Utiliser SpecFlow avec Coded-UI de VS2010 :&lt;br /&gt;&lt;a href="https://github.com/techtalk/SpecFlow/wiki/Using-SpecFlow-with-CodedUI-API" style="color: #006ff7;"&gt;https://github.com/techtalk/SpecFlow/wiki/Using-SpecFlow-with-CodedUI-API&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px;"&gt;PS: Suite à l’installation de SpecFlow, ne comptez pas sur l’aide fournie pour vous donner un coup de main, mais votre moteur de recherche préféré (car l’aide PDF est en mode Brouillon et pas complet) ==&amp;gt; Il faut rajouter au crproj de test une référence vers l’assembly SpecFlow et un fichier App.Config contenant les informations suivantes (MsTest, mais vous pouvez choisir les autres types, puis les T4 vont opérer leur magie habituelle).&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-3232670899623444323?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/3232670899623444323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/06/alm-unit-tests-specflow-et-t4-magically.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3232670899623444323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3232670899623444323'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/06/alm-unit-tests-specflow-et-t4-magically.html' title='[ALM, Unit Tests, SpecFlow et T4] Magically generate your Unit Tests from the Specifications !!'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-1912019643512013322</id><published>2011-06-14T15:22:00.010+02:00</published><updated>2011-06-18T17:21:47.024+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='MSBuild'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>Build Silverlight ServiceReferences.ClientConfig for Staging AND Prod environment</title><content type='html'>You want to automate Silverlight Build and Deployment with Team Build of the TFS 2010 ?&lt;br /&gt;&lt;br /&gt;Well you will soon be faced to the problem related to the&amp;nbsp;ServiceReferences.ClientConfig&amp;nbsp;file.&lt;br /&gt;Indeed, this file, which references the WCF services inside your *.xap, has to be different for every environment.&lt;br /&gt;&lt;br /&gt;So how to automate something ??&lt;br /&gt;&lt;br /&gt;Here are possible ways :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Don't use those files, but rather store the information in a file such as WebConfig. It is a net solution especially if you are a Software vendor with many different customer (you dont want to unzip and edit your file per customer, just deliver exactly the same *.xap). However, this solution is quite 'tecky' to modify your Silverlight code to work that way,&lt;/li&gt;&lt;li&gt;You could create a tool based on a library to unzip then edit your XAP,&amp;nbsp;&lt;a href="http://sharpdevelop.net/OpenSource/SharpZipLib/Default.aspx"&gt;http://sharpdevelop.net/OpenSource/SharpZipLib/Default.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;You could manually use 7-Zip to edit the Xap (just associate *.xap to 7-Zip) and change "Localhost" to your new endpoint,&lt;/li&gt;&lt;li&gt;You could use for instance InstallShield / WIX installer to perform this task,&lt;/li&gt;&lt;li&gt;An elegant and automated way is to use the *.csproj and Team Build to do that.&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; . ServiceReferences.Staging.ClientConfig&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; .&amp;nbsp;ServiceReferences.Prod.ClientConfig&lt;br /&gt;This is the solution detailed here after.&lt;/li&gt;&lt;/ul&gt;In a *.csproj you could have noticed the following commented lines :&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;!-- To modify your build process, add your task inside one of the targets below and uncomment it.&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;Other similar extension points exist, see Microsoft.Common.targets.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;Target Name="BeforeBuild"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/Target&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;Target Name="AfterBuild"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/Target&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;&amp;nbsp;--&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Consolas; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;Using the include's functionnality of&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;span class="Apple-style-span" style="color: green; font-family: Consolas; font-size: 13px; font-weight: bold; white-space: pre;"&gt;&lt;a href="http://msdn.microsoft.com/fr-fr/library/ms366724(v=VS.100).aspx"&gt;Microsoft.Common.targets&lt;/a&gt;&lt;/span&gt;&amp;nbsp;(more info &lt;a href="http://msdn.microsoft.com/fr-fr/library/ms366724(v=VS.100).aspx"&gt;here &lt;/a&gt;or &lt;a href="http://msdn.microsoft.com/en-us/library/aa337604.aspx"&gt;here&lt;/a&gt;)&lt;b&gt;&amp;nbsp;&lt;/b&gt;is the method used, except that we are going to do it for a TeamBuild 2010.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="background: white; color: black; font-family: Consolas; font-size: 13;"&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;Content&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;Include&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;ServiceReferences.ClientConfig&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;SubType&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;Designer&lt;span style="color: blue;"&gt;&lt;span style="color: #a31515;"&gt;SubType&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #a31515;"&gt;Content&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;Content&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;Include&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;ServiceReferences.Staging.ClientConfig&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;DependentUpon&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;ServiceReferences.ClientConfig&lt;span style="color: blue;"&gt;&lt;span style="color: #a31515;"&gt;DependentUpon&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #a31515;"&gt;Content&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Which gives the following in VS2010 :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-MlojCU3cxW8/TfcvgPcnpZI/AAAAAAAACU0/-wGbIR_H1yc/s1600/ServiceReferences_Staging_ClientConfig.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="44" src="http://1.bp.blogspot.com/-MlojCU3cxW8/TfcvgPcnpZI/AAAAAAAACU0/-wGbIR_H1yc/s320/ServiceReferences_Staging_ClientConfig.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Then, in the csproj, perform a&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/t41tzex2.aspx"&gt;conditional execution&lt;/a&gt;&amp;nbsp;of a XCOPY.&amp;nbsp;For instance use either &lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; white-space: normal;"&gt;&lt;span class="Apple-style-span" style="font-family: monospace; white-space: pre;"&gt;&lt;span style="color: red;"&gt;Condition&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; white-space: normal;"&gt;&lt;span class="Apple-style-span" style="font-family: monospace; white-space: pre;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; white-space: normal;"&gt;&lt;span class="Apple-style-span" style="font-family: monospace; white-space: pre;"&gt;&lt;span style="color: blue;"&gt;"'$(IsDesktopBuild)'=='true'" &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;but it is no more supported. Or, prefer using &amp;nbsp;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 16px;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.package.projectfileconstants.buildinginsidevisualstudio.aspx"&gt;$(BuildingInsideVisualStudio)&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Consolas; font-size: 13px; white-space: pre;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;!--&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Consolas; font-size: 13px; white-space: pre;"&gt;&lt;span style="color: green; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;Detect if&amp;nbsp;Build&amp;nbsp;inside&amp;nbsp;Visual&amp;nbsp;Studio&amp;nbsp;(i.e.)&amp;nbsp;or&amp;nbsp;Team&amp;nbsp;Build&amp;nbsp;TFS&amp;nbsp;2010&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Consolas; font-size: 13px; white-space: pre;"&gt;&lt;span style="color: green; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;--&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; font-family: Consolas;"&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; font-family: Consolas;"&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 8pt;"&gt;Exec&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Condition&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;$(BuildingInsideVisualStudio)=='true'&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Command&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;XCOPY&amp;nbsp;ServiceReferences.Dev.ClientConfig&amp;nbsp;ServiceReferences.ClientConfig&amp;nbsp;/R&amp;nbsp;/Y&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;        IgnoreExitCode&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;true&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 8pt;"&gt;Exec&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Condition&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;$(BuildingInsideVisualStudio)!='true'&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Command&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;XCOPY&amp;nbsp;ServiceReferences.Staging.ClientConfig&amp;nbsp;ServiceReferences.ClientConfig&amp;nbsp;/R&amp;nbsp;/Y&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="font-family: Consolas; font-size: 8pt;"&gt;        &lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;IgnoreExitCode&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;true&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 8pt;"&gt;Exec&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Condition&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;$(BuildingInsideVisualStudio)!='true'&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Command&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;DIR&amp;nbsp;*.*&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;BuildingInsideVisualStudio_NotTrue.txt&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;        IgnoreExitCode&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;true&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 8pt;"&gt;Exec&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Condition&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;$(BuildingInsideVisualStudio)=='true'&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;Command&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;DIR&amp;nbsp;*.*&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;BuildingInsideVisualStudio_True.txt&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="font-family: Consolas; font-size: 8pt;"&gt;        &lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 8pt;"&gt;IgnoreExitCode&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;=&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;true&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;"&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; color: blue; font-size: 13px; line-height: normal; margin-bottom: 0.0001pt;"&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color: #a31515; font-family: Consolas; font-size: 8pt;"&gt;Target&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 8pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: black; font-family: Consolas; font-size: 8pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;pre style="background: white; color: black; font-family: Consolas; font-size: 13;"&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: small; white-space: normal;"&gt;Done !&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: small; white-space: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; font-family: Consolas; font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: small; white-space: normal;"&gt;Next step is to use the file&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;ServiceReferences.Staging.ClientConfig&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: small; white-space: normal;"&gt;&amp;nbsp;the same way as a Web.Config file, that uses XSLT transform to decrease the amount of maintenance.&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-1912019643512013322?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/1912019643512013322/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/06/silverlight-servicereferencesclientconf.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1912019643512013322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1912019643512013322'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/06/silverlight-servicereferencesclientconf.html' title='Build Silverlight ServiceReferences.ClientConfig for Staging AND Prod environment'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-MlojCU3cxW8/TfcvgPcnpZI/AAAAAAAACU0/-wGbIR_H1yc/s72-c/ServiceReferences_Staging_ClientConfig.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-5126651515901186268</id><published>2011-06-05T22:54:00.007+02:00</published><updated>2011-06-06T10:09:20.780+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WebMatrix'/><category scheme='http://www.blogger.com/atom/ns#' term='eCommerce'/><title type='text'>WebMatrix : Create your eCommerce website in few hours</title><content type='html'>&lt;b&gt;INTRODUCTION :&lt;/b&gt;&lt;br /&gt;After spending few hours is searching on the Internet a balanced combination to create a eCommerce Website, I wanted to present a way to create your first eCommerce Website in few hours (then few days !! to customize it and code features specific to your business).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;INGREDIENTS:&lt;/b&gt;&lt;br /&gt;Take some few ingredients below :&lt;br /&gt;- Microsoft C# programming language [Free],&lt;br /&gt;- &lt;a href="http://www.asp.net/webmatrix"&gt;Microsoft WebMatrix&lt;/a&gt; development's interface [Free],&lt;br /&gt;- &lt;a href="http://www.dotshoppingcart.com/"&gt;DotShoppingcart&lt;/a&gt; as your Open Source CMS and eCommerce platform (based on Microsoft ASP.Net)&lt;br /&gt;- Use a 3 months free Hosting such as "&lt;a href="http://www2.appliedi.net/webmatrixsignup/"&gt;Applied Innovation&lt;/a&gt;" &lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-1zfOCR0uE6Y/TevkIOFfPeI/AAAAAAAACSw/mT7TZ3PfO0I/s1600/webx-brand-bl.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: left;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-1zfOCR0uE6Y/TevkIOFfPeI/AAAAAAAACSw/mT7TZ3PfO0I/s1600/webx-brand-bl.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-TCkpxqwfobc/TeviZfoPAdI/AAAAAAAACSs/CBZn0z4I4JM/s1600/DSCLogo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-TCkpxqwfobc/TeviZfoPAdI/AAAAAAAACSs/CBZn0z4I4JM/s1600/DSCLogo.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;START THE FUN :&lt;/b&gt;&lt;br /&gt;Once those elements setup, you could start the fun quickly :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-9-IqfQmVKHk/TevkRCMiqjI/AAAAAAAACTI/7HkyyD9NSrU/s1600/MainCart.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="275" src="http://1.bp.blogspot.com/-9-IqfQmVKHk/TevkRCMiqjI/AAAAAAAACTI/7HkyyD9NSrU/s320/MainCart.png" width="320" /&gt;&lt;/a&gt;Get your eCommerce Home page with your catalogue of any possible elements (here barrettes), where you already have by default functionnalities such as "filter by", "search", "sign in", "add to cart", ...&lt;br /&gt;&lt;br /&gt;If you login as an Admin, you will be able to edit the content of your pages, parameterize them (add shipping or taxes options) and add more items to your catalogue.&lt;br /&gt;&lt;br /&gt;Unfortunately, if you want to internationalize it (using Euros €€ currency and French language) you will have to have some coding efforts.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;CMS TIME (Content Management):&lt;/b&gt;&lt;br /&gt;Here is the way you could access your Admin area :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Wzrxlr8JInw/TevkM7zyr4I/AAAAAAAACS0/ncJkgDwu0nI/s1600/ActivateAdminMode.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="342" src="http://1.bp.blogspot.com/-Wzrxlr8JInw/TevkM7zyr4I/AAAAAAAACS0/ncJkgDwu0nI/s400/ActivateAdminMode.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Then, still as an Admin, you will be able to vizualize all those options :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-2zPzPpMAbuQ/TevkNSoppwI/AAAAAAAACS4/ZZ5Ch0Qs2IE/s1600/AdminCMS.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="244" src="http://4.bp.blogspot.com/-2zPzPpMAbuQ/TevkNSoppwI/AAAAAAAACS4/ZZ5Ch0Qs2IE/s320/AdminCMS.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-qvLQ-8G5er4/TevkOFV9hhI/AAAAAAAACS8/EO7RccxP8Qs/s1600/AdminCMS_PaymentChoices.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="244" src="http://2.bp.blogspot.com/-qvLQ-8G5er4/TevkOFV9hhI/AAAAAAAACS8/EO7RccxP8Qs/s320/AdminCMS_PaymentChoices.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-i5ECLUd-UCk/TevkOp2l_5I/AAAAAAAACTA/TgnXQ86DVqo/s1600/AdminCMS_SetupWizard.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="244" src="http://1.bp.blogspot.com/-i5ECLUd-UCk/TevkOp2l_5I/AAAAAAAACTA/TgnXQ86DVqo/s320/AdminCMS_SetupWizard.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;PUBLISHING TIME :&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;Once properly configured, publish this into your favorite Web Hosting provider which as to cope with ASP.Net as well as SQL Server 2008 (for instance&amp;nbsp;&lt;a href="http://www2.appliedi.net/webmatrixsignup/"&gt;Applied Innovation&lt;/a&gt;&amp;nbsp;- I found it good, and if you are numerous to register, I might get some discounts :-) ).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-LE6djeaLMIw/TevkP-BstjI/AAAAAAAACTE/_67LguZupzc/s1600/appliedi.net_WebHosting.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="194" src="http://4.bp.blogspot.com/-LE6djeaLMIw/TevkP-BstjI/AAAAAAAACTE/_67LguZupzc/s320/appliedi.net_WebHosting.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Once registered, you will reveive a email with all information (including passwords, and attached file so that you don't even have to type anytine into WebMatrix settings, just import settings!)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-BqfVzny17Ho/Tev02QSs_iI/AAAAAAAACTg/Ud1Tz1BWnKQ/s1600/eMail_AppliedInnovations.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://1.bp.blogspot.com/-BqfVzny17Ho/Tev02QSs_iI/AAAAAAAACTg/Ud1Tz1BWnKQ/s400/eMail_AppliedInnovations.jpg" width="255" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&amp;nbsp;Then you could be lazy on the WebMatrix part, by just importing the settings attached on the previous email !&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-_gg7NMHEdZc/TevyhYva_nI/AAAAAAAACTc/fG05BZ_yR3A/s1600/PublishSettings.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="287" src="http://4.bp.blogspot.com/-_gg7NMHEdZc/TevyhYva_nI/AAAAAAAACTc/fG05BZ_yR3A/s400/PublishSettings.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;From my 3G+ Internet connection (hope it's faster on proper ADSL line) : After more than an hour of deployment (still in progress !! 20Mb and 1000 files) I hope to have a nice eCommerce Web site over the Internet ! and not anymore only on my computer.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-GE91Eh-tfWE/TewHcZLSSbI/AAAAAAAACTk/wGdJiaw8YWU/s1600/LongTimeDeployment.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="266" src="http://2.bp.blogspot.com/-GE91Eh-tfWE/TewHcZLSSbI/AAAAAAAACTk/wGdJiaw8YWU/s320/LongTimeDeployment.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;GO BEYOND :&lt;/b&gt;&lt;br /&gt;Finally, although you could get up and running quicky you eCommerce web site, unless you want to sell only in US some Barrettes, you will rapidely get stock. So either upgrade your OpenSource DotShoppingcart into a professional version ($995.00).&lt;br /&gt;Else, if you have the budget to get a $12,000 budget to have a Visual Studio Ultimate with MSDN and have some programming knowledges, get your hands into the code, since it is compatible.&lt;br /&gt;&lt;br /&gt;However, this project is "only" a Web Site type, and not a "Web Application". As a result, you will not benefits from the full potential of a robust ASP.Net web application.&lt;br /&gt;&lt;br /&gt;DotShoppingcart opened and compiled with&amp;nbsp;Microsoft WebMatrix : &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-_yFExdo3gCQ/TevkSXRZmWI/AAAAAAAACTQ/IRoeH950OU0/s1600/WebMatrix.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://2.bp.blogspot.com/-_yFExdo3gCQ/TevkSXRZmWI/AAAAAAAACTQ/IRoeH950OU0/s400/WebMatrix.png" width="380" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;DotShoppingcart opened and compiled with&amp;nbsp;Microsoft Visual Studio 2010 Ultimate : &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-_yFExdo3gCQ/TevkSXRZmWI/AAAAAAAACTQ/IRoeH950OU0/s1600/WebMatrix.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/-4LuaSL1fthg/TevkRjDbwxI/AAAAAAAACTM/qgzPhwTV2Ls/s1600/VS2010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="342" src="http://2.bp.blogspot.com/-4LuaSL1fthg/TevkRjDbwxI/AAAAAAAACTM/qgzPhwTV2Ls/s400/VS2010.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;Enjoy eCommerce !!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;NB 1 :&lt;/b&gt;&amp;nbsp;I have not considered on purpose the heavy duty Microsoft Commerce Server, and wanted to consider a light weight framework&lt;br /&gt;&lt;b&gt;NB 2 :&lt;/b&gt;&amp;nbsp;I have evaluated dashCommerce 3.4.438 wich seams good, but I had you work hard to migrate from VS 2008 to VS 2010 (confirmed by other blogs) and to parameterize their databases. Whereas with&amp;nbsp;&lt;a href="http://www.dotshoppingcart.com/"&gt;DotShoppingcart&lt;/a&gt;&amp;nbsp;it was really easy to make it work.&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-5126651515901186268?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/5126651515901186268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/06/webmatrix-create-your-ecommerce-website.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5126651515901186268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5126651515901186268'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/06/webmatrix-create-your-ecommerce-website.html' title='WebMatrix : Create your eCommerce website in few hours'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-1zfOCR0uE6Y/TevkIOFfPeI/AAAAAAAACSw/mT7TZ3PfO0I/s72-c/webx-brand-bl.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-1115593550843622292</id><published>2011-05-04T13:55:00.002+02:00</published><updated>2011-05-04T14:02:21.541+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TortoiseSVN'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='comparison tool'/><title type='text'>Comparing MS Word documents from within VS2010</title><content type='html'>Many project managers complains that TFS2010/VS2010 &lt;b&gt;CANNOT compare MS Word documents&lt;/b&gt;&lt;br /&gt;&lt;i&gt;(which is a bad practice anyway because it not a source code, and should be stored in a document repository where workflow of validation and search engine are present).&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;I understand that Microsoft spend their efforts in using Sharepoint as a document repository, hence not implementing this&amp;nbsp;functionality&amp;nbsp;in VS2010 / TFS 2010.&lt;br /&gt;&lt;br /&gt;This is even more bizarre when knowing that TurtoiseSVN performs that natively !&lt;br /&gt;&lt;br /&gt;Here is a trick to have the best of the two worlds : Use&amp;nbsp;TurtoiseSVN from within VS2010, and still keeping TFS2010 as a Source Control.&lt;br /&gt;&lt;br /&gt;1. Download and install&amp;nbsp;TurtoiseSVN (it's free),&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-TY1PmYoC04w/TcE80pqnmzI/AAAAAAAACRE/4SnEJULBqB0/s1600/TortoiseSVN.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="44" src="http://1.bp.blogspot.com/-TY1PmYoC04w/TcE80pqnmzI/AAAAAAAACRE/4SnEJULBqB0/s320/TortoiseSVN.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;2. Customize the comparison Tool within VS2010, and instead of the default one, do the following :&lt;br /&gt;Visual Studio &amp;gt; Tools &amp;gt; Options &amp;gt; Source Control &amp;gt;Visual Studio Team Foundation Server &amp;gt; "Configure User Tools..." button&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-fWr2-QrU-eI/TcE9Tg9wDmI/AAAAAAAACRI/yZv-B4f6AJ4/s1600/CustoSourceControl.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="186" src="http://2.bp.blogspot.com/-fWr2-QrU-eI/TcE9Tg9wDmI/AAAAAAAACRI/yZv-B4f6AJ4/s320/CustoSourceControl.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Use the following parameters (adjust your&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: Tahoma, Arial, Helvetica; font-size: 12px;"&gt;TortoiseSVN's installation folder if required&lt;/span&gt;) :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;u&gt;E&lt;/u&gt;xtension: docx&lt;/li&gt;&lt;li&gt;&lt;u&gt;O&lt;/u&gt;peration: Compare&lt;/li&gt;&lt;li&gt;&lt;u&gt;C&lt;/u&gt;ommand: C:\Windows\System32\wscript.exe&lt;/li&gt;&lt;li&gt;&lt;u&gt;A&lt;/u&gt;rguments: "C:\Program Files\TortoiseSVN\Diff-Scripts\diff-docx.js" %1 %2 //E:javascript&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-j0wTlWYKFlQ/TcE9k7z1kiI/AAAAAAAACRM/uLw_i2b8Obo/s1600/ConfigureTool_VS2010.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="168" src="http://1.bp.blogspot.com/-j0wTlWYKFlQ/TcE9k7z1kiI/AAAAAAAACRM/uLw_i2b8Obo/s320/ConfigureTool_VS2010.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;That's it !&lt;br /&gt;&lt;br /&gt;Now, do your normal comparison within VS2010, based on the History for example :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ppD9cHG1KH0/TcEsep1zH_I/AAAAAAAACQ8/D6uXn_FdSv0/s1600/CompareDocx.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="211" src="http://1.bp.blogspot.com/-ppD9cHG1KH0/TcEsep1zH_I/AAAAAAAACQ8/D6uXn_FdSv0/s400/CompareDocx.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;After a few scripts running behind the scene to open Word and configure it in a comparison mode, here is the result:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-FMUFvn5d7G8/TcE7VfdLtQI/AAAAAAAACRA/5EyNaKsuCNE/s1600/WordDocComparisonWithVS2010.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://4.bp.blogspot.com/-FMUFvn5d7G8/TcE7VfdLtQI/AAAAAAAACRA/5EyNaKsuCNE/s640/WordDocComparisonWithVS2010.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Now you can receive another version of a 200 pages of specifications, and not being &amp;nbsp;scare you any longer !!&lt;br /&gt;Hope this helps speeding up your work.&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-1115593550843622292?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/1115593550843622292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/05/comparing-ms-word-documents-from-within.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1115593550843622292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1115593550843622292'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/05/comparing-ms-word-documents-from-within.html' title='Comparing MS Word documents from within VS2010'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-TY1PmYoC04w/TcE80pqnmzI/AAAAAAAACRE/4SnEJULBqB0/s72-c/TortoiseSVN.PNG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-6634180920054294071</id><published>2011-03-16T22:20:00.002+01:00</published><updated>2011-03-16T22:24:55.088+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='training kit'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><title type='text'>The new "Visual Studio 2010 and .NET Framework 4 Training Kit" is available</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;img border="0" height="101" src="https://lh5.googleusercontent.com/-cz4B7883_Nw/TYEow_uwOcI/AAAAAAAACQI/6M3vETQu70Y/s400/VS2010_TrainingKit_Vincent_THAVONEKHAM.png" width="400" /&gt;&lt;/div&gt;&lt;br /&gt;March 14th 2011 =&amp;gt; VS2010TrainingKitMarch2011.Setup.exe is out with 412 Mb of great pleasure !&lt;br /&gt;(as a comparison June 2010's version was 182 Mb)&lt;br /&gt;&lt;br /&gt;The new version (free) of the training kit for VS 2010 and .Net 4 is available.&lt;br /&gt;It's &lt;a href="http://www.microsoft.com/downloads/en/confirmation.aspx?FamilyID=752CB725-969B-4732-A383-ED5740F02E93&amp;amp;displaylang=en"&gt;here&lt;/a&gt; or, search for "&lt;span class="Apple-style-span" style="font-family: Tahoma, Arial, sans-serif; font-size: 13px; font-weight: bold;"&gt;Visual Studio 2010 and .NET Framework 4 Training Kit&lt;/span&gt;" on the web.&lt;br /&gt;&lt;br /&gt;Overview :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="background-position: 0% 0%; background-repeat: no-repeat no-repeat; border-bottom-color: transparent; border-bottom-style: none; border-bottom-width: 0px; border-left-color: transparent; border-left-style: none; border-left-width: 0px; border-right-color: transparent; border-right-style: none; border-right-width: 0px; border-top-color: transparent; border-top-style: none; border-top-width: 0px; font-family: Tahoma, Arial, sans-serif; font-size: 11px; line-height: 1.3em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;"The Visual Studio 2010 and .NET Framework 4 Training Kit includes presentations, hands-on labs, and demos. This content is designed to help you learn how to utilize the Visual Studio 2010 features and a variety of framework technologies including:&lt;/i&gt;&lt;/div&gt;&lt;ul style="font-family: Tahoma, Arial, sans-serif; font-size: 11px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;C# 4&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Visual Basic 10&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;F#&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Parallel Extensions&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Windows Communication Foundation&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Windows Workflow&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Windows Presentation Foundation&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Silverlight 4&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;ASP.NET 4&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Windows 7&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Entity Framework&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;ADO.NET Data Services&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Managed Extensibility Framework&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Visual Studio Team System&lt;/i&gt;&lt;/li&gt;&lt;li style="line-height: 1.3em; margin-bottom: 10px; margin-left: 25px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;i&gt;Windows Azure&lt;/i&gt;&lt;span class="Apple-style-span" style="line-height: normal;"&gt;&lt;i&gt;"&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-6634180920054294071?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/6634180920054294071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/03/new-visual-studio-2010-and-net.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6634180920054294071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6634180920054294071'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/03/new-visual-studio-2010-and-net.html' title='The new &quot;Visual Studio 2010 and .NET Framework 4 Training Kit&quot; is available'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh5.googleusercontent.com/-cz4B7883_Nw/TYEow_uwOcI/AAAAAAAACQI/6M3vETQu70Y/s72-c/VS2010_TrainingKit_Vincent_THAVONEKHAM.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-1993951311633986312</id><published>2011-03-16T08:48:00.000+01:00</published><updated>2011-03-16T08:48:15.881+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorials'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Account details for the TFS VS2010 training</title><content type='html'>A quick post, "just so we don't forget", here are the Microsoft account details for the Virtual Machines are : &lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'michaf'&lt;/span&gt; '#############' 'Michael Affronti (PM)' &lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'aprist'&lt;/span&gt; '#############' 'April Stewart (Dev Lead)' &lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'dorikr' &lt;/span&gt;'#############' 'Doris Krieger (Dev)' &lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'abuobe'&lt;/span&gt; '#############' 'Abu Obeida Bakhach (Dev)' &lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'chriko'&lt;/span&gt; '#############' 'Christine Koch (Tester)' &lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'chriba'&lt;/span&gt; '#############' 'Chris Barry (Business Stakeholder)'&lt;br /&gt;createUser &lt;span style="background-color: #ffe599;"&gt;'robiwo'&lt;/span&gt; '#############' 'Robin Wood (End User)'&lt;br /&gt;&lt;br /&gt;The password for the TailspinToys Labs is : &lt;span style="background-color: #ea9999; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;P2ssw0rd&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-1993951311633986312?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/1993951311633986312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/03/account-details-for-tfs-vs2010-training.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1993951311633986312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1993951311633986312'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/03/account-details-for-tfs-vs2010-training.html' title='Account details for the TFS VS2010 training'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4345143938773069414</id><published>2011-03-13T22:26:00.001+01:00</published><updated>2011-03-13T22:28:55.802+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='PRINCE2'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>Comparing PRINCE2’s Agility with Scrum within the TFS2010 ALM (Blending Methods to Succeed)</title><content type='html'>&lt;span class="Apple-style-span" style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-size: 25px;"&gt;Usually people do not notice the large amount of similarities between PRINCE2 and SCRUM. Rather than presenting them all in detail, here are some few examples (see the slides below, or &lt;/span&gt;&lt;span class="Apple-style-span" style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-size: 25px;"&gt;&lt;a href="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=blendingmethodstosucceedcomparingprince2sagilitywithscrumwithinthetfs2010alm-13000509517698-phpapp01&amp;amp;stripped_title=blending-methods-to-succeed-comparing-prince2-s-agility-with-scrum-within-the-tfs2010-alm"&gt;link here&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-size: 25px;"&gt;).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left; width: 700px;"&gt;&lt;object height="355" style="margin: 0px;" width="700"&gt;&lt;param name='movie' value='http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=blendingmethodstosucceedcomparingprince2sagilitywithscrumwithinthetfs2010alm-13000509517698-phpapp01&amp;stripped_title=blending-methods-to-succeed-comparing-prince2-s-agility-with-scrum-within-the-tfs2010-alm' /&gt;&lt;param name='allowFullScreen' value='true'/&gt;&lt;param name='allowScriptAccess' value='always'/&gt;&lt;embed src='http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=blendingmethodstosucceedcomparingprince2sagilitywithscrumwithinthetfs2010alm-13000509517698-phpapp01&amp;stripped_title=blending-methods-to-succeed-comparing-prince2-s-agility-with-scrum-within-the-tfs2010-alm' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='425' height='355'&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;&lt;span class="Apple-style-span" style="font-size: 25px;"&gt;&lt;b&gt;Synopsis :&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="O1" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: .81in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.31in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;É&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-weight: bold;"&gt;BY DEFINITION&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;PRINCE2 &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;and SCRUM are mature and based on practical feed backs of thousands of successful project worldwide,&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Neither &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;PRINCE2 nor SCRUM could be used &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;alone, they have to be blended to other technics,&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Neither PRINCE2 nor &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;SCRUM should be fully used “from the book”, they have to be adapted to the company,&lt;/span&gt;&lt;/div&gt;&lt;div class="O1" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: .81in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.31in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;É&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-weight: bold;"&gt;CONTROL&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[PRINCE2] Stage and decision boundaries &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[SCRUM] Sprint iteration of fixed length and Spring Review&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;PRINCE2&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Driven &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;by the Business' &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;needs &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[SCRUM] Driven by User Story and prioritized by Business &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;values&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Shall we carry on ?&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;×&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;PRINCE2&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;] End Stage Assessment &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; [SCRUM] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Sprint iteration review&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Regular reports :&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;×&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;PRINCE2&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;highlight reports {by Project manager}&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[SCRUM] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Daily stand up meeting {by the team + Scrum Master}&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 3.84pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="O1" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: .81in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.31in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;É&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-weight: bold;"&gt;TECHNIQUES&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Assumes that changes will occur (detailed and big design up-front cannot predict all)&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;×&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[PRINCE2] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Change &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Control &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; [SCRUM] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Reprioritizing &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;User &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Story before the start of a sprint, and reprioritizing technical tasks during a sprint&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Decompose user’s needs to visualize the problem and feeds that back to the users :&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;×&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[PRINCE2] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Product Break down structure&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[SCRUM&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;] Epic (=Big User story) &amp;gt; sub-User stories &amp;gt; related tasks &amp;gt; &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;related &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;sub-tasks&lt;/span&gt;&lt;/div&gt;&lt;div class="O1" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: .81in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.31in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;É&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-weight: bold;"&gt;PLANS&lt;/span&gt;&lt;/div&gt;&lt;div class="O2" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.25in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;Ð&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Quality boundaries : Agreed and strict tolerance at many levels&lt;/span&gt;&lt;/div&gt;&lt;div class="O3" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: 1.75in; margin-top: 4.08pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.25in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;×&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[PRINCE2] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;Project {program management}, &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;stage &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;&amp;nbsp;{project board} and &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;product &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;{project manager}&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: Wingdings;"&gt;ó&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt; &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;[SCRUM] &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;“Definition Of Done” : Program &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;{program management}&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;, End of sprint iteration &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;{&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;project &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;board}&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book';"&gt;, User Story {Product Owner}, Tasks {Team / Scrum Master}&lt;/span&gt;&lt;/div&gt;&lt;div class="O1" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: .81in; margin-top: 3.6pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.31in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;É&lt;/span&gt;&lt;/div&gt;&lt;div class="O1" style="direction: ltr; language: fr; margin-bottom: 0pt; margin-left: .81in; margin-top: 3.6pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -.31in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #f0a22e; font-family: 'Wingdings 2';"&gt;É&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4345143938773069414?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4345143938773069414/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/03/comparing-prince2s-agility-with-scrum.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4345143938773069414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4345143938773069414'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/03/comparing-prince2s-agility-with-scrum.html' title='Comparing PRINCE2’s Agility with Scrum within the TFS2010 ALM (Blending Methods to Succeed)'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4037138407579061624</id><published>2011-03-07T22:53:00.000+01:00</published><updated>2011-03-07T22:53:09.484+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='Lesson Learned'/><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><title type='text'>Secret of Fully  Distirbuted  Scrum</title><content type='html'>Jeff Sutherland (one of the creator of Scrum) along with Xebia wrote some papers about&amp;nbsp;Fully  Distirbuted  Scrum, to optimize Scrum in a Distributed environment :&lt;br /&gt;&lt;br /&gt;"Case  Report  on  Linearly  Scalability  of  Distributed  Teams  in  San  Francisco  and  India"&lt;br /&gt;&lt;br /&gt;Here are some very&amp;nbsp;interesting&amp;nbsp;readings :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.slideshare.net/xebiaindia/fully-distributed-scrum-schoonheim-sutherland-agile2009"&gt;http://www.slideshare.net/xebiaindia/fully-distributed-scrum-schoonheim-sutherland-agile2009&lt;/a&gt;&lt;br /&gt;&lt;a href="http://agile2009.agilealliance.org/files/FullyDistributeScrumAgile2009.pdf"&gt;http://agile2009.agilealliance.org/files/FullyDistributeScrumAgile2009.pdf&lt;/a&gt;&lt;br /&gt;&lt;a href="http://confluence.agilefinland.com/download/attachments/884822/Pretty+Good+Scrum+v6+CSM.pdf?version=1&amp;amp;modificationDate=1235904884000"&gt;http://confluence.agilefinland.com/download/attachments/884822/Pretty+Good+Scrum+v6+CSM.pdf?version=1&amp;amp;modificationDate=1235904884000&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4037138407579061624?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4037138407579061624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/03/secret-of-fully-distirbuted-scrum.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4037138407579061624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4037138407579061624'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/03/secret-of-fully-distirbuted-scrum.html' title='Secret of Fully  Distirbuted  Scrum'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-1778474511293619944</id><published>2011-03-04T01:41:00.007+01:00</published><updated>2011-03-28T18:50:18.564+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Lesson Learned'/><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>TFS 2010 Large projects in real life</title><content type='html'>&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-size: large; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;Why this presentation ?&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 7.68pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-size: large;"&gt;Because I often hear from my customers, or during some TFS/Scrum training courses : &lt;/span&gt;&lt;/div&gt;&lt;div style="direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 7.68pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt;«&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt;&amp;nbsp;Yes, Team Foundation Server 2010 and this Scrum methodology are really great, &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic; font-weight: bold;"&gt;but it&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic; font-weight: bold; vertical-align: super;"&gt;(*)&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt; can only work on small projects !&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 7.68pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic; font-weight: bold;"&gt;Our project is different&lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt;, and &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt;our team / project is too big and critical to &lt;/span&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt;apply this. »&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Franklin Gothic Book'; font-size: large; text-transform: none;"&gt;This presentation is about showing that one of the biggest companies such as Microsoft can rely on TFS 2010 and Agile.&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #4e3b30; font-family: 'Franklin Gothic Medium'; font-variant: normal; text-transform: uppercase; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span style="color: black; font-family: 'Franklin Gothic Book'; font-style: italic;"&gt;(*) The sticky notes on the big board, the detailing of the User story as we go, the Agile planning&amp;nbsp; and estimating, the self-organizing team, …&lt;/span&gt;&lt;/div&gt;&lt;div style="direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Franklin Gothic Book';"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Franklin Gothic Book';"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div id="__ss_7153406" style="width: 425px;"&gt;&lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a href="http://www.slideshare.net/thavo001/tfs2010-large-projects-real-life-vincent-thavonekham-2011" title="Tfs2010 Large Projects Real Life Vincent Thavonekham 2011"&gt;Tfs2010 Large Projects Real Life Vincent Thavonekham 2011&lt;/a&gt;&lt;/strong&gt; &lt;object height="355" id="__sse7153406" width="425"&gt; &lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=tfs2010largeprojectsreallifevincentthavonekham2011-12992746621927-phpapp02&amp;stripped_title=tfs2010-large-projects-real-life-vincent-thavonekham-2011&amp;userName=thavo001" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse7153406" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=tfs2010largeprojectsreallifevincentthavonekham2011-12992746621927-phpapp02&amp;stripped_title=tfs2010-large-projects-real-life-vincent-thavonekham-2011&amp;userName=thavo001" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt; &lt;/object&gt; &lt;br /&gt;&lt;div style="padding: 5px 0 12px;"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/thavo001"&gt;thavo001&lt;/a&gt; &lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="direction: ltr; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Franklin Gothic Book';"&gt;&lt;i&gt;Sample :&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="direction: ltr; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; text-align: left; text-indent: 0in; unicode-bidi: embed; word-break: normal;"&gt;&lt;div style="text-align: center;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span style="color: black; font-family: 'Franklin Gothic Book'; font-size: 14pt; font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;"&gt;&lt;a href="https://lh4.googleusercontent.com/-vN-UJ2mlFgQ/TXNNQAyINnI/AAAAAAAACQA/jtO-KaZuSec/s1600/1+4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="318" l6="true" src="https://lh4.googleusercontent.com/-vN-UJ2mlFgQ/TXNNQAyINnI/AAAAAAAACQA/jtO-KaZuSec/s400/1+4.png" style="cursor: move;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh3.googleusercontent.com/-s9e7IKckLSU/TXAwZtj07hI/AAAAAAAACPs/wX4m18SIhEc/s1600/5+8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="315" src="https://lh3.googleusercontent.com/-s9e7IKckLSU/TXAwZtj07hI/AAAAAAAACPs/wX4m18SIhEc/s400/5+8.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-1778474511293619944?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/1778474511293619944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/03/tfs-2010-large-projects-in-real-life.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1778474511293619944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1778474511293619944'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/03/tfs-2010-large-projects-in-real-life.html' title='TFS 2010 Large projects in real life'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh4.googleusercontent.com/-vN-UJ2mlFgQ/TXNNQAyINnI/AAAAAAAACQA/jtO-KaZuSec/s72-c/1+4.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-540320213665633787</id><published>2011-02-22T00:59:00.002+01:00</published><updated>2011-02-22T11:36:00.819+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Branching'/><title type='text'>Why it is a bad idea to Rename / Move your TFS Branches</title><content type='html'>If you want to rename and move your TFS Branches... don't !!&lt;br /&gt;&lt;br /&gt;Unless this is really necessary to clean up a bit, or to comply to another "Branching and Merging" scenario. For instance, you should carefully chose the perfect moment to rename and move the Branches, so that you don't "lose" your changesets.&lt;br /&gt;&lt;br /&gt;For instance, once moved and renamed, tracking a changeset is a real&amp;nbsp;challenge&amp;nbsp;in your Branching&amp;nbsp;hierarchy view, particularly if Microsoft does not provide any legend on the roles of the various arrows.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-7gvvzAOjby8/TWL5ytCr62I/AAAAAAAACPc/2xSL_qsIFNo/s1600/BranchinAndMerging.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="115" src="http://1.bp.blogspot.com/-7gvvzAOjby8/TWL5ytCr62I/AAAAAAAACPc/2xSL_qsIFNo/s400/BranchinAndMerging.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-oiZ4kQwmLR0/TWORVo3adyI/AAAAAAAACPk/ms7jFSvmyMI/s1600/Vincent_THAVONEKHAM_TFS.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="302" src="http://3.bp.blogspot.com/-oiZ4kQwmLR0/TWORVo3adyI/AAAAAAAACPk/ms7jFSvmyMI/s320/Vincent_THAVONEKHAM_TFS.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;This is only an example, some other graphics contains hatched boxes... and you have to spend some time asking around who did what, to understand what's going on.&lt;br /&gt;However, the "Time Tracking" functionnality can give you a better vision.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now you've been warned !&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-540320213665633787?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/540320213665633787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/02/why-it-is-bad-idea-to-rename-move-your.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/540320213665633787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/540320213665633787'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/02/why-it-is-bad-idea-to-rename-move-your.html' title='Why it is a bad idea to Rename / Move your TFS Branches'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-7gvvzAOjby8/TWL5ytCr62I/AAAAAAAACPc/2xSL_qsIFNo/s72-c/BranchinAndMerging.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7628870299409558139</id><published>2011-02-17T00:12:00.005+01:00</published><updated>2011-07-21T18:15:24.112+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='BI'/><title type='text'>Is TFS 2010 cube scary ? Use VS2008 for reverse engineering !</title><content type='html'>What is this ?&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Mt2Cth1DPqA/TVxSIPC4DnI/AAAAAAAACO8/y4l_FDkOOhI/s800/Analysis_Thavonekham_TFS.png%20" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="241" src="http://1.bp.blogspot.com/-Mt2Cth1DPqA/TVxSIPC4DnI/AAAAAAAACO8/y4l_FDkOOhI/s400/Analysis_Thavonekham_TFS.png%20" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;an electronic printed circuit board like the on below ?&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" height="280" src="http://1.bp.blogspot.com/-ScZ2eiLbYpU/TVxTh5NcPaI/AAAAAAAACPA/a7HoCqreIkE/s400/CI.jpg" width="400" /&gt;&lt;/div&gt;&lt;br /&gt;Well no, that's "just" the reverse ingeneering of the TFS&amp;nbsp;Analysis Services Database :&lt;br /&gt;&lt;br /&gt;&lt;i&gt;File &amp;gt; New Project &amp;gt; BI Project &amp;gt; Import Analysis Services Database&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Once done, you'll have access to the 44 tables and their relations on one side (left), and the list of all available BI dimensions on the right hand side.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-G6zMCgDQPOM/TVxVxBtwRsI/AAAAAAAACPI/ZR6_KGTiuaA/s640/TFS_Cube_Structure.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="193" src="http://2.bp.blogspot.com/-G6zMCgDQPOM/TVxVxBtwRsI/AAAAAAAACPI/ZR6_KGTiuaA/s320/TFS_Cube_Structure.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;You can go deeper and check the details of the cube's structure :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-iJY3ulBs73s/TVxVx_HegvI/AAAAAAAACPM/vTazga1BaYo/s640/TFS_Dimension_Usage.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="241" src="http://2.bp.blogspot.com/-iJY3ulBs73s/TVxVx_HegvI/AAAAAAAACPM/vTazga1BaYo/s400/TFS_Dimension_Usage.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-_1p8IcLxnYA/TVxXuuJ618I/AAAAAAAACPQ/Mj3Trh7VGpw/s1600/TFS_Dimension_Usage.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="193" src="http://2.bp.blogspot.com/-_1p8IcLxnYA/TVxXuuJ618I/AAAAAAAACPQ/Mj3Trh7VGpw/s320/TFS_Dimension_Usage.png" width="320" /&gt;&lt;/a&gt;Or with this one window "Dimension Usage" to display on which &lt;b&gt;Dimension &lt;/b&gt;you can display a relevant &lt;b&gt;Mesure&lt;/b&gt;.&amp;nbsp;For instance, below a relation exist between the&amp;nbsp;&lt;b&gt;Dimension&lt;/b&gt; 'Build' the &amp;nbsp;&lt;b&gt;mesure &lt;/b&gt;'Code Coverage'. As a result, you can answer the question : "what percentage of CodeCoverage do I have for on various Builds ?". You can add other relations BUT this is really dangerous in terms of performance, unless you are an expert in BI, otherwise this is not recommanded at all.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-aHQzSBXEOw8/TVxVwNzniaI/AAAAAAAACPE/Lduj7t_7Hdg/s1600/TFS_Cube_Calculations.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="193" src="http://1.bp.blogspot.com/-aHQzSBXEOw8/TVxVwNzniaI/AAAAAAAACPE/Lduj7t_7Hdg/s320/TFS_Cube_Calculations.png" style="cursor: move;" width="320" /&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/-_1p8IcLxnYA/TVxXuuJ618I/AAAAAAAACPQ/Mj3Trh7VGpw/s1600/TFS_Dimension_Usage.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;You'll also be able to write your own calculations, if you want more KPI indicators on the health of your projects.&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;For exemple, you can use the Reports (Reporting Services) or EXCEL within your Team Process Teamplate you query the information, or create your own EXCEL 2007+ reports based on PivotTable :&lt;br /&gt;&lt;br /&gt;Data &amp;gt; From Other Sources &amp;gt; enter 'Localhost' or the name of your TFS Server &amp;gt; Choose the database 'Tfs_Analysis' and the Perspective :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;For instance, we are going to report on how long and how many errors per Build :&lt;br /&gt;The Sigma icon represents the values that are to be aggregated (=&amp;nbsp;&lt;b&gt;Compile Errors&lt;/b&gt; and &lt;b&gt;Build Duration&lt;/b&gt;), and the other icon represents the axis on which to report (=&lt;b&gt;Build Name&lt;/b&gt;)&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-xuCoS90QAqA/TVxdi2G-fLI/AAAAAAAACPU/cFaYcQI1tgQ/TFS_Choose_CubePerspective.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="396" src="http://4.bp.blogspot.com/-xuCoS90QAqA/TVxdi2G-fLI/AAAAAAAACPU/cFaYcQI1tgQ/TFS_Choose_CubePerspective.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-6rDFLMRBC1g/TVxfpmoJacI/AAAAAAAACPY/RO96TqPIb_c/s1600/Excel2007_PivotTable_TFS.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://2.bp.blogspot.com/-6rDFLMRBC1g/TVxfpmoJacI/AAAAAAAACPY/RO96TqPIb_c/s400/Excel2007_PivotTable_TFS.png" width="353" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7628870299409558139?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7628870299409558139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/02/is-tfs-2010-cube-scary-use-vs2008-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7628870299409558139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7628870299409558139'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/02/is-tfs-2010-cube-scary-use-vs2008-for.html' title='Is TFS 2010 cube scary ? Use VS2008 for reverse engineering !'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-Mt2Cth1DPqA/TVxSIPC4DnI/AAAAAAAACO8/y4l_FDkOOhI/s72-c/Analysis_Thavonekham_TFS.png%20' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-5166638650227881125</id><published>2011-02-12T00:28:00.005+01:00</published><updated>2011-02-12T00:39:47.540+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AZURE'/><title type='text'>Don't forget to refuse the automatic azure renewal</title><content type='html'>&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/-ymNsuec2MHQ/TVXC9DrFjPI/AAAAAAAACOM/T5xzysW4f08/s1600/Accept_Refuse_renouvellement_Auto_AZURE.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/-kkTQqWVvr5g/TVXFtPbtwcI/AAAAAAAACOU/HUfxpMu90-k/s1600/Microsoft-Windows-Azure.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-kkTQqWVvr5g/TVXFtPbtwcI/AAAAAAAACOU/HUfxpMu90-k/s1600/Microsoft-Windows-Azure.jpg" /&gt;&lt;/a&gt;If you have an MSDN Premium or Ultimate, you can activate your AZURE trial account for free (warning : but still have to provide your credit card number).&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/-ymNsuec2MHQ/TVXC9DrFjPI/AAAAAAAACOM/T5xzysW4f08/s1600/Accept_Refuse_renouvellement_Auto_AZURE.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="177" src="http://2.bp.blogspot.com/-ymNsuec2MHQ/TVXC9DrFjPI/AAAAAAAACOM/T5xzysW4f08/s400/Accept_Refuse_renouvellement_Auto_AZURE.png" width="400" /&gt;&lt;/a&gt;Once done,&amp;nbsp;don't forget to refuse the automatic azure renewal, in the little option below (in French&amp;nbsp;"&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: x-small; line-height: 15px;"&gt;&lt;em style="font-style: normal; font-weight: bold;"&gt;Refuser&lt;/em&gt;&amp;nbsp;renouv.&amp;nbsp;&lt;em style="font-style: normal; font-weight: bold;"&gt;auto&lt;/em&gt;&amp;nbsp;&lt;/span&gt;" =&amp;gt; Then, it'll become "&lt;b&gt;Accepter &lt;/b&gt;renouv. &lt;b&gt;auto&lt;/b&gt;.").&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;Else, your credit card will be charged at the end of the 8 months trial.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-5166638650227881125?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/5166638650227881125/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/02/dont-forget-to-refuse-automatic-azure.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5166638650227881125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5166638650227881125'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/02/dont-forget-to-refuse-automatic-azure.html' title='Don&apos;t forget to refuse the automatic azure renewal'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-kkTQqWVvr5g/TVXFtPbtwcI/AAAAAAAACOU/HUfxpMu90-k/s72-c/Microsoft-Windows-Azure.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-6191409335609090906</id><published>2011-02-09T23:27:00.002+01:00</published><updated>2011-02-09T23:44:26.057+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='PMBOK'/><category scheme='http://www.blogger.com/atom/ns#' term='PRINCE2'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><category scheme='http://www.blogger.com/atom/ns#' term='PMI'/><title type='text'>Project management frameworks : PMBOK/PMI vs PRINCE2</title><content type='html'>PRINCE2&lt;span style="font-family: Calibri, sans-serif; font-size: 16pt; line-height: 24px;"&gt;®&lt;/span&gt;&amp;nbsp;(PRojects IN Controlled Environments) is accredited by the APM Group, whereas&amp;nbsp;PMBOK&lt;span class="Apple-style-span" style="font-family: Calibri, sans-serif; font-size: 21px; line-height: 24px;"&gt;®&lt;/span&gt;&amp;nbsp;(Project Management Body of Knowledge) is internationnaly maintained&amp;nbsp;by the US PMI (Project Management Institute).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TVMKr9VSfTI/AAAAAAAACN4/ARF_-2NpCRw/s1600/PMILogo.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="121" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TVMKr9VSfTI/AAAAAAAACN4/ARF_-2NpCRw/s200/PMILogo.jpg" width="200" /&gt;&lt;/a&gt;&lt;img border="0" height="116" src="http://2.bp.blogspot.com/_Zz-6nUhQKto/TVMGRxZexmI/AAAAAAAACNs/3LF_E7PhX7A/s200/p2logo.jpg" width="200" /&gt;&amp;nbsp;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Trying to compare PMBOK&lt;span class="Apple-style-span" style="font-family: Calibri, sans-serif; font-size: 21px; line-height: 24px;"&gt;®&lt;/span&gt;&amp;nbsp;and PRINCE2&lt;span class="Apple-style-span" style="font-family: Calibri, sans-serif; font-size: 21px; line-height: 24px;"&gt;®&lt;/span&gt;&amp;nbsp;could well lead to an endless debate just like comparing Java vs. VB.Net. However, I was wondering what was the main differences between those 2 standard and popular project management frameworks.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Which one is better? Are they complementary, competitors or Totally different ??&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;I already know a fair bit about PRINCE2, since I am certified on the PRINCE2 Foundation (i.e. I am not a practitionner, but know the basis to start implementing it).&lt;br /&gt;.&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Here are my findings in a nutshell.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;First of all, lets start with a comparison on its adoption throughout the world over the years :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TVLhh64TM9I/AAAAAAAACNo/76lqt7KcoSQ/s1600/PMI_vs_PRINCE2_World.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="256" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TVLhh64TM9I/AAAAAAAACNo/76lqt7KcoSQ/s400/PMI_vs_PRINCE2_World.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;(I found the number of PM certified in PRINCE2 quite enormous, but this is from the reference below&amp;nbsp;&lt;a href="http://www.project-management.ch/portail/downloads/PRINCE2%20Presentation%20-%20SMP%20Workshop%20Oct08%20FR.pdf"&gt;http://www.project-management.ch&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;PMBOK is more a framework of Best Practices and processes that you could pick from in any order. The technics to address the problems you can come accross within a project management lifecycle is presented. As a restult, it gives you all the aspects of project managements,&lt;/li&gt;&lt;li&gt;PRINCE2 is an entire process composed of sub-processes that &amp;nbsp;you have to follow "from the book" in a certain order.&amp;nbsp;PRINCE2 recommands you tools to solve your problems, without focusing or naming the particular tool (we are free to choose EXCEL, paper, ...). Because it is not particularly focused on the technics you are using to follow those detailed workflows (except 1 ou 2 recommandations), it is not meant to be used on its own.&lt;br /&gt;In the middle of the graphic below [8 processes, 8 components, 3 techniques], this is only on overview of the top level workflow. The sub-processes are quite numerous at first sight, and I will not detail them.&lt;br /&gt;Few drawbacks among which we cannot refer to PRINCE2 as an agile process, and it is manly focussed on creating lots of versionned documents. Find more details here (&lt;a href="http://www.projectmanagement.net.au/prince2_weaknesses"&gt;http://www.projectmanagement.net.au/prince2_weaknesses&lt;/a&gt;).&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Zz-6nUhQKto/TVMPVy8PbPI/AAAAAAAACN8/MG5K-2eGHuM/s1600/prince2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://2.bp.blogspot.com/_Zz-6nUhQKto/TVMPVy8PbPI/AAAAAAAACN8/MG5K-2eGHuM/s400/prince2.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;My 2 cents conclusion&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Those 2 frameworks are complementary.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;PMBOK is an international framework that gives you a whole set of Best Practices to face the various problems we could encountered within a project.&lt;/li&gt;&lt;li&gt;Even if PRINCE2 has more certified PM worldwide, it is mostly well known in UK. It is a strict set of workflows that you have to follow, that covers the project lifecycle. This is something that could weel fit within Visual Studio Team Foundation Server, provided we create a custom Process Template,&lt;/li&gt;&lt;li&gt;Accroding to my readings it would be best starting with PMBOK to have a large with of the Best Practices to give you strong PM bases. Then, depending on the configuration of a project (fixed price contract, agile, product owner not present, ...) you could pickup a framework such as PRINCE2, Scrum, or any other ones, and even mix / blend them.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;References :&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.pm-partners.com.au/files/PMPartner_%20Session_%20Handout_PMBOK_PRINCE2V2.pdf"&gt;http://www.pm-partners.com.au/files/PMPartner_%20Session_%20Handout_PMBOK_PRINCE2V2.pdf&lt;/a&gt;&amp;nbsp;or here&amp;nbsp;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B04DF7GsD2hMY2QzYjI2YWEtMmUzOC00NTRmLWI3NTctOTMyNmI1OTAzYWY2&amp;amp;hl=fr"&gt;https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B04DF7GsD2hMY2QzYjI2YWEtMmUzOC00NTRmLWI3NTctOTMyNmI1OTAzYWY2&amp;amp;hl=fr&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.project-management.ch/portail/downloads/PRINCE2%20Presentation%20-%20SMP%20Workshop%20Oct08%20FR.pdf"&gt;http://www.project-management.ch/portail/downloads/PRINCE2%20Presentation%20-%20SMP%20Workshop%20Oct08%20FR.pdf&lt;/a&gt;&amp;nbsp;or here&amp;nbsp;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B04DF7GsD2hMOWZiYmZhNWYtMzgwMS00Yjc2LWEwNzUtOTYzMDc0MzYwNzE2&amp;amp;hl=fr"&gt;https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B04DF7GsD2hMOWZiYmZhNWYtMzgwMS00Yjc2LWEwNzUtOTYzMDc0MzYwNzE2&amp;amp;hl=fr&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.projectmanagement.net.au/prince2"&gt;http://www.projectmanagement.net.au/prince2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.differencebetween.net/business/difference-between-pmi-and-prince2/"&gt;http://www.differencebetween.net/business/difference-between-pmi-and-prince2/&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-6191409335609090906?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/6191409335609090906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/02/project-management-frameworks-pmbokpmi.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6191409335609090906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6191409335609090906'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/02/project-management-frameworks-pmbokpmi.html' title='Project management frameworks : PMBOK/PMI vs PRINCE2'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TVMKr9VSfTI/AAAAAAAACN4/ARF_-2NpCRw/s72-c/PMILogo.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-2766306337932507656</id><published>2011-02-03T23:34:00.004+01:00</published><updated>2011-02-03T23:44:18.057+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CodeMetrics'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>Increase your ALM's quality with this Free VS PowerTool (CodeMetrics)</title><content type='html'>Increase your ALM's quality with this Free VS PowerTool (CodeMetrics) :&lt;br /&gt;"&lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=edd1dfb0-b9fe-4e90-b6a6-5ed6f6f6e615"&gt;Visual Studio Code Metrics PowerTool 10.0&lt;/a&gt;" is just too excellent. With this new PowerTool, you can monitor&amp;nbsp;Code Metric directly from within your automated build.&lt;br /&gt;&lt;br /&gt;I know ... THE BEST and exhaustive tool around (and my&amp;nbsp;favorite&amp;nbsp;one) is &lt;a href="http://www.ndepend.com/"&gt;NDepend&lt;/a&gt;. Obviously, since this PowerTool is&amp;nbsp;provided free of charge, it has a millions of times less&amp;nbsp;functionalities than NDepend, but still good if you have nothing else !&lt;br /&gt;&lt;br /&gt;&lt;img border="0" height="116" src="http://geekswithblogs.net/images/geekswithblogs_net/jakob/Windows-Live-Writer/Running-Code-Metrics-in-TFS-2010-Build_14A3A/image_8.png" width="400" /&gt;&lt;br /&gt;Check this out here :&lt;br /&gt;&lt;br /&gt;&lt;a class="singleposttitle" href="http://geekswithblogs.net/jakob/archive/2011/01/30/integrating-code-metrics-in-tfs-2010-build.aspx" id="viewpost_ascx_TitleUrl" style="border-bottom-color: rgb(89, 89, 89); border-bottom-style: dotted; border-bottom-width: 1px; color: #595959; text-decoration: none;" title="Title of this entry."&gt;Integrating Code Metrics in TFS 2010 Build&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://geekswithblogs.net/jakob/archive/2011/01/30/integrating-code-metrics-in-tfs-2010-build.aspx"&gt;http://geekswithblogs.net/jakob/archive/2011/01/30/integrating-code-metrics-in-tfs-2010-build.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Once the PowerTool installed you'll have to create your own custom activity and insert it into your Workflow build process.&lt;br /&gt;&lt;br /&gt;I wish such tools will appear more and more, and be integrated within TFS by default... &lt;a href="http://blogs.msdn.com/b/bharry/"&gt;Brian Harry&lt;/a&gt; please ;-)&lt;br /&gt;&lt;br /&gt;Here is the original Microsoft post :&amp;nbsp;&lt;a href="http://blogs.msdn.com/b/camerons/archive/2011/01/28/code-metrics-from-the-command-line.aspx"&gt;http://blogs.msdn.com/b/camerons/archive/2011/01/28/code-metrics-from-the-command-line.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-2766306337932507656?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/2766306337932507656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/02/integrating-code-metrics-in-tfs-2010.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2766306337932507656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2766306337932507656'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/02/integrating-code-metrics-in-tfs-2010.html' title='Increase your ALM&apos;s quality with this Free VS PowerTool (CodeMetrics)'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-630787271229266154</id><published>2011-01-06T21:44:00.003+01:00</published><updated>2011-02-12T18:49:43.979+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WIX'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>WIX and TeamBuild 2010 : Error executing ICE action 'ICE01'</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://blogs.codes-sources.com/blogs/playtime/WindowsLiveWriter/FaireunpackagedinstallationfacilementWix_130B0/clip_image001_3.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://blogs.codes-sources.com/blogs/playtime/WindowsLiveWriter/FaireunpackagedinstallationfacilementWix_130B0/clip_image001_3.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;When using WIX to generate an MSI within a Team Build 2010, I uncountered the following error (exactly when calling Light, because with Candle.exe works fine).&lt;br /&gt;When using a batch to do exactly the same thing manually, this works !&lt;br /&gt;&lt;br /&gt;In order to get the error within the Batch file, just use the command line&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;light.exe [add_your_options_here] &amp;gt; myLogFile.txt&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;light.exe : error LGHT0217 : Error executing ICE action 'ICE01'. The most common cause of this kind of ICE failure is an incorrectly registered scripting engine. See &lt;a href="http://wix.sourceforge.net/faq.html#Error217"&gt;http://wix.sourceforge.net/faq.html#Error217&lt;/a&gt; for details and how to solve this problem. The following string format was not expected by the external UI message logger: "The Windows Installer Service could not be accessed. This can occur if the Windows Installer is not correctly installed. Contact your support personnel for assistance."&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"In WiX v3, Light automatically runs validation-- Windows Installer Internal Consistency Evaluators (ICEs) --after every successful build". However, this generates a problem when called from within the Team Build, and this problems often often occurs and we have to perform some workarounds :&lt;br /&gt;&amp;nbsp;- e.g. disable the validation so that VBScript is not called any longer,&lt;br /&gt;&amp;nbsp;- or change the computer's account's security,&lt;br /&gt;&amp;nbsp;- or Try to use Votive, and disable the checking option, ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #f9cb9c;"&gt;&lt;b&gt;SOLVED : Simply just add the command line option when calling Light to disable the&amp;nbsp;VBScript&amp;nbsp;validation (that generated a security problem when called by TeamBuild). Then , the magic happened and your MSI could apprear, for each Build, on your Drop Folder.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666;"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;Here are the Blogs that helped me investigate on this problem :&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666;"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666;"&gt;==============================================&lt;/span&gt;&lt;br /&gt;&lt;a href="http://biztalkdeployment.codeplex.com/Thread/View.aspx?ThreadId=218533"&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;http://biztalkdeployment.codeplex.com/Thread/View.aspx?ThreadId=218533&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;Date: 2010-08-25 15:27:04 UTC&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;Read the Thread. I found the Build Service account in the IIS_IUSR. Removed&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;Build Service Account from IIS_USR and added to Local Administrator.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;Recycled the Visual Studio Team Build Service. (update the primary windows&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;token)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;It worked. Like the thread author I am puzzled as to why?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;==============================================&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/11/14/wix-projects-vs-tfs-2010-team-build.aspx"&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/11/14/wix-projects-vs-tfs-2010-team-build.aspx&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;After a night's sleep, I played around some more and stumbled into a work around. In order for the .WiXProj files to compile, the account running the build controller/agent must be in the local machine's administrator group. I found that any domain or computer account works fine for the builds. You can also use NT AUTHORITY\NETWORK SERVICE, but you have to add it to local machine administrator group. Since you can't do that through the computer manager, he's the command line way to make the addition:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;net localgroup "Administrators" "NT Authority\Network Service" /add&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;==============================================&lt;/span&gt;&lt;br /&gt;&lt;a href="http://biztalkdeployment.codeplex.com/Thread/View.aspx?ThreadId=218533"&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;http://biztalkdeployment.codeplex.com/Thread/View.aspx?ThreadId=218533&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;Jul 7 2010 at 11:06 PM Edited Jul 7 2010 at 11:08 PM&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;I found your exact problem in a two-year-old mail thread: http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg18888.html. They don't seem to have found much of a resolution other than messing with group membership and permissions on the account used by Team Build. Are you saying that the MSI build works without error on the build machine when you log in and run it yourself?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #666666; font-family: 'Courier New', Courier, monospace; font-size: x-small;"&gt;You can always disable light.exe's MSI validation since the MSI is most likely being generated correctly. Unfortunately that will require changing BizTalkDeploymentFramework.WiXSetup.targets in \Program Files\MSBuild\DeploymentFrameworkForBizTalk\5.0. I believe (but am not 100% sure) that the additional command line switch that you would need is -sval.&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-630787271229266154?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/630787271229266154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/01/wix-and-teambuild-2010-error-executing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/630787271229266154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/630787271229266154'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/01/wix-and-teambuild-2010-error-executing.html' title='WIX and TeamBuild 2010 : Error executing ICE action &apos;ICE01&apos;'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7228551586122701236</id><published>2011-01-03T22:20:00.001+01:00</published><updated>2011-01-03T22:58:12.883+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><title type='text'>Visual Studio ALM Ranger Projects Scrum Guide (TFS 2008)</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px;"&gt;For the fun, here is&amp;nbsp;&lt;b&gt;Visual Studio ALM Ranger Projects Scrum Guide&lt;/b&gt;.... Personally, I found it&amp;nbsp;interesting&amp;nbsp;but REALLY scary at first sight, despite the fact that I have been using TFS for the last 3 years, with Agile, and recently Scrum for about a year !!&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px;"&gt;So a good advice, if you don't know Scrum, don't look at this diagram, else you'll be scared scared to death for the rest of your life, and fly away as soon as you hear "Scrum", &amp;nbsp;"Agile" or TFS !&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TRtRDpGxMDI/AAAAAAAACNE/R3pF5bOw374/s1600/Visual+Studio+ALM+Ranger+Projects+Scrum+Guide.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="301" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TRtRDpGxMDI/AAAAAAAACNE/R3pF5bOw374/s400/Visual+Studio+ALM+Ranger+Projects+Scrum+Guide.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7228551586122701236?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7228551586122701236/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2011/01/visual-studio-alm-ranger-projects-scrum.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7228551586122701236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7228551586122701236'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2011/01/visual-studio-alm-ranger-projects-scrum.html' title='Visual Studio ALM Ranger Projects Scrum Guide (TFS 2008)'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TRtRDpGxMDI/AAAAAAAACNE/R3pF5bOw374/s72-c/Visual+Studio+ALM+Ranger+Projects+Scrum+Guide.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-2246736125360065213</id><published>2010-12-29T16:18:00.001+01:00</published><updated>2010-12-29T16:22:12.555+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>Play with TFS 2010 and VS 2010 for free ??</title><content type='html'>Microsoft has released the new version of a virtual machine with a entire ALM environment (TFS 2010 + VS 2010 Ultimate + tutorials), in trial version until&amp;nbsp;June 1, 2011.&lt;br /&gt;You'll be&amp;nbsp;able to really learn and experiment advanced&amp;nbsp;functionalities&lt;br /&gt;&lt;a href="http://blogs.msdn.com/blogfiles/briankel/WindowsLiveWriter/NowAvailableVisualStudio2010ReleaseCandi_123B9/clip_image002_2.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="150" src="http://blogs.msdn.com/blogfiles/briankel/WindowsLiveWriter/NowAvailableVisualStudio2010ReleaseCandi_123B9/clip_image002_2.jpg" width="200" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;on the Tailspin Toys Application (Build definition, Unit Test, and much more...),&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;or create your own ones, with reports, new types of WorkItems, ...&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;It's here :&amp;nbsp;&lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5e13b15a-fd74-4cd7-b53e-bdf9456855bd&amp;amp;displaylang=en"&gt;Microsoft® Visual Studio® 2010 and Team Foundation Server® 2010 RTM virtual machine for Microsoft® Virtual PC 2007 SP1&amp;nbsp;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;How to use it (and links to download other types of VPC, such as Hyper-V):&lt;br /&gt;&lt;a href="http://blogs.msdn.com/b/briankel/archive/2010/06/25/now-available-visual-studio-2010-rtm-virtual-machine-with-sample-data-and-hands-on-labs.aspx"&gt;http://blogs.msdn.com/b/briankel/archive/2010/06/25/now-available-visual-studio-2010-rtm-virtual-machine-with-sample-data-and-hands-on-labs.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;By the way, also try the "TFS Integration Platform" from CodePlex to extend the power of TFS outside its&amp;nbsp;traditional&amp;nbsp;usage.&lt;br /&gt;&lt;br /&gt;Happy testing... and good luck downloading the 9 Gb !&lt;br /&gt;&lt;br /&gt;PS : And for the fun, here is &lt;b&gt;Visual Studio ALM Ranger Projects Scrum Guide&lt;/b&gt;.... Personally, I found it&amp;nbsp;interesting&amp;nbsp;but REALLY scary at first sight, despite the fact that I have been using TFS for the last 3 years, with Agile, and recently Scrum for about a year !!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TRtRDpGxMDI/AAAAAAAACNE/R3pF5bOw374/s1600/Visual+Studio+ALM+Ranger+Projects+Scrum+Guide.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="301" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TRtRDpGxMDI/AAAAAAAACNE/R3pF5bOw374/s400/Visual+Studio+ALM+Ranger+Projects+Scrum+Guide.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-2246736125360065213?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/2246736125360065213/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/play-with-tfs-2010-and-vs-2010-for-free.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2246736125360065213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2246736125360065213'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/play-with-tfs-2010-and-vs-2010-for-free.html' title='Play with TFS 2010 and VS 2010 for free ??'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TRtRDpGxMDI/AAAAAAAACNE/R3pF5bOw374/s72-c/Visual+Studio+ALM+Ranger+Projects+Scrum+Guide.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7902949441702938035</id><published>2010-12-28T00:40:00.002+01:00</published><updated>2010-12-28T01:56:06.272+01:00</updated><title type='text'>What about the TS exam-70-512 : Visual Studio Team Foundation Server 2010, Administration</title><content type='html'>Wanna get a TS certification with TFS 2010 ??&lt;br /&gt;You can go for the exam-70-512 "Visual Studio Team Foundation Server 2010, Administration".&lt;br /&gt;&lt;br /&gt;Here is a official information on Microsoft Web site :&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-512&amp;amp;Locale=en-us#tab2"&gt;http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-512&amp;amp;Locale=en-us#tab2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;In order to study the materials for this exam, Latek did a great job&lt;/b&gt; in helping us finding out what MSDN information to read:&lt;br /&gt;&lt;a href="http://mkdot.net/blogs/latek/archive/2010/08/29/exam-70-512-ts-visual-studio-team-foundation-server-2010-administration-preparation-guide-links-pointers.aspx"&gt;http://mkdot.net/blogs/latek/archive/2010/08/29/exam-70-512-ts-visual-studio-team-foundation-server-2010-administration-preparation-guide-links-pointers.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I just wish this was a Wiki so that we could add some more links !&lt;br /&gt;&lt;br /&gt;Here is a training course for the certification : &lt;a href="http://www.enhancealm.com.au/Portals/0/Outlines/TFS2010ConfigAdmin.pdf"&gt;http://www.enhancealm.com.au/Portals/0/Outlines/TFS2010ConfigAdmin.pdf&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.dunntraining.com/training/Syllabus/accentient/adv2010.pdf"&gt;http://www.dunntraining.com/training/Syllabus/accentient/adv2010.pdf&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.pdf-freedownload.com/"&gt;http://www.pdf-freedownload.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Good luck !&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7902949441702938035?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7902949441702938035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/what-about-ts-exam-70-512-visual-studio.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7902949441702938035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7902949441702938035'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/what-about-ts-exam-70-512-visual-studio.html' title='What about the TS exam-70-512 : Visual Studio Team Foundation Server 2010, Administration'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-8660633128089839811</id><published>2010-12-21T17:26:00.004+01:00</published><updated>2011-03-04T01:02:54.860+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><title type='text'>TFS 2010 is great as an ALM tool, what next ??</title><content type='html'>&lt;b&gt;TFS 2010 is already a great tool for doing an easy ALM with ONLY one tool, and works great with Agile Scrum.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;So what else could Microsoft will add in the next versions ?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;It's gonna be much MORE AGILE !!!&lt;/b&gt;&lt;br /&gt;With better communication between the Team and the Stakeholder, as a result (and I added some of my &lt;u&gt;guesses and hopes)&lt;/u&gt; :&lt;br /&gt;&lt;br /&gt;. more visual communication tools (Powerpoint integration, ...),&lt;br /&gt;. dynamic charts and cinematic between pages (such as Sketchflow in Microsoft Expression Blend 4),&lt;br /&gt;. Release Management (&amp;gt; 2011), &lt;br /&gt;. THE cloud !!! for continious delivery,&lt;br /&gt;. Portfollio for helping the Business to prioritized,&lt;br /&gt;. Process management : Moving from Agile to CMMI, &lt;br /&gt;. Value for existing assets (eg. architectural),&lt;br /&gt;. Ops integration &lt;br /&gt;&lt;br /&gt;A survey worldwide shows :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The top 2 tools used to archive : VSS &amp;gt; Subversion (TFS comes in the 3rd rank)&lt;/li&gt;&lt;li&gt;The premier ALM Tools : Microsoft &amp;gt; IBM&lt;/li&gt;&lt;/ul&gt;Source of those information : Brian Harry (creator of VSS and Microsoft Visual Studio Technical Fellow) in the &lt;a href="http://www.alm-summit.com/almsummit/home.aspx"&gt;ALM summit 2010.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Brian Harry reminded us an interresting information : Microsoft is "dog fooding" TFS 2010 within a large development team&lt;i&gt; "The Microsoft Developer Division has 3,500 developpers users". &lt;/i&gt;&lt;a href="http://www.craigbailey.net/tfs-basic-2010-team-foundation-server/"&gt;Another source&lt;/a&gt; tells us that this represents terabytes of data.&lt;br /&gt;&lt;br /&gt;Let's hope the future will start ASAP !!!&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;PS : with still some missing features, so don't forget to check updates and my other post &lt;a href="http://memoprojects.blogspot.com/2010/12/alm-tfs-2010-vs-2010-where-to-start.html"&gt;http://memoprojects.blogspot.com/2010/12/alm-tfs-2010-vs-2010-where-to-start.html&lt;/a&gt;.&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-8660633128089839811?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/8660633128089839811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/tfs-2010-is-great-as-alm-tool-what-next.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/8660633128089839811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/8660633128089839811'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/tfs-2010-is-great-as-alm-tool-what-next.html' title='TFS 2010 is great as an ALM tool, what next ??'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-689141387497265027</id><published>2010-12-19T13:59:00.002+01:00</published><updated>2011-11-07T00:53:41.250+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><title type='text'>ALM submit Redmond november 2010 (TFS, Agile, Scrum, ...)</title><content type='html'>Last month, Microsoft organized one of the best ALM event ever :&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;During 3 days great and hot topics were presented, among which we can find Team Foundation Server 2010, Visual Studio 2010, and Agile, Scrum.&lt;br /&gt;with great speakers (Ken Schwaber, Brian Harry, …).&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;The Web casts and more info are available here :&lt;br /&gt;&lt;a href="http://www.alm-summit.com/almsummit/schedule.aspx"&gt;http://www.alm-summit.com/almsummit/schedule.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Wishing to have this same great program organized in Europe too, 'cause many employers don't see the needs in sending people in conferences ;-)&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;1 Agile Acceleration&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Keynote - Scrum: the 3rd decade - Ken Schwaber &lt;br /&gt;Featured - The state of ALM: An industry view - David West &lt;br /&gt;Heterogeneous ALM environments - Jamie Cool &lt;br /&gt;Keynote - IT for the future - Moving into the cloud - Tony Scott &lt;br /&gt;Using failure to pave the path for success - John Szurek &lt;br /&gt;Managing Change&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Scenario-focused engineering - Drew Fletcher,&lt;/li&gt;&lt;li&gt;Chasing agility - Chris Kinsman&lt;/li&gt;&lt;li&gt;Agile transformation of a Microsoft product team - Cameron Skinner &lt;/li&gt;&lt;/ul&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;2 Collaborative Development&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Keynote - From individual to team to organization - Brian Harry &lt;br /&gt;Making Continuous Delivery a Reality from Product Backlog to Virtual Lab - Amit Chopra &lt;br /&gt;Successful software project management styles - Stephanie Cuthbertson &lt;br /&gt;Increasing Revenue Opportunities with Automated Development Tools - Karel Deman &lt;br /&gt;Platform Integration&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Extending the ALM platform - Mario Cardinal &lt;/li&gt;&lt;li&gt;Synchronizing and migrating ALM environments - Grant Holliday &lt;/li&gt;&lt;li&gt;Values: Exploring the Why Behind What We Do - Jim Newkirk &lt;/li&gt;&lt;li&gt;The future of collaborative development - Mary Czerwinski &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;3 Engaging the Whole Team&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Keynote - The agile consensus - Sam Guckenheimer &lt;br /&gt;Requirements Management: a smooth transition - Ido Eshed &lt;br /&gt;Testing in an agile world - Vinod Malhotra &lt;br /&gt;How are they different, really? - Eric Willeke&lt;br /&gt;Professional Practices&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The Marriage of Exploratory Testing &amp;amp; Agile Development - Jon Bach &lt;/li&gt;&lt;li&gt;Professional scrum developer practices - David Starr&lt;/li&gt;&lt;li&gt;Connecting Developer Workflow: Mylyn and the Task-Focused Interface - David Green&lt;/li&gt;&lt;li&gt;ALM Summit Panel Discussion - Schwaber, Starr, Guckenheimer, Provost, Willeke &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-689141387497265027?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/689141387497265027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/alm-submit-redmond-november-2010-tfs.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/689141387497265027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/689141387497265027'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/alm-submit-redmond-november-2010-tfs.html' title='ALM submit Redmond november 2010 (TFS, Agile, Scrum, ...)'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7724185871795869884</id><published>2010-12-16T02:55:00.004+01:00</published><updated>2010-12-19T17:33:56.946+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>CMMI Case Study : What about quality with V-Cycle vs. Agile-Scrum ?? and link with the theory of evolution...</title><content type='html'>&lt;a href="http://blogs.msdn.com/b/agilefr/archive/2010/09/22/soir-233-e-de-rentr-233-e-du-french-scrum-user-group-chez-vidal.aspx"&gt;"Soirée de rentrée du SUG le 30 Septembre 2010"&lt;/a&gt; is&amp;nbsp;a meeting I attended a while ago.&lt;br /&gt;&lt;br /&gt;Since it is particularly&amp;nbsp;interesting&amp;nbsp;to show figures on how Scrum helped improving the overall quality of a product, within a CMMI context, I wanted to comment some of the major elements of the presentation concerning General Electric :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;&lt;u&gt;More Business Value delivered per release&lt;/u&gt; : twice as much between 2 major releases.&lt;/b&gt;&amp;nbsp;This is because Scrum focuses on working with priority set on high ROI features,&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;u&gt;Less days required to&amp;nbsp;delivering a Business Value unit&lt;/u&gt;&lt;/b&gt; : &lt;b&gt;divided by 2 between 2 major releases&lt;/b&gt;. This is because a good Scrum team is not scared to criticize the existing procedures and make them change for the next iteration. On the other hand, a good Scrum team will gather key data into BI tools to analyse them and find ways to optimize things, just like a scientific approach within the Mechanical Engineering industry (such as car production lines).&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;u&gt;Less defects per release&lt;/u&gt;&lt;/b&gt; : &lt;b&gt;divided by 12 in about 2 years time, and the trends shows that it tends to &amp;nbsp;zero !&lt;/b&gt;&amp;nbsp;because for a good Scrum Team, a user story can only be done and completed, with a series of strict validations. Moreover the&amp;nbsp;Continuous Integration process based on a large amount of Unit Testing and GUI testing&amp;nbsp;guaranties that we don't have any regressions.&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;u&gt;The Turn-over of the people within the team is less a problem&lt;/u&gt;&lt;/b&gt;&amp;nbsp;: This is because of the emphasis on the oral communication and due to the pair-programming to force the exchange of the information within all members of a team.&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;u&gt;No more delays for the releases&lt;/u&gt;&lt;/b&gt; : This is due to the short cycle of the iteration period, where at the end of each iteration, we MUST have a working product that could &lt;u&gt;potentially&lt;/u&gt; be shipped to production. To do so, you must have a state of the art Software Factory, with a large amount of automated tests and builds,&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span" style="background-color: #fce5cd;"&gt;&lt;b&gt;Important UPDATE:&lt;/b&gt; I forgot to mention about a major side effect presented when implementing Scrum after a V-Cycle on this project :&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #fce5cd;"&gt;The team hated those daily meetings and talking about what they did... thinking that this method was implemented to spy them. As a result, the turnover was quite important. After a while, not only people got used to it, but they realized that this entire Scrum process helped them delivering better quality product. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The slides was made public by the French Scrum User Goup&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;and can be found&amp;nbsp;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B04DF7GsD2hMYzMyZjlmMjktZThkNS00OTJkLWI2ZDgtNDE5YmIzZTAwZGUz&amp;amp;hl=fr&amp;amp;authkey=CIvK-OEI"&gt;Here&lt;/a&gt;&amp;nbsp;or here :&amp;nbsp;&lt;a href="http://www.frenchsug.org/pages/viewpage.action?pageId=2818123"&gt;http://www.frenchsug.org/pages/viewpage.action?pageId=2818123&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Another link is : "start tiny to end up huge : the art of the incremental build"&lt;br /&gt;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B04DF7GsD2hMYTllZTllOGYtZmIwYy00OTc3LWE3ZGUtMzNlZWQxYTU1Yzgz&amp;amp;authkey=CP6Q-IAK&amp;amp;hl=fr"&gt;Commencer petit pour finir grand : l'art de la construction incrémentale&lt;/a&gt; par Etienne Charignon&lt;br /&gt;&lt;br /&gt;Happy reading.&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7724185871795869884?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7724185871795869884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/cmmi-case-study-what-about-quality-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7724185871795869884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7724185871795869884'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/cmmi-case-study-what-about-quality-with.html' title='CMMI Case Study : What about quality with V-Cycle vs. Agile-Scrum ?? and link with the theory of evolution...'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-6208348904062961882</id><published>2010-12-10T12:14:00.001+01:00</published><updated>2010-12-10T13:21:49.942+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Batch'/><category scheme='http://www.blogger.com/atom/ns#' term='QTP'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='MSBuild'/><category scheme='http://www.blogger.com/atom/ns#' term='UI Tests'/><title type='text'>Yes we can ... integrate HP Quick Test Pro QTP with MSBuild ... via VBScript or VB6 !</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TQILT85IceI/AAAAAAAACM4/XLaNIXuOlsk/s1600/QTP95_Splash.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TQILT85IceI/AAAAAAAACM4/XLaNIXuOlsk/s320/QTP95_Splash.jpg" width="189" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;A big question in order to automate our nice "Software Factory" further more :&lt;br /&gt;&lt;br /&gt;&lt;b&gt;How to integrate QTP with MSBuild, hence allowing TFS 2010 to run automated tests many times a day ??&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Answer :&lt;/u&gt; We don't apparently have any "out of the box" way to do so ! But read below :&lt;br /&gt;&lt;br /&gt;I thought about running QTP in command line, and force it to generate an HTML report, which will be opened by an automated Tests to check if if's OK or not.&lt;br /&gt;&lt;br /&gt;Here are some interesting alternatives :&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1/ Using VBScript to run QTP,&amp;nbsp;&lt;/b&gt;&lt;br /&gt;July 2009 :&amp;nbsp;&lt;a href="http://qtp-automate.blogspot.com/2009/09/vbs-scripts-as-best-tools.html"&gt;http://qtp-automate.blogspot.com/2009/09/vbs-scripts-as-best-tools.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To run a batch of scripts, we have to following activities&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Launch QTP application.&lt;/li&gt;&lt;li&gt;Connect to QC and Open the test ( or from locally defined path)&lt;/li&gt;&lt;li&gt;Add/Check resources&lt;/li&gt;&lt;li&gt;Add/Check Recovery scenarios&lt;/li&gt;&lt;li&gt;Set Global Options&lt;/li&gt;&lt;li&gt;Set Test parameters&lt;/li&gt;&lt;li&gt;Set Test results options&lt;/li&gt;&lt;li&gt;Run the test&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2/ Else, get some books, for instance :&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;a href="http://www.freeads360.com/books/textbooks/ebook-for-learning-software-testing-and-qtp-hp-quick-test-professional-automation/"&gt;http://www.freeads360.com/books/textbooks/ebook-for-learning-software-testing-and-qtp-hp-quick-test-professional-automation/&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.freeads360.com/wp-content/uploads/2010/09/864227-379x500.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://www.freeads360.com/wp-content/uploads/2010/09/864227-379x500.png" width="242" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;3/ Finally, use VB6,&lt;/b&gt; but it is not detailed how on the Post below :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184;"&gt;&lt;tbody&gt;&lt;tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0;"&gt;   &lt;td style="border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-themecolor: text1; padding: 0cm 5.4pt 0cm 5.4pt; width: 460.6pt;" valign="top" width="614"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;"&gt;July 2008 :&amp;nbsp;&lt;a href="http://geekswithblogs.net/tmoore/archive/2008/07/23/123975.aspx"&gt;http://geekswithblogs.net/tmoore/archive/2008/07/23/123975.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="mso-yfti-irow: 1; mso-yfti-lastrow: yes;"&gt;   &lt;td style="border-top: none; border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; padding: 0cm 5.4pt 0cm 5.4pt; width: 460.6pt;" valign="top" width="614"&gt;&lt;div style="background: #F9F9F9; border-bottom: solid #AAAAAA 1.0pt; border: none; mso-border-bottom-alt: solid #AAAAAA .75pt; mso-element: para-border-div; padding: 0cm 0cm 2.0pt 0cm;"&gt;&lt;div class="MsoNormal" style="background: #F9F9F9; border: none; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-border-bottom-alt: solid #AAAAAA .75pt; mso-outline-level: 2; mso-padding-alt: 0cm 0cm 2.0pt 0cm; padding: 0cm;"&gt;&lt;span style="color: #ac2c2b; font-family: Arial, sans-serif; font-size: 12pt;"&gt;&lt;a href="http://geekswithblogs.net/tmoore/archive/2008/07/23/123975.aspx" title="Title of this entry."&gt;&lt;b&gt;&lt;span lang="EN-US" style="color: #ac2c2b; font-size: 14.5pt;"&gt;qtp: running   with msbuild (dos error codes)&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #ac2c2b; font-family: Arial, sans-serif; font-size: 12pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;"&gt;&lt;span lang="EN-US" style="color: #444444; font-family: Arial, sans-serif; font-size: 12pt;"&gt;Our SCM guy wants to run some of our QTP   scripts with MSBuild during the deployment process. That sounds great to me,   but he then says the run has to return a DOS error code to indicate the   status. He uses this error code to send e-mails to QA, Dev, etc.&lt;br /&gt;&lt;br /&gt;Well, this is a problem: QTP can easily be run from a command-line, but it   doesn't return a DOS error code. Several tools exist out there to run QTP   tests also, but have the same issue. You can even write VBScript or batch   files, but no error codes.&lt;br /&gt;&lt;br /&gt;Until now...&lt;br /&gt;&lt;br /&gt;I've written a small VB6 app (avoiding the interop problems with .Net) that   wraps up calls to the QTP API to run tests. It takes parameters that are:&lt;br /&gt;- The path to the test&lt;br /&gt;- whether or not QTP should visible&lt;br /&gt;- whether or not the results viewer should fire at the end&lt;br /&gt;- where the results should be written&lt;br /&gt;&lt;br /&gt;Nice thing is that is independent of the test, so you can run it for all   kinds of uses...batch tests on your machine, etc. &lt;/span&gt;&lt;span style="color: #444444; font-family: Arial, sans-serif; font-size: 12pt;"&gt;Pretty handy.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 5.25pt;"&gt;&lt;span style="color: #444444; font-family: Arial, sans-serif;"&gt;&lt;a href="http://www.blogger.com/post-create.g?blogID=225905308527208627"&gt;&lt;span style="color: #ac2c2b; font-size: 10pt;"&gt;Print&lt;/span&gt;&lt;/a&gt;&amp;nbsp;|   posted on Wednesday, July 23, 2008 1:48 PM&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-6208348904062961882?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/6208348904062961882/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/yes-we-can-integrate-hp-quick-test-pro.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6208348904062961882'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6208348904062961882'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/yes-we-can-integrate-hp-quick-test-pro.html' title='Yes we can ... integrate HP Quick Test Pro QTP with MSBuild ... via VBScript or VB6 !'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Zz-6nUhQKto/TQILT85IceI/AAAAAAAACM4/XLaNIXuOlsk/s72-c/QTP95_Splash.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-3278756507448069422</id><published>2010-12-07T17:21:00.000+01:00</published><updated>2010-12-07T17:21:58.940+01:00</updated><title type='text'>What's inside the WIX package and what do you need ?</title><content type='html'>To better use WIX without notepad ! you souhd install at least the following :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Wix Toolset (for example, this version :&amp;nbsp;&lt;a href="http://wix.sourceforge.net/releases/3.5.2403.0/"&gt;http://wix.sourceforge.net/releases/3.5.2403.0/&lt;/a&gt;)&lt;br /&gt;which is about 35 Mb and contains the following elements (including MSBuild support) :&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Zz-6nUhQKto/TP5cZxVA1FI/AAAAAAAACMw/dUkPx9wZvU4/s1600/WIX+Toolset+3.5.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://2.bp.blogspot.com/_Zz-6nUhQKto/TP5cZxVA1FI/AAAAAAAACMw/dUkPx9wZvU4/s320/WIX+Toolset+3.5.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TP5egUgC2RI/AAAAAAAACM0/Jf0JC8Vkwuw/s1600/WIX.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="185" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TP5egUgC2RI/AAAAAAAACM0/Jf0JC8Vkwuw/s320/WIX.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;where you'll find in the Bin folder the exe such as : Candle, Light, Lit, Lux, ...&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;WIX edit (9 Mb for the version wixedit-0.7.3.msi)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-3278756507448069422?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/3278756507448069422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/whats-inside-wix-package-and-what-do.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3278756507448069422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3278756507448069422'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/whats-inside-wix-package-and-what-do.html' title='What&apos;s inside the WIX package and what do you need ?'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Zz-6nUhQKto/TP5cZxVA1FI/AAAAAAAACMw/dUkPx9wZvU4/s72-c/WIX+Toolset+3.5.PNG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-236859416104040596</id><published>2010-12-02T16:50:00.008+01:00</published><updated>2010-12-17T03:52:21.980+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workflow Foundation 4'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>Variables available for the Workflow Foundation inside your Build Process Template</title><content type='html'>I might not be looking properly, but as per today, I did not find a large amount of information on the various parameters available&amp;nbsp;for the Workflow Foundation inside your Build Process Template&lt;br /&gt;&lt;br /&gt;For instance, just search for&amp;nbsp;&lt;span class="Apple-style-span" style="color: blue; font-family: Verdana, sans-serif; font-size: x-small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;"BuildDetail.DropLocation" BuildDirectory&lt;/span&gt;&lt;br /&gt;&amp;nbsp;in Google, I only get 42 results. BUT thoses 2 parameters are essentials to my Workflow !&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #f9cb9c; color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; line-height: 19px;"&gt;&lt;b&gt;Update &lt;/b&gt;: The complete documentation on "Team Foundation Build Activities" is now available (Dec&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: #f9cb9c;"&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; line-height: 19px;"&gt;9th&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; line-height: 19px;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; line-height: 19px;"&gt;2010)&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; line-height: 19px;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg265783.aspx" style="color: #473624; text-decoration: underline;"&gt;http://msdn.microsoft.com/en-us/library/gg265783.aspx&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here are a list of other handy parameters that I use :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Verdana, sans-serif; font-size: x-small;"&gt;this:Process.BuildNumberFormat=["$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)"]&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPeSuQv6lTI/AAAAAAAACMY/oT8-t-QQHQo/s1600/WFArguments.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="340" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPeSuQv6lTI/AAAAAAAACMY/oT8-t-QQHQo/s640/WFArguments.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In C#, we have :&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;BuildDetail.DropLocation = "\\MyBuildServer\TFSDropBuild\Dev_Night\Dev_Night_20101202.6"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In order to have the name of the last sub-folder, you could use a quick and dirty trick (I hope there's a better solution somewhere hidden in the MSDN) :&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;Arguments = BuildDetail.DropLocation + " " + BuildDetail.DropLocation.Substring(BuildDetail.DropLocation.LastIndexOf("\") + 1)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Zz-6nUhQKto/TPfARYxkGVI/AAAAAAAACMc/AP2a9D_1wZ4/s1600/DropFolder.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="180" src="http://3.bp.blogspot.com/_Zz-6nUhQKto/TPfARYxkGVI/AAAAAAAACMc/AP2a9D_1wZ4/s400/DropFolder.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Note : Even if it is not obvious, you can write some code in the "FileName" field. Warning, it'll look like you can write C# code (since the SubString(), '+' operator, etc... works) BUT you have to write that as a &lt;b&gt;VB.Net expression&lt;/b&gt;, for instance :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: x-small;"&gt;"&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;Hello World.This works".Split(Convert.ToChar("."))(0)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;Alternatively, you could use native TFS property such as&amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;BuildDetail.BuildDefinition.Name&lt;/span&gt;&amp;nbsp;if needed.&lt;/div&gt;Another "Friend" string available is :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Verdana, sans-serif; font-size: x-small;"&gt;SourcesDirectory&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;that replaces the need for doing :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Verdana, sans-serif; font-size: x-small;"&gt;BuildDetail.DropLocation.Split(Convert.ToChar("\"))(4).ToString()&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Here is the detail of the POC Batch file to make sure that the expression in the "FileName" field works, with input parameters sent by WF4 :&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;REM Create a unique identifier&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;SET &lt;/span&gt;&lt;/b&gt;T&lt;b&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;=&lt;/span&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;%time:~0,5%&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;b&gt;SET &lt;/b&gt;&lt;/span&gt;fileName=.%T::=-%&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;REM %1 is for instance&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;\\MyBuildServer\TFSDropBuild\Dev_Night\Dev_Night_20101202.6&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;DIR &lt;/span&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;*&lt;/span&gt;&lt;/b&gt;.&lt;b&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;*&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&amp;gt; &lt;b&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;%1&lt;/span&gt;&lt;/b&gt;\myNewCreatedFile_&lt;b&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;%fileName%&lt;/span&gt;&lt;/b&gt;.txt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;DIR&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;*&lt;/span&gt;&lt;/b&gt;.&lt;b&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;*&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&amp;gt;&amp;nbsp;&lt;b&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;%1&lt;/span&gt;&lt;/b&gt;\myNewCreatedFile_&lt;b&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;%2&lt;/span&gt;&lt;/b&gt;_&lt;b&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;%fileName%&lt;/span&gt;&lt;/b&gt;.txt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-236859416104040596?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/236859416104040596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/variables-available-for-workflow.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/236859416104040596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/236859416104040596'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/variables-available-for-workflow.html' title='Variables available for the Workflow Foundation inside your Build Process Template'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TPeSuQv6lTI/AAAAAAAACMY/oT8-t-QQHQo/s72-c/WFArguments.PNG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7173683370641781707</id><published>2010-12-01T22:36:00.009+01:00</published><updated>2011-10-21T11:01:42.086+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='MSBuild'/><category scheme='http://www.blogger.com/atom/ns#' term='Branching'/><title type='text'>ALM + TFS 2010 + VS 2010 : Where to start ?</title><content type='html'>&lt;b&gt;&lt;span style="color: #0b5394; font-family: Verdana, sans-serif; font-size: large;"&gt;Where to start with your Application Lifecycle Management ?? based on Team Foundation Server 2010 and Visual Studio 2010&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="color: #0b5394;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #0b5394;"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;i style="background-color: #fce5cd;"&gt;If you have feedbacks, please do so to improve this documentation&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #0b5394;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;On large scale and critical projects, you can reach really high quality and standards :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;by choosing a project management framework or combining them (as long as they are not incompatible: CMMI, ITIL, ISO, SCRUM, PMBOK, PRINCE2...)&lt;/li&gt;&lt;li&gt;by taking into account the user's needs (either by arranging the priorities or extend the existing contract),&lt;/li&gt;&lt;li&gt;by creating a great team,&lt;/li&gt;&lt;li&gt;&lt;b&gt;by providing them great tools or resources, &lt;u&gt;which is the matter of this Post&lt;/u&gt;. &lt;/b&gt;Moreover, most of them comes free of charge&amp;nbsp;(indicated by the label&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;).&lt;/li&gt;&lt;li&gt;by blending with other great tools (that are not listed below, such as HP ALM 11 and its Quick Test Pro - Very expensive, but great), &amp;nbsp;&lt;/li&gt;&lt;li&gt;by taking&amp;nbsp;into account your team's needs and feedbacks,&lt;/li&gt;&lt;li&gt;by adding some challenges (with regular independent audits),&lt;/li&gt;&lt;li&gt;by adding comments to this post so I can enhance it ;-)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;u&gt;&lt;i&gt;0. Prerequisites&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span"&gt;You obviously need VS2010 + TFS2010 :&amp;nbsp;either get a&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;. &amp;nbsp;&lt;/span&gt;&lt;a href="http://www.microsoft.com/visualstudio/en-us/try"&gt;TFS 2010 Ultimate trial&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;&lt;span class="Apple-style-span"&gt;. or get entire MS ALM (&lt;/span&gt;TFS 2010 +VS 2010 Ultimate&amp;nbsp;with proper Service Pack and Powertools installed) &amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;{for &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=240"&gt;Virtual PC&lt;/a&gt;, for &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=5363"&gt;Hyper-V&lt;/a&gt;, ... that expires every so often. Google for &lt;i&gt;"Microsoft® Visual Studio® 2010 and Team Foundation Server® 2010 RTM virtual machine"&lt;/i&gt;}&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;, &lt;br /&gt;. or have an MSDN account or proper license.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;u&gt;&lt;i&gt;1. Compulsory Tools&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;. Microsoft TFS Power Tools (&amp;gt; March 2011)&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. VS Productivity Tools add on&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. &lt;a href="http://www.attrice.info/downloads/index.htm#tfssidekicks2010"&gt;TFS Sidekicks 2010&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free - from Attrice Corporation]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;.&amp;nbsp;&lt;a href="http://tfsadmin.codeplex.com/"&gt;Team Foundation Server Administration Tool&lt;/a&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free - from CodePlex]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;(to administer easily accounts accross TFS, Reporting Services and WSS),&lt;br /&gt;. FxCop/Code Analysis&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free - Comes with VS]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. StyleCop/Source Analysis (&amp;gt;v4.4)&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. &lt;a href="http://www.ndepend.com/"&gt;NDepend&lt;/a&gt; (if you think the &lt;a href="http://memoprojects.blogspot.com/2010/03/how-many-rules-in-fxcop-and-stylecop.html"&gt;351 rules of FxCop and StyleCop&lt;/a&gt; are enough, trust me you're wrong !!! Get NDepend on the top of those two previous tools),&lt;br /&gt;. MSI generator (VS Installer could be enough, else use WIX&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;= Windows Installer XML),&lt;br /&gt;. SoapUI to test your WCF Web Services&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;or WCFTestClient &lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free - Comes with VS]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;.&amp;nbsp;&lt;i style="background-color: #fce5cd;"&gt;[updated 2011.09.05]&lt;/i&gt;&amp;nbsp;&lt;a href="http://www.fiddler2.com/"&gt;Fiddler&lt;/a&gt; Http Debugging Proxy&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;and its Microsoft addon to decode Binary messages : &lt;a href="http://archive.msdn.microsoft.com/wcfbinaryinspector"&gt;WCF Binary messages inspector&lt;/a&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;.&lt;br /&gt;.&amp;nbsp;&lt;i style="background-color: #fce5cd;"&gt;[updated 2011.06.21]&lt;/i&gt;&amp;nbsp;TFS Admin tools (&lt;a href="http://tfsadmin.codeplex.com/"&gt;http://tfsadmin.codeplex.com/&lt;/a&gt;)&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;, for eg. to add a user in both TFS, Sharepoint and Reporting Services in one click !&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;u&gt;&lt;i&gt;&lt;b&gt;2. Highly recommended tools&lt;/b&gt;&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;. &lt;a href="http://submain.com/products/ghostdoc.aspx"&gt;GhostDoc&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free - from Submain]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. &lt;a href="http://www.stack.nl/~dimitri/doxygen/index.html"&gt;Doxygen&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. Inmeta&amp;nbsp;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/35daa606-4917-43c4-98ab-38632d9dbd45"&gt;Visual Studio Build Explorer&lt;/a&gt;&amp;nbsp;will present your&amp;nbsp;numerous&amp;nbsp;Build definitions as a treeview&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. VS Power Tools : Work Item Search, Work Item Visualizer&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;.&amp;nbsp;WIX Edit&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;+ Votive&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;[to manage and generate automatically with TFS and for free your MSIs]&lt;br /&gt;. &amp;nbsp;HP QTP (Quick Test Pro)&amp;nbsp;[If you have a lot of money !],&lt;br /&gt;&amp;nbsp;&amp;nbsp; - or "cheaper" TELERIK WebUI Test Studio,&lt;br /&gt;&amp;nbsp;&amp;nbsp; - or Coded UI given in VS 2010 Ultimate.&lt;br /&gt;.&amp;nbsp;&lt;i style="background-color: #fce5cd;"&gt;[&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;i style="background-color: #fce5cd;"&gt;updated 2011.06.21&lt;/i&gt;&lt;/span&gt;]&lt;/i&gt;&amp;nbsp;A GREAT tool to test Web Services (including WCF Binary used by Silverlight) : HP ALM-Service Test 11 (not free !!! $$$$$)&lt;br /&gt;.&amp;nbsp;&lt;a href="http://fissum.codeplex.com/"&gt;Fissum&lt;/a&gt;&amp;nbsp;- A TFS tray icon client&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Optional :&lt;br /&gt;. [Just as R&amp;amp;R tools] : Pex&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;[framework Free]&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white;"&gt; but PEX with Integration into VS2010 requires MSDN&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;+ Moles,&lt;br /&gt;. &lt;i style="background-color: #fce5cd;"&gt;[&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;i style="background-color: #fce5cd;"&gt;updated 2011.06.21&lt;/i&gt;&lt;/span&gt;]&lt;/i&gt; Extand TDD with BDD (Behaviour Dev Driven) and generate your tests based on T4 : &lt;a href="http://www.specflow.org/"&gt;S&lt;/a&gt;&lt;a href="http://www.specflow.org/"&gt;pecFlow&lt;/a&gt;&amp;nbsp;&lt;a href="http://www.specflow.org/"&gt;Pragmatic BDD for .NET&lt;/a&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;.&amp;nbsp;&amp;nbsp;NArrange&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;. en_visual_studio_2010_pex_0.94.51023.0_power_tools_x86_598803.exe&lt;br /&gt;. en_visual_studio_2010_pex_0.94.51023.0_power_tools_x64_598803.exe&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;u&gt;&lt;i&gt;&lt;b&gt;3.0 Required updates&lt;/b&gt;&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;As per today, install at least the following :&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;. TFS 2010&amp;nbsp;&lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=bca68e8d-4612-48cd-9418-1b973d41073f"&gt;SP1 Cumulative Update 1 - KB2536929&lt;/a&gt;&amp;nbsp;(version June 8th 2011)&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;. VS10-KB2345133-x86-FixScrollingContextMenu.exe&lt;/div&gt;&lt;br /&gt;. VS10-KB2268081-x86-Find and Replace Dialog Growing.exe &lt;br /&gt;. VS10-KB2251084-x86 Cut or Copy displays 'insufficient memory' error.exe &lt;br /&gt;. en_visual_studio_2010_fp2_x86_604352-FeaturePack-14nov2010.msi &lt;br /&gt;You could use the Microsoft Web Platform Installer (WPI) to do so easily, and always have the latest available updates.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #073763; font-size: large;"&gt;&lt;u&gt;&lt;i&gt;&lt;b&gt;3.1 Required TFS addon&lt;/b&gt;&lt;/i&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;. TFS 2010 additional Checkin Policies&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://msmvps.com/blogs/vstsblog/archive/2011/06/14/available-check-in-policies-for-team-foundation-server-2010.aspx"&gt;http://msmvps.com/blogs/vstsblog/archive/2011/06/14/available-check-in-policies-for-team-foundation-server-2010.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;i&gt;&lt;u&gt;4. To read / watch necessarily : Branching and Merging&lt;/u&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;• &lt;b&gt;A must "have" : &lt;/b&gt;VS ALM Ranger : &lt;a href="http://tfsbranchingguideiii.codeplex.com/"&gt;http://tfsbranchingguideiii.codeplex.com/&lt;/a&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TS7QFyrxu_I/AAAAAAAACNc/e-uYXPgYE3E/s1600/Branching_Thavonekham.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TS7QFyrxu_I/AAAAAAAACNc/e-uYXPgYE3E/s320/Branching_Thavonekham.PNG" width="320" /&gt;&lt;/a&gt;. TFS_Branching_Guide_Main_2010_v1.zip --&amp;gt; Start here&lt;br /&gt;. TFS_Branching_Guide_Scenarios_2010_v1.zip &lt;br /&gt;. TFS_Branching_Guide_Scenarios_2010_Poster_v1.zip &lt;br /&gt;. HOL_Quick_Start_Basic_Branch_Plan_2010_v1.zip &lt;br /&gt;. Lab_Files_HOL_Quick_Start_Basic_Branch_Plan_v1.zip &lt;br /&gt;. TFS_Branching_Guide_Q&amp;amp;A_2010_v1.zip &lt;br /&gt;. TFS_Branching_Guide_Diagrams_2010_v1.zip &lt;br /&gt;. TFS_Branching_Guide_2010_Complete_Package_v1&lt;br /&gt;&lt;br /&gt;&lt;i style="background-color: #fce5cd;"&gt;[&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;i style="background-color: #fce5cd;"&gt;updated 2011.06.21&lt;/i&gt;&lt;/span&gt;]&lt;/i&gt;&amp;nbsp;Check Brian Harry's blog (see below) to have latest updates on ALM Ranger's work,&lt;br /&gt;&lt;br /&gt;•&amp;nbsp;&lt;b&gt;Webcast&amp;nbsp;- Excellent&lt;/b&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;: &lt;a href="http://blogs.us.sogeti.com/ericswanson/2010/09/07/effective-branching-and-merging-in-tfs-2010/"&gt;http://blogs.us.sogeti.com/ericswanson/2010/09/07/effective-branching-and-merging-in-tfs-2010/&lt;/a&gt;&amp;nbsp;(Eric Swanson, Sept 2010)&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;•&amp;nbsp;&lt;b&gt;Webcast&amp;nbsp;- Very good&lt;/b&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;: Understanding Branching and Merging in Team Foundation Server 2010, &lt;a href="http://www.msteched.com/2010/Europe/DPR304"&gt;http://www.msteched.com/2010/Europe/DPR304&lt;/a&gt;&amp;nbsp;(Brian Randell, MVP VS ALM, @ TechEd Nov. 2010),&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;• MSDN "Using Version Control"&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;: &lt;a href="http://msdn.microsoft.com/en-us/library/ms181368.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms181368.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;•&amp;nbsp;Webcast&amp;nbsp;- R&amp;amp;D on Branches with TFS 2010&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;: &lt;a href="http://channel9.msdn.com/Blogs/VisualStudio/Branching-and-Merging-Visualization-with-Team-Foundation-Server-2010"&gt;http://channel9.msdn.com/Blogs/VisualStudio/Branching-and-Merging-Visualization-with-Team-Foundation-Server-2010&lt;/a&gt; (Brian Keller, Oct 2008)&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;i&gt;&lt;u&gt;5. Other recommended Resources&lt;/u&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Any questions ? Find an answer on the following specialized forum&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;:&amp;nbsp;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/msbuild/"&gt;http://social.msdn.microsoft.com/Forums/en-US/msbuild/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Blogs to check out&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&lt;a href="http://social.msdn.microsoft.com/Forums/is/category/vsts"&gt;http://social.msdn.microsoft.com/Forums/is/category/vsts&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&lt;a href="http://www.havecomputerwillcode.com/"&gt;http://www.havecomputerwillcode.com/&lt;/a&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&lt;a href="http://blogs.msdn.com/b/bharry/"&gt;http://blogs.msdn.com/b/bharry/&lt;/a&gt;&amp;nbsp;(Brian Harry)&amp;nbsp;IMPOSSIBLE to miss out, with PLENTY of information&lt;br /&gt;&lt;br /&gt;• Webcast of&amp;nbsp;TechEd 2010 :&amp;nbsp;DEV405-Deep Dive into TFS 2010 Server Reporting&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;• Books on TFS 2010, for instance : &lt;br /&gt;. Professional Application Lifecycle Management with Visual Studio 2010 (Wrox Programmer to Programmer)&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;• WebCasts (prioritized)&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;:&lt;br /&gt;. Check the Webcasts on TechEd (US and Europe) using the search / filters to get excellent informations and practical cases, by talented/famous&amp;nbsp;speakers&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;. For instance :&lt;br /&gt;--&amp;gt; Neno Loje (MVP) : Best Practices Using Visual Studio Team Foundation Server 2010 &lt;a href="http://www.msteched.com/2010/Europe/DPR203"&gt;http://www.msteched.com/2010/Europe/DPR203&lt;/a&gt;,&lt;br /&gt;--&amp;gt;&amp;nbsp;Brian Harry is a Microsoft Technical Fellow and Product Unit Manager for TFS&lt;br /&gt;PDC 2008 Team Foundation Server 2010 : Cool Next Features &lt;br /&gt;--&amp;gt;&amp;nbsp;Before developing TFS 2010, Matthew Mitrik, program manager for Team Foundation Server, explains how Branching and Merging should be&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;• Other&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;:&lt;br /&gt;&amp;nbsp;. Start to read more about TFS Integration : &lt;a href="http://tfsintegration.codeplex.com/"&gt;http://tfsintegration.codeplex.com/&lt;/a&gt; &lt;br /&gt;(developped by the MS TFS product group and the Visual Studio ALM Rangers).&lt;br /&gt;&amp;nbsp;. In order to create Great reports based on the TFS Datawarehouse, check this out :&amp;nbsp;&lt;a href="http://www.dotnetcurry.com/ShowArticle.aspx?ID=530"&gt;http://www.dotnetcurry.com/ShowArticle.aspx?ID=530&lt;/a&gt;&lt;br /&gt;&amp;nbsp;.&amp;nbsp; Books / online books on .Net and ALT.Net and Agile :&lt;br /&gt;&lt;a href="http://www.amazedsaint.com/2010/09/7-freely-available-e-booksguides-i.html"&gt;http://www.amazedsaint.com/2010/09/7-freely-available-e-booksguides-i.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.agiledesignllc.com/SoftwareDeveloperRecommendedReading.htm"&gt;http://www.agiledesignllc.com/SoftwareDeveloperRecommendedReading.htm&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;i&gt;&lt;u&gt;6. Working with the Build Process Template (Workflow Foundation 4) - Team Foundation Build Activities :&amp;nbsp;&lt;/u&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;. Recent documentation (dec. 2010) :&amp;nbsp;&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; line-height: 19px;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg265783.aspx" style="color: #473624; text-decoration: underline;"&gt;http://msdn.microsoft.com/en-us/library/gg265783.aspx&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;.&amp;nbsp;&lt;i style="background-color: #fff2cc;"&gt;[&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;i&gt;updated 2011.09.12&lt;/i&gt;&lt;/span&gt;]&amp;nbsp;&lt;/i&gt;Create easily Build version :&amp;nbsp;&lt;a href="http://www.wintellect.com/CS/blogs/jrobbins/archive/2011/09/11/more-on-tfs-2010-build-numbers-inside-your-projects.aspx"&gt;http://www.wintellect.com/CS/blogs/jrobbins/archive/2011/09/11/more-on-tfs-2010-build-numbers-inside-your-projects.aspx&lt;/a&gt;&lt;br /&gt;&amp;nbsp;.&amp;nbsp;&lt;i style="background-color: #fff2cc;"&gt;[&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;i&gt;updated 2011.10.05&lt;/i&gt;&lt;/span&gt;]&lt;/i&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://blogs.msdn.com/b/jimlamb/archive/2010/09/14/parallelized-builds-with-tfs2010.aspx"&gt;http://blogs.msdn.com/b/jimlamb/archive/2010/09/14/parallelized-builds-with-tfs2010.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;i&gt;&lt;u&gt;7. To go deeper&lt;/u&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;• Get a TFS 2010 certification : Exam 70-512: TS (Admin)&lt;br /&gt;&lt;br /&gt;• Concerning the Builds :&lt;br /&gt;. Microsoft Developer Network &amp;gt; Visual Studio Team System Forums &amp;gt; Team Foundation Server - Build Automation &lt;br /&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en/tfsbuild/thread/2edf6708-a9f3-4e44-a037-abdf1495310d"&gt;http://social.msdn.microsoft.com/Forums/en/tfsbuild/thread/2edf6708-a9f3-4e44-a037-abdf1495310d&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;• Information on my Blog, such as this one,&lt;br /&gt;For your information, here is a list of companies that are both using TFS 2010 AND are referenced with Microsoft : &lt;a href="http://memoprojects.blogspot.com/2010/11/37-case-study-on-tfs-2010.html"&gt;http://memoprojects.blogspot.com/2010/11/37-case-study-on-tfs-2010.html&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;• If you want to integrate Project Server 2010 (and Sharepoint 2010) WITH TFS 2010, here is the Beta (as per today). It comes with a 'Go Live' license :&lt;br /&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/eranruso/archive/2010/12/14/team-foundation-server-2010-tfs-and-project-server-integration-is-now-available-in-beta.aspx"&gt;http://blogs.microsoft.co.il/blogs/eranruso/archive/2010/12/14/team-foundation-server-2010-tfs-and-project-server-integration-is-now-available-in-beta.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;• Since reflector is not free anymore, use :&amp;nbsp;&lt;a href="http://wiki.sharpdevelop.net/ilspy.ashx"&gt;http://wiki.sharpdevelop.net/ilspy.ashx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: #073763; font-size: large;"&gt;&lt;i&gt;&lt;u&gt;8. ALM - Performance Testing aspects&lt;/u&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;• Here is a link that summarizes tools / help on performance testing :&lt;br /&gt;&lt;a href="http://blogs.msdn.com/b/anutthara/archive/2010/02/09/resources-for-test-tools-in-visual-studio-2010.aspx"&gt;http://blogs.msdn.com/b/anutthara/archive/2010/02/09/resources-for-test-tools-in-visual-studio-2010.aspx&lt;/a&gt;&lt;br /&gt;• Based on Fiddler quoted above, check the &lt;a href="http://www.fiddler2.com/Fiddler2/extensions.asp"&gt;additional extensions&lt;/a&gt; (security, load, performance, ...)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;. Security :&amp;nbsp;&lt;a href="http://websecuritytool.codeplex.com/"&gt;http://websecuritytool.codeplex.com/&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-color: #d9ead3; color: #38761d;"&gt;&lt;i&gt;[Free]&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;,&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7173683370641781707?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7173683370641781707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/alm-tfs-2010-vs-2010-where-to-start.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7173683370641781707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7173683370641781707'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/alm-tfs-2010-vs-2010-where-to-start.html' title='ALM + TFS 2010 + VS 2010 : Where to start ?'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Zz-6nUhQKto/TS7QFyrxu_I/AAAAAAAACNc/e-uYXPgYE3E/s72-c/Branching_Thavonekham.PNG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-1007855917221411726</id><published>2010-12-01T13:00:00.016+01:00</published><updated>2011-01-14T15:04:44.889+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workflow Foundation 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='MSBuild'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><category scheme='http://www.blogger.com/atom/ns#' term='Lesson Learned'/><title type='text'>Create a Custom Workflow for a TFS 2010 Build Definition</title><content type='html'>&lt;b&gt;1. This is where to start&lt;/b&gt; :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A good introduction from the MSDN :&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/ff805001.aspx"&gt;Walkthrough: Define a Custom Workflow to Deploy a Database from Team Foundation Build&lt;/a&gt;&amp;nbsp;(July 2010).&lt;br /&gt;This shows you how to create an InvokeProcess activity (from the Team Foundation Build Activities Toolbar)&lt;/li&gt;&lt;li&gt;An exhaustive documentation on how to extend TFS si given in the MSDN here :&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/bb130146.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb130146.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="background-color: #f9cb9c;"&gt;Update : The complete documentation on "Team Foundation Build Activities" is available (dec 2010)&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/gg265783.aspx"&gt;http://msdn.microsoft.com/en-us/library/gg265783.aspx&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="background-color: #fce5cd;"&gt;Update : A step-by-step exemple on how to implement a Custum Workflow :&amp;nbsp;&lt;a href="http://blogs.developpeur.org/tom/archive/2009/11/19/tfs-2010-d-velopper-sa-propre-activit-de-processus-de-build.aspx"&gt;http://blogs.developpeur.org/tom/archive/2009/11/19/tfs-2010-d-velopper-sa-propre-activit-de-processus-de-build.aspx&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;2. Customize your Build with Workflow Foundation 4.0&lt;/b&gt;&lt;br /&gt;Based on the previous introduction, you'll be able to work with WF 4.0 on your Build process template (more than 600 lines of XAML).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;2.a. Add a new Invoke Process after a successful Build, within the "Try Compile, Test, and Associate Changesets and WorkItems" activity, inside the "Compile, Test, and Associate" sequence :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPY1VdBQo2I/AAAAAAAACMQ/NwTMrEghMsA/s1600/WF_InvokeProcess_BuildDefinitionTop.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPY1VdBQo2I/AAAAAAAACMQ/NwTMrEghMsA/s320/WF_InvokeProcess_BuildDefinitionTop.PNG" width="220" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; 2.b. Then, Drag &amp;amp; Drop an Invoke Process&amp;nbsp;activity (from the Team Foundation Build Activities Toolbar), click property to set its parameters.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;u&gt;Warning 1&lt;/u&gt;: The previous MSDN documentation forgot to mention to add the &lt;b&gt;FileName&lt;/b&gt;&amp;nbsp;parameter &lt;u&gt;inside double quotes&lt;/u&gt;, this bits of code will be considered as a String by WF4).&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;u&gt;Warning 2&lt;/u&gt;: You will have a red exclamation mark above each new activity in error. This is NORMAL, since once you Drop them, they are not yet configured. A mouse over it will detail the problem.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;2.c. Then, add 2 sub-tasks as 2 other activities within the Invoke Process : The&amp;nbsp;WriteBuildMessage and the&amp;nbsp;WriteBuildError. And set them up according to the previous MSDN example.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TPYzLESrWlI/AAAAAAAACMM/Bo7TMVGxGGY/s1600/WF_InvokeProcess_BuildDefinition.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="215" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TPYzLESrWlI/AAAAAAAACMM/Bo7TMVGxGGY/s400/WF_InvokeProcess_BuildDefinition.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;i&gt;This is only a example where you could drop your 'Invoke process' activity. On 'real' project, you should combine this with If-Then conditions, and add it on anywhere is required. For this test, I placed this new activity at the begging of your workflow to see quickly of if works. Once OK, just Drag &amp;amp; Drop it to a relevant place.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #f9cb9c;"&gt;&amp;nbsp;&amp;nbsp; Update : For more details, check my other post : &lt;a href="http://memoprojects.blogspot.com/2010/12/variables-available-for-workflow.html"&gt;Variables available for workflow foundation within TFS 2010&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;2.d. Once done, all the&amp;nbsp;red exclamation marks will disapear.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;2.e. Don't forget to archive this new Build ProcessTemplate, and reference it in the Build Definition (otherwise TFS will not find your changes that are only local).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;2.f Option :&amp;nbsp;You could add custom &lt;b&gt;C# from the TFS 2010 SDK &lt;/b&gt;code to extend further your process (&lt;a href="http://blogs.commentor.dk/post/Retrieving-the-build-history-from-Team-Foundation-Server-using-the-Visual-Studio-2010-SDK.aspx"&gt;example here&lt;/a&gt;).&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;If you made an error, here is an example of a Build compilation problem (UNC=universal naming convention):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;CMD.EXE was started with the above path as the current directory.&lt;/li&gt;&lt;li&gt;UNC paths are not supported. &amp;nbsp;Defaulting to Windows directory.&lt;/li&gt;&lt;li&gt;Access is denied.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPY4uCPp9JI/AAAAAAAACMU/LDlPBk-_F9w/s1600/BuildError.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="196" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPY4uCPp9JI/AAAAAAAACMU/LDlPBk-_F9w/s320/BuildError.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Else, it's done and finished !!&lt;br /&gt;&lt;br /&gt;In the resulting XAML, we can notice that &lt;span class="Apple-style-span" style="background-color: yellow;"&gt;Visual Basic&lt;/span&gt; is NOT dead :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;If&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;Condition&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;[AssociateChangesetsAndWorkItems]&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 35.4pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;DisplayName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;If AssociateChangesetsAndWorkItems&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 35.4pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;sap:VirtualizedContainerService.HintSize&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;464,477&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 35.4pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;mtbwt:BuildTrackingParticipant.Importance&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;Low&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;If.Then&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeForReason&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;DisplayName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;Associate Changesets and Work Items for non-Shelveset Builds&lt;/span&gt;"&lt;span style="color: blue;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;sap:VirtualizedContainerService.HintSize&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;297,376&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;Reason&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;sap:WorkflowViewStateService.ViewState&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;scg:Dictionary&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:TypeArguments&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;x:String, x:Object&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;x:Boolean&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:Key&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;IsPinned&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;True&lt;span style="color: blue;"&gt;&lt;span style="color: #a31515;"&gt;x:Boolean&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;scg:Dictionary&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;sap:WorkflowViewStateService.ViewState&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:AssociateChangesetsAndWorkItems&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;DisplayName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;Associate Changesets and Work Items&lt;/span&gt;"&lt;span style="color: blue;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;sap:VirtualizedContainerService.HintSize&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;234,22&lt;/span&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;Result&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;[associatedChangesets]&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeProcess&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;DisplayName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;Invoke DeployBatch&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;FileName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;E:\TFSDropBuild\testBatch.bat&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;sap:VirtualizedContainerService.HintSize&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;234,190&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeProcess.ErrorDataReceived&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:TypeArguments&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;x:String&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction.Argument&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;DelegateInArgument&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:TypeArguments&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;x:String&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;span style="color: blue;"&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Consolas; font-size: 9px;"&gt;&amp;nbsp;&lt;/span&gt;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;errVTHOutput&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction.Argument&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:WriteBuildError&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;DisplayName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;DeployBatch Error&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;sap:VirtualizedContainerService.HintSize&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;200,22&lt;/span&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 70.8pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none; text-indent: 35.4pt;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;Message&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;[errVTHOutput]&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeProcess.ErrorDataReceived&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeProcess.OutputDataReceived&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:TypeArguments&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;x:String&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction.Argument&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;DelegateInArgument&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:TypeArguments&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;x:String&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;span style="color: blue;"&gt;&lt;/span&gt;&lt;span style="color: red;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue; font-family: Consolas; font-size: 9px;"&gt;&amp;nbsp;&lt;/span&gt;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;stdVTHOutput&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction.Argument&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:WriteBuildMessage&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 106.2pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;DisplayName&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;DeployBatch Output&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 106.2pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;sap:VirtualizedContainerService.HintSize&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;200,22&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 106.2pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;Message&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;[stdVTHOutput]&lt;/span&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 106.2pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;&lt;span class="Apple-style-span" style="background-color: yellow;"&gt;mva:VisualBasic.Settings&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;Assembly references and imported namespaces serialized as XML namespaces&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;ActivityAction&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeProcess.OutputDataReceived&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;sap:WorkflowViewStateService.ViewState&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;scg:Dictionary&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:TypeArguments&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;x:String, x:Object&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;x:Boolean&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt; &lt;/span&gt;&lt;span lang="EN-US" style="color: red; font-family: Consolas; font-size: 7pt;"&gt;x:Key&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;=&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;"&lt;span style="color: blue;"&gt;IsPinned&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;True&lt;span style="color: blue;"&gt;&lt;span style="color: #a31515;"&gt;x:Boolean&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;scg:Dictionary&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;sap:WorkflowViewStateService.ViewState&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeProcess&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;mtbwa:InvokeForReason&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span lang="EN-US" style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;If.Then&lt;/span&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 7pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 7pt;"&gt;If&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 7pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;_&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-1007855917221411726?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/1007855917221411726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/create-custom-workflow-for-tfs-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1007855917221411726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/1007855917221411726'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/create-custom-workflow-for-tfs-2010.html' title='Create a Custom Workflow for a TFS 2010 Build Definition'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TPY1VdBQo2I/AAAAAAAACMQ/NwTMrEghMsA/s72-c/WF_InvokeProcess_BuildDefinitionTop.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-7720722926821762954</id><published>2010-12-01T00:23:00.004+01:00</published><updated>2010-12-01T23:44:24.757+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Lesson Learned'/><title type='text'>Team Project Collections, the theory and the Best Practices</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i.msdn.microsoft.com/dynimg/IC305533.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="192" ox="true" src="http://i.msdn.microsoft.com/dynimg/IC305533.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;A. How to use a Team Project Collection&lt;/b&gt;&lt;br /&gt;1. Here is the official MSDN theory :&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/dd236915.aspx"&gt;http://msdn.microsoft.com/en-us/library/dd236915.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd236915.aspx"&gt;&lt;/a&gt;2. Here are some explanations :&lt;br /&gt;&amp;nbsp;&amp;nbsp;a. From the MSDN :&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href="http://blogs.msdn.com/b/slange/archive/2010/06/04/thoughts-on-tfs-project-collections.aspx"&gt;http://blogs.msdn.com/b/slange/archive/2010/06/04/thoughts-on-tfs-project-collections.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;b. From Brian Harry&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href="http://blogs.msdn.com/b/bharry/archive/2009/04/19/team-foundation-server-2010-key-concepts.aspx"&gt;http://blogs.msdn.com/b/bharry/archive/2009/04/19/team-foundation-server-2010-key-concepts.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/b/slange/archive/2010/06/04/thoughts-on-tfs-project-collections.aspx"&gt;&lt;/a&gt;3. Here are some Lesson Learned and Best Practices,&lt;br /&gt;&amp;nbsp;a. A Great !! Webcast that tells us not to create many Team Project Collections, issued from the TechEd Europ 2010, 2 weeks ago, by&amp;nbsp;&lt;span class="Apple-style-span" style="color: #666666; font-family: &amp;quot;Segoe UI&amp;quot;,Calibri,Arial,Verdana,Helvetica,sans-serif; font-weight: bold; line-height: 16px;"&gt;&lt;a href="http://www.msteched.com/Speakers/Neno-Loje"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Neno Loje&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&amp;nbsp;(MVP Visual Studio ALM)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href="http://www.msteched.com/2010/Europe/DPR203"&gt;http://www.msteched.com/2010/Europe/DPR203&lt;/a&gt;&amp;nbsp;and the &lt;a href="http://ecn.channel9.msdn.com/o9/te/Europe/2010/pptx/dpr203.pptx"&gt;Slides&lt;/a&gt;&amp;nbsp;(or I backed it up &lt;a href="http://cid-591817d29a39fdf4.office.live.com/view.aspx/.Public/TFS2010/dpr203%20-%20Best%20Practices%20Using%20Visual%20Studio%20Team%20Foundation%20Server%202010%20-%20Neno%20Loje%20-%20TechEd%20Aurop%202010.pptx"&gt;here&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;b. ALM Ranger Best practices guides :&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/ee358786.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/ee358786.aspx&lt;/a&gt;&lt;br /&gt;(including Visual Studio TFS Branching Guide 2010 on CodePlex :&amp;nbsp;&lt;a href="http://tfsbranchingguideiii.codeplex.com/"&gt;http://tfsbranchingguideiii.codeplex.com/&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;c. An "old" White Paper from Mario Rodriguez (2009.11.05) : &lt;a href="http://blogs.msdn.com/b/tfsao/archive/2009/11/05/scaling-tfs-2010-beta-2.aspx"&gt;http://blogs.msdn.com/b/tfsao/archive/2009/11/05/scaling-tfs-2010-beta-2.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;B. How to migrate them from TFS 2008 to TFS 2010 ??&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.slideshare.net/jbramwell/migrating-to-tfs-2010-lessons-learned"&gt;http://www.slideshare.net/jbramwell/migrating-to-tfs-2010-lessons-learned&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://geekswithblogs.net/hinshelm/archive/2010/05/03/upgrading-team-foundation-server-2008-to-2010.aspx"&gt;http://geekswithblogs.net/hinshelm/archive/2010/05/03/upgrading-team-foundation-server-2008-to-2010.aspx&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;C. More info, and free training courses&lt;/b&gt; :&amp;nbsp;&lt;a href="http://vs2010.learndevnow.com/default.aspx?src=SN1001D"&gt;http://vs2010.learndevnow.com/default.aspx?src=SN1001D&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-7720722926821762954?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/7720722926821762954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/12/team-project-collections-theory-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7720722926821762954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/7720722926821762954'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/12/team-project-collections-theory-and.html' title='Team Project Collections, the theory and the Best Practices'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-833404794587870628</id><published>2010-11-30T14:38:00.023+01:00</published><updated>2010-12-01T18:01:03.781+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WIX'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='MSBuild'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>How to automatically deploy, once Gated checked-in</title><content type='html'>&lt;b&gt;Solution 1 : Based on&amp;nbsp;Web deploy package&lt;/b&gt;&lt;br /&gt;* Create a Web deploy package&lt;br /&gt;* Add extra MSBuild parameters onto the BuildDefinition (such as &amp;nbsp;/p:CreatePackageOnPublish=true /p:DeployOnBuild=true)&lt;br /&gt;&lt;a href="http://www.codewrecks.com/blog/index.php/2010/06/07/create-web-deploy-package-during-a-tfs-2010-build/"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;http://www.codewrecks.com/blog/index.php/2010/06/07/create-web-deploy-package-during-a-tfs-2010-build/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;and&lt;/span&gt;&amp;nbsp;&lt;a href="http://weblogs.asp.net/jdanforth/archive/2010/04/24/package-and-publish-web-sites-with-tfs-2010-build-server.aspx"&gt;http://weblogs.asp.net/jdanforth/archive/2010/04/24/package-and-publish-web-sites-with-tfs-2010-build-server.aspx&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;or&lt;/span&gt;&amp;nbsp;&lt;a href="http://publicityson.blogspot.com/2010/11/tfs-2010-build-and-deploy-with-web.html"&gt;http://publicityson.blogspot.com/2010/11/tfs-2010-build-and-deploy-with-web.html&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://weblogs.asp.net/blogs/jdanforth/image_31EFA239.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://weblogs.asp.net/blogs/jdanforth/image_31EFA239.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Then, once you run and passed the Gated Check-in (or in fact, any TFS Build), you will find all the codes be be installed in the TFS "Drop folder".&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_62SKYZzoLpk/TOdr5DSfO5I/AAAAAAAAAF0/-9sBD-0_5gI/image_thumb%5B1%5D.png?imgmax=800" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="232" src="http://4.bp.blogspot.com/_62SKYZzoLpk/TOdr5DSfO5I/AAAAAAAAAF0/-9sBD-0_5gI/image_thumb%5B1%5D.png?imgmax=800" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Solution 2 : Run a Batch file with the Build definition Workflow&lt;/b&gt;&amp;nbsp;:&lt;br /&gt;To do so, you have to use InvokeProcess activity with the Workflow&amp;nbsp;&lt;a href="http://boardreader.com/thread/TFS_2010_how_to_execute_a_batch_file_aft_sf7c__a1bf2075-f176-4fba-8d33-db4de033f86c.html"&gt;TFS 2010 - how to execute a batch file after build&lt;/a&gt;&lt;br /&gt;For more details, see my other post :&amp;nbsp;&lt;a href="http://memoprojects.blogspot.com/2010/12/create-custom-workflow-for-tfs-2010.html"&gt;http://memoprojects.blogspot.com/2010/12/create-custom-workflow-for-tfs-2010.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Solution 3 : A more "industrialized way" is to use WIX to generate your MSI&lt;/b&gt;&lt;br /&gt;First, we have to understand how it works&amp;nbsp;(&lt;a href="http://www.ewaldhofman.nl/post/2010/04/29/Customize-Team-Build-2010-e28093-Part-4-Create-your-own-activity.aspx"&gt;Ewald Hofman is MVP VS ALM&lt;/a&gt;) before specifically use WIX.&lt;br /&gt;&lt;br /&gt;Then, you should understand&amp;nbsp;&lt;b&gt;MSBuild&lt;/b&gt;&amp;nbsp;; here are the basics from the MSDN : "&lt;a href="http://msdn.microsoft.com/fr-fr/magazine/cc163589(en-us).aspx"&gt;Compile Apps Your Way With Custom Tasks For The Microsoft Build Engine&lt;/a&gt;"&lt;br /&gt;&lt;br /&gt;Finally, use this &lt;b&gt;VERY detailed&lt;/b&gt; tutorial "&lt;a href="http://msdn.microsoft.com/en-us/magazine/cc163456.aspx"&gt;Automate Releases With MSBuild And Windows Installer XML&lt;/a&gt;" (MSDN Mag).&lt;br /&gt;&lt;br /&gt;Note: Here is a Hello World that will launch&amp;nbsp;Notepad with a new HelloWorld.txt file after the Build,&lt;br /&gt;we first start to create a MSBuild project, for instance &lt;b&gt;mySmallProject.csproj&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;in which you can find :&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&amp;lt;&lt;span class="Apple-style-span" style="color: blue;"&gt;Target &amp;nbsp; &lt;/span&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;Name&lt;/span&gt;="AfterBuild"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;span class="Apple-style-span" style="color: blue;"&gt;Exec &amp;nbsp; &lt;/span&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;Command&lt;/span&gt;="C:\WINDOWS\notepad.exe HelloWorld.txt" /&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&amp;lt;/Target&lt;/span&gt;&lt;/span&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;Then the command line :&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;msbuild.exe mySmallProject.csproj /t:Build&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;will build and at the end, it will open your NotePad !&lt;br /&gt;&lt;div style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;Solution 4: Use TFS Deploy&lt;/b&gt;&lt;br /&gt;&lt;a href="http://tfsdeployer.codeplex.com/"&gt;http://tfsdeployer.codeplex.com/&lt;/a&gt;&amp;nbsp;but this project has only&amp;nbsp;140 downloads as per today (dec 2010).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-833404794587870628?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/833404794587870628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/11/how-to-automatically-deploy-once-gated.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/833404794587870628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/833404794587870628'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/11/how-to-automatically-deploy-once-gated.html' title='How to automatically deploy, once Gated checked-in'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_62SKYZzoLpk/TOdr5DSfO5I/AAAAAAAAAF0/-9sBD-0_5gI/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-2709742551250107048</id><published>2010-11-30T12:18:00.002+01:00</published><updated>2010-11-30T18:24:22.847+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='MSBuild'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>How to manage Build increments with TFS 2010</title><content type='html'>Is it given by default in TFS 2010 ?&lt;br /&gt;Yes according to this Blog.&lt;br /&gt;&lt;a href="http://freetodev.wordpress.com/2009/11/07/versioning-code-in-tfs-revised/"&gt;http://freetodev.wordpress.com/2009/11/07/versioning-code-in-tfs-revised/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Else, you could use MSBuild 4.0 to do so :&lt;br /&gt;&lt;a href="http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/11/09/tfs-2010-build-number-and-assembly-file-versions-completely-in-sync-with-only-msbuild-4-0.aspx"&gt;http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/11/09/tfs-2010-build-number-and-assembly-file-versions-completely-in-sync-with-only-msbuild-4-0.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: #e06666;"&gt;Or, here is a GREAT example to extend the workflow floundation :&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: #e06666;"&gt;&amp;nbsp;"Version Assemblies with TFS 2010 Continuous Integration", using&amp;nbsp;Custom Workflow Activity :&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href="http://geekswithblogs.net/michelotti/archive/2010/05/15/version-assemblies-with-tfs-2010-continuous-integration.aspx"&gt;http://geekswithblogs.net/michelotti/archive/2010/05/15/version-assemblies-with-tfs-2010-continuous-integration.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In all cases, a good idea is to rely on CodePlex, such as an MSBuild Extension to ease your life:&lt;br /&gt;&lt;a href="http://www.msbuildextensionpack.com/"&gt;http://www.msbuildextensionpack.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;As a general guidance (&lt;span class="Apple-style-span" style="font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 15px; line-height: 19px;"&gt;&lt;a href="http://stackoverflow.com/users/186848/Jim%20Lamb" id="hypAnswerAuthor" rel="me" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: blue; cursor: pointer; font-size: 15px; font-style: italic; font-weight: normal; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none; vertical-align: baseline;" target="_blank"&gt;Jim Lamb&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 15px; line-height: 19px;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 15px; line-height: 18px;"&gt;Program Manager for Team Foundation Server -&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 15px; line-height: 19px;"&gt;build automation features&lt;/span&gt;) :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184;"&gt;&lt;tbody&gt;&lt;tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0; mso-yfti-lastrow: yes;"&gt;   &lt;td style="border: solid black 1.0pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-themecolor: text1; padding: 0cm 5.4pt 0cm 5.4pt; width: 460.6pt;" valign="top" width="614"&gt;&lt;div class="MsoNormal" style="line-height: 12.9pt; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 20.4pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-indent: -18.0pt; vertical-align: baseline;"&gt;&lt;span lang="EN-US" style="color: black; font-family: Symbol; font-size: 10pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 12.9pt; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 20.4pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-indent: -18.0pt; vertical-align: baseline;"&gt;&lt;span lang="EN-US" style="color: black; font-family: Symbol; font-size: 10pt;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial, sans-serif; font-size: 13px;"&gt;If the task   requires knowledge of specific build inputs or outputs, use MSBuild&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 12.9pt; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 20.4pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-indent: -18.0pt; vertical-align: baseline;"&gt;&lt;span lang="EN-US" style="color: black; font-family: Symbol; font-size: 10pt;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="color: black; font-family: Arial, sans-serif; font-size: 10pt;"&gt;If the task is   something you need to happen when you build in Visual Studio, use MSBuild&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 12.9pt; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 20.4pt; margin-right: 0cm; margin-top: 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-indent: -18.0pt; vertical-align: baseline;"&gt;&lt;span lang="EN-US" style="color: black; font-family: Symbol; font-size: 10pt;"&gt;·&lt;span style="font: normal normal normal 7pt/normal 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="color: black; font-family: Arial, sans-serif; font-size: 10pt;"&gt;If the task is   something you only need to happen when you build on the build server, use WF   unless it requires knowledge of specifi build inputs/outputs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 12.9pt; margin-bottom: 12.0pt; vertical-align: baseline;"&gt;&lt;span lang="EN-US" style="color: black; font-family: Arial, sans-serif; font-size: 10pt;"&gt;When using MSBuild, remember that you can customize   your project files directly (by unloading them and then editing them in   Visual Studio), or you can create custom .targets files and import them into   your individual projects. The latter approach is useful for functionality   that's common to multiple projects to avoid maintaining multiple copies.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 12.9pt; margin-bottom: 12.0pt; vertical-align: baseline;"&gt;&lt;span lang="EN-US" style="color: black; font-family: Arial, sans-serif; font-size: 10pt;"&gt;When using WF, remember that you can write code   activities for low-level tasks but that you can also compose higher-level   tasks using straight XAML. We're actually working on a version of the default   build process template that shipped with TFS 2010 that gives you a simpler,   less granular view of the overall process by using a set of composed XAML   activities.&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 15px; line-height: 19px;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-2709742551250107048?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/2709742551250107048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/11/how-to-manage-build-increments-with-tfs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2709742551250107048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2709742551250107048'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/11/how-to-manage-build-increments-with-tfs.html' title='How to manage Build increments with TFS 2010'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-2462529968897617560</id><published>2010-11-29T15:12:00.002+01:00</published><updated>2011-09-16T15:02:33.459+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>Don't forget the HotFixes, FeaturePacks, QuickFixEngineering (QFE), PowerTools, ...</title><content type='html'>&lt;span class="Apple-style-span" style="background-color: #fce5cd;"&gt;(update: see&amp;nbsp;&lt;a href="http://memoprojects.blogspot.com/2010/12/alm-tfs-2010-vs-2010-where-to-start.html"&gt;http://memoprojects.blogspot.com/2010/12/alm-tfs-2010-vs-2010-where-to-start.html&lt;/a&gt;&amp;nbsp;for up to date versions given in the comments)&lt;/span&gt;&lt;br /&gt;To properly work with VS2010 and TFS 2010, it is important to install, &lt;u&gt;at least&lt;/u&gt;, the following :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;VS10-KB2403277-x86-Prerequisit-&lt;b&gt;FeaturePack-2&lt;/b&gt;-for-VS2010.exe&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #1f497d; font-family: Wingdings; font-size: 15px;"&gt;è&lt;/span&gt;&amp;nbsp;&amp;nbsp; Pre-requisite  for Microsoft Visual Studio 2010 Feature Pack 2,&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #1f497d; font-family: Wingdings; font-size: 15px;"&gt;è&amp;nbsp;&lt;/span&gt;https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=32400&amp;amp;wa=wsignin1.0&amp;nbsp;&lt;/li&gt;&lt;li&gt;en_visual_studio_2010_fp2_x86_604352-&lt;b&gt;FeaturePack2&lt;/b&gt;-14nov2010.msi&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #1f497d; font-family: Wingdings; font-size: 15px;"&gt;è&amp;nbsp;&lt;/span&gt;From the MSDN subscription website&lt;/li&gt;&lt;li&gt;VS10-KB2251084-x86 Cut or Copy displays 'insufficient memory' error.exe&lt;/li&gt;&lt;li&gt;VS10-KB2268081-x86-Find and Replace Dialog Growing.exe&lt;/li&gt;&lt;li&gt;VS10-KB2345133-x86-&lt;b&gt;FixScrollingContextMenu&lt;/b&gt;.exe&lt;/li&gt;&lt;li&gt;tfpt-TFS-&lt;b&gt;PowerTools&lt;/b&gt;-Sept2010.msi&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;And why not :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;en_visual_studio_2010&lt;b&gt;_pex&lt;/b&gt;_0.94.51023.0_power_tools_x64_598803.exe or&lt;br /&gt;en_visual_studio_2010_&lt;b&gt;pex&lt;/b&gt;_0.94.51023.0_power_tools_x86_598803.exe&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-2462529968897617560?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/2462529968897617560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/11/dont-forget-hotfixes-featurepacks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2462529968897617560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/2462529968897617560'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/11/dont-forget-hotfixes-featurepacks.html' title='Don&apos;t forget the HotFixes, FeaturePacks, QuickFixEngineering (QFE), PowerTools, ...'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-5326755060691811584</id><published>2010-11-29T01:25:00.010+01:00</published><updated>2011-03-04T01:05:50.621+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>37 Case Study on TFS 2010 !!</title><content type='html'>Ever wanted to find out who is using TFS 2010, and in which context ??&lt;br /&gt;&lt;br /&gt;Here's how : &lt;a href="http://www.microsoft.com/casestudies/Case_Study_Search_Results.aspx?Type=1&amp;amp;Keywords=%22Team%20Foundation%20Server%202010%22"&gt;http://www.microsoft.com/casestudies/Case_Study_Search_Results.aspx?Type=1&amp;amp;Keywords="Team%20Foundation%20Server%202010"&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Zz-6nUhQKto/TPLvWudHzSI/AAAAAAAACL0/O0sOBggTWKo/s1600/CaseStudy_TFS2010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="350" ox="true" src="http://2.bp.blogspot.com/_Zz-6nUhQKto/TPLvWudHzSI/AAAAAAAACL0/O0sOBggTWKo/s400/CaseStudy_TFS2010.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-5326755060691811584?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/5326755060691811584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/11/37-case-study-on-tfs-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5326755060691811584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5326755060691811584'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/11/37-case-study-on-tfs-2010.html' title='37 Case Study on TFS 2010 !!'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Zz-6nUhQKto/TPLvWudHzSI/AAAAAAAACL0/O0sOBggTWKo/s72-c/CaseStudy_TFS2010.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-701285592335588286</id><published>2010-11-16T17:36:00.001+01:00</published><updated>2011-02-09T12:16:52.473+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UnitTests'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4.0'/><title type='text'>First attempts with CodedUITests with Silverlight 4</title><content type='html'>&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;In fact my really first attempt with Coded UI was in Dec 2009&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;a href="http://memoprojects.blogspot.com/2009/12/silverlight-and-microsoft-test-and-lab.html"&gt;http://memoprojects.blogspot.com/2009/12/silverlight-and-microsoft-test-and-lab.html&lt;/a&gt;, but, back then, I had &amp;nbsp;a nice message "&lt;span class="Apple-style-span" style="color: #29303b; font-family: Georgia, 'Times New Roman', sans-serif; font-size: 13px; font-style: italic;"&gt;Microsoft Silverlight is not supported.. Test paused.&lt;/span&gt;".&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;On the 15th Nov 2010, Microsoft has released VS2010 Feature Pack 2,&amp;nbsp;and I was waiting for a while for it. Now I tried it on our complex Silverlight 4 LOB Application.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1/ .... well, well, &amp;nbsp;... here is my first go :&lt;/b&gt;&lt;br /&gt;We can record a new Coded UI Test for Silverlight :&lt;br /&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TPPmmAN4xCI/AAAAAAAACME/W5_Xm1nhPOg/s1600/NewMenu_CodedUITest.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="107" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TPPmmAN4xCI/AAAAAAAACME/W5_Xm1nhPOg/s320/NewMenu_CodedUITest.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;However, no Silverlight controls were detected. &lt;i&gt;"Verify that the application under test is built using Silverlight assemblies with a version 4.0 or greater and that a reference to the Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll assembly has been added to the project"&lt;/i&gt;.&lt;/div&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPPDpNUwtsI/AAAAAAAACL4/oHMslR8ozN8/s1600/Visual+Studio+2010+Silverlight+Coded+UI+Tests.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="58" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPPDpNUwtsI/AAAAAAAACL4/oHMslR8ozN8/s400/Visual+Studio+2010+Silverlight+Coded+UI+Tests.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;So you'll have to read&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/gg413374.aspx"&gt;http://msdn.microsoft.com/en-us/library/gg413374.aspx&lt;/a&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;and add the missing DLL :&amp;nbsp;&lt;i&gt;Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll&lt;/i&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;I was just used to use HP QTP to perform the tests, for which it requires no modification of our application (i.e. no need to add any additional DLLs on our projet - that you have to use a switch mechanism so that they are not released in the production environment ! ).&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;a href="http://2.bp.blogspot.com/_Zz-6nUhQKto/TP5MyPNjFsI/AAAAAAAACMs/mrk1D0MKssI/s1600/crash100percent.PNG" imageanchor="1" style="clear: right; cssfloat: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;/a&gt;If you don't add the extra MS DLLs, your Coded UI Test Builder will be empty, even if you click like crazy on your Silverlight application :&lt;/div&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Zz-6nUhQKto/TPPJHIpkTmI/AAAAAAAACL8/nQqvQhtfYho/s1600/CodedUITestBuilder.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/_Zz-6nUhQKto/TPPJHIpkTmI/AAAAAAAACL8/nQqvQhtfYho/s320/CodedUITestBuilder.PNG" width="268" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;After having inserted the DLL on ALL our composite view projects (because of MVVM et PRISM), I ran it again... but still the same problem. Then, I tried to add the DLL only to one project : Still not working.&lt;br /&gt;==&amp;gt; I'll have to try it on a tiny project first.&lt;/div&gt;&lt;br /&gt;&lt;b&gt;2/ My second try was on a small Business project :&lt;/b&gt;&lt;br /&gt;Seams to work fine and to record... up until the point when I click on "Generate Code"&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPPkdCxtBXI/AAAAAAAACMA/7R--XrzMGvg/s1600/GenerateCode.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPPkdCxtBXI/AAAAAAAACMA/7R--XrzMGvg/s1600/GenerateCode.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;At that point, my Visual Studio was in debug mode, and I had the nice popup :&lt;br /&gt;"cannot generate code because you are in debug mode" !!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;3/ Let's try again !&lt;/b&gt;&lt;br /&gt;&amp;nbsp;Yes it works... but only on a small project, and with few crashes...&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPPxPvRmHEI/AAAAAAAACMI/BTGkqXNUmck/s1600/TU_OK.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="211" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TPPxPvRmHEI/AAAAAAAACMI/BTGkqXNUmck/s400/TU_OK.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;4/ Conclusion of my first 'go'&lt;/b&gt;&lt;br /&gt;Whereas my first trial of TELERIK WebUI Test Studio with Silverlight was fully satisfactory (with a large Silverlight project with MVVM and PRISM patterns),&lt;br /&gt;my first go with MS Coded UI with Silverlight was a bit disappointing&amp;nbsp;even if it offers more integration with the TFS Software&amp;nbsp;factory.&lt;br /&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://www.telerik.com/libraries/heads/vs2010_comparison_charshaf.sflb" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="110" src="http://www.telerik.com/libraries/heads/vs2010_comparison_charshaf.sflb" style="cursor: move;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;5/ My second trial :&amp;nbsp;Remove&amp;nbsp;all references to the DLL, excet for 1 project in our MVVM PRISM4 project (i.e. I can record only one screen)&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;u&gt;First crash&lt;/u&gt; : The Coded UI Test Builder requires me to use a 100% Zoom scale for my IE browser. Else, you'll have this warning "Windows Enternet Explorer zoom setting must be set to 100%. Please change the value to 100% and try again.",&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TP5Mww5BhZI/AAAAAAAACMo/dQ8lUK5M4NU/s1600/100percent.PNG" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="67" ox="true" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TP5Mww5BhZI/AAAAAAAACMo/dQ8lUK5M4NU/s320/100percent.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span id="goog_1868383126"&gt;&lt;/span&gt;&lt;span id="goog_1868383127"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;Once back to 100%, this crashes Coded UI !!&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;img border="0" height="190" ox="true" src="http://2.bp.blogspot.com/_Zz-6nUhQKto/TP5MyPNjFsI/AAAAAAAACMs/mrk1D0MKssI/s320/crash100percent.PNG" width="320" /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;Restart again, then the recording FINALLY works !!&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;However, I never managed to record again (even after a reboot).&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;Enough for today ! I'll try again another day... hence back to TELERIK WebUI Test Studio et HP QuickTestPro (that requires no additional DLLs on our project to make it work) ;-)&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;Note : I tried coded UI on the Windows calculator (calc.exe) : no problems. Then I started to use it for "a real need", such as with "SQL Server Management Studio" within wizzard to generate T-SQL Scripts. It works nearly properly : No errors during the recording, but a mini problems do not allow me to use it to "Run" afterwards. Indeed, it stops the playback when dealing with some Drop Down List (although with some DDLst on other windows it works).&lt;/div&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-701285592335588286?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/701285592335588286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/11/first-attempts-with-codeduitests-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/701285592335588286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/701285592335588286'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/11/first-attempts-with-codeduitests-with.html' title='First attempts with CodedUITests with Silverlight 4'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Zz-6nUhQKto/TPPmmAN4xCI/AAAAAAAACME/W5_Xm1nhPOg/s72-c/NewMenu_CodedUITest.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-9164876821832255014</id><published>2010-11-02T12:04:00.005+01:00</published><updated>2010-11-30T12:23:09.967+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Startup'/><title type='text'>How to bootstrap an ISV startup from scratch</title><content type='html'>If this is your case, find some readings here :&lt;br /&gt;&lt;br /&gt;* &lt;a href="http://www.agavemountain.com/2008/08/do-you-need-dun-and-bradstreet.html"&gt;http://www.agavemountain.com/2008/08/do-you-need-dun-and-bradstreet.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;* Get into the cloud with :&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;. Microsoft Office 365 : &lt;a href="http://office365.microsoft.com/en-US/online-services.aspx"&gt;http://office365.microsoft.com/en-US/online-services.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;. Clouding with your ALM by Brian Harry :&amp;nbsp;&lt;a href="http://blogs.msdn.com/b/bharry/archive/2010/10/28/tfs-on-windows-azure-at-the-pdc.aspx"&gt;http://blogs.msdn.com/b/bharry/archive/2010/10/28/tfs-on-windows-azure-at-the-pdc.aspx&lt;/a&gt;,&lt;br /&gt;&lt;br /&gt;or in French here :&amp;nbsp;&lt;a href="http://blogs.codes-sources.com/vlabz/archive/2010/10/29/team-foundation-server-dans-azure-de-nouvelles-perspectives.aspx"&gt;http://blogs.codes-sources.com/vlabz/archive/2010/10/29/team-foundation-server-dans-azure-de-nouvelles-perspectives.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://office365.microsoft.com/uploadedImages/Office_365_Content/Home/frame2_final.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="148" src="http://office365.microsoft.com/uploadedImages/Office_365_Content/Home/frame2_final.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-9164876821832255014?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/9164876821832255014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/11/how-to-bootstrap-isv-startup-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/9164876821832255014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/9164876821832255014'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/11/how-to-bootstrap-isv-startup-from.html' title='How to bootstrap an ISV startup from scratch'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-3402026390429800307</id><published>2010-10-18T13:04:00.000+02:00</published><updated>2010-10-18T13:04:56.794+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='bug popup'/><title type='text'>Bug in Silverlight 4 : HtmlPage.PopupWindow cannot resize poup</title><content type='html'>When trying to open a resizable popup window throught Silverlight, don't try to find out why it doesn't work with IE in some cases, works with FF in some others, etc... don't waste your time, simply because&amp;nbsp;HtmlPage.PopupWindow is flawed.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Indeed, this sounds silly, but &amp;nbsp;because of a spelling mistake that is around for&amp;nbsp;at least a year, and Microsoft is aware of that.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Take a look at Reflector :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/TLwlkdf7BDI/AAAAAAAACLs/l-4XTbRImCM/s1600/bug+-+HtmlPage.PopupWindow+is+flawed.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="276" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/TLwlkdf7BDI/AAAAAAAACLs/l-4XTbRImCM/s640/bug+-+HtmlPage.PopupWindow+is+flawed.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;The bit of code appends an invalid JavaScript command ("resiz&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;b&gt;e&lt;/b&gt;&lt;/span&gt;able" instead of "resizable").&lt;br /&gt;&lt;br /&gt;&lt;div&gt;How to solve it ? ... wait for a patch..., or use the good old JavaScript, for example :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="color: blue; font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-bidi-font-family: Consolas;"&gt;string&lt;/span&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-bidi-font-family: Consolas;"&gt; javascriptOpenWindow = &lt;span style="color: #a31515;"&gt;"window.open('"&lt;/span&gt; + link + &lt;span style="color: #a31515;"&gt;"','MyWindow','toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=1,resizable=1,width=1024,height=800,left=20,top=20')"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-bidi-font-family: Consolas;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-bidi-font-family: Consolas;"&gt;System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;HtmlPage&lt;/span&gt;.Window.Eval(javascriptOpenWindow);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span lang="EN-US" style="font-family: Consolas; font-size: 9.5pt; mso-ansi-language: EN-US; mso-bidi-font-family: Consolas;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"&gt;&lt;span class="Apple-style-span" style="font-family: Consolas; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-3402026390429800307?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/3402026390429800307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/10/bug-in-silverlight-4.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3402026390429800307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3402026390429800307'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/10/bug-in-silverlight-4.html' title='Bug in Silverlight 4 : HtmlPage.PopupWindow cannot resize poup'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Zz-6nUhQKto/TLwlkdf7BDI/AAAAAAAACLs/l-4XTbRImCM/s72-c/bug+-+HtmlPage.PopupWindow+is+flawed.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-6243961245235779164</id><published>2010-10-18T00:59:00.004+02:00</published><updated>2010-11-30T12:21:30.448+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Genetic Algorithm'/><category scheme='http://www.blogger.com/atom/ns#' term='UI Tests'/><category scheme='http://www.blogger.com/atom/ns#' term='Intelligent Systems'/><title type='text'>How Genetic Algorithm can ease your User Test cases (UI Tests)</title><content type='html'>&amp;nbsp;Let consider a large application to develop; it is not possible to list the entire exhaustive combination of User Test Cases : You could have millions of possible ways of using your complex application, hence millions of User Test Cases to record and run within the automated Software Factory.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When dealing with large and complex scenarios, Genetic Algorithms are good to find a solution quickly, whereas calculating all possible ways would last more than decades even with the fastest computer.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Let us assume that the &lt;span class="Apple-style-span" style="color: red;"&gt;&lt;span class="Apple-style-span" style="background-color: black;"&gt;red&lt;/span&gt;&amp;nbsp;&lt;/span&gt;biomorph fractal below is THE best User Test Case that you are looking for, because it covers 100% of the needs (hence you don't have to tests all possible combinations, where many of them would likely to do nearly the same thing), and would&amp;nbsp;guarantee no software regressions over years.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Since you don't know yet the solution, you would try to identify programmatically for exemple 1000 random combinations (24 of them are represented as &lt;span class="Apple-style-span" style="color: white;"&gt;&lt;span class="Apple-style-span" style="background-color: black;"&gt;white&amp;nbsp;biomorph fractals&lt;/span&gt;&lt;/span&gt; below).&lt;/div&gt;&lt;div&gt;By letting them evolve throw a reproduction process (with various factors such as mutations) during a large number of iterations, this would lead to find a solution within minutes.&lt;/div&gt;&lt;div&gt;This may be not the perfect one, but the closest to the sought solution.&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TLt3QGiE43I/AAAAAAAACLo/8OFMiVQe5jQ/s1600/GeneticAlgorithm_for_your_UserTestCases.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TLt3QGiE43I/AAAAAAAACLo/8OFMiVQe5jQ/s640/GeneticAlgorithm_for_your_UserTestCases.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;"Genetic Algorithm Viewer 1.0", by Jean-Philippe Rennard, is the software above that can demo the principles, based on&amp;nbsp;biomorph fractals&amp;nbsp;:&amp;nbsp;&lt;a href="http://www.rennard.org/alife/french/gavintr.html"&gt;http://www.rennard.org/alife/french/gavintr.html&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This post only shows an example of what could be done; it is up to you to either implement or buy a software that will help you implementing ONLY relevant User Test Cases (hence the minimum required tests), and not a large number of combinations anymore.&lt;br /&gt;&lt;br /&gt;Some other links on AI or GA :&lt;br /&gt;&lt;a href="http://dotnetkicks.com/csharp/How_to_Create_a_Neural_Network_and_Genetic_Algorithm_in_C_NET"&gt;http://dotnetkicks.com/csharp/How_to_Create_a_Neural_Network_and_Genetic_Algorithm_in_C_NET&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeguru.com/Cpp/misc/misc/article.php/c3795"&gt;http://www.codeguru.com/Cpp/misc/misc/article.php/c3795&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeguru.com/cpp/cpp/algorithms/general/article.php/c14825"&gt;http://www.codeguru.com/cpp/cpp/algorithms/general/article.php/c14825&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-6243961245235779164?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/6243961245235779164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/10/how-genetic-algorithm-can-ease-your.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6243961245235779164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6243961245235779164'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/10/how-genetic-algorithm-can-ease-your.html' title='How Genetic Algorithm can ease your User Test cases (UI Tests)'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TLt3QGiE43I/AAAAAAAACLo/8OFMiVQe5jQ/s72-c/GeneticAlgorithm_for_your_UserTestCases.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-8046420410307313557</id><published>2010-10-05T02:04:00.002+02:00</published><updated>2010-11-30T12:23:21.191+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D'/><category scheme='http://www.blogger.com/atom/ns#' term='charts'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>Monitor the code quality over time</title><content type='html'>Here is a quick post to show an example of a code quality report over time for a CMMI project. The rendering of the graph is done via the FusionCharts Flash library, that is bound to an XML file.&lt;br /&gt;It could be noted that the Flash graph could be rotated around to better see the values.&lt;br /&gt;Anyway, since we are talking of a 3 years report, we are just&amp;nbsp;interested&amp;nbsp;in visualizing the trends, not the exact values.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/TKpr79TLMaI/AAAAAAAACLk/mf06oC6x2D0/s1600/3D_CodeQualityReport_vincent_thavonekham.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/TKpr79TLMaI/AAAAAAAACLk/mf06oC6x2D0/s400/3D_CodeQualityReport_vincent_thavonekham.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;You can find online examples here :&amp;nbsp;&lt;a href="http://www.fusioncharts.com/Gallery/Category.asp?Column3D"&gt;http://www.fusioncharts.com/Gallery/Category.asp?Column3D&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-8046420410307313557?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/8046420410307313557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/10/monitor-code-quality-over-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/8046420410307313557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/8046420410307313557'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/10/monitor-code-quality-over-time.html' title='Monitor the code quality over time'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Zz-6nUhQKto/TKpr79TLMaI/AAAAAAAACLk/mf06oC6x2D0/s72-c/3D_CodeQualityReport_vincent_thavonekham.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4604681298006637081</id><published>2010-09-26T01:12:00.002+02:00</published><updated>2010-11-30T12:21:54.801+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Design Pattern'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><title type='text'>Design Patterns overview</title><content type='html'>A good web site on this topic : &lt;a href="http://www.dofactory.com/"&gt;http://www.dofactory.com&lt;/a&gt;&lt;br /&gt;You can clic on any of the pattern below to have more details.&lt;br /&gt;Here you can find a example of the 4 types of software architecture : &lt;a href="http://dchaffiol.free.fr/info/architecture/art_archi_spheres_g.htm"&gt;http://dchaffiol.free.fr/info/architecture/art_archi_spheres_g.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;table border="0" cellpadding="0" cellspacing="1" class="MsoNormalTable" style="background: none repeat scroll 0% 0% white; width: 100%;"&gt;&lt;tbody&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td colspan="2" style="background: none repeat scroll 0% 0% beige; height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;b&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;Creational   Patterns&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.dofactory.com/Patterns/PatternAbstract.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Abstract Factory&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Creates an instance of several families of classes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternBuilder.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Builder&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Separates object construction from its representation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternFactory.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Factory Method&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Creates an instance of several derived classes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternPrototype.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Prototype&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A fully initialized instance to be copied or cloned&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternSingleton.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Singleton&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A class of which only a single instance can exist&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;table border="0" cellpadding="0" cellspacing="1" class="MsoNormalTable" style="background: none repeat scroll 0% 0% white; width: 100%;"&gt;&lt;tbody&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td colspan="2" style="background: none repeat scroll 0% 0% beige; height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;Structural   Patterns&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.dofactory.com/Patterns/PatternAdapter.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Adapter&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Match interfaces of different classes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternBridge.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Bridge&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Separates an object’s interface from its implementation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternComposite.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Composite&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A tree structure of simple and composite objects&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternDecorator.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Decorator&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Add responsibilities to objects dynamically&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternFacade.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Facade&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A single class that represents an entire subsystem&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternFlyweight.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Flyweight&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A fine-grained instance used for efficient sharing&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternProxy.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Proxy&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;An object representing another object&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;table border="0" cellpadding="0" cellspacing="1" class="MsoNormalTable" style="background: none repeat scroll 0% 0% white; width: 100%;"&gt;&lt;tbody&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td colspan="2" style="background: none repeat scroll 0% 0% beige; height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;Behavioral   Patterns&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.dofactory.com/Patterns/PatternChain.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Chain of Resp.&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A way of passing a request between a chain of objects&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternCommand.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Command&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Encapsulate a command request as an object&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternInterpreter.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Interpreter&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A way to include language elements in a program&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternIterator.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Iterator&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Sequentially access the elements of a collection&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternMediator.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Mediator&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Defines simplified communication between classes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternMemento.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Memento&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Capture and restore an object's internal state&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternObserver.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Observer&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;A way of notifying change to a number of classes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternState.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;State&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Alter an object's behavior when its state changes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternStrategy.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Strategy&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Encapsulates an algorithm inside a class&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternTemplate.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Template Method&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Defer the exact steps of an algorithm to a subclass&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="height: 10.5pt;"&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt; width: 90pt;" width="120"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&lt;a href="http://www.dofactory.com/Patterns/PatternVisitor.aspx"&gt;&lt;span style="color: black; text-decoration: none;"&gt;Visitor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="height: 10.5pt; padding: 0.75pt;"&gt;&lt;div class="MsoNormal" style="line-height: 19.2pt; margin-bottom: 0.0001pt;"&gt;&lt;span lang="EN-US" style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;Defines a new operation to a class without change&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4604681298006637081?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4604681298006637081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/09/design-patterns-overview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4604681298006637081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4604681298006637081'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/09/design-patterns-overview.html' title='Design Patterns overview'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-5882963870459468024</id><published>2010-09-21T23:33:00.000+02:00</published><updated>2010-09-21T23:33:42.408+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>To celebrate our last Sprint</title><content type='html'>Good things always end... Here is the last time we are using those cards on our project since we are doing the 9th and last Sprint iteration. It'll be a hard one to finalize everything !&lt;br /&gt;&lt;a href="http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs618.snc4/59814_433196960893_644205893_5667546_4200380_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs618.snc4/59814_433196960893_644205893_5667546_4200380_n.jpg" width="197" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-5882963870459468024?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/5882963870459468024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/09/to-celebrate-our-last-sprint.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5882963870459468024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/5882963870459468024'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/09/to-celebrate-our-last-sprint.html' title='To celebrate our last Sprint'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4663812355177804147</id><published>2010-09-16T21:13:00.002+02:00</published><updated>2010-11-30T12:22:55.079+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open Workbench'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><title type='text'>Good Webcast : A tutorial on Open Workbench (OWB) based on a comparison with Microsoft Project</title><content type='html'>Open Workbench is an open source application running under MS Windows ; I found 2 good tutorials about that, unfortunately only in French :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.pointslash.info/dotclear/index.php/2007/06/17/25-tutorial-video-open-workbench-fr-2-10-fonctionnalites-de-base"&gt;http://www.pointslash.info/dotclear/index.php/2007/06/17/25-tutorial-video-open-workbench-fr-2-10-fonctionnalites-de-base&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.pointslash.info/dotclear/index.php/2007/05/06/4-tutorial-open-workbench-fr-1-10-la-liste-des-taches"&gt;http://www.pointslash.info/dotclear/index.php/2007/05/06/4-tutorial-open-workbench-fr-1-10-la-liste-des-taches&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Open Workbench could be found here :&amp;nbsp;&lt;a href="http://www.openworkbench.org/"&gt;http://www.openworkbench.org/&lt;/a&gt;.&lt;br /&gt;Here is an example of the GANTT chart, from there Web site :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.openworkbench.org/images/stories/screenshots/gantt-chart-1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="255" src="http://www.openworkbench.org/images/stories/screenshots/gantt-chart-1.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4663812355177804147?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4663812355177804147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/09/good-webcast-tutorial-on-open-workbench.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4663812355177804147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4663812355177804147'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/09/good-webcast-tutorial-on-open-workbench.html' title='Good Webcast : A tutorial on Open Workbench (OWB) based on a comparison with Microsoft Project'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-6936391640639035733</id><published>2010-09-09T10:59:00.005+02:00</published><updated>2010-12-07T18:27:45.930+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='Build Definition'/><title type='text'>TFS 2010 : What we cannot copy a build definition !!</title><content type='html'>&lt;span class="Apple-style-span" style="background-color: #f9cb9c;"&gt;&lt;b&gt;UPDATE : Yes we can ... now with the latest TFS PowerTools &lt;/b&gt;(Clone Build Definition) :&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #f9cb9c;"&gt;&lt;a href="http://blogs.msdn.com/b/bharry/archive/2010/09/09/sept-2010-tfs-power-tools-release-available.aspx"&gt;http://blogs.msdn.com/b/bharry/archive/2010/09/09/sept-2010-tfs-power-tools-release-available.aspx&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What !!! After having spent many hours in configuring the best ever unbreakable build with the TFS's Gated Checkin, with lots of Unit tests, Code Coverage options, a nice deployments..., you're telling me that TFS 2010 does not provide any function to copy or backup my Build Definition ???&lt;br /&gt;Because, a very basic modification of the Build Definition done by mistake can breakdown everything !&lt;br /&gt;&lt;br /&gt;Well, sorry, there's no such option with Team Explorer. However, here is a way to overcome this missing feature : To copy a build definition,&amp;nbsp;you have to create your own application via the TFS API :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode" style="background-color: white; font-family: consolas, 'Courier New', courier, monospace; font-size: small;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer(&lt;/span&gt;&lt;span class="str"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;"http://myTFSserver:8080"&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;);&lt;/span&gt;&lt;/pre&gt;&lt;pre class="csharpcode" style="background-color: white; color: black; font-family: consolas, 'Courier New', courier, monospace; font-size: small;"&gt;&lt;/pre&gt;&lt;br /&gt;as explained here :&lt;br /&gt;&lt;a href="http://www.brokenwire.net/bw/Programming/122/how-to-copy-tfs-builddefinitions"&gt;http://www.brokenwire.net/bw/Programming/122/how-to-copy-tfs-builddefinitions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;NB: Talking about automated Unit Test and Test impact, here is a nice post to explain whar&amp;nbsp;Test impacts are :&lt;br /&gt;&lt;a href="http://blogs.msdn.com/b/phuene/archive/2009/12/09/test-impact-with-team-foundation-build-2010.aspx"&gt;http://blogs.msdn.com/b/phuene/archive/2009/12/09/test-impact-with-team-foundation-build-2010.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-6936391640639035733?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/6936391640639035733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/09/tfs-2010-what-we-cannot-copy-build.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6936391640639035733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/6936391640639035733'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/09/tfs-2010-what-we-cannot-copy-build.html' title='TFS 2010 : What we cannot copy a build definition !!'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-3453999309374990110</id><published>2010-09-04T21:36:00.006+02:00</published><updated>2010-09-04T22:03:04.571+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testimonials'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>A customer's testimonials on an AGILE methodology with TFS 2008's Software Factory</title><content type='html'>One year after the end of my last projet, here is the project's retrospectives of the French Minister of Youth Affairs and Sports. I was the project manager of the Winwise team implementing AGILE methodology with TFS 2008's Software Factory.&lt;br /&gt;&lt;br /&gt;As per today, the customer is highly delighted of this project (the public front end is accessible &lt;a href="http://www.bafa-bafd.gouv.fr/"&gt;here&lt;/a&gt;), which success is entirely thanks to :&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;the deep&amp;nbsp;involvement of the&amp;nbsp;Minister of Youth Affairs and Sports' staff, that was led by Pascal ADAM and Michèle RUFFELAERE, together with Michaël LABORDE on the complicated Laws and Regulation's side, without counting any extra-hours working hand in hand with with us on this challenging project.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;the technical and management's&amp;nbsp;skills&amp;nbsp;of&amp;nbsp;the Winwise's experts, the project's Director, the&amp;nbsp;sales representative, and ALTEN's support.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Here is&amp;nbsp;Pascal ADAM's&amp;nbsp;testimonials (&lt;a href="http://winwise.fr/Clients/Casclients.aspx"&gt;original link&lt;/a&gt; or &lt;a href="http://winwise.fr/LinkClick.aspx?fileticket=EBJYJiZFDuA%3d&amp;amp;tabid=72"&gt;the PDF here&lt;/a&gt;) :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Zz-6nUhQKto/TIKe34LCj7I/AAAAAAAACKs/o6VGCIvxsnA/s1600/Testimonials_BAFA_BAFD.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="999" src="http://2.bp.blogspot.com/_Zz-6nUhQKto/TIKe34LCj7I/AAAAAAAACKs/o6VGCIvxsnA/s1600/Testimonials_BAFA_BAFD.png" style="cursor: move;" width="376" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-3453999309374990110?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/3453999309374990110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/09/customers-testimonials-about-agile.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3453999309374990110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/3453999309374990110'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/09/customers-testimonials-about-agile.html' title='A customer&apos;s testimonials on an AGILE methodology with TFS 2008&apos;s Software Factory'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Zz-6nUhQKto/TIKe34LCj7I/AAAAAAAACKs/o6VGCIvxsnA/s72-c/Testimonials_BAFA_BAFD.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4745765230740067596</id><published>2010-08-31T10:54:00.002+02:00</published><updated>2010-08-31T10:54:51.853+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UnitTests'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net programming'/><category scheme='http://www.blogger.com/atom/ns#' term='ALM'/><category scheme='http://www.blogger.com/atom/ns#' term='TFS'/><title type='text'>A series of links on the Unit Test and Code Coverage topics</title><content type='html'>&lt;a href="http://geekswithblogs.net/jakob/archive/2009/06/03/tfs-team-build-2010-running-unit-tests.aspx"&gt;http://geekswithblogs.net/jakob/archive/2009/06/03/tfs-team-build-2010-running-unit-tests.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msmvps.com/blogs/rfennell/archive/2010/08/05/getting-code-coverage-working-on-team-build-2010.aspx"&gt;http://msmvps.com/blogs/rfennell/archive/2010/08/05/getting-code-coverage-working-on-team-build-2010.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4745765230740067596?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4745765230740067596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/08/series-of-links-on-unit-test-and-code.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4745765230740067596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4745765230740067596'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/08/series-of-links-on-unit-test-and-code.html' title='A series of links on the Unit Test and Code Coverage topics'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-4606088752590893059</id><published>2010-08-30T16:25:00.001+02:00</published><updated>2010-08-31T01:34:15.645+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='Log'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><title type='text'>Server Centric statistics : IIS Log</title><content type='html'>Here is one the the many free tools to analyse IIS Logs :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Indihiang 1.0 (x86) - Web Log Analyzer&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Quite good for a free tool that help us start on analysing IIS Logs&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Zz-6nUhQKto/THu-Peo2BrI/AAAAAAAACKM/T4ff25nKoPA/s1600/Indihiang.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_Zz-6nUhQKto/THu-Peo2BrI/AAAAAAAACKM/T4ff25nKoPA/s320/Indihiang.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Shows all the HTTP status&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/THu-RaAZ6mI/AAAAAAAACKU/D61sOKmCQ9s/s1600/HTTPStatus.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/THu-RaAZ6mI/AAAAAAAACKU/D61sOKmCQ9s/s320/HTTPStatus.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Access of the various pages (also notice the Silverlight *.XAP)&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/THu-SKiuwfI/AAAAAAAACKc/m7BwznkvhxI/s1600/AccessPage_Xap.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/THu-SKiuwfI/AAAAAAAACKc/m7BwznkvhxI/s320/AccessPage_Xap.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The time required to request the pages&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Zz-6nUhQKto/THu-S1ZTiOI/AAAAAAAACKk/RKvvtMOK6Vw/s1600/Requests.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_Zz-6nUhQKto/THu-S1ZTiOI/AAAAAAAACKk/RKvvtMOK6Vw/s320/Requests.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;( Vincent THAVONEKHAM, Team Foundation Server 2010 Trainer - ALM with TFS 2010 and Scrum - Paris. www.Thavo.com )&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/225905308527208627-4606088752590893059?l=memoprojects.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://memoprojects.blogspot.com/feeds/4606088752590893059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://memoprojects.blogspot.com/2010/08/server-centric-statistics-iis-log.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4606088752590893059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/225905308527208627/posts/default/4606088752590893059'/><link rel='alternate' type='text/html' href='http://memoprojects.blogspot.com/2010/08/server-centric-statistics-iis-log.html' title='Server Centric statistics : IIS Log'/><author><name>Thavonekham Vincent</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_Zz-6nUhQKto/S-_kTZis05I/AAAAAAAACGc/_wckZf7JZr0/S220/MyFaceBook.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Zz-6nUhQKto/THu-Peo2BrI/AAAAAAAACKM/T4ff25nKoPA/s72-c/Indihiang.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-225905308527208627.post-8178877078898739862</id><published>2010-08-29T23:06:00.007+02:00</published><updated>2010-12-28T01:01:04.232+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SCRUM'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Management'/><category scheme='http://www.blogger.com/atom/ns#' term='agile experience'/><title type='text'>TOP 10 SCRUM Advantages</title><content type='html'>&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span"&gt;&lt;span lang="EN-US" style="font-family: Arial, Helvetica, sans-serif;"&gt;Obviously, I will not state that SCRUM is 100% the best of the best project management ever. It obviously hides some drawbacks. However, because the advantages are so numerous, the overcome is really good. I would like to emphasis only 10 of them.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span"&gt;&lt;span lang="EN-US" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span"&gt;&lt;span lang="EN-US" style="font-family: Arial, Helvetica, sans-serif;"&gt;Bear in mind that if you ask 100 persons a top-10 list, you will have 100 answers; furthermore, ask me to perform this exercise in a few weeks time, my list will surely be different!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Freedom of the team, since the team works without any bosses. As a result, the team has to be very responsible and work tightly together to solve problems in a challenging environment. The only limit to the freedom is the User Stories to implement at the end of the sprint, and the sprint’s objective to reach,&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;&lt;li&gt;KISS - “Keep It Simple Stupid! ”: Scrum rules are simple to understand. You don’t necessarily have to study and understand why it works, just follow the rules! Obviously, it is best to study project management theories and leadership concepts either to apply the rules with even more convictions, or to go beyond them once mastered. In theory (I don’t fully agree on that point), any decisions is done on a KISS bases,&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The capacity to improve ourselves with retrospective and brainstorming sessions. This allows us to state and agree that we are bad in such or such area, then take actions to change completely one or more processes. Any process belongs to the team, and it is its duty to improve or suppress it. No boss knows better the problem that the extended team (i.e. including the PO, the SM and the Team),&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I have done a few projects in AGILE, but what I find excellent with SCRUM is that it provides a worldwide proven project management pattern. Moreover, the best practices are basic enough to allow us: &lt;span lang="EN-US"&gt;To apply them strictly, AND t&lt;/span&gt;&lt;span lang="EN-US"&gt;o add creativity so that it could be applicable to solve various problems,&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;My aim is not to list all SCRUM’s definition, but if I had to pick up 2 great stuff in it would be :&amp;nbsp;Rely on Time box nearly everywhere: In many occasions on an AGILE project (without SCRUM), when everything is important, some tasks are endless and we tried to cheet our deadlines, and add a bit more, and another team member a wee bit more, and so on. As a result, we resulted in the very well-known issue, that everyone knows : we were late, and the quality was bad !! By applying Timebox most of the time AND defining the rules beforehand with the entire team member ("definition of Done"), it is easier to stop it due timescale. As long as the ScrumMaster plays its role of leader so that the rules are applied.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I just knew AGILE before starting a project with SCRUM. What I was really astonished by is its ability to predict the future, based on our previous sprints' experience!! Obviously, no rule is perfect and it is only estimations, but we managed to have a 6 months plan for instance, and identified risks. For example, a “Release Burnup chart” is simple, but it enables us to take important decisions few months in advance, and inform the project board and sponsors well ahead.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;It is a humble project management: no bosses, no experts, beginners are welcome. Personally, I found that later point bizarre and I doubted it
