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

<channel>
	<title>Where Technology Meets Teamwork</title>
	<atom:link href="http://blog.nwcadence.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.nwcadence.com</link>
	<description>Thoughts on TFS, Lean, Agile, Kanban, Scrum and other collaborative technologies and techniques</description>
	<lastBuildDate>Thu, 17 May 2012 23:37:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>What Every Executive Should Know About ALM</title>
		<link>http://blog.nwcadence.com/what-every-executive-should-know-about-alm-now/</link>
		<comments>http://blog.nwcadence.com/what-every-executive-should-know-about-alm-now/#comments</comments>
		<pubDate>Thu, 03 May 2012 23:02:17 +0000</pubDate>
		<dc:creator>Lori Borg</dc:creator>
				<category><![CDATA[Application Lifecycle Management (ALM)]]></category>
		<category><![CDATA[Company]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42711</guid>
		<description><![CDATA[<a href="http://blog.nwcadence.com/wp-content/uploads/2012/05/Lori1.jpg"></a>The nature of this post is unconventional. As President of <a href="http://www.nwcadence.com">Northwest Cadence</a>, I get to spend a lot of time talking about all things related to helping companies improve their software development processes. But I’m not here to talk about that. Nor am I here to talk about Kanban versus Scrum; TFS versus [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.nwcadence.com/wp-content/uploads/2012/05/Lori1.jpg"><img style="background-image: none; margin: 0px 20px 20px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border: 0px;" title="Lori" src="http://blog.nwcadence.com/wp-content/uploads/2012/05/Lori_thumb1.jpg" alt="Lori" width="181" height="181" align="left" border="0" /></a>The nature of this post is unconventional. As President of <a href="http://www.nwcadence.com">Northwest Cadence</a>, I get to spend a lot of time talking about all things related to helping companies improve their software development processes. But I’m not here to talk about that. Nor am I here to talk about Kanban versus Scrum; TFS versus Jira; or push versus pull. This post discusses why non-technical Business Owners, Executives, and Managers should care about Application Lifecycle Management (ALM) and know how it impacts their world.</p>
<p>I’m writing from a perspective I’m very familiar with &#8211; Sales. I reference the concept of a Sales Lifecycle Management (SLM) strategy as a parallel to help explain the value of ALM. As you read on, I’d invite you to use “[you fill in the blank] Lifecycle Management” to help bring relevance to you.</p>
<h2>Why should a non-technical executive care about ALM in their organization?</h2>
<p>We spend a lot of time and energy investing in our sales organizations to make sure they are performing. I’d encourage you to spend a little time and energy on investing in your ALM strategy for equally impactful results. There’s more in common with your development teams and your sales team that you’d think…</p>
<p>Skeptical? Read on!</p>
<h2>ALM Defined</h2>
<p>Let’s define ALM so we can get to the meat of this post. Application Lifecycle Management is exactly what it sounds like: the <strong>management</strong> of an <strong>application</strong>’s <strong>lifecycle</strong>. ALM is the end-to-end process a development team or organization has decided to follow when building software.</p>
<h2>Why do you care?</h2>
<p>Before starting Northwest Cadence, I ran the Sales organization for a technical training organization. For those who have worked with sales people, you know that some of the best tend to be maverick-cowboy-types with strong wills, colorful personalities, and a certain level of do-it-my-way when it comes to reporting, forecasting, and following company processes. Sound like any software developers you know?</p>
<p>Like any Sales Director, it was in my best interest to help support the great sales progress of my rock stars, figure out how to replicate their success, and gain an accurate read on their sales projections…all while making sure I didn’t stifle their motivation or empowerment.</p>
<p>A few of the common problems that occur if a well-defined process and strong team environment aren’t in place:</p>
<ul>
<li>
<p>Stuff is being sold that you can’t deliver</p>
</li>
<li>
<p>The wrong stuff is being sold</p>
</li>
<li>
<p>You don’t know what’s being sold</p>
</li>
<li>
<p>Nothing is being sold</p>
</li>
</ul>
<p>So, in effort to feed the eagles and support the teams’ growth, I did what many of you might do. I conducted a thorough evaluation of our organizational <em>Sales Lifecycle Management</em>(SLM) to determine what was broken, where we excelled, and what metrics were important for me to have a pulse on so I could effectively forecast various things. Once the evaluation was completed, we moved forward with a comprehensive, end-to-end SLM strategy that included the following components:</p>
<ul>
<li>
<p>Step 1: <strong>Define the Process</strong>. First things first. We needed to define what would become our new sales process. I collected feedback, used my best judgment, and asked some experts for guidance. Once the new process was baked, it was time to move to Step 2.</p>
</li>
<li>
<p>Step 2: <strong>Get buy-in from the team</strong>: This was the most important piece. It was also the most difficult. By helping the team see what’s in it for them – how this process will help make their lives better and produce them more results – we can more easily get buy-in. If you haven’t already, do your homework. Find out what makes your team tick and where their pains are so you can bring relevance to their lives on the positive impact these changes will make.</p>
</li>
<li>
<p>Step 3: <strong>Train the team. </strong>We trained the entire sales and marketing teams on our new sales process. This was important to level-set our organizational sales style. A forecasted 60% in the sales pipeline is no longer a subjective percentage, and there’s now a common distinction between a sales lead and an opportunity. You get the idea. After team training, the team started speaking the same language so the members could be in lock-step, learn from one another, and work collaboratively. All important keys to team success.</p>
</li>
<li>
<p>Step 4: <strong>Choose tools wisely.</strong> It’s important to identify tools that integrate with your process and accelerate your newfound efforts. We determine how to best leverage the tools we owned and decided on what tools we should buy. <em>Employ </em>your tools! Get them working for you; don’t find yourself in a position where you’re bending over backwards to work for your tools.</p>
</li>
<li>
<p>Step 5: <strong>Measure results, make small changes of improvement, proceed iteratively</strong>…</p>
</li>
</ul>
<h2>Results?</h2>
<p>By creating a well-defined process and improving the team environment, we realized results better than we imagined. The team was happy, collaborative, supportive, and surpassing their sales targets! The collective knowledge base and skill set was increasing at a greater pace, and the revolving door of sales people stopped.</p>
<p>Simply put…</p>
<p>Great process means happy people. Happy people means more productivity. Couple happy productivity with great process to get bottom line results that will make you proud and happy that you showed an interest!</p>
<h2>Get Involved!</h2>
<p>In your position of leadership, I suspect you are quite familiar with the impact strong sales revenues, wide margins, and a happy sales team has on the overall success of your organization. You can see equally strong impact on your business by spending some time focusing on your software development teams and your ALM strategy. An organization’s ALM strategy is cultural and systemic. It spans your organization and reaches your bottom line. You need to be involved in the ALM discussions, even if it’s just to ask some hard questions and understand what’s going on. You will be surprised what you learn, and excited about the possibilities you uncover!</p>]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/what-every-executive-should-know-about-alm-now/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Upgrading your process template to light up TFS 11</title>
		<link>http://blog.nwcadence.com/upgrading-your-process-template-to-light-up-tfs-11-2/</link>
		<comments>http://blog.nwcadence.com/upgrading-your-process-template-to-light-up-tfs-11-2/#comments</comments>
		<pubDate>Tue, 03 Apr 2012 19:00:02 +0000</pubDate>
		<dc:creator>Jeff Levinson</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Visual Studio 11]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42651</guid>
		<description><![CDATA[TFS 11 provides a wealth of new features in terms of project management, development and customer involvement. But to take advantage of these features you have to make the right changes to your process template. With the release of TFS 11, Microsoft will include the ability to update an already deployed project, but what do [...]]]></description>
			<content:encoded><![CDATA[<p>TFS 11 provides a wealth of new features in terms of project management,<br />
development and customer involvement. But to take advantage of these features<br />
you have to make the right changes to your process template. With the release of<br />
TFS 11, Microsoft will include the ability to update an already deployed<br />
project, but what do you do if you want to upgrade a base template? Read on…</p>
<p>The easiest way to start is by downloading an existing process template from<br />
a TFS 11 server. This will provide you with the files you need and make it so<br />
you can easily copy and paste the important items into your process template.<br />
The rest of this post assumes that you have done this as I’ll refer to specific<br />
files from an existing process template (the MSF for Agile process template in<br />
this case).</p>
<p>After you’ve done that, it’s time for the simple changes:</p>
<ul>
<li>Change the system.description field from PlainText to HTML</li>
</ul>
<blockquote><p>When you upgrade, the system.description field is automatically converted to<br />
HTML (finally)! However, if you try to make a change to the template without<br />
changing this field, the next time you run witadmin importwitd it will tell you<br />
that the import fails with the reason that system.description is HTML and cannot<br />
be converted to PlainText. This will just save you some grief.</p>
</blockquote>
<ul>
<li>Add storyboard tab whatever work items represent your business requirements<br />
(User Story, Requirement, Change Request, etc)</li>
</ul>
<p>Add the following XML:</p>
<blockquote>
<pre>&lt;Tab Label=&amp;amp;quot;Storyboards&amp;amp;quot;&gt;
  &lt;Control Type=&amp;amp;quot;LinksControl&amp;amp;quot; Name=&amp;amp;quot;StoryboardsControl&amp;amp;quot;&gt;
     &lt;LinksControlOptions&gt;
        &lt;WorkItemLinkFilters FilterType=&amp;amp;quot;excludeAll&amp;amp;quot;/&gt;
        &lt;ExternalLinkFilters FilterType=&amp;amp;quot;include&amp;amp;quot;&gt;
          &lt;Filter LinkType=&amp;amp;quot;Storyboard&amp;amp;quot;/&gt;
        &lt;/ExternalLinkFilters&gt;
        &lt;LinkColumns&gt;
          &lt;LinkColumn RefName=&amp;amp;quot;System.Title&amp;amp;quot;/&gt;
          &lt;LinkColumn LinkAttribute=&amp;amp;quot;System.Links.Comment&amp;amp;quot;/&gt;
        &lt;/LinkColumns&gt;
     &lt;/LinksControlOptions&gt;
  &lt;/Control&gt;
&lt;/Tab&gt;</pre>
</blockquote>
<p>Action states are what changes the state of tasks as you drag tasks (or other<br />
work items, but tasks in the out of the box templates) in the My Work pane in<br />
the Team Explorer tab of VS (Figure 1).<br />
<a href="file:///C:/Users/jeff.JTLEVINSON/AppData/Local/Temp/WindowsLiveWriter-1232103655/supfiles3467C2F4/image3.png"></a><a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/image4.png"><img class="alignnone size-medium wp-image-42646" title="image.png" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/image4-255x300.png" alt="" width="255" height="300" /></a><br />
<strong>Figure 1 – My Work pane, Team Explorer</strong></p>
<ul>
<li>To add the action settings, use the following:</li>
</ul>
<p style="padding-left: 30px;">In the TRANSITION element from Proposed to Active</p>
<blockquote>
<pre>&lt;ACTIONS&gt;
  &lt;ACTION value=&amp;amp;quot;Microsoft.VSTS.Actions.StartWork&amp;amp;quot; /&gt;
&lt;/ACTIONS&gt;</pre>
</blockquote>
<p style="padding-left: 30px;">In the TRANSITION element from Active to Closed</p>
<blockquote>
<pre>&lt;ACTIONS&gt;
  &lt;ACTION value=&amp;amp;quot;Microsoft.VSTS.Actions.Checkin&amp;amp;quot; /&gt;
&lt;/ACTIONS&gt;</pre>
</blockquote>
<p style="padding-left: 30px;">In the TRANSITION element from Active to New (or Active to Proposed)</p>
<blockquote>
<pre>&lt;ACTIONS&gt;
  &lt;ACTION value=&amp;amp;quot;Microsoft.VSTS.Actions.StopWork&amp;amp;quot; /&gt;
&lt;/ACTIONS&gt;</pre>
</blockquote>
<ul>
<li>Add the Code Review Request, Code Review Response, Feedback Request and<br />
Feedback Response to the work items xml file</li>
</ul>
<p style="padding-left: 60px;">Copy the four files from the downloaded process template to the<br />
TypeDefinitions folder and add the following lines to the workitems.xml file in<br />
the WORKITEMTYPES element:</p>
<blockquote>
<pre>&lt;WORKITEMTYPE</pre>
<pre>    fileName=&quot;WorkItem Tracking\TypeDefinitions\CodeReviewRequest.xml&quot; />
&lt;WORKITEMTYPE</pre>
<pre>    fileName=&quot;WorkItem Tracking\TypeDefinitions\CodeReviewResponse.xml&quot; />
&lt;WORKITEMTYPE</pre>
<pre>    fileName=&quot;WorkItem Tracking\TypeDefinitions\FeedbackRequest.xml&quot; />
&lt;WORKITEMTYPE</pre>
<pre>    fileName=&amp;amp;quot;WorkItem Tracking\TypeDefinitions\FeedbackResponse.xml&amp;amp;quot; /&gt;</pre>
</blockquote>
<ul>
<li>Update the categories.xml file (in the WorkItem Tracking folder)</li>
</ul>
<blockquote><p>Add the following boilerplate XML under the cat:Categories element:</p>
<pre>&lt;CATEGORY name=&amp;amp;quot;Code Review Request Category&amp;amp;quot;</pre>
<pre>    refname=&amp;amp;quot;Microsoft.CodeReviewRequestCategory&amp;amp;quot;&gt;
  &lt;DEFAULTWORKITEMTYPE name=&amp;amp;quot;Code Review Request&amp;amp;quot; /&gt;
&lt;/CATEGORY&gt;

&lt;CATEGORY name=&amp;amp;quot;Code Review Response Category&amp;amp;quot;</pre>
<pre>    refname=&amp;amp;quot;Microsoft.CodeReviewResponseCategory&amp;amp;quot;&gt;
  &lt;DEFAULTWORKITEMTYPE name=&amp;amp;quot;Code Review Response&amp;amp;quot; /&gt;
&lt;/CATEGORY&gt;

&lt;CATEGORY name=&amp;amp;quot;Feedback Request Category&amp;amp;quot;</pre>
<pre>    refname=&amp;amp;quot;Microsoft.FeedbackRequestCategory&amp;amp;quot;&gt;
  &lt;DEFAULTWORKITEMTYPE name=&amp;amp;quot;Feedback Request&amp;amp;quot; /&gt;
&lt;/CATEGORY&gt;

&lt;CATEGORY name=&amp;amp;quot;Feedback Response Category&amp;amp;quot;</pre>
<pre>    refname=&amp;amp;quot;Microsoft.FeedbackResponseCategory&amp;amp;quot;&gt;
  &lt;DEFAULTWORKITEMTYPE name=&amp;amp;quot;Feedback Response&amp;amp;quot; /&gt;
&lt;/CATEGORY&gt;

&lt;CATEGORY name=&amp;amp;quot;Hidden Types Category&amp;amp;quot;</pre>
<pre>    refname=&quot;Microsoft.HiddenCategory&quot;>
  <DEFAULTWORKITEMTYPE name=&quot;Code Review Request&quot; />
  &lt;WORKITEMTYPE name=&quot;Code Review Response&quot; />
  &lt;WORKITEMTYPE name=&quot;Feedback Response&quot; />
  &lt;WORKITEMTYPE name=&quot;Feedback Request&quot; />
  &lt;WORKITEMTYPE name=&quot;Shared Steps&quot; />
<CATEGORY></pre>
<p>One cool new thing (maybe I’m just a simpleton) is that you can create types<br />
but then hide them when end-users select New Work Item in a menu (such as no<br />
longer showing the Shared Steps work item type).</p>
</blockquote>
<ul>
<li>Add a new folder in the WorkItem Tracking folder called “Process”</li>
</ul>
<blockquote><p>Copy the AgileConfiguration.xml and CommonConfiguration.xml into this folder<br />
(get these files from the downloaded template)</p>
</blockquote>
<ul>
<li>Update the AgileConfiguration.xml file</li>
</ul>
<p>There are really only two items you need to look at in this file and they<br />
will be specific to your process template. The first is the columns that show up<br />
on the Product Backlog and Iteration Backlog pages in Team Web Access. The other<br />
item is which fields show up on the Product Backlog “panel” (Figure 2).<br />
<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/image5.png"><img class="alignnone size-medium wp-image-42648" title="image.png" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/image5-300x102.png" alt="" width="300" height="102" /></a><br />
<strong>Figure 2 – Product Backlog add panel</strong></p>
<p>Edit the AddPanel section to add any fields which are required for any of the<br />
work items which are in the Requirements Category of the categories file. This<br />
may not always be possible but it will make it faster to enter work items –<br />
otherwise when you click Add, the work item form itself will open to allow you<br />
to fill in required fields that do not show up on this panel. You can also add<br />
other fields which are not required but the point is to keep this as uncluttered<br />
as possible!</p>
<ul>
<li>Update the CommonConfiguration.xml file</li>
</ul>
<blockquote><p>For the most part you won’t need to make too many changes to this file but<br />
there are a couple of things to look out for:</p>
<ul>
<li>If you use a field other than StoryPoints or Estimate, change the field here<br />
(it is the field that is of type “Effort”)</li>
<li>If you have additional states on your work items, make sure you map them to<br />
the appropriate meta-state. This is a new concept in TFS 11. So, for example,<br />
say you are using the MSF for CMMI process template which has the states<br />
“Proposed”, “Active”, “Resolved”, “Closed”. The meta-states for these are<br />
Proposed = Proposed, Active = In Progress, Resolved = In Progress, Closed =<br />
Complete. This allows things like the task board to handle any number of states<br />
and know when you haven’t started working on something, are working on something<br />
or have finished something. You set these states per<br />
category.</li>
</ul>
</blockquote>
<p>That’s about it. I’ll add two more caveats: 1) Version control your process<br />
templates and 2) I have made every effort to ensure there are no typo’s in these<br />
instructions and these instructions apply to the Beta version only and I will<br />
not take responsibility if you added something without thinking it through. The<br />
best way to avoid this situation is to just copy the XML from the downloaded<br />
templates!</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/upgrading-your-process-template-to-light-up-tfs-11-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Database Build &amp; Deployment with TFS</title>
		<link>http://blog.nwcadence.com/database-build-deployment-with-tfs-2/</link>
		<comments>http://blog.nwcadence.com/database-build-deployment-with-tfs-2/#comments</comments>
		<pubDate>Mon, 26 Mar 2012 17:00:06 +0000</pubDate>
		<dc:creator>Bryon Root</dc:creator>
				<category><![CDATA[Team Foundation Build]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Visual Studio ALM]]></category>
		<category><![CDATA[Visual Studio Team Foundation Server]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42628</guid>
		<description><![CDATA[Over the past few weeks, I have been working with database deployment using Visual Studio 2010 and Team Foundation Server. While putting a solution together, I gathered a number of resources that may be of value to you or someone on your team! When starting a complex topic, such as database deployment and management, it [...]]]></description>
			<content:encoded><![CDATA[Over the past few weeks, I have been working with database deployment using Visual Studio 2010 and Team Foundation Server. While putting a solution together, I gathered a number of resources that may be of value to you or someone on your team!

When starting a complex topic, such as database deployment and management, it is hard to know where to start looking for resources. Additionally, it is difficult to know which resources you need to review and in what order.

While gathering my initial resources, I found that having a good order to review the resources was very helpful to my journey of getting a complete understanding of Application Lifecycle Management (ALM) best practices for database development, management, build, deployment, and release.

I bet that you, like all DB developers and CM’s, find that there is very little time in the day to spend searching websites and running into unfruitful resources! Hopefully, this post will provide direction and save you or your team time!

The first place I started was reviewing the <a href="http://vsdatabaseguide.codeplex.com/">Visual Studio Database Guide</a> (VSDBGuide) that is on CodePlex. This is a fantastic guide! It has hands-on labs that covers all aspects of the Database Application Lifecycle Management (ALM) best practices. To quote the <a href="http://msdn.microsoft.com/en-us/vstudio/ee358786.aspx">ALM Ranger’s site</a> on CodePlex:

<em>“This release includes common guidance, usage scenarios, hands on labs, and lessons learned from real world engagements and the community discussions.” </em>

After reviewing and figuring out how and why these pieces go together, it was time to get my hands dirty and build a project. The ALM Rangers <a href="http://vsdatabaseguide.codeplex.com/">Visual Studio Database Guide</a> (VSDBGuide) has a handful of Hands-on Labs to practices with – which is exactly what I did!

As I started building the labs, I found that I needed more in-depth knowledge in specific some areas to best utilize the practice labs.

One of the first areas was on <em>how to setup my environment for preforming a database build and deployment</em>. Another specific area was how to run the VSDBCMD.EXE application – these both are worth becoming familiar with.

VSDBCMD is straightforward and can be executed from a PowerShell script, which is great because it provides a more scalable and flexible deployment and release method. That is something I would like to cover in a later blog post; but for now, getting a demo of the fundamentals is a good starting point as Sprint Zero.

The requirements (if you are using Scrum) or acceptance criteria (if you are using Agile) of Sprint Zero was to get an environment setup with a working demo. The focus was on the basic functions and concepts you need to build and deploy a solution using Visual Studio 2010 and the VSDBCMD command line. A second part, was to make changes to a schema object, then build and deploy that change. Although this may not be a huge, complex, set of actions, the focus was to get the build and deployment working!

The environment I used was VM with a single install of TFS 2010, SQL Server 2008, and Visual Studio 2010. It was a bonus that I had a ready-made database project that could be used for my solution. <span style="font-size: x-small;">Note: the Hands-on Labs uses Adventure Works database as the test model. </span>

Once I got the environment set and I created a new empty database, I then needed to build and deploy the SQL server project from Visual Studio. The Visual Studio deployment is very simple. Below are references that cover the DB project configuration and setting.

· <a href="http://msdn.microsoft.com/en-us/library/dd193254.aspx">How to: Configure Deployment Settings for Database and Server Projects</a>

· <a href="http://msdn.microsoft.com/en-us/library/dd193409.aspx">Build and Deploy Databases to an Isolated Development Environment</a>

Next, I needed to setup the .dbproj file to recreate the database and its schema, as well as  to build and deploy my database project. This process adds all of the schema objects into my new empty database based on my ready-made database project. As a helpful resource, the following links cover the configuration, settings, and deployment topics in more detailed:

· <a href="http://msdn.microsoft.com/en-us/magazine/dd483214.aspx">Introducing New Features In The VSTS Database Edition GDR</a> <span style="text-decoration: underline;"> </span>

· <a href="http://msdn.microsoft.com/en-us/library/dd193423.aspx">How to: Configure Database Properties for Database Projects</a>

· <a href="http://msdn.microsoft.com/en-us/library/dd193289.aspx">Property Files in Database and Server Projects</a>

· <a href="http://msdn.microsoft.com/en-us/library/aa833291.aspx">An Overview of Database Project Settings</a>

Next, I wanted to make a small change to a table and store a procedure, so that I could then deploy the update from a command line. I made the changes, built the project again within Visual Studio, and used the VSDBCMD command line utility to do the deployment. The below links are good references for the VSDBCMD command.

· <a href="http://msdn.microsoft.com/en-us/library/dd193283.aspx">Command-Line Reference for VSDBCMD.EXE (Deployment and Schema Import)</a>

· <a href="http://msdn.microsoft.com/en-us/library/dd193258.aspx">How to: Prepare a Database for Deployment From a Command Prompt by Using VSDBCMD.EXE</a>

· <a href="http://msdn.microsoft.com/en-us/library/dd172135.aspx">How to: Import a Schema from a Command Prompt</a>.

Here are some additional less advanced links as a <a href="http://msdn.microsoft.com/en-us/library/dd470568.aspx">Technical Reference for Visual Studio Application Lifecycle Management</a>, which has the two parts:

· <a href="http://msdn.microsoft.com/en-us/library/dd470565.aspx">Automation Command Reference for Database Features of Visual Studio</a>

· <a href="http://msdn.microsoft.com/en-us/library/dd193283.aspx">Command-Line Reference for VSDBCMD.EXE (Deployment and Schema Import)</a>

&nbsp;

At this point, I had completed my Sprint Zero story of creating a working demo using both Visual Studio and the VSDBCMD! This process really cemented the fact that these basic steps are a good way to do a quick reality check as well as get the deployment working on a developer machine (and NO not for Production releases).

This brought me to the next step: to get a Team Build in TFS working.

To get the Team Build setup and working, I started with a new story and new tasks in Visual Studio. This way I could track my progress and, if I got pulled away from my work (as we all do), I could come back and know exactly where I had left off and what my next steps needed to be. The acceptance criteria for this story was to have a basic Team Build in place with an automated deployment using the VSDBCMD.

The tasks that I created for the DB Team Build story were:

1. Create a basic Team Build using the default template (without any deployment).

2. Verify that the Team Build can be deployed by using the VSDBCMD.exe command.

3. Create a new custom Team Build template called VSDBCMD.

4. Test the new custom Team Build template with a Team Build that had already been completed successfully.

Team Build in itself is a large topic &#8211; I’m asked all the time: “why do we need to have Team Build?”. Well, here are my top three answers:

1. You want to have predictable results. Think of a science lab environment, where you create and test new chemicals; you would want to reduce the number of variables that might corrupt or pollute the batch, right? Software builds and deployments are no different. The software change should be the only variable and change.

2. Do you want to have a computer do the work or do you want to do it manually? Automation is an amazing thing -use it!

3. You want to have a known and reliable: build, deployment, and release process. Team Builds are critical to achieving the &#8220;Real Time&#8221; or &#8220;Continuous&#8221; deliveries we all read about and strive to accomplish!

If you are new to Team Build here are a few links that cover the subject:

· <a href="http://msdn.microsoft.com/en-us/library/dd793166.aspx">Understanding a Team Foundation Build System</a>

· <a href="http://msdn.microsoft.com/en-us/library/ff977206.aspx">Control Where the Build System Places Your Binaries</a>

· <a href="http://msdn.microsoft.com/en-us/library/ff972305.aspx">Guidance for Build, Deploy and Test Workflows</a>

· <a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/06/17/toc-build-customization-guide-blog-posts-and-reference-sites.aspx">Visual Studio Build Customization Guidance</a>

When I create a basic Team Build using the default template, I always verify the code in the drop location and perform the following quick checkpoints:

1. I can make a change to a SQL schema object.

2. I check-in my code and associate it to a work item task that are in my user story.

3. Verify that I can check a change into source control and see the history and associated work item for reporting.

4. Verify that the Team Build had dropped the correct files in the Team Build drop folder.

5. Verify that I can deploy the SQL solution using the VSDBCMD command with the Team Build drop location.

This completed two of my tasks in the Team Build DB story. The next step was to create a Team Build template that would run the VSDBCMD commands as part of the Team Build. The following links provide a good walkthrough on creating custom build template that use VSDBCMD:

· <a href="http://msdn.microsoft.com/en-us/library/ff805001.aspx">Walkthrough: Define a Custom Workflow to Deploy a Database from Team Foundation Build</a>

· <a href="http://www.codewrecks.com/blog/index.php/2010/01/04/deploy-a-database-project-with-tfs-build-2010">Deploy a database project with tfs build 2010</a>

· <a href="http://www.justaprogrammer.net/2011/10/27/continuous-integration-with-tfs2010-msdeploy-vsdbcmd/">Continuous Integration with TFS2010, MSDeploy &amp; VSDBCMD</a> (I really like this template, it let’s you pass in the parameter AND has a web deployment section)

At the end of the day, I now have a working demo using ALM practices. I also now have fundamental framework that I can reference, as well as an understanding of Database development using Visual Studio and VSDBCMD. The main lesson learned, was to make sure that I made small, iterative steps and ran checkpoints to ensure that I did not have to go through a number of changes before I found any breakdowns or problems. Give it a try, yourself  &#8211; I think you will agree that it is worth the effort!]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/database-build-deployment-with-tfs-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software Testing with Visual Studio 2010 &#8211; now in Chinese!</title>
		<link>http://blog.nwcadence.com/software-testing-with-visual-studio-2010-now-in-chinese/</link>
		<comments>http://blog.nwcadence.com/software-testing-with-visual-studio-2010-now-in-chinese/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 18:39:50 +0000</pubDate>
		<dc:creator>Jeff Levinson</dc:creator>
				<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Test Professional 2010]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42603</guid>
		<description><![CDATA[<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/WP_000074.jpg"></a> This is just cool. I don’t think I’ve ever had a book translated into Chinese. Nothing more to say here. Just cool!]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/WP_000074.jpg"><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="WP_000074" border="0" alt="WP_000074" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/WP_000074_thumb.jpg" width="388" height="516"></a></p> <p>This is just cool. I don’t think I’ve ever had a book translated into Chinese. Nothing more to say here. Just cool!</p>]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/software-testing-with-visual-studio-2010-now-in-chinese/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changing the download link of the Feedback Tool e-mail notification</title>
		<link>http://blog.nwcadence.com/changing-the-download-link-of-the-feedback-tool-e-mail-notification/</link>
		<comments>http://blog.nwcadence.com/changing-the-download-link-of-the-feedback-tool-e-mail-notification/#comments</comments>
		<pubDate>Thu, 08 Mar 2012 00:00:50 +0000</pubDate>
		<dc:creator>Jeff Levinson</dc:creator>
				<category><![CDATA[Visual Studio 11]]></category>
		<category><![CDATA[Visual Studio 11 Beta]]></category>
		<category><![CDATA[Feedback Manager]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42596</guid>
		<description><![CDATA[In many large organizations (and some smaller organizations) there are rules which prohibit employees from downloading applications from external sources. Typically IT teams will download and vet the software on behalf of the end user and then host the software internally. This can cut down on threats from infected software and provides other benefits as [...]]]></description>
			<content:encoded><![CDATA[In many large organizations (and some smaller organizations) there are rules which prohibit employees from downloading applications from external sources. Typically IT teams will download and vet the software on behalf of the end user and then host the software internally. This can cut down on threats from infected software and provides other benefits as well. So, when an e-mail is sent out from TFS for a feedback session, how do you change the URL such that it points to a place on your internal network?

First, this is not a supported scenario but it works (as I’ll demonstrate here) and secondly, there is one side effect which you have to know about and handle appropriately.

Figure 1 shows the default feedback e-mail.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/image.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/image_thumb.png" border="0" alt="image" width="733" height="290" /></a>

<strong>Figure 1 – Default e-mail request for feedback</strong>

Note the URL of the install feedback tool link. This is what we will change (the rest of the e-mail is a form e-mail which is essentially created by what you fill out when requesting feedback.

To change the URL, do the following:
<ol>
	<li>Remote in to the TFS Application Tier (this has to be done on all tiers if you have multiple app tiers)</li>
	<li>While probably not required, I stop the web site on the application tier to perform this operation</li>
	<li>Open Windows Explorer and go to C:\Program Files\Microsoft Team Foundation Server Dev11\Application Tier\Web Services\_static\tfs\11\_scripts\TFS</li>
	<li>Copy the file TFS.Requirements.Feedback.Models.min.js and put the copy someplace safe – you will need it for servicing purposes (more on that in a moment)</li>
	<li>Edit the original file (the one that is still in the location in Step 2)</li>
	<li>Press Ctrl+F and find “INSTALL_FEEDBACK_TOOL_URL”</li>
	<li>Replace the default value that is listed here (“http://go.microsoft.com/fwlink/?LinkId=230568”) with a value of your choice. Note that if this isn’t a website but a file, you still need forward slashes and not back slashes. The value I’m going to use for this example is “file://nas/software/images/dev11beta/vs_feedbackclient.exe” – note the direction of the slashes when you see the resulting e-mail</li>
	<li>Save the file to some other location (because of administrative permissions you’ll need to copy it back rather than saving over the existing file)</li>
	<li>Copy the newly saved file back to C:\Program Files\Microsoft Team Foundation Server Dev11\Application Tier\Web Services\_static\tfs\11\_scripts\TFS</li>
	<li>If you stopped IIS, restart it now</li>
</ol>
Have someone request some feedback and take a look at the resulting e-mail (Figure 2).

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/image1.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/image_thumb1.png" border="0" alt="image" width="742" height="296" /></a>

<strong>Figure 2 – E-mail with the changed feedback URL</strong>

A couple of things to note – in step 7 above we put in a value that doesn’t exactly look like the value here. TFS changes this based on the type of value you put in so it is correct. Clicking this link does in fact start the installation process from the location I specified earlier.

A note about servicing: The file I changed in step 7 above contains a digital signature. This signature is used for validation purposes when servicing (applying service packs or hot fixes to) TFS. When you change the file you obviously invalidate the digital signature. Before you attempt to service TFS, re-copy the original file back to this location and then perform the servicing. Afterwards, take another backup, re-edit the file again (do not use your original copy) and change the install URL again. This way the file will always be the latest except for that URL.

Now you have an e-mail which pulls the installation media from an internal network location rather than Microsoft and you are once again compliant with your companies policies!]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/changing-the-download-link-of-the-feedback-tool-e-mail-notification/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Requesting Feedback with TFS 11 beta</title>
		<link>http://blog.nwcadence.com/requesting-feedback-with-tfs-11-beta/</link>
		<comments>http://blog.nwcadence.com/requesting-feedback-with-tfs-11-beta/#comments</comments>
		<pubDate>Wed, 07 Mar 2012 19:00:53 +0000</pubDate>
		<dc:creator>Jeff Levinson</dc:creator>
				<category><![CDATA[Visual Studio 11]]></category>
		<category><![CDATA[Visual Studio 11 Beta]]></category>
		<category><![CDATA[Feedback Manager]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42565</guid>
		<description><![CDATA[I’ve talked about the feedback tool <a href="http://blog.nwcadence.com/dev11-preview-is-outfirst-in-a-series/" target="_blank">before</a> when the TFS CTP was released and there have been many changes to the tool and the process as well (hopefully there will be more changes before the release). What is the feedback tool? In short, it is designed to solicit feedback from your customers on [...]]]></description>
			<content:encoded><![CDATA[I’ve talked about the feedback tool <a href="http://blog.nwcadence.com/dev11-preview-is-outfirst-in-a-series/" target="_blank">before</a> when the TFS CTP was released and there have been many changes to the tool and the process as well (hopefully there will be more changes before the release). What is the feedback tool? In short, it is designed to solicit feedback from your customers on an application and to capture that data and add it to the traceability matrix of a requirement.

To begin with, you can solicit feedback just by clicking the Request Feedback link on the home page of any project in Team Web Access. This is a change from the CTP. In the CTP you could select an individual requirement and select Request Feedback. This is one of the changes that I am hoping will make it back into the final release as it eliminates the manual step of linking the feedback to the user story (which you have to do in the beta). Figure 1 shows the updated home page in Team Web Access.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback1.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback1_thumb.png" border="0" alt="Feedback1" width="675" height="551" /></a>

<strong>Figure 1 – Team Web Access Home Page with the Request Feedback link highlighted</strong>

Once you request feedback you will be presented with the form shown in Figure 2.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback2.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback2_thumb.png" border="0" alt="Feedback2" width="674" height="562" /></a>

<strong>Figure 2 – Request Feedback Form</strong>

This form lets you specify who you are going to send the request for feedback to, what type of application they are going to be reviewing and how to get to that application and finally what you want the reviewers to actually review. You can provide launch instructions and as many focus areas as required (although, as a best practice focus on only one or two areas for each piece of feedback). Using agile you would ideally request feedback on a single story at a time which is a small, targeted requirement. For a waterfall project you should request feedback on a very narrow sliver of the requirement otherwise it becomes more difficult to take action on the provided feedback. Clicking Add feedback item on the bottom left will create new item sections under section 3 (shown in Figure 2 at the bottom).

You can then preview or simply send the feedback request. The e-mail the end user receives is shown in figure 3.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback3.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback3_thumb.png" border="0" alt="Feedback3" width="679" height="615" /></a>

<strong>Figure 3 – Feedback Request e-mail. Here I requested feedback from myself!</strong>

Clicking Start your feedback session will launch your application (if that is possible). If the end user does not have the feedback tool installed they can install it via the link directly from Microsoft. The rest of the form is a template based e-mail. In my next blog post I’ll show you how to customize this (it is not a fully supported feature but it works just fine) e-mail.

Once you start the feedback session a docked feedback panel will be displayed to the left of the screen (you can float this window as well or dock it to other sides) as shown in Figure 4.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback4.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback4_thumb.png" border="0" alt="Feedback4" width="300" height="471" /></a>

<strong>Figure 4 – Feedback panel</strong>

From here, launch the application and click Next to begin providing feedback. When you click Next you are presented with the “Provide” tab of the feedback form (Figure 5).

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback5.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback5_thumb.png" border="0" alt="Feedback5" width="294" height="746" /></a>

<strong>Figure 5 – The Provide tab of the feedback tool</strong>

As you can see, this is very flexible in terms of taking feedback from the user. You can record the screen or audio or both or neither! You can take screenshots (a screenshot is shown in the feedback pane in Figure 5) and annotate it with your favorite program (I used Snagit 11 for this demonstration – you can change the tool and set a few more options by clicking the settings button at the top of the pane (small gear to the left of the help icon)). You can also provide a rating by selecting 1 to 5 stars at the bottom of the pane.

When you are done recording feedback, click Next which will display the submit pane (Figure 6).

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback6.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback6_thumb.png" border="0" alt="Feedback6" width="300" height="498" /></a>

<strong>Figure 6 – Submit Pane of the Feedback tool</strong>

Once you click Submit and Close you are done. The feedback has been provided to the team. Now, when a team member goes to look at the feedback they will the work item shown in Figure 7.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback7.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/03/Feedback7_thumb.png" border="0" alt="Feedback7" width="692" height="552" /></a>

<strong>Figure 7 – The Feedback Response work item</strong>

As you can see, the feedback and the responses are two different types of work items. The response is associated in a parent/child relationship with the Feedback Request work item that generated it. My recommendation at this point is to associate the Feedback Request in a parent/child relationship with the work item you requested feedback for. This makes querying for feedback and feedback responses very easy. It also means you do not have to explicitly link all feedback responses to the requirement.
<h2>Some final thoughts</h2>
The feedback tool is the first tool I’ve seen (there may be others out there) that incorporates solid data from customers regardless of where they are. Scrum practitioners always say that teams have to be co-located with their customers so they can provide immediate feedback. We wish that were always possible but we all know it isn’t either possible or practical in many cases. This is the next best thing to be able to look over your customers shoulders – and there is no “lost in translation” effect of having a customer type out a long wordy e-mail on what they think of a feature. Use this tool to get almost the exact same benefits of having your customer sitting right next to you without having your customer sitting right next to you.

This is a great and valuable edition to the Visual Studio ALM tools.]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/requesting-feedback-with-tfs-11-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upgrading to Team Foundation Server 11 (TFS 11) Beta</title>
		<link>http://blog.nwcadence.com/upgrading-to-team-foundation-server-11-tfs-11-beta/</link>
		<comments>http://blog.nwcadence.com/upgrading-to-team-foundation-server-11-tfs-11-beta/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 17:16:30 +0000</pubDate>
		<dc:creator>Steven Borg</dc:creator>
				<category><![CDATA[Visual Studio 11]]></category>
		<category><![CDATA[Visual Studio 11 Beta]]></category>
		<category><![CDATA[Visual Studio 2008 Team Foundation Server]]></category>
		<category><![CDATA[TFS 11]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/upgrading-to-team-foundation-server-11-tfs-11-beta/</guid>
		<description><![CDATA[The upgrade is surprisingly simple and quite fast.  Here’s a short video showing the upgrade process.  Only 5 minutes long, so it’s a short watch!  It covers downloading TFS 11 Beta, running the install wizard, and upgrading a two tier TFS server.]]></description>
			<content:encoded><![CDATA[The upgrade is surprisingly simple and quite fast.  Here’s a short video showing the upgrade process. 

Only 5 minutes long, so it’s a short watch!  It covers downloading TFS 11 Beta, running the install wizard, and upgrading a two tier TFS server.

<!-- copy and paste. Modify height and width if desired. -->
<object id="scPlayer" width="640" height="360" jsseektime="function () {      return eval(instance.CallFunction(&quot;&lt;invoke name=\&quot;&quot;+name+&quot;\&quot; returntype=\&quot;javascript\&quot;&gt;&quot; + __flash__argumentsToXML(arguments,0) + &quot;&lt;/invoke&gt;&quot;));   }" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Visual%20Studio%2011%20(NDA)/media/1305eb62-6dd5-4287-8877-0cb521e6b3ce/mp4h264player.swf"><param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Visual%20Studio%2011%20(NDA)/media/1305eb62-6dd5-4287-8877-0cb521e6b3ce/mp4h264player.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#FFFFFF" /><param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Visual%20Studio%2011%20(NDA)/media/1305eb62-6dd5-4287-8877-0cb521e6b3ce/FirstFrame.jpg&amp;containerwidth=1280&amp;containerheight=720&amp;analytics=UA-6019971-3&amp;content=http://content.screencast.com/users/NWCadence/folders/Visual%20Studio%2011%20(NDA)/media/1305eb62-6dd5-4287-8877-0cb521e6b3ce/VSALM11%20-%20Administration%20-%20Upgrade%20to%20TFS%2011%20Beta%20(StevenBorg).mp4&amp;blurover=false" /><param name="allowFullScreen" value="true" /><param name="scale" value="showall" /><param name="allowScriptAccess" value="always" /><param name="base" value="http://content.screencast.com/users/NWCadence/folders/Visual%20Studio%2011%20(NDA)/media/1305eb62-6dd5-4287-8877-0cb521e6b3ce/" /></object>]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/upgrading-to-team-foundation-server-11-tfs-11-beta/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Unit Testing in Visual Studio 11</title>
		<link>http://blog.nwcadence.com/unit-testing-in-visual-studio-11/</link>
		<comments>http://blog.nwcadence.com/unit-testing-in-visual-studio-11/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 16:38:36 +0000</pubDate>
		<dc:creator>JamesTupper</dc:creator>
				<category><![CDATA[Application Lifecycle Management (ALM)]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Visual Studio 11]]></category>
		<category><![CDATA[Dev11]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42142</guid>
		<description><![CDATA[There are some great features of Unit Testing in Visual Studio 11. I am excited to see how the new version of Visual Studio brings new features and abilities, improving upon some things that were difficult in 2010. Creating Unit Tests First things first, you’ll want to know how to create and run a unit [...]]]></description>
			<content:encoded><![CDATA[There are some great features of Unit Testing in Visual Studio 11. I am excited to see how the new version of Visual Studio brings new features and abilities, improving upon some things that were difficult in 2010.
<h1>Creating Unit Tests</h1>
First things first, you’ll want to know how to create and run a unit test! In Visual Studio 11, you have the ability to plug in MSTest, NUnit, and xUnit without extra hassle. You will also be able to build and run these test cases with a build definition (on a build server). In this first video, I make a simple test case and run it using the Unit Test Explorer.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/9f4d8669-3a34-4557-b7b0-1a4b3f97280d/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/9f4d8669-3a34-4557-b7b0-1a4b3f97280d/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/9f4d8669-3a34-4557-b7b0-1a4b3f97280d/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/9f4d8669-3a34-4557-b7b0-1a4b3f97280d/VSALM11%20-%20Unit%20Testing%20-%20Creating%20Unit%20Tests%20(Tupper).mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/9f4d8669-3a34-4557-b7b0-1a4b3f97280d/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/9f4d8669-3a34-4557-b7b0-1a4b3f97280d/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 1: VIDEO – Creating Unit Tests in Visual Studio 11</strong>
<h1>Running Unit Tests</h1>
Now that you’ve seen how to run a unit test after creating it, let’s dive a bit deeper. Featured below are more of the specifics of the Unit Test Explorer, how to run unit tests, and some highlighted features within it.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/3f4d289a-e2c9-4ccf-a96c-70f394e8f5a5/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/3f4d289a-e2c9-4ccf-a96c-70f394e8f5a5/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/3f4d289a-e2c9-4ccf-a96c-70f394e8f5a5/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/3f4d289a-e2c9-4ccf-a96c-70f394e8f5a5/VSALM11%20-%20Unit%20Testing%20-%20Run%20Unit%20Tests%20(Tupper).mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/3f4d289a-e2c9-4ccf-a96c-70f394e8f5a5/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/3f4d289a-e2c9-4ccf-a96c-70f394e8f5a5/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 2: VIDEO – Running Unit Tests in Visual Studio 11</strong>
<h1>Debugging a Failed Unit Test</h1>
What happens when you run into a failed unit test? The Unit Test Explorer will give you information about the failed test (i.e. why it didn’t pass, the exception, if one was thrown, the stack trace, etc.) as well as jumping right to the code when double clicked. This video looks at these aspects and fixes a unit test that has failed.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/cafe4b81-9323-4a61-9108-e2aca9e8792b/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/cafe4b81-9323-4a61-9108-e2aca9e8792b/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/cafe4b81-9323-4a61-9108-e2aca9e8792b/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/cafe4b81-9323-4a61-9108-e2aca9e8792b/VSALM11%20-%20Unit%20Testing%20-%20Debugging%20a%20failed%20unit%20test%20(Tupper).mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/cafe4b81-9323-4a61-9108-e2aca9e8792b/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/cafe4b81-9323-4a61-9108-e2aca9e8792b/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 3: VIDEO – Debugging Failed Unit Tests in Visual Studio 11</strong>
<h1>Code Clones</h1>
A new feature with Visual Studio 11, is the ability to search for code clones within your solution. There are two, in my opinion, very helpful approaches to take. I will go into both, but there is one thing I want to note: Visual Studio 11 will analyze/search for code clones only within the solution that is open. So, if you have other projects that do not exist within your solution but you will reference them, they will<em> not</em> be analyzed/searched for clones.
<h2>Analyze for Code Clones</h2>
The first approach when looking for code clones is to merely analyze your <em>entire</em> solution for code that seems similar. This  doesn’t simply look for code that is identical, but also code that is simple.  This means you may consider refactoring code to keep the cost of maintenance down in the future.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/51abefa8-6f47-403a-9e67-fd6ed16c4fc3/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/51abefa8-6f47-403a-9e67-fd6ed16c4fc3/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/51abefa8-6f47-403a-9e67-fd6ed16c4fc3/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/51abefa8-6f47-403a-9e67-fd6ed16c4fc3/VSALM11%20-%20Unit%20Testing%20-%20Analyze%20for%20Code%20Clones%20(Tupper).mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/51abefa8-6f47-403a-9e67-fd6ed16c4fc3/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/51abefa8-6f47-403a-9e67-fd6ed16c4fc3/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 4: VIDEO – Analyze for Code Clones in Visual Studio 11</strong>
<h2>Search for Code Clones</h2>
The second approach for looking for code clones doesn’t look at the high level solution, but  instead, searches for specific lines that you deem may be similar elsewhere in the solution. This is helpful in similar ways to searching the whole solution, but it also has other advantages. For instance, if you’re writing a new method that seems oddly familiar, you can highlight code and search for a clone to see if it has already been written.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/5cc840b8-ad00-4ae4-802b-4c7de108f4fb/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/5cc840b8-ad00-4ae4-802b-4c7de108f4fb/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/5cc840b8-ad00-4ae4-802b-4c7de108f4fb/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/5cc840b8-ad00-4ae4-802b-4c7de108f4fb/VSALM11%20-%20Unit%20Testing%20-%20Search%20for%20Code%20Clones%20(Tupper).mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/5cc840b8-ad00-4ae4-802b-4c7de108f4fb/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/5cc840b8-ad00-4ae4-802b-4c7de108f4fb/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 5: VIDEO – Search for Code Clones</strong>
<h1>Code Coverage</h1>
In Visual Studio 11, you can now <em>easily </em>analyze the code coverage your tests have, (whereas it would take eight clicks in Visual Studio 2010). The video below shows how to run code coverage and shows the results in the new Code Coverage Results view.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/046ceae3-8fd5-464a-9ba4-2e32fe9d8ea2/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/046ceae3-8fd5-464a-9ba4-2e32fe9d8ea2/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/046ceae3-8fd5-464a-9ba4-2e32fe9d8ea2/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/046ceae3-8fd5-464a-9ba4-2e32fe9d8ea2/VSALM11%20-%20Unit%20Testing%20-%20Code%20Coverage.mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/046ceae3-8fd5-464a-9ba4-2e32fe9d8ea2/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/046ceae3-8fd5-464a-9ba4-2e32fe9d8ea2/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 6: VIDEO – Code Coverage in Visual Studio 11</strong>
<h1>Run Tests After Build</h1>
Visual Studio 11 does not directly have test impact analysis, such as Visual Studio 2010 did. Test impact analysis is not visible via a Build in Test Manager. Instead, they have added the ability to run unit tests after a build. There is of course logic as to which tests to run, but it is not logic based off of test impact analysis. This video will run through the logic path that will happen when tests run automatically after a build is complete.


               <div id="ambienceContainer">
                  <div id="ambience"></div>
               </div>
               <!-- copy and paste. Modify height and width if desired. -->
   <object id="scPlayer" class="embeddedObject" width="640" height="360" type="application/x-shockwave-flash" data="http://content.screencast.com/users/NWCadence/folders/Published/media/15dac035-a450-467d-93c1-42224a8db9b2/mp4h264player.swf" >
	<param name="movie" value="http://content.screencast.com/users/NWCadence/folders/Published/media/15dac035-a450-467d-93c1-42224a8db9b2/mp4h264player.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#FFFFFF" />
	<param name="flashVars" value="thumb=http://content.screencast.com/users/NWCadence/folders/Published/media/15dac035-a450-467d-93c1-42224a8db9b2/FirstFrame.jpg&containerwidth=1280&containerheight=720&analytics=UA-6019971-3&advseek=true&content=http://content.screencast.com/users/NWCadence/folders/Published/media/15dac035-a450-467d-93c1-42224a8db9b2/VSALM%20-%20Unit%20Testing%20-%20Run%20Tests%20After%20Build%20(Tupper).mp4&blurover=false" />
	<param name="allowFullScreen" value="true" />
	<param name="scale" value="showall" />
	<param name="allowScriptAccess" value="always" />
	<param name="base" value="http://content.screencast.com/users/NWCadence/folders/Published/media/15dac035-a450-467d-93c1-42224a8db9b2/" />
	<iframe class="embeddedObject" type="text/html" frameborder="0" scrolling="no" style="overflow:hidden;" src="http://www.screencast.com/users/NWCadence/folders/Published/media/15dac035-a450-467d-93c1-42224a8db9b2/embed" height="720" width="1280" ></iframe>
</object>   
            

<strong>Figure 7: VIDEO – Run Unit Tests After a Build in Visual Studio 11</strong>

<strong>
</strong>
<h1>Conclusion</h1>
All in all, there are some pretty neat features in Visual Studio 11 for unit testing. It has definitely been made easier to do common scenarios that one would find in an ALM environment. I think some of my favorite features are the new views and the ability to look for redundant code that can be refactored.

<em>-Find other related </em><a href="http://blog.nwcadence.com/videos/">Dev on Demand Videos</a><em>.</em>

<em>Do you want to move to Visual Studio 11 NOW? For help moving forward, please contact </em><a href="mailto:rick.flath@nwcadence.com"><em>Rick.Flath@nwcadence.com</em></a><em>.</em>
<div id="_mcePaste" class="mcePaste" style="position: absolute; width: 1px; height: 1px; overflow: hidden; top: 0px; left: -10000px;">﻿</div>]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/unit-testing-in-visual-studio-11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test Impact Analysis in Visual Studio 11</title>
		<link>http://blog.nwcadence.com/test-impact-analysis-in-visual-studio-11/</link>
		<comments>http://blog.nwcadence.com/test-impact-analysis-in-visual-studio-11/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 16:27:53 +0000</pubDate>
		<dc:creator>JamesTupper</dc:creator>
				<category><![CDATA[Application Lifecycle Management (ALM)]]></category>
		<category><![CDATA[Coded UI]]></category>
		<category><![CDATA[Software Testing]]></category>
		<category><![CDATA[Visual Studio 11]]></category>
		<category><![CDATA[Visual Studio 11 Beta]]></category>
		<category><![CDATA[Visual Studio ALM]]></category>
		<category><![CDATA[Visual Studio Team Foundation Server]]></category>
		<category><![CDATA[ALM]]></category>
		<category><![CDATA[Dev11]]></category>
		<category><![CDATA[Visual Studio11]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=42224</guid>
		<description><![CDATA[Introduction In Visual Studio 2010, you had the capability of opening up the Test Impact Analysis (TIA) window, running your unit tests, and getting test impact analysis results. While Test Impact Analysis has not been taken out of Visual Studio 11, it has radically changed. Visual Studio 2010 Below is a screen shot of what [...]]]></description>
			<content:encoded><![CDATA[<h1>Introduction</h1>
In Visual Studio 2010, you had the capability of opening up the Test Impact Analysis (TIA) window, running your unit tests, and getting test impact analysis results. While Test Impact Analysis has not been taken out of Visual Studio 11, it has radically changed.
<h1>Visual Studio 2010</h1>
Below is a screen shot of what Test Impact Analysis looks like in Visual Studio 2010:

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/image21.png"><img style="margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; float: left; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/image_thumb20.png" border="0" alt="Figure 1: Test Impact Analysis in Visual Studio 2010" width="280" height="530" align="left" /></a>

This specific window can be refreshed after a build occurs, thus giving a developer information about which unit tests were affected with their code changes. As you can see, it is split into Impacted Tests and Code changes. Basically, it is showing someone the tests that should be run again, and the reason for those tests to be run again. There is even a link at the top of the window that one can click to run the tests that have been detected to be affected. If enabled in the test settings for that solution, this data would automatically be collected and saved in the background without the developer having to pay much attention to it until needed.

Overall, this is really nice to have. For instance, if a developer is fixing a bug but the method is used for another, unknown reason, then they would want to be sure to know what tests to run in order to make sure that their method worked for both scenarios. It would also save a tester from having to run every single test whenever code is changed.
<h1>Visual Studio 11</h1>
In this new release of Visual Studio, Test Impact Analysis has not disappeared, but is not in any way the same. No longer is there a <em>Test Impact View</em>, or any way to see test impact analysis results in Visual Studio 11. In fact, many options that were once available in 2010 have been removed/changed in 11.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/image22.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/image_thumb21.png" border="0" alt="image" width="439" height="165" /></a>

<strong><em>Windows </em>sub-menu in Visual Studio 11</strong>

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/image23.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/image_thumb22.png" border="0" alt="image" width="460" height="370" /></a>

<strong><em>Windows</em> sub-menu in Visual Studio 2010</strong>

These are all the options that are now available within the Windows sub-menu (under Unit Test, deemed Test in Visual Studio 2010) of Visual Studio 11, and, as you can see, there are only two windows now available: Unit Test Explorer and Code Coverage Results. This is a drastic difference compared to the six separate views you could find in 2010. However different this may be, it does<em> not</em> mean that they have cut these features out. In Visual Studio 11, you can find the features in Test View, Test Results, and Test Runs in the Unit Test Explorer. It’s as if they have moved everything into an all-in-one view, which, in my opinion, is sweet! Obviously, the Code Coverage Results still exists, and you will see the same feature set there. The two that I have left out, Test List Editor and Test Impact View, no longer exist.
<h2>Test List Editor</h2>
Given that this is not the main topic of this post, I will only briefly cover it. There are no longer ides of lists of tests. Many people use lists to organize their tests into buckets such as continuous integration tests, regression tests, nightly tests, etc. For instance, when going to put a specific test list into a build, it no longer exists.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/image24.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/image_thumb23.png" border="0" alt="image" width="467" height="637" /></a>

<strong>Adding Tests to a Build Definition</strong>

To get similar functionality during builds, one would have to categorize the test(s) in code instead of putting them into lists that exist outside of the code.
<h2>Test Impact Analysis</h2>
Test impact analysis in Visual Studio 11, like stated previously, no longer exists for developers on their local machines. It has been pulled out, and now only exists in builds. To enable test impact in a build definition, you will have to set the <em>Analyze Test Impact</em> option to true. It is located in the Process tab, under the Advanced node.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/image25.png"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/image_thumb24.png" border="0" alt="image" width="840" height="503" /></a>

<strong>Setting the ‘Analyze Test Impact’ setting to true</strong>

This will allow for a build to analyze the code after the build and collect the appropriate data about which tests have been impacted due to code changes. Microsoft Test Manager (MTM) will now be the channel to go through to view test impact analysis results and to re run the appropriate tests in MTM.
<h1>Conclusion</h1>
All in all, the major change from Visual Studio 2010 to Visual Studio 11 is that test impact analysis is no longer in the development environment. No longer can you write code, build it locally, and view the test impact results; however, running an actual build, getting the results back, and running tests that have be defined in MTM can still be achieved. Also, there is no logic behind running only the unit tests that have been impacted by code changes; this is not even an option on the build definition. There are more changes in the testing portion of Visual Studio 11, but the main focus of this post was on the removal of the test impact view within Visual Studio.

<em>-Find other related </em><a href="http://blog.nwcadence.com/videos/">Dev on Demand Videos</a><em>.</em>

<em>Do you want to move to Visual Studio 11 NOW? It is available for install today! For help moving forward, please contact </em><a href="mailto:rick.flath@nwcadence.com"><em>Rick.Flath@nwcadence.com</em></a><em>.</em>]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/test-impact-analysis-in-visual-studio-11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting Started with Visual Studio 11</title>
		<link>http://blog.nwcadence.com/getting-started-with-visual-studio-11-2/</link>
		<comments>http://blog.nwcadence.com/getting-started-with-visual-studio-11-2/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 16:20:00 +0000</pubDate>
		<dc:creator>Bryon Root</dc:creator>
				<category><![CDATA[Visual Studio 11]]></category>
		<category><![CDATA[Visual Studio ALM]]></category>
		<category><![CDATA[Dev11]]></category>
		<category><![CDATA[Visual Studio11]]></category>

		<guid isPermaLink="false">http://blog.nwcadence.com/?p=41972</guid>
		<description><![CDATA[When I was given the opportunity to ramp up on Visual Studio 11, my first thought was: “Sure! I will look at it when I have some extra time.” I was thinking that the new version would include some new features and some new look to the Visual Studio IDE. Boy was I wrong! After [...]]]></description>
			<content:encoded><![CDATA[When I was given the opportunity to ramp up on Visual Studio 11, my first thought was: “Sure! I will look at it when I have some extra time.” I was thinking that the new version would include <em>some</em> new features and <em>some</em> new look to the Visual Studio IDE. Boy was I wrong!

After seeing the new interface and the list of new features, I quickly told myself that I need to make time to review and become familiar with the new changes and look-and-feel of the new Visual Studio 11.

The first thing you will notice is the dramatic interface change.  The interface defaults with a light background and the same tools-set, like Server Explorer, Tool Box, Team Explorer, and Solution Explorer that we all have been accustomed too.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image002.jpg"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image002_thumb.jpg" border="0" alt="clip_image002" width="244" height="140" /></a>

One of the first things I did was change the background from light to Dark. You can do this by going through the following steps:

Tools | Options | General | Color theme: | Select Dark | OK

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image004.jpg"><img style="margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image004_thumb.jpg" border="0" alt="clip_image004" width="244" height="128" /></a>

After a few seconds, the background is now in the Dark theme mode. (Which I personally like.)

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image006.jpg"><img style="margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image006_thumb.jpg" border="0" alt="clip_image006" width="244" height="164" /></a>

I realize that this is a small change, but this is just one of the new base features that Visual Studio 11 has. Another change is the Web Access interface, which also received a face-lift.

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image008.jpg"><img style="margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image008_thumb.jpg" border="0" alt="clip_image008" width="244" height="124" /></a>

<a href="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image010.jpg"><img style="padding-left: 0px; padding-right: 0px; padding-top: 0px; border-width: 0px;" src="http://blog.nwcadence.com/wp-content/uploads/2012/02/clip_image010_thumb.jpg" border="0" alt="clip_image010" width="244" height="97" /></a>

The next trick is to find where the new features are located and how they will enhance and make development more productive.

<em>Find other related </em><a href="http://blog.nwcadence.com/videos/">Dev on Demand Videos</a><em>.</em>

<em> </em>

<em>Do you want to move to Visual Studio 11 NOW? For help moving forward, please contact </em><a href="mailto:rick.flath@nwcadence.com"><em>Rick.Flath@nwcadence.com</em></a><em>.</em>]]></content:encoded>
			<wfw:commentRss>http://blog.nwcadence.com/getting-started-with-visual-studio-11-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

