The Ramblings of Two Microsoft .NET Developers, TFS, and Visual Studio ALM Guys --- "Yes, we are both named Ed."

Feature Support for Unmanaged Code in Visual Studio 2010 and TFS 2010



Just got exposed to a great table about what features are available in Visual Studio 2010 and Team Foundation Server 2010 for unmanaged code (C++.)  Thanks to Anna Russo for sharing!  Anyone know the source of this information?

Product Features (Visual Studio 2010 Ultimate)
Team Foundation Server
Version Control Yes
Work Item Tracking Yes
Build Automation Yes
Team Portal Yes
Reporting & Business Intelligence Yes
Agile Planning Workbook Yes
Test Case Management Yes
Visual Studio Team Explorer 2010 Yes
Development Platform Support
Windows Development Yes
Web Development N/A
Office and SharePoint Development N/A
Cloud Development N/A
Customizable Development Experience Yes
Testing
Unit Testing No
Code Coverage No
Test Impact Analysis No
Coded UI Test No
Web Performance Testing N/A
Load Testing N/A
Database Development
Database Deployment Yes
Database Change Management Yes
Database Unit Testing Yes
Database Test Data Generation Yes
Debugging & Diagnostics
"Pinnable" DataTips for easier data inspection N/A
Post-mortem debugging support for .NET (dump debugging) No
Breakpoint improvements (search in Breakpoints window, label, import/export) No
New WPF Visualizer N/A
Enhancements for debugging multi-threaded applications (Parallel Stack and Tasks) Yes
64-bit support for mixed-mode debugging Yes
Static Code Analysis Yes
Code Metrics No
Profiling Yes
IntelliTrace (Historical Debugging) No
Architecture and Modeling
UML & Layer Diagram Viewer Yes
Architecture Explorer Yes
UML 2.0 Compliant Diagrams (Activity, Use Case, Sequence, Class, Component) Yes
Layer Diagram and Dependency Validation No
Lab Management
Microsoft Test Manager Yes
Virtual environment setup & tear down Yes
Test Case Management Yes
Manual Test Execution Yes
Manual Test Record & Playback Yes
Lab Management Configuration Yes

 

Ed Blankenship

Posted in TFS | VSTS


When Will Microsoft Test Manager and Testing Tools Support Silverlight?



Microsoft Visual Studio Test Professional 2010 Boxsilverlight_logoA lot of people have been asking about whether the new Coded UI automated testing & Microsoft Test Manager test runner features would support Silverlight and I haven’t really had a good answer for them other than “not at 2010 RTM.”  There’s been a ton of reasons why that wasn’t the case but thankfully we received a little more information about timeline for that type of support.  We were also able to make this information available publicly so check out the raw info coming in below.  Notice my particular emphasis added around the release mechanism that was mentioned.

Whenever we talk about platform coverage for UI automation one of the frequent requests is support for Silverlight app testing. We have been hard at work trying to cater to this need and I wanted to update you all on where we are with this effort and provide a roadmap.

We are working on adding support for Silverlight controls for “Fast forward for manual testing” and “Coded UI Tests”. The focus is on line-of-business applications built with Silverlight 4 for both in-browser and on the desktop. The initial investigation is in progress and we are working with the Silverlight team to close on the overall design. We are planning to release a CTP version of a plug-in by Q2CY2010. This will be delivered out of band to active MSDN subscribers (Visual Studio Test Professional or Visual Studio Ultimate) customers only. […]

- Ram Cherala, Visual Studio Team Test Product Team

Make sure you have active MSDN subscriptions if you want to get out of band value from the product teams.  Anyone have any questions?

Ed Blankenship

Speaking at the TFS Product Team All Hands Meeting



Once of the nice things about having moved to Charleston, SC is being relatively around the corner from half of the Team Foundation Server team in Raleigh, North Carolina.Microsoft Corporation Office in Raleigh North Carolina TFS Product Team  I get plenty of opportunities to talk with the TFS product team in Redmond, WA but rarely get the opportunity to talk with the side that’s in Raleigh.  It’s good being close now.

Yesterday, I had the privilege and honor of talking at the TFS Product Team’s All Hands meeting at the Microsoft Office in Raleigh, North Carolina.  Each quarter, the entire team split between Redmond, WA and Raleigh, NC get together to talk about different topics to review the last quarter and looking forward to the future about work they want to do.  It’s very similar to some “All Hands” meetings that each of our companies put together.  They have had a tradition in the past to invite a customer in to talk about how they have used TFS in their daily work and I imagine that gives the entire team some insight into how people outside of Microsoft are actually using the products they spend every day creating.  I was invited to be that customer for this quarter.

They also really like for you to spend some time talking about what your feature requests are for the product.  I had the opportunity to discuss some of my personal areas that I’d like to see some investment made.  Normally when going to events like the Microsoft MVP Summit or providing other private feedback, I take the approach of being objective and provide feedback on behalf of the people I took to and the customers that I help.  I rarely bring up anything that I personally would like to see since some of the things I want are things that most people would never even touch or appreciate.  However, this was my one time that I didn’t feel bad about being totally subjective and asking for my personal feature desires :)

I also had some time to spend talking with the Build team and Version Control team about problems areas that I think people will run into when TFS 2010 launches next month as well as discussing some of those things that some people really hate about TFS version control.  You know who you are on Twitter :)  It was a really great conversation about the problem scenarios really are that people face before arriving to frustration with the product.

I’ve said this before but I really admire and appreciate the team for the amount of effort they put into listening and acting on feedback.  I promise and can tell you that they’re listening.  There are plenty of features and changes even coming out in TFS 2010 that were things that I know that one of the MVPs, customers, or I had originally suggested.  That means they’re not only listening but they are doing something about it.

