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

Purple to Blue – Joining Visual Studio ALM Product Team at Microsoft for Lab Management



I have decided to take a position as Program Manager at Microsoft to work on the Lab Management scenarios on the Visual Studio Testing & Lab Management team.  This product team owns Microsoft Test Manager (which you can acquire in many editions including Visual Studio Test Professional, Visual Studio Premium, and Visual Studio Ultimate) as well as the testing & Lab Management scenarios of Team Foundation Server.  Today is my first day at Microsoft and will be attending New Employee Orientation (NEO).

If you are not familiar with Lab Management, in a word – it is awesome for development and test teams.  You can provision developer & test environments for use as you need them with tight integration back into the rest of Visual Studio and Team Foundation Server.  It is a feature of Team Foundation Server and you likely have all of the licenses that you need if you have MSDN subscriptions!  That means no additional license costs to take advantage of this functionality as opposed to some other solutions on the market.

Here is a high-level diagram of how it works and I have a slide deck from my 4-hour end to end Testing Workshop which includes a section on Lab Management and how it fits into the overall picture available here:  https://skydrive.live.com/redir?resid=77DB794C0A4DFE0!23778 

Lab Management Diagram in Visual Studio and Team Foundation Server

FYI – For those that may not understand the reference, I previously had a purple Microsoft badge (or a b-dash) as a Microsoft MVP and Microsoft Partner working closely with the product team.  One receives a blue badge whenever they start on as a full-time employee.

Microsoft MVP

MVP_Horizontal_FullColorHaving been part of the Visual Studio ALM & TFS Microsoft MVP group for the last five years, I can honestly say that it is the best group of ALM colleagues in the world.  They have been awesome to work with and I’m really excited about continuing to work with this same group.  Each one of my MVP colleagues brings something different to the table but the one thing in common is that everyone has been an awesome advocate for customers of TFS and Visual Studio ALM products around the world.  There is a deep interest in making things succeed and I know that I am better for it having been a part of the group.

Imaginet

Imaginet Logo

Microsoft Partner of the Year 2011 - Application Lifecycle Management (ALM)I have enjoyed my time at Imaginet (and formerly Notion Solutions) as the ALM Practice Technical Lead along with Dave McKinstry.  It’s all because of all of the great people that I have worked with.  Last year, Imaginet was honored with the Microsoft Partner of the Year award for Application Lifecycle Management.  It was just a formal indication about how awesome the ALM group of colleagues is to work with but it is something I already knew.

I am extremely fortunate to have been able to reach so many Visual Studio ALM & TFS customers while I have have been in my consulting role.  I am excited about taking that front-line experience and using it to drive further improvements into the product line.  Lately, I have been leading our Build Center of Excellence (CoE) team as well and have learned a lot about providing builds as a service and virtual environments (Lab Management) as a service to internal engineering teams for customers.  The team is doing some amazing stuff!

TechEd North America 2012

After my New Employee Orientation, my first trip as a Visual Studio ALM Program Manager is heading down to Orlando this year to work as a Microsoft booth staff member at TechEd North America 2012!  I had already been planning to work at the booth as a Microsoft MVP.  I won’t be speaking like I did last year with Christophe but that makes it less stressful for me!  Smile  I would love to meet up with you so please come by and we can talk about the product.  I’m looking forward to hearing about what’s working really well and what doesn’t work very well for your team.  I will be staffing the booth quite a bit over the week but feel free to get in touch with me if you would like my schedule closer to the event!

 

Take care!

Ed Blankenship



Release Candidate for Visual Studio 2012 and TFS 2012 Available



Visual Studio 2012 Logo

Wow!  The Release Candidate for Visual Studio 2012 and Team Foundation Server 2012 are now available on MSDN Subscriber Downloads!  The final marketing names for the former Visual Studio “11” and TFS “11” (as codenames) have been announced with this announcement as well!

  • Visual Studio 2012
  • Team Foundation Server 2012

Visual Studio 2012 Release Candidate Download Logo

As Jason Zander mentioned, that means that the final RTM release will be sometime this calendar year!  Check out the new logo too!

Visual Studio 2012 also received a face lift with added “energy” when compared to the Beta release.  I think it is looking pretty sharp now!

Visual Studio 2012 Ultimate Release Candidate Screenshot

