Improving Quality with Visual Studio Diagnostic Tools

What is code quality? Correctness, performance, maintainability, and even elegance are all involved in creating great code. However you define it, Visual Studio diagnostic tools can help you and your team to develop and sustain high standards of code excellence.

Requirements

Some of the tools and features that are described in this section are available only in specific editions of Visual Studio—they aren’t universally available in Visual Studio. We list the specific edition requirements in the documentation for these tools and features.

IntelliTrace enhances the live debugging experience by adding a history of events and function calls. By using the stand-alone data collector, you can also collect historical data on remote machines, such as ASP.NET production servers.

Static code analysis tools find design, usage, maintainablity, and style issues in C++ and managed code. Many of these issues can lead to bugs that are hard to reproduce in standard testing environment.

Using the Concurrency Visualizer, you can examine how your multithreaded app performs. The views in the Concurrency Visualizer provide graphical, tabular, and textual data that shows the temporal relationships between the threads in your program and the system as a whole. You can use the Concurrency Visualizer to locate performance bottlenecks, CPU underutilization, thread contention, cross-core thread migration, synchronization delays, DirectX activity, areas of overlapped I/O, and other information.

Code metrics is a set of software measures that provide developers better insight into the code they are developing. The metrics include a maintainability index for functions and classes, cyclomatic complexity of functions, the inheritance depth of classes, and the amount of coupling among classes.

The code clone tool searches for duplicate or highly similar code in Visual C# and Visual Basic projects throughout your Visual Studio solution. You can often refactor the code to eliminate the duplication for a more maintainable solution.

PreEmptive Analytics for TFS CE helps you to integrate feedback-driven development processes into your development workflow. Your applications automatically send back exception report data to the PreEmptive Analytics service as errors occur during their execution. The service then creates or updates work items in Microsoft Team Foundation Server based on rules and thresholds you define.

If you are unfamiliar with Visual Studio Team Foundation, you can learn more about how you can use it in a team development environment to improve productivity and reduce risks that are associated with application development.

You can use Microsoft Visual Studio Premium to manage the challenges and complexity of designing software. Visual Studio Premium lets you visually model your application, both as it exists now and as you want it to exist in the future. You can create and maintain diagrams to help you visualize the logical models of your application at the same time that they map to the physical models; this enables you to change, validate, and analyze the software that is "under design."

You can use Visual Studio Premium and Visual Studio Ultimate to be more productive throughout the testing life cycle. Visual Studio Premium or Visual Studio Ultimate let you plan your testing effort. You can create, manage, edit, and run both manual and automated tests. You can also review your testing progress based on your plan.

You can use Visual Studio Team Foundation Server to plan and track your projects whether you use the agile process, the formal process, or a variation on those processes. By planning your projects, tracking your progress against the plan, and making necessary adjustments, you can reduce risks, avoid unpleasant surprises, and manage the cost of your projects.

Show:
Inherited
Protected

Was this page helpful?

Your feedback about this content is important.Let us know what you think.