application lifecycle management tools for c++ in visual studio 2012 rong lu program manager visual...
TRANSCRIPT
![Page 1: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/1.jpg)
Application Lifecycle Management Tools for C++ in Visual Studio 2012
Rong LuProgram ManagerVisual C++Microsoft Corporation
DEV316
![Page 2: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/2.jpg)
Agenda
Recap: ALM features for C++ in Visual Studio 2010
ALM features for C++ in Visual Studio 2012
Demos
Q&A
Resources
![Page 3: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/3.jpg)
ALM features for C++ in Visual Studio 2010 VS Premium
Team Foundation Server
VS Ultimate
Code CoverageCode AnalysisProfilingConcurrency Profiling
Load testingLab management
Source Code ControlTeam Build
![Page 4: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/4.jpg)
Profiling
Measure performance aspects of the application to identify bottlenecks.
![Page 5: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/5.jpg)
Load Testing
Load tests consist of a series of Web tests or unit tests to simulate multiple users over a period of time.
![Page 6: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/6.jpg)
Number of cores
Your Process Idle time
Other processes
Concurrency VisualizerCPU Utilization
![Page 7: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/7.jpg)
Concurrency VisualizerThreads
Detailed thread analysis(one channel per thread)
Call Stacks
![Page 8: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/8.jpg)
One color per thread
Cross-core migration details
Concurrency VisualizerCores
![Page 9: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/9.jpg)
Visual Studio 2012 ALM and C++
ALM features in VS 2012
Additional ALM features for C++ in VS 2012
User Story/Product Backlog mgmtLightweight RequirementsSprint planning, Taskboards planningContext SwitchingStakeholder FeedbackCode ReviewExploratory Testing
2010 features UpdatedCode AnalysisCode Coverage
Architectural DiscoveryUnit Testing
![Page 10: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/10.jpg)
demo
Architectural Discovery
![Page 11: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/11.jpg)
Summary: Architectural Discovery
Use dependency graphs to better understand your code
Generate graphs for whole solutionGenerate graphs for include file (C++)It is your diagram, edit it!
Use Architecture Explorer to browse assets and generate customized graphs
![Page 12: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/12.jpg)
Code analysis
“The most important thing I have done as a programmer in recent years is to aggressively pursue static code analysis. Even more valuable than the hundreds of serious bugs I have prevented with it is the change in mindset about the way I view software reliability and code quality.”“Eventually, I had all the code used to build the 360 executable compiling without warnings with /analyze enabled…This did slow down compiles somewhat, but /analyze is by far the fastest analysis tool I have worked with, and it is oh so worth it.”
--John Carmack Founder and technical director of Id Software
http://www.altdevblogaday.com/2011/12/24/static-code-analysis/
![Page 13: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/13.jpg)
demo
Code analysis
![Page 14: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/14.jpg)
Summary: Code Analysis
Improved user experience and analysis capabilities64 bit supportAvailable in all editionsConcurrency rules (Pro+)Customize ruleset (Pro+)
![Page 15: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/15.jpg)
demo
Unit testing
![Page 16: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/16.jpg)
Summary: Unit TestingNew native C++ unit test framework in VS11Author tests, manage tests and view results in VSAvailable in all editionsContinuous run after build (Premium+)Extensible: plug in 3rd party native framework to VS (Pro+)
![Page 17: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/17.jpg)
demo
Code Coverage
![Page 18: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/18.jpg)
Summary: Code Coverage
Simplified experience and integrated with unit test frameworkAnalyze code coverage by one single click in VS
For all testsFor selected tests
Allow integration with 3rd party unit test frameworks
![Page 19: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/19.jpg)
Summary
Use ALM features in VS2012 to build safer, more reliable and high quality C++ apps:
Architectural DiscoveryCode Analysis (available in Express)Unit Testing (available in Express)Code CoverageProfiler (available in Express)…plus general ALM features in VS2012
![Page 21: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/21.jpg)
Related Content
Find me at TLC: Visual Studio Platforms
Download Visual Studio 2012 RC and try it out!
Breakout sessions
(Tue) FDN02: Application Lifecycle Management(ALM): It’s a Team Sport (Wed) DEV214: Introducing the New Visual Studio 2012 Unit Testing Experience (Wed) DEV368: Visual C++ and the Native Renaissance (Thu): DEV367: Building Windows 8 Metro Style Apps With C++ (Fri): DEV334: C++ Accelerated Massive Parallelism in Visual C++ 2012
![Page 22: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/22.jpg)
Resources
Connect. Share. Discuss.
http://europe.msteched.com
Learning
Microsoft Certification & Training Resources
www.microsoft.com/learning
TechNet
Resources for IT Professionals
http://microsoft.com/technet
Resources for Developers
http://microsoft.com/msdn
![Page 23: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/23.jpg)
Evaluations
http://europe.msteched.com/sessions
Submit your evals online
![Page 24: Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual C++ Microsoft Corporation DEV316](https://reader036.vdocuments.site/reader036/viewer/2022062805/5697c01c1a28abf838cd0191/html5/thumbnails/24.jpg)
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to
be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS
PRESENTATION.