I won’t go into all of the details of each of the new features introduced in the Release Candidate since there are several folks that have done a great job.  What I am a fan of that I’m super glad made it into the release is a new feature of Team Foundation Server 2012 when upgrading for enabling new features in team projects without having to immediately upgrade process templates for each existing team project.  Ewald Hofman (former Microsoft MVP in Visual Studio ALM) was able to document this new feature in two great new blog posts:

Check out more coverage here:

There will not be an RC-specific version of the TFS 2012 Power Tools but the Beta release will continue to work with the new version.

Enjoy!

Ed Blankenship

Posted in TFS | VSTS


How to Remove User from Team Foundation Service Accounts Security Group



I love learning new things and today I learned something new for Team Foundation Server.  This one has perplexed me in the past and it’s one of the areas that I just never dived down deep enough to try out.  I’m more writing this blog post so I can search for this again when I come to this situation in the future!

Essentially, I wanted to remove some users from the built-in “Team Foundation Service Accounts” security group at the server-instance level.  They are added whenever you add them in the “Administration Console Users” group in the TFS Administration Console.  However, when you look at the built-in service accounts group using Team Explorer or the Administration Console, you’ll notice that the dialog commands are disabled.

Disabled Commands for Editing Team Foundation Service Accounts Security Group

There are some side-effects for having real users in this security group so I wanted to remove them completely and leave only the actual TFS Service Account user.  Some of those side effects are more pronounced in Team Foundation Server “11.”  No worries though – because a colleague tipped me at using the command-line tool for managing security, TFSSecurity.exe.  It’s a command-line tool that I actually rarely use and completely forget is available but it’s super powerful.  In our case, it was pretty easy for me to use the /g- switch which allows for removing a member from any security group including this built-in one.

>tfssecurity /g- "Team Foundation Service Accounts" n:DOMAIN\username /server:https://tfs.mycompanydomain.com/tfs

It works!

Ed Blankenship

Posted in TFS


Using SnagIt with Microsoft Test Manager and the Visual Studio TFS Feedback Client



I’m absolutely a fan of SnagIt.  It has a low cost and works super well for what it does!  If you want to use SnagIt with Microsoft Test Manager and the new Feedback Client for Visual Studio “11” and Team Foundation Server “11” then you are in luck!  By default, they both use MSPaint for editing screenshots but if you have SnagIt, you definitely want to use something more powerful to help you provide even better screenshots.

Configuring the TFS Feedback Client to Use SnagIt

This one is easy.  You’ll want to open up the client (even if you aren’t currently giving feedback) and then click the little gear icon at the top.

Configuring Screenshot Annotation Options for the TFS Feedback Client

Next, you’ll want to provide the path to the SnagIt Editor and then provide the command-line arguments which is just the filename placeholder for the screenshot.  If you don’t enable the checkbox for automatically opening the screenshot each time, don’t worry because you can always double-click any screenshot in the feedback client to open the SnagIt Editor.

Setting the Screenshot Annotation Tool for TFS Feedback Client

Configuring Microsoft Test Manager to Use SnagIt

Whether you want to walk through the manual execution of a test case or use the new Exploratory Testing features of Microsoft Test Manager, you can use SnagIt to help you annotate screenshots here as well.  It’s a very similar and easy process as well.  In this case, the gear icon is available at the bottom-right corner of the test runner window.

Configuring Screenshot Annotation Options for Microsoft Test Manager

You’ll then see a familiar dialog window to set the screenshot annotation options to SnagIt here as well.

Setting the Screenshot Annotation Tool for Microsoft Test Manager

Why use SnagIt with Screenshots?

The value propositions to me for being able to use SnagIt are the following.

  • Annotations – I can add arrows, highlights, text bubbles, etc. really easily.  Those can make a big difference for someone looking at screenshots.
  • Blurring Personally Identifying or Sensitive Information – This is a key one for me at times.  It is really easy to select an area of the screenshot and apply a blur effect

Ed Blankenship

Posted in TFS | VSTS | VSTS Testing


Key Piece of Information for Adopting Visual Studio “11” and Future Releases



Visual Studio 11 Logo

