Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual...

Post on 19-Jan-2016

215 views 0 download

Tags:

Transcript of Application Lifecycle Management Tools for C++ in Visual Studio 2012 Rong Lu Program Manager Visual...

Application Lifecycle Management Tools for C++ in Visual Studio 2012

Rong LuProgram ManagerVisual C++Microsoft Corporation

DEV316

Agenda

Recap: ALM features for C++ in Visual Studio 2010

ALM features for C++ in Visual Studio 2012

Demos

Q&A

Resources

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

Profiling

Measure performance aspects of the application to identify bottlenecks.

Load Testing

Load tests consist of a series of Web tests or unit tests to simulate multiple users over a period of time.

Number of cores

Your Process Idle time

Other processes

Concurrency VisualizerCPU Utilization

Concurrency VisualizerThreads

Detailed thread analysis(one channel per thread)

Call Stacks

One color per thread

Cross-core migration details

Concurrency VisualizerCores

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

demo

Architectural Discovery

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

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/

demo

Code analysis

Summary: Code Analysis

Improved user experience and analysis capabilities64 bit supportAvailable in all editionsConcurrency rules (Pro+)Customize ruleset (Pro+)

demo

Unit testing

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+)

demo

Code Coverage

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

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

Q&A

Find me at TLC Visual Studio Platforms after session and on Friday

ronglu@microsoft.com

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

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

Evaluations

http://europe.msteched.com/sessions

Submit your evals online

© 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.