{"id":2971,"date":"2012-09-12T10:00:00","date_gmt":"2012-09-12T10:00:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/bharry\/2012\/09\/12\/visual-studio-update-this-fall\/"},"modified":"2024-04-30T13:46:26","modified_gmt":"2024-04-30T20:46:26","slug":"visual-studio-update-this-fall","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/bharry\/visual-studio-update-this-fall\/","title":{"rendered":"Visual Studio Update this Fall"},"content":{"rendered":"<p>For a while now we\u2019ve been talking about increasing our delivery cadence for Visual Studio.\u00a0 Jason first talked about it at DevConnections in the Spring and I wrote a <a href=\"http:\/\/blogs.msdn.com\/b\/bharry\/archive\/2012\/08\/28\/tfs-shipping-cadence.aspx\">blog post<\/a> a couple of weeks ago outlining our general approach to cadence (focused on TFS).\u00a0 This week, at the launch of Visual Studio 2012, we gave a bit more insight into what we think the first VS 2012 update, later this Fall, will contain.\u00a0 I want to use this post to drill into that a bit more.<\/p>\n<p>I can\u2019t say enough how happy I am to be trying out some new cadences.\u00a0 We\u2019ve done a number of things in the past (like Power Tools) to try to supplement our longer 2 year cadence but nothing quite as flexible as this.\u00a0 Our first update will include an update to VS 2012 and will contain a mix of new features, performance improvements, bug fixes, etc.\u00a0 It will also include an update to TFS 2012 which, for the most part, brings in all of the features that we\u2019ve been introducing in our cloud service since we locked down TFS 2012.<\/p>\n<p>We plan to deliver a series of \u201cpreviews\u201d over the next few months as we get closer to the release of the update.\u00a0 The first will be delivered later this month.\u00a0 I don\u2019t yet know how you should think about the previews.\u00a0 In general, they are early builds, produced with minimal ceremony and overhead.\u00a0 Particularly, for the first couple, I wouldn\u2019t plan on trying to install them in your production environment.\u00a0 I\u2019d probably be inclined to stick to installing them on a VM and kicking the tires.\u00a0 That said, we WILL be installing them in our production environment \u2013 but it might be best for us to vet that a bit before you do. After the first couple, I expect we\u2019ll have the process better ironed out and you can get a bit more aggressive with them.<\/p>\n<p>I\u2019m going to summarize the significant improvements in our first update.\u00a0 This is, by no means, an exhaustive list.\u00a0 For now I\u2019m going to focus on things that I have a pretty high confidence will make it.\u00a0 There are a number of other things that I think will make it but I\u2019ll save for later, once I\u2019m pretty sure they\u2019ll get in.\u00a0 And, of course, I\u2019m not going to even try to document all the bug fixes, etc that will be included at this point.<\/p>\n<p>So what\u2019s going to be in it you ask?<\/p>\n<p>Well, let\u2019s start with the set of capabilities that Jason announced at Tech Ed earlier this year.<\/p>\n<h3>SharePoint development<\/h3>\n<p>We\u2019ve done a bunch of work to improve the overall lifecycle, particularly testing, for SharePoint developers.<\/p>\n<p><strong>Load testing<\/strong> \u2013 We now support load testing for SharePoint out of the box.\u00a0 This is more involved than you might imagine due to how dynamic SharePoint is.\u00a0 You can\u2019t just record a script and play it back \u2013 it won\u2019t work because SharePoint generates and expects dynamic data (like GUIDs).\u00a0 We\u2019ve built the extensions to our load testing solution to parse the dynamic SharePoint data and include it appropriately in subsequent requests.\u00a0 So now you can record a script and play it back and we will dynamically adjust it to match what SharePoint expects.<\/p>\n<p><strong>Coded UI support<\/strong> \u2013 Our 2012 product was pretty close to supporting this but there were a few SharePoint specific issues that we weren\u2019t able to address that made CodedUI (functional testing) not work well for SharePoint.\u00a0 In our first update, we will have addressed those issues.<\/p>\n<p><strong>Unit testing<\/strong> \u2013 One of the big problems with unit testing SharePoint is that most code requires SharePoint to be running and trying to run tests against a live SharePoint instance is a pain.\u00a0 So we\u2019ve built a SharePoint \u201cemulator\u201d using our new VS 2012 Fakes &amp; Stubs capability.\u00a0 This will make unit testing of SharePoint components WAY easier.<\/p>\n<p><strong>Intellitrace collection plan<\/strong> \u2013 While this won\u2019t be in the first CTP, we\u2019re building a custom Intellitrace collection plan for SharePoint that helps filter out a bunch of the SharePoint \u201cinfrastructure noise\u201d and lets you focus on events related to your components that are the likely cause of problems you are seeing.<\/p>\n<h3>DevOps Improvements<\/h3>\n<p>In addition to some of the SharePoint testing support I listed above, there are some DevOps capabilities Jason talked about at DevConnections.<\/p>\n<p><strong>Customized Intellitrace collection plans<\/strong> \u2013 Collecting everything Intellitrace can collect can be overwhelming \u2013 both for the developer to consume and on the performance of an app in production.\u00a0 In our first update we\u2019ll be adding capabilities for you to control the granularity and areas of collection enabling you to get just the information you need.\u00a0 We are also doing work to integrate Intellitrace with System Center to make diagnostic collection in production environments even easier.<\/p>\n<h3>Manual Testing Improvements<\/h3>\n<p>We\u2019ve gotten a bunch of feedback over the past couple of years on our manual testing capabilities.\u00a0 We were so busy with Windows 8 support in VS 2012 that we didn\u2019t get a ton of time to respond.\u00a0 Starting in our first update and continuing for the next few, we\u2019ll be investing heavily in incorporating much of that feedback.<\/p>\n<p><strong>Code coverage for manual testing of web apps<\/strong> \u2013 Today we support collecting code coverage for automated tests but people would like to also be able to generate code coverage for manual tests and merge it with other results to get a comprehensive view of code coverage.\u00a0 In our first update, we\u2019ll start down this path by adding support for collecting code coverage for manual testing of web apps.<\/p>\n<p><strong>Test Case management on the web<\/strong> \u2013 ***UPDATE Dec 4, 2012*** &#8211; This feature was moved to Update 2.\u00a0 We\u2019ve heard from a number of customers that in final acceptance testing, they don\u2019t want to install anything on the test environment that\u2019s not going to be in the production environment.\u00a0 That\u2019s understandable.\u00a0 In our first update, we will be shipping a basic web based test case management and manual testing experience that will enable this scenario from a browser.\u00a0 This won\u2019t be in the first CTP but should appear in the next.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/0572.clip_image001_thumb_2C41BA09.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-16009\" src=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/0572.clip_image001_thumb_2C41BA09.png\" alt=\"Image 0572 clip image001 thumb 2C41BA09\" width=\"800\" height=\"344\" srcset=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/0572.clip_image001_thumb_2C41BA09.png 800w, https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/0572.clip_image001_thumb_2C41BA09-300x129.png 300w, https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/0572.clip_image001_thumb_2C41BA09-768x330.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/a><\/p>\n<p><strong>Lab Management support for Win8 environments<\/strong> \u2013 We\u2019ll be adding support for SCVMM 2012 SP1 which will enable Windows 2012 and Windows 8 lab management support.<\/p>\n<p><strong>VSUpdate<\/strong> \u2013 We were not able to get in support for an automated update mechanism for Test Professional in our 2012 release.\u00a0 In our first update, we will add support for VSUpdate and you will receive update notifications in Test Manager the same way developers get them in Visual Studio.\u00a0 So you\u2019ll need to discover and download this first update through more traditional means, but having done that, we\u2019ll make it much easier to stay up to date.<\/p>\n<h3>Project Management Improvements<\/h3>\n<p><strong>Kanban support<\/strong> \u2013 You may have seen the <a href=\"http:\/\/tfspreview.com\/en-us\/home\/news\/2012\/aug-13\/\">new kanban feature<\/a> we introduced on our cloud service recently.\u00a0 In our first update, we\u2019ll be bringing that and some additional improvements.\u00a0 This will give you an even broader set of choices for managing your project.\u00a0 You can use our Scrum based Agile Project Management tools, Kanban or Project and Project Server \u2013 or a combination of them.<\/p>\n<p><strong>Usability improvements<\/strong> \u2013 Every sprint, on the hosted service, we announce a set of small improvements \u2013 like drag &amp; drop assignment of tasks, counts on links &amp; attachments tabs, etc.\u00a0 They are each a small thing but together they add up to increased usability and productivity.\u00a0 Our first update will include plethora of these kinds of improvements.<\/p>\n<h3>Developer Productivity<\/h3>\n<p>We\u2019ve got a few very nice features coming to improve developer productivity.<\/p>\n<p><strong>Unit testing grouping &amp; filtering<\/strong> \u2013 We\u2019ll be adding support to the Test Explorer for grouping and filtering unit tests.\u00a0 This will make it easier for you to organize your tests to find them easily and run the right set of tests at the right time.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/7737.Q1_Test_Explorer_Window_thumb_40C70987.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-16010\" src=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/7737.Q1_Test_Explorer_Window_thumb_40C70987.png\" alt=\"Image 7737 Q1 Test Explorer Window thumb 40C70987\" width=\"258\" height=\"345\" srcset=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/7737.Q1_Test_Explorer_Window_thumb_40C70987.png 258w, https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/7737.Q1_Test_Explorer_Window_thumb_40C70987-224x300.png 224w\" sizes=\"(max-width: 258px) 100vw, 258px\" \/><\/a><\/p>\n<p><strong>Code Map<\/strong> \u2013 Code Map is a super cool new feature in the architecture tools that allows me to incrementally build up an architecture\/dependency diagram as I explore code.\u00a0 It makes walking into an existing code base and exploring it WAY easier than it ever has been before.\u00a0 You can incrementally lay out a diagram one element at a time (class, method, etc) as you explore the code.\u00a0 You can \u201cquery\u201d to expand the diagram \u2013 like adding all derived classes or all referencing methods, etc to incrementally understand the code dependencies.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/2438.codemap_screenshot_thumb_7FB88A22.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-16012\" src=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/2438.codemap_screenshot_thumb_7FB88A22.png\" alt=\"Image 2438 codemap screenshot thumb 7FB88A22\" width=\"804\" height=\"459\" srcset=\"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/2438.codemap_screenshot_thumb_7FB88A22.png 804w, https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/2438.codemap_screenshot_thumb_7FB88A22-300x171.png 300w, https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2012\/09\/2438.codemap_screenshot_thumb_7FB88A22-768x438.png 768w\" sizes=\"(max-width: 804px) 100vw, 804px\" \/><\/a><\/p>\n<p><strong>260 character path limit<\/strong> \u2013 While I don\u2019t want to get your expectations too high here I\u2019m super happy we can make some improvements.\u00a0 One of the top votes on <a href=\"http:\/\/visualstudio.uservoice.com\">UserVoice<\/a> is eliminating the 260 character path limit.\u00a0 We can\u2019t completely do that at this time but we can make some progress.\u00a0 In the first update, we will be increasing the limit on \u201cserver paths\u201d from 260 characters to 400 characters.\u00a0 This means that you have more room in your version control paths for project names, branches, etc. without compromising your ability to use the full 260 characters for your solution.\u00a0 I know some of you are asking \u2013 why only 400?\u00a0 Why not just make it unlimited.\u00a0 I\u2019d love to.\u00a0 This incremental improvement is driven by the limit on the size of an index in SQLServer (which is about 1,000 bytes).\u00a0 400 * 2 (to account for Unicode) = 800 leaving only about 200 bytes for anything else we need to put in the index.\u00a0 We will keep a work item on our backlog to remove the 260 character client limit and to consider extending the server limit beyond 400 but I\u2019m very happy to be able to bring some relief in this area.\u00a0 This feature will not show up in CTP 1 but should be in the next.<\/p>\n<h3>Windows store app improvements<\/h3>\n<p>We\u2019ve got a number of improvements coming for Windows 8 store app development but for now I\u2019m just going to talk about one.<\/p>\n<p><strong>Mixed managed\/native debugging<\/strong> \u2013 Starting in the first update, you\u2019ll be able to finally do mixed managed and native debugging for Windows store apps.\u00a0 This will make developing apps that use both native and managed components tremendously easier!<\/p>\n<h3>Conclusion<\/h3>\n<p>As I said, this is not an exhaustive list but it\u2019s quite a lot of new things \u2013 particularly to be talking about on the day that we are launching VS 2012.\u00a0 We are committed to continuing to deliver continuous value to our customers so expect great things from the Visual Studio Update train.\u00a0 One important point that I must mention is that not all of these features will be available to every VS customer.\u00a0 I\u2019m not going to try to document the full product breakdown here but it should generally be fairly intuitive \u2013 for instance, you only get Code Map if you have Ultimate because it\u2019s an extension to the architecture tools that are in Ultimate.\u00a0 The same holds true for SharePoint load testing and the SharePoint unit testing emulator \u2013 both rely on features (load testing and Fakes &amp; stubs) that are only available in Ultimate.\u00a0 Other features (like Unit test grouping &amp; filtering or Windows store app managed\/native debugging) will be available to all VS users.\u00a0 As we get closer to the release of the Update we can produce a matrix to show which features are available at each product level.<\/p>\n<p>Thanks for reading and I\u2019m super excited to share more as we get closer.<\/p>\n<p>Brian<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For a while now we\u2019ve been talking about increasing our delivery cadence for Visual Studio.\u00a0 Jason first talked about it at DevConnections in the Spring and I wrote a blog post a couple of weeks ago outlining our general approach to cadence (focused on TFS).\u00a0 This week, at the launch of Visual Studio 2012, we [&hellip;]<\/p>\n","protected":false},"author":244,"featured_media":14617,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[11,4],"class_list":["post-2971","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-announcement","tag-visual-studio"],"acf":[],"blog_post_summary":"<p>For a while now we\u2019ve been talking about increasing our delivery cadence for Visual Studio.\u00a0 Jason first talked about it at DevConnections in the Spring and I wrote a blog post a couple of weeks ago outlining our general approach to cadence (focused on TFS).\u00a0 This week, at the launch of Visual Studio 2012, we [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts\/2971","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/users\/244"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/comments?post=2971"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts\/2971\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/media\/14617"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/media?parent=2971"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/categories?post=2971"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/tags?post=2971"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}