I was reminded by someone that this is huge.  It’s something that hasn’t really sunk-in for people following the new release of the Visual Studio family of products.  It is a subtle thing that will really help people with adopting Visual Studio “11” without making the rest of the team adopt it -- even while it is in Beta & RC.  Because we now have “round-tripping” of Visual Studio solutions & projects, we no longer need to “upgrade” a vast majority of the VS project types when you open a solution in Visual Studio “11.”  That means that a few people can install Visual Studio “11” Beta/RC/RTM without interfering with everyone else on the team.  It allows for a rolling adoption across teams as each team member is ready which is a key adoption feature for this release.

  • Most solutions and projects can be opened in Visual Studio 2010 SP1 and Visual Studio “11” without requiring upgrades of the solutions.  There is a constantly updating list of the project types that aren’t currently supported available on MSDN but again, most of the ones that people interact with every day are supported.
  • Visual Studio “11” can be installed side by side with Visual Studio 2010 SP1.
  • You do not need to adopt .NET 4.5 for your applications if you want to start using Visual Studio “11”.  Visual Studio “11” targets .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, and .NET 4.5.
  • You do not need to upgrade to Team Foundation Server “11”.  Visual Studio “11” will connect with a TFS 2010 server and work similar (but better) than the Team Explorer 2010 client.
  • The opposite of the previous bullet point is true as well.  If you do upgrade to Team Foundation Server “11”, you do not need to also upgrade your Visual Studio edition.  You can connect from Visual Studio 2008 and Visual Studio 2010 to a TFS “11” server instance.  You’ll want to install the forward-compatibility update for earlier editions:  http://www.microsoft.com/download/en/details.aspx?id=29082

This is a subtle but huge change in this next release that we need to stress with all development teams.  It will help increase the speed at which teams will adopt Visual Studio “11” and future releases.

 

Ed Blankenship

Posted in TFS | VSTS


Difference Between Microsoft Test Manager and Visual Studio Test Professional



Microsoft Visual Studio Test Professional 2010 BoxWhen talking with our consulting customers and leading our 4-Hour Testing Workshops across North America, there is some common confusion about what exactly the differences are between Microsoft Test Manager and Visual Studio Test Professional.  It’s a pretty simple difference that I’ll see if I can help clarify and share some additional news for the vNext release of the Visual Studio family of products at the same time.  Once you get the difference, it will make perfect sense!


Visual Studio Test Professional

Visual Studio Test Professional is one of the different SKUs that you can purchase from the Visual Studio family of products.  What this means is that this is the “box” that you buy.  You can’t buy Microsoft Test Manager.  You buy an edition of Visual Studio that includes Microsoft Test Manager.  Visual Studio Test Professional happens to be the edition that many people will get when they are looking only to get Microsoft Test Manager (in addition to a TFS CAL and MSDN Subscription).


Microsoft Test Manager

Microsoft Test Manager IconMicrosoft Test Manager is the application you use to interact with Team Foundation Server to:

  • Create and manage test plans
  • Create, author, and maintain manual and automated test cases
  • Manage association of automation for test case artifacts
  • Run exploratory tests
  • Analyze previous manual, automated, or exploratory test runs
  • File rich actionable bugs while executing manual test runs or from automated test runs
  • Create and provision individual or shared lab environments with multiple machines for development or testing with Lab Management
  • Connect to physical or virtual lab environments for development or testing with Lab Management
  • Facilitate structured User Acceptance Testing (UAT) from business users
  • And lots more…

Microsoft Test Manager actually is included with two of the different SKUs or Visual Studio editions in the Visual Studio 2010 release.  You can acquire either Visual Studio 2010 Ultimate or Visual Studio 2010 Test Professional to receive Microsoft Test Manager.

Visual Studio “11” Release Changes – So Far

(Written for Beta) Microsoft has announced that Microsoft Test Manager will now be included in the Visual Studio Premium edition in addition to Visual Studio Ultimate and Visual Studio Test Professional.  That’s a great change and brings a lot of value to the Visual Studio Premium SKU!  You can find out some additional comparisons (that have been publicly announced so far) here on the Microsoft site:  http://www.microsoft.com/visualstudio/11/en-us/products/compare

Visual Studio "11" Beta Edition Comparison - Microsoft Test Manager

Need Help?