Anyhow, it was a very productive day and really enjoyed the time.  I’m so glad to be an MVP that is tied to such a great product group.

 

Ed Blankenship

Posted in Community | Speaking | TFS | VSTS


Branching and Track Changes Visualization in TFS 2010 is Awesome



I’m up early working on a problem that’s been nagging me and just had to stop for a second to show how friggin’ awesome the new Branching & Track Changes visualization tools in TFS 2010 are.  This is on a demo TFS 2010 environment but I wanted to use the APIs to find out information about what changesets were included in a merged changeset.  I needed to find a good candidate that allowed me to follow some changes throughout the branches.  I quickly found changeset 103 in my MAIN branch which included several (but not too many) individual changesets that were included with it.  I went ahead and tracked that changeset and got the following diagram below.

TFS 2010 Branch Visualization Track Changes Hierarchy View

However, I noticed that I ended up having some kind of partial merge as indicated in the Feature A branch with changeset 78 (as indicated by the yellow shading on the track changes visualization.)  That got me curious… What happened there?  It was pretty easy to figure out because all I had to do is change to the “Timeline View” instead of the “Hierarchy View” that I was currently in and I ended up receiving the visualization below which shed some light on things.

TFS 2010 Branch Visualization Track Changes Timeline View

The reason the Feature A branch was indicated as a partial merge was because not all of the changes that are included in changeset 103 (which is the changeset we’re pivoting off of for visualizations) has been merged into that branch.  It only contains changesets 76 & 77 but not 101 & 102.  Pretty handy!

 

Ed Blankenship



Easily Show and Track Dependencies for Work Items in TFS 2010



Dependency management can be tough.  One way you can help visualize dependencies is by using the new Predecessor & Successor link type in TFS 2010 Work Item Tracking.  The way this particular link type works is that it is of type “Dependency” topology.  Here’s some more information about the Dependency topology:

Link types of this topology are like Directed Network links in that they have directionality, but an additional constraint to prevent circular relationships.

image

Example XML:

   1: <LinkTypes>
   2:     <LinkType ReferenceName="MyLinks.LinkTypes.MyPred" ForwardName="My Successor" ReverseName="My Predecessor" Topology="Dependency" />
   3: </LinkTypes>

You can list the link types currently on your TFS server by using the following command at a Visual Studio command prompt:

witadmin listlinktypes /collection:http://YourTfsServerName:8080/tfs/YourTeamProjectCollectionName

The details about the dependency link type that we’re interested as listed from witadmin.exe is:

Reference Name: System.LinkTypes.Dependency
Names: Successor, Predecessor
Topology: Dependency
Is Active: True

Gregg Boer has some more great information about customizing link types in TFS 2010 available here:  http://blogs.msdn.com/greggboer/archive/2010/03/01/tfs-2010-customizing-work-item-link-types.aspx

Adding a Dependencies Tab on the Work Item Form Layout

If you would like to add a tab in the layout for the work item type definition, you can add the following XML segment to the WITD Layout Section:

   1: <Tab Label="Dependencies">
   2:   <Control Type="LinksControl" Label="Dependencies Information for this Bug:" LabelPosition="Top" Name="Dependencies">
   3:     <LinksControlOptions>
   4:       <LinkColumns>
   5:         <LinkColumn RefName="System.Id" />
   6:         <LinkColumn RefName="System.WorkItemType" />
   7:         <LinkColumn RefName="System.Title" />
   8:         <LinkColumn RefName="System.AssignedTo" />
   9:         <LinkColumn RefName="System.State" />
  10:         <LinkColumn RefName="Microsoft.VSTS.Scheduling.OriginalEstimate" />
  11:         <LinkColumn RefName="Microsoft.VSTS.Scheduling.RemainingWork" />
  12:         <LinkColumn RefName="Microsoft.VSTS.Scheduling.CompletedWork" />
  13:         <LinkColumn RefName="Microsoft.VSTS.Scheduling.StartDate" />
  14:         <LinkColumn RefName="Microsoft.VSTS.Scheduling.FinishDate" />
  15:         <LinkColumn LinkAttribute="System.Links.Comment" />
  16:       </LinkColumns>
  17:       <WorkItemLinkFilters FilterType="include">
  18:         <Filter LinkType="System.LinkTypes.Dependency" />
  19:       </WorkItemLinkFilters>
  20:       <ExternalLinkFilters FilterType="excludeAll" />
  21:       <WorkItemTypeFilters FilterType="includeAll" />
  22:     </LinksControlOptions>
  23:   </Control>
  24: </Tab>

It will then show up on your work items something like this:

Dependencies Tab for Work Items in TFS 2010 

New Links Control Options

The LinksControl work item control has always existed but now that we have link types in TFS 2010, you can specify multiple links controls in the layout but have them specify certain filters.  Notice the User Story/Requirement, Test Case, and Bug in the MSF Agile and MSF CMMI process templates all take advantage of specifying multiple links controls.

There is more very early information about the new options of this control here:  http://blogs.msdn.com/teams_wit_tools/archive/2007/08/20/rosario-filtering-link-types-on-a-work-item-form.aspx

Dependencies Integration with Microsoft Office Project

One of the benefits of using the built-in Predecessor/Successor link type is that if you are pulling your work items into Microsoft Office Project, you end up seeing those dependencies in the project plan.  You can even change the dependencies in Project and publish your changes back to the TFS where they’ll show up on the new Dependencies tab you just created.  They are essentially round-tripped between Project and TFS 2010.

Microsoft Office Project Integration with TFS 2010 Tasks and Dependency Links Predecessor Successor

More Resources

 

Take care,

Ed Blankenship