Software consulting firm Wintellect wanted more innovative processes for debugging that could help accelerate the resolution of bugs and enhance software quality. The company found what it needed in Microsoft Visual Studio 2010, which includes the new IntelliTrace debugging tool. With its solution, Wintellect can debug applications 25 percent faster, improve collaboration, and reduce costs.
A Microsoft Gold Certified Partner, Wintellect offers consulting and training services to help organizations build high-quality software. The company employs a debugging “SWAT” team that others hire to rapidly resolve costly, high-profile issues that are typically difficult to reproduce.
||IntelliTrace … is the first tool in 20 years that can really change the art of debugging and help us to shrink the time we typically spend doing it.
Until recently, the team used traditional debugging processes and standard tools such as the Microsoft Visual Studio development system and Debugging Tools for Windows. “The Microsoft debugging tools are very good,” says John Robbins, Cofounder of Wintellect. “However, I was using the same basic techniques and tools for solving a bug with Visual Studio 2008 that I did when I started working with the Microsoft Windows 3.0 operating system.”
To debug heavily threaded applications, Wintellect consultants relied on paper. “We debugged many applications by reading printed copies of the source files and keeping track of the multiple threads on additional pieces of paper,” says Robbins. “If you just set a break point in heavily threaded applications, you can see some call stacks and some paths, but you really have no idea how you got there.”
Wintellect sought a tool that could facilitate innovation in debugging, speed issue resolution, and help the company’s customers develop better code.
In October 2009, Wintellect started using beta versions of Microsoft Visual Studio 2010 Ultimate and Microsoft Visual Studio Team Foundation Server 2010. They provide integrated components that can significantly streamline development, including debugging. For example, engineers can track bugs and manage software versions with Visual Studio Team Foundation Server 2010 and use Microsoft Test Manager 2010 to create, manage, and run manual tests. The new concurrency visualizer in the Visual Studio 2010 profiler also reveals how multithreaded applications interact with other processes and hardware.
Wintellect was especially interested in the IntelliTrace debugging tool. It collects detailed information about specified program events and calls. As a result, teams can quickly see what steps led up to an event—including internal program execution and user input. Robbins says, “To my knowledge, nobody else has any kind of debugging tool like IntelliTrace in Visual Studio 2010 Ultimate.”
By deploying Visual Studio 2010, Wintellect expects to speed debugging processes by 25 percent, improve collaboration and efficiency, and decrease expenses.
Accelerates Debugging by at Least 25 Percent
With IntelliTrace, team members can quickly reproduce and resolve software issues. Robbins explains, “I recently ported an application to Visual Studio 2010 called Paraffin. Someone found a bug in it and sent me the report, which did not provide a lot of information.” Robbins suspected that the issue had to do with directory processing. Instead of using the standard debugging tools, he ran Paraffin in Visual Studio 2010, with IntelliTrace configured to collect data about every event and call.
“As soon as I saw that Paraffin had not generated a file that was correctly formatted, I opened and searched the IntelliTrace file for every call made to recurse directories, and quickly found the problem. Because the Paraffin application is so recursive, resolving this issue with the standard debugging tools would have probably taken me two hours, but with IntelliTrace it took me about 20 minutes. Even if the application runs a little slower in debugging mode with IntelliTrace, the small performance hit is nothing in the long run. I’ll easily be able to debug applications at least 25 percent faster with IntelliTrace.”
Tools such as IntelliTrace and the new concurrency visualizer in Visual Studio 2010 Ultimate also help developers debug applications—and tune them before they go to test. “With IntelliTrace and the concurrency visualizer, I get more information than if I just printed out the source code,” says Robbins. “I can view the state of the application, change variables, execute the code, and see what happens in the log file. I can compare two program runs. This also helps with program tuning because it is easier to see where I can make improvements.”
Boosts Collaboration and Efficiency
By using Visual Studio 2010, engineers can quickly share detailed data about program execution. “With IntelliTrace, a test engineer no longer has to convince others that they are seeing an issue because no one else can reproduce it,” Robbins says. “Instead, the tester can just share the IntelliTrace file in Visual Studio Team Foundation Server 2010. Having that data or evidence will change the dynamic quite a bit between test engineers and developers, in a good way.” Testers can also benefit by capturing IntelliTrace files during manual test runs. These files can then be shared with the development team, drastically reducing the “no repro” problem that plagues most developer-tester interactions today.
According to Code Complete, Second Edition by Steve McConnell, the average team spends about 50 percent of its product lifecycle on debugging. “Typically, the time accrued in debugging is spent resolving the tough issues—the ones that you can’t reproduce,” says Robbins. “This is why I’m so excited about IntelliTrace. It is the first tool in 20 years that can really change the art of debugging and help us to shrink the time we typically spend doing it.” Less time spent on debugging translates into major cost savings. “Just one bug in production can very quickly cost a company $100,000 or more, and tarnish reputations,” Robbins says. “In today’s business climate, companies can avoid that kind of risk and expense by using tools like IntelliTrace. To me, it is the absolute must-have feature in Visual Studio 2010. Everything else is secondary.”
For more information about other Microsoft customer and partner successes, please visit:
This case study is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Document published March 2010