Let me know if you have any additional questions!  We help customers all the time figure out what types of licenses they should get, advocate to get the best pricing for their company, and sort through all of the licensing details to come up with the best scenario.  Contact me and I’ll be happy to get you started down the right path.  BTW – if there is also one thing to remember, don’t pay retail prices for any Visual Studio licenses before you come talk to us!

Ed Blankenship



TFS Users No Longer Need CAL for Viewing Reporting Data



Effective for Team Foundation Server 2010 users and assumingly going forward for Team Foundation Server 11, users who view read-only data for reporting purposes no longer need a TFS Client Access License (CAL).  More information about the announcement from Brian Harry is available here:  http://blogs.msdn.com/b/bharry/archive/2012/03/08/even-better-access-to-team-foundation-server.aspx

The definition of “reporting data” is not defined completely but the spirit of the licensing change is to address a challenge the Microsoft MVPs and other customer channels have brought up:  occasional stakeholders who are looking at reporting data should not be required to be licensed fully with a TFS CAL as other team members who contribute regularly to a software release.  They traditionally want to view progress or see potential issues.

Reporting data is exposed in several different places in Team Foundation Server:

  • Excel Workbooks
  • SQL Reporting Services Reports
  • Rich Dashboards with SharePoint Team Portals (using SharePoint 2010 Enterprise)
  • Custom Applications Displaying Read-Only Reporting Data
  • Other Self-Service Business Intelligence Tools

You may need other types of CALs depending on the particular scenario but thankfully you won’t need a TFS CAL.  Also, if these users are “writing” or “updating” information back to TFS, then that wouldn’t be considered viewing reporting data.  You’ll likely need a TFS CAL for those scenarios.  Remember though that users have always been able to create new bugs & feature requests without needing a TFS 2010 CAL as well using Work Item Only View.  This is a great improvement with this new addition to the CAL exclusions for TFS.

This licensing change is retroactive and in addition to the announcement that the Visual Studio Team Explorer Everywhere client for Eclipse-based IDEs is now free!

Ed Blankenship



Visual Studio Team Explorer Everywhere Now Available for Free



Visual Studio Team Explorer Everywhere 2010 BoxThe cross-platform (Windows, Linux, and Apple Mac OS) Eclipse-based Team Explorer, Visual Studio Team Explorer Everywhere, is now available without any costs!  The free version will continue to not include a TFS Client Access License (CAL) so just be sure you are covered elsewhere for CALs if you happen to need one in your environment!

It’s really great news for all those software engineers not using Visual Studio for building applications or for those using Linux or Mac OS and want to interact with the rest of the software engineering teams using Team Foundation Server.

Additional Information

Announcement Details

Previously sold as a separate product, Visual Studio Team Explorer Everywhere 2010 works with your favorite Eclipse-based IDE, in the operating system of your choice, and helps you collaborate across your .NET and Java development teams using Team Foundation Server 2010. It’s an easy-to-install standalone plug-in that's now a free download. A Team Foundation Server CAL may be required. See Visual Studio 2010 and MSDN Licensing for details.

Download Here

 

Ed Blankenship

Posted in Licensing | TFS | VSTS


Comparing TFS Process Templates Across Team Projects



I have a new favorite tool for managing and administering a Team Foundation Server environment from day to day.  It has been so helpful both internally with administering our TFS environment but also as I go from site to site.  A great part about the tool is that the source code is completely available with an open license for use.  The product is maintained transparently and there have been a few occasions where I will request a feature and it’s literally done and released the next morning when I wake up.

CodePlex LogoTFS Team Project Manager LogoIntroducing the TFS Team Project Manager on CodePlex!  It’s a tool that helps you take care of common administration and maintenance tasks across lots of multiple team projects.  I have found it to be so useful in tons of different ways.  One of them is something that I’m particularly finding useful this week with a customer that is upgrading from Team Foundation Server 2008 to Team Foundation Server 2010.  They have 117 team projects on their instance and as you know, it can get tedious to manage that many team projects.  This tool helps out in scenarios like this.  We’ll talk with them later about potential consolidation of all of those team projects though!

Viewing Multiple Team Projects in TFS Team Project Manager

