by Mike Fourie

This review is based on the Visual Studio 11 Beta build released by Microsoft on 29th February 2012.

It’s been two years since Microsoft released Visual Studio 2010 in April 2010 and over a year since they delivered Service Pack 1 in March 2011. At last the next major release is available to us, with a Go Live licence, and overall it’s looking like a significant delivery which should please the majority of the user base and draw not just more developers to the product, but testers, managers, operations staff and stakeholders too.

In this brief review I’ll touch on a few of the features which I think are worth calling out, apologies in advance if I don’t cover an area you are passionate about, but Visual Studio is a substantial product and there will be many books written to cover its various features. One area I am not going to cover in detail is the new UI as there is already enough debate online. Let’s see what the Release Candidate looks like to see how much ‘listening’ has happened. You have to admire the passion of the user base on this one!

Here’s a reduced edition comparison matrix which shows some of the new features and also which features have been promoted into different (lower) editions. Keep in mind that these features may change for the final release, however if you’re a Premium MSDN subscriber, your subscription is significantly improved!

VS 11 Beta Review

Please note that there are also important pricing and licencing changes coming with Visual Studio 11. You can find more details here http://www.microsoft.com/visualstudio/11/en-us/products/pricing and again, there may be further changes before RTM.

I started this review by mentioning the previous release dates we’ve dealt with. I think that one of the most exciting changes in Visual Studio 11 is that it has an update mechanism built into it. Power Tools typically performed the job of plugging gaps until a new release came along, but they were restricted and could not change product code bits. In Visual Studio 11 the product teams (and there are many of them) can now update the product code using the new update mechanism. Exactly how this new flexibility is used by Microsoft will be interesting to see, but it provides a whole new release cadence possibility to address bugs and deliver features. The new cloud based Team Foundation Service isn’t the only part of Visual Studio which will deliver updates on a far more frequent schedule, we now have the ability baked right into the desktop client we all use every day. Imagine the possibilities…

Two new ‘non-development’ features are worth mentioning. The first is the Microsoft Feedback Client which provides a powerful mechanism for getting feedback direct from your stakeholders. With a little guidance, I think that stakeholders will embrace this feature with much enthusiasm.

image

Image 1 – Microsoft Feedback Client

The second is PowerPoint Storyboarding which provides an easy and efficient way to create mock-ups of the solution you intend to deliver. The Visual Studio team chose PowerPoint over an arguably more powerful product, SketchFlow, to deliver this new mock-up functionality. I think this was the right decision due to the target audience, the sheer size of the PowerPoint user base, the ease of use of the tool and the fact that what you assemble is exactly what you get to show, no file format changes or any other special requirements. Remember, it’s just a simple way of creating a simple prototype. More powerful options still exist if you need to use them.

image

Image 2 – PowerPoint Storyboarding

Selling Visual Studio to non-developers has always been a challenge; however Visual Studio 11 builds on the features provided by Visual Studio 2010 to deliver a solution which provides value across all business units.

Many of the improvements to Team Foundation Server can already be seen on the (currently) free Team Foundation Service Preview (www.tfspreview.com). The agile planning tools provide a wealth of features and have helped a lot with managing the Visual Studio ALM Rangers ‘Dev11 Wave’. There haven’t been any major improvements on the Team Foundation Build side, though you may find the coverage in the ALM Rangers Build Customization Guide worth a read, along with the other Visual Studio 11 projects the Rangers are working on. These are all available from MSDN - http://msdn.microsoft.com/en-us/vstudio/ee358787. A big new feature of Source Control is local workspaces. You can now easily work in ‘offline mode’ without the hassle of read-only files and overall Team Explorer gets a total revamp in Visual Studio 11.

image

Image 3 – Team Explorer

It’s interesting to see that all the Lab Management functionality has been promoted into the Premium Edition. Along with the new Standard Environments feature, I think that Lab Management may get more traction than it has done with Visual Studio 2010.

Let me wrap up with my top 4 developer focused improvements provided by Visual Studio 11….

#1 Unit Testing

The massive improvements to Unit Testing, from 3rd party framework support to usability enhancements to the very powerful new Fakes framework… the list goes on. And finally we get a much better Unit Test Explorer

image

Image 4 – Unit Test Explorer

#2 Language Improvements

Core improvements to languages, WPF, WCF, WF, Parallel Computing to name but a few. It’s great to see the fruits of Microsoft Research working their way to the end user product and also to see the awesome improvements the engineers are delivering.

#3 Code Review

This is a great feature whereby you can save the current state of your environment and un-shelve another user’s changes to review. Once you are complete you can restore your environment to its previous state and continue developing. You need to see this feature in action to really appreciate it.

#4 Code Clone Analysis

According to the beta MSDN documentation, ‘Code clones are separate fragments of code that are very similar’. Let’s say that you find a bug in a piece of code you’ve inherited; if you’re really unlucky, that code may be repeated in many places. Previously you may have written a regular expression to find other occurrences, the Code Clone feature makes it much easier to find these occurrences and can even find fragments which differ in the names of variables and parameters, and in which some statements have been rearranged. In addition to being able to select text and find clones, you can analyse your whole solution and Visual Studio will report back with matches rated as Exact, Strong, Medium and Weak.

image

Image 5 – Solution level Code Clone Analysis

Many may remember how slow and clunky the Visual Studio 10 Beta was and may be weary of diving into another Beta release. This Beta is stable, fast and capable. If you haven’t tried the Visual Studio 11 Beta I encourage you to do so, I’m confident you will be impressed.

Mike Fourie
Microsoft Visual Studio ALM MVP of the Year 2012 & Visual Studio ALM Ranger (Champion of Champions 2012)