CompuWare's Vantage suite contains a brace of packages that assist client-server application development (Application Expert) and troubleshooting (Application Vantage).

Application Expert's main function is to analyse the interchanges between the various computers involved in client-server processing and to extrapolate this information to predict how the application will perform in alternative configurations. The majority of client-server programs involve accessing not just the client and server endpoints but also several external servers – not least directory services, DNS and/or email devices – and just one communication issue can cause application performance to drop.

The package works by analysing the traffic flowing between the various systems involved in the client-server application and splitting it into "threads" (a thread is, basically, a sequence of packets that represents a single action). It then charts the various interchanges so that the developer can quickly see undue delays, overly verbose interchanges and such like; the package is also able to decode most of the common packet sequences (database queries, HTTP connections and the like) and present them in a human-readable form alongside the graph.

Instant information
The neat trick of Application Expert is its ability to take this empirical data and apply it to a theoretical network, though. Imagine you have a client-server application in use within your office, and you're considering opening another office, so there'll be a relatively low-speed, high-latency link between various bits of the application. You provide Application Expert with details of the link's probably performance (most notably latency and throughput) and it'll re-graph the performance based on this data.

The usual killer with WAN links is their effects on large numbers of small packets, and Application Expert will instantly provide the developer with the information he or she needs to either (a) be confident that everything will be fine; or (b) refine the operation of the client-server interchanges in order to improve performance.

The other side of the coin for client-server applications is troubleshooting – particularly where the applications are commercial, rather than home-grown, and so the underlying architecture is not known. This is the target market for Application Vantage, which in fact looks very similar to Application Expert thanks to the fact that it decodes, lists and charts data in the same formats. As well as soaking up packets via its own network interfaces, Application Vantage can communicate with remote "agents", on either Windows or Unix machines, which will capture traffic as required and pass it back to the central machine for collation.

In addition to application-level trace data, Application Vantage can also dig into the packets it has captured at layers 2-4 (Ethernet, IP and TCP/UDP), and as you'd expect the capture process can have filters applied in order to minimise unwanted "noise".

Both Application Expert and Application Vantage are immensely useful tools, mainly because of their ability to represent data in a way that allows you easily to drill into what you're seeing and understand the implications – most notably to understand the chronology of the various interchanges that are taking place. The main problem with Application Expert is that it'll only capture packets on the host computer's local LAN, which in today's switched network is something of a pain; fortunately Application Vantage's system of remote agents means that the latter doesn't suffer the same drawback.

In short, then, the application-oriented offerings in CompuWare's Vantage 9 are both useful, understandable and valuable – albeit expensive – tools for addressing performance issues in client-server applications, both pre- and post-development.


Although designed as a developer tool, Application Expert may be of use for users of non-home-grown software thanks to its predictor tool. Consider how you'll get around the problem of capturing data in switched networks, though.