One of the things I need to do is figure what’s the best course of action after upgrade for the work item type definitions (and other process template features) for all of the existing team projects.  Everyone will be functional if we don’t do anything but I wouldn’t mind giving the teams a few of the new features in TFS 2010.  The feature of TFS Team Project Manager that can let me get a good sense of where the team projects currently sit with their process template choice & customizations is a “Compare” feature for work item type definitions.

The way that it works is that you load up different sets of work item type definitions from a process template.  You can even use an existing team project’s work item type definitions as a base set as well.

Defining Process Template Source Sets in TFS Team Project Manager

Once you have defined a few different sets that you want to compare against, you just select the team projects that you want to compare and click “Compare Team Projects With Sources.”  The tool has a fairly rudimentary compare algorithm but the summary & detailed data you can get is very handy.  It’s pretty magical if you were to ask me.

Process Template Comparison Results in TFS Team Project Manager

The grid lists all of the results including:

  • What is the best matching process template based on the source sets that are available?
  • What is the best matching percentage?
  • What were matching percentages for the other source sets of process templates?

Initially seeing the results may uncover a little chaos in your TFS environments. That’s okay because there are options. You might want to tame some of that chaos by moving your process templates and storing them in the version control repository. Once it is in version control, you can attempt to “merge” similar process templates together as best as you can and consolidate. You could then use my handy custom build process template for managing deployments of changes to the process templates to existing team projects on your system.

Shameless Plug: We end up talking about these concepts in our book, Professional Team Foundation Server 2010 by Wrox if you are interested in more information!

First, I like to sort by the “Best Matching Percentage” column in the results to see which team projects have attempted to go off the path and made individual customizations.  I don’t really need to worry about the other ones because I can take care of them in bulk.  The key in this particular case is to get them to same the base so that we can deal with them altogether in bulk after the upgrade.  (Customer’s Desire)

If you want to dive into a little more detail for any of the rows, you can choose “View Comparison Details” or double-click the row entry to pop up a great dialog that will help you with understanding the changes even more.  You can see which work item types are changed and if you can even open up the changes in a diff tool that is configurable.

Process Template Comparison Details in TFS Team Project Manager

There was even a new feature implemented last night that detects whether you have Visual Studio vNext (currently Visual Studio “11” Beta) and will use that nice new diff & compare experience in Team Explorer!

Work Item Type Definition Diff Compare Experience in Visual Studio 11 with TFS Team Project Manager

How about that?  This just makes things a ton easier for me!

This tool has a lot of other great features for TFS administration tasks across team projects.  that I’ll talk about in the future.  Just wanted to mention this one and how useful it can be!  Please make sure that you Donate Donate to Jelle Druyts if you find the tool useful to you as well.  It’s absolutely free and he puts a lot of work into keeping the project going.  At least buy him a drink for his hard work! Smile

Ed Blankenship

Posted in TFS | Tools | VSTS | VSTS Process


Visual Studio and TFS Updates through Windows Updates



I have run into a new situation more often that caused a few concerns for me that I thought I would discuss it some here.  Let’s face it:  there are bugs in the Visual Studio family of products.  People have reported performance problems (and thankfully PerfWatson has been helping out tremendously with rich actionable data for the Visual Studio product teams.)  However, did  you know that a ton of these bugs are resolved & released after initial release?  There are been great stability and performance improvements that have been released since the initial RTM of each of the Visual Studio versions.

Starting with the Visual Studio 2010 and Team Foundation Server 2010 release cycle, Microsoft has started to put more and more of these updates through the Windows Updates distribution system.  It’s great!  They are easily discoverable and can be part of your regular updating schedule.  However, this only works if they are actually available to you.

I have found more and more that people aren’t actually seeing these Windows Updates for Visual Studio and TFS in corporate environments.  When I started looking into this with a few companies, I discovered that IT departments are purposely either ignoring anything “developer” related in the Windows Updates system or rejecting them completely.  What?!  There were some that didn’t even know to look at these important categories. 

If they do see them but have been ignoring them, the reasoning has typically been because IT groups don’t understand the impact of those changes so they just would rather ignore them until they understand them more.  I think that’s fair but there didn’t seem to be any drive for already over-burdened IT teams to actually figure out those impacts.  IT departments are not traditionally using Visual Studio from day to day and don’t typically have the right expertise to understand the impacts.  There has traditionally been a gap between Software Engineering groups and IT departments at companies.  That’s a bigger problem to tackle for a different day. Smile  However, this is where a software engineering team can collaborate and help IT departments out.

