Compuware DevPartner Studio Professional 8.1
A Mature Product for Mature Development
By Mike Riley
It s fairly obvious when astute programmers see a version number greater than 7.x that the product in question is entrenched and robust. With Compuware s latest release of their flagship DevPatner Studio Professional (DSP) product, this assumption is well founded. Unlike other products earlier in their product lifecycles, DSP 8.1 does not sport a lot of flashy new features. Rather, it iterates upon those highlights to which faithful users have become accustomed in their daily employment of the product.
The most notable new addition is its awareness of and integration with Microsoft s new Visual Studio Team System, elevating its code analysis and profiling capabilities into a distributed team environment. The other major improvement is the inclusion of a special edition of Compuware s Fault Simulator. Other enhancements included in this release are the Performance Expert and the System Comparison utility, the latter being a comprehensive system snapshot utility designed to detect variations in systems being used in the profiling and testing phases.
Figure 1: The BugBench demo project showcases DevPartner Professional s extensive code coverage and analysis capabilities.
Naturally, this latest edition improves upon the noteworthy aspects mentioned in my earlier review of the 7.1 release. Like the previous release, DSP 8.1 continues to leverage the product s sophisticated code, real-time memory, and application performance analysis and review capabilities, as well as code coverage, error analysis, and corrective action recommendations. In addition to supporting the full Win32 (for VB6 and unmanaged C++ apps) and .NET 1.x API, the rules engine (now expanded to include more than 600 rules) features new issues pertaining to the .NET 2.0 Framework.
As with previous releases, call stacks can be easily highlighted to inspect errors and exception handling mistakes. Memory usage can be monitored for leaks, object creation which is especially useful for memory consumption bottleneck identification and, of course, total memory consumption used by the application. And because memory can be evaluated while debugging the application in real time, the results can be displayed in a helpful memory-usage graph, as well as a dynamic class object list and managed heap usage. Code coverage and performance profiling works as expected, and is comparable to previous versions of the product. The new Performance Expert displays an overall view of performance, not only of memory utilization but it also includes CPU, disk, and network I/O. Incidentally, testing can take place locally or, with the separate purchase of a DevPartner Studio Server license, in a remote fashion to measure distributed application performance, as well.
Figure 2: The model view graphically displays an object s call dependencies and aids in the identification of problem areas in code logic.
The first time I saw all these real-time and summary assessments in action, I was enthusiastically energized by the amount of time saved by not having to spend hours hunting down obscure bottlenecks that weren t immediately apparent when looking at my code and running the application sans profiling. I can see how project managers would also be excited by the prospect of quick feedback on code status snapshots, and CIOs could be sold on the promised cost savings of the combined productivity gain and quality improvement DSP can offer. Like most development tools, this expectation is attainable only if these participants know how to fully leverage their investment. Consequently, while there arguably exists less expensive alternatives that are at parity with DSP s features, these alternatives are typically not part of an application lifecycle suite the way the Compuware family of products integrate with one another. The alternatives also lack the tight integration with the look, feel, and functionality that make DSP appear as if it was supposed to have been included with every copy of Visual Studio Team System.
Figure 3: Code analysis can get quite verbose; fortunately, granular filters can help highlight and prioritize the most egregious coding errors.
Finally, the addition of DevPartner s Fault Simulator SE brings developers and application testers together in constructing and testing software scenarios designed to inject exception errors and, if applied correctly, will identify application functionality gaps before you reach production status. While the inclusion of this package was no doubt prompted by the need to bolster incentive value to existing DevPartner users and address parity concerns with Compuware s competitors, it s a win-win for Compuware and its customers that allow developers to be active participants in the fault scenario construction and testing process at the start of the project. It will be interesting to see if this inclusion reduces testing errors over time, as the broader awareness of error conditions minimizes accidental and/or I ll get to it later omissions of error traps in prototype code that has a knack of finding its way to production.
Figure 4: The Code Review Rules Editor provides developers with the ability to scan for and comment on the use of custom syntax and business-specific domain conventions.
Readers interested in seeing the DevPartner experience in action are encouraged to test a Virtual Demo at http://www.compuware.com/media.asp?cid=701000000004gZq. Unfortunately, this demo requires a special ActiveX control installation (or a trusted Java applet download), so those developers not wishing to inject yet another control with unknown security concerns should consider doing this within a virtual machine environment such as Microsoft s Virtual PC or a VMware Player image. I also encountered some glitches when attempting to launch this demo, even after installing this control, so perhaps Compuware should consider using Flash-based screencasts in the future (in addition to their existing WebEx-based demo available at http://compuwaremc.webex.com/webex/playback.php?FileName=http://www.compuware.com/events/resources/webcasts/devpartner_studio.wrf).
In summary, DevPartner Studio Professional 8.1 is an expected incremental upgrade of the product. The VSTS support is a given. The inclusion of Fault Simulator SE is a bonus that exposes even more sophisticated development analysis and test scenarios to professional Windows software development engineers. While the price relegates the product to well-funded corporate-level development scenarios, it is a staple tool that quality-conscious teams will rapidly assimilate into their application lifecycles.
Mike Riley is an advanced computing professional specializing in emerging technologies and new development trends. He also is a contributing editor for asp.netPRO. Readers may contact Mike at mailto:[email protected].
Price: US$2,400 for named user; US$7,200 for concurrent user (both include Subscription Plus offer)