Distributed Updates in Corporate Environments

You may have been asking, “why would my IT department have anything to do with the Windows Updates on my development or testing machines?”  That’s a great question.  In some corporate environments, you can actually setup internal servers to act as an intermediary between the machines on the internal network and the central Windows Update system.  IT departments do this for many reasons including making sure that certain updates won’t impact existing applications on business users machines.  Let’s face it – your VB6 invoicing & order processing app that you built 15 years ago that is still limping along but vitally important to your business may or may not get impacted by a new update that’s available for Windows 7.  It happens, right?

To help you feel better about the updates we’re discussing in this blog article: there is a very high cost internally for anyone on the Visual Studio product teams to push an update through the Windows Updates system.  There’s a very high quality bar before they are approved internally.  They also wait for several weeks to a couple of months to make sure that no critical issues are reported from early adopters of those updates.  Not every update is sent through the Windows Updates system so the ones that do really are important.  There are many updates that are beneficial that never get released through Windows Updates.

There are many commercially available tools for “pushing” updates to customers.  Off the top of my head, Microsoft has a high-end version called System Center Configuration Manager and a free version included with Windows called Windows Server Update Services (WSUS).  Additionally, there are group policies in Active Directory that IT Administrators can apply to have machines in the domain talk back to one of these servers for their updates.  You can usually tell if you are in this situation by heading to Windows Updates from your Control Panel and checking to see if it says something like “Managed by your system administrator.”

Check out the Best Practices for Group Policies when using WSUS

Windows Updates Managed by System Administrators or IT Departments

You could click the link that says “Check online for updates from Microsoft Update” but some IT departments have even disabled that link from working through Global Policy.  If any of this is setup internally, it means that all updates basically go through a gatekeeper which is someone who is actively (or inactively) managing the updates in your IT department in one of these internal update servers.  This can be a good thing or a bad thing from what I am seeing more often.

Approve the Visual Studio Family Updates

This is the time when you might want to setup a meeting with your IT department to indicate that your software engineering teams actually do care about these updates and want them approved or even delivered automatically.  They may not even know that they even exist now with this new release.  Here are the categories that the teams should think about covering:

  • Visual Studio (including Agents)
  • Team Foundation Server
  • Expression
  • .NET Framework

There was improvements that helped performance in the Workflow Designer when editing TFS Build process templates in Visual Studio 2010.  These improvements were actually delivered as a .NET Framework QFE.  BTW, There are also additional steps that you could take that I have discussed previously on my blog.  My point by mentioning this is that IT Departments still need to monitor for even .NET Framework updates to help improve the stability and performance for the development environment for software engineering teams.


Enabling Microsoft Update

If your machine isn’t dictated by an internal Windows Updates server by global policy (or if you use check for updates online using the central Windows/Microsoft Updates infrastructure) you may still not see the Visual Studio updates.  This is because by default Windows only checks for Windows Updates.  If you want to check for updates for all Microsoft software then you actually need to enable Microsoft Update.  There is a small distinction but has a large impact on what’s available for your machine.  Smile

Enabling Microsoft Update to Receive Additional Updates for Microsoft Products


Product Updates Improvements in Visual Studio vNext

For those that seem to still have issues with Windows Updates internally, you’ll like seeing that Visual Studio “11” now has Product Updates shown with other types of tools & extensions updates in the Extension Manager.  I doubt that this will include Microsoft Test Manager or Team Foundation Server updates though. Sad smile  I hope I am very wrong about it though and would be very happy if they do send those types of updates down through this new mechanism!

You can see these by heading to Tools –> Extension Manager and then look at the Updates section of the window as shown below.  I can imagine us seeing all sorts of new updates that will come through this system including feature packs, power tools, cumulative updates, etc.  I would imagine that there will be quite a few more updates then would even traditionally be sent through Windows Updates.  That’s a big win for us especially when you want to have the latest features & stability improvements available for your development environment.

Visual Studio Product Updates in Extension Manager

Go have that discussion with your IT department now and if you can see what might be missing by checking for updates from Microsoft’s centralized Windows or Microsoft Update.

Ed Blankenship