Next time you're down at the bar with your iSeries cronies, here's a trivia question that could win you a few drinks. How many third-party, standalone source-code debuggers exist in the iSeries market today?
Surprisingly, despite the fact that at the beginning of 2000 there were 20 products of its type, and although there are many programming tools in the iSeries market that include debugging features, the actual answer is one. It's Tango/04 Computing Group's VISUAL Debugger for Windows, a graphical debugger that runs on Windows PCs (thus the "for Windows" suffix) but uses a server component that installs on the iSeries via FTP using TCP/IP or an APPC router. A second version of the product, VISUAL Debugger 5250 Edition, provides an SEU-like green-screen interface via 5250 emulation.
Tango/04 VISUAL Debugger works with iSeries program languages RPG OPM, RPG/ILE, Cobol/400, ILE/Cobol, ILE C, ILE C++, CL, and ILE CL. It provides a graphical environment with code color-coding and indentation features that simplify sorting through code lines and help developers understand even complex and undocumented program logic.
VISUAL Debugger includes NiceLink, a utility that controls the necessary iSeries and Windows connections to make everything work. NiceLink is PC-based middleware with a component that installs on the iSeries and lets developers connect to multiple systems.
Once the configuration is complete, a developer can start a debugging session from a client PC. VISUAL Debugger provides a window in which the programmer can enter a project description and the location on the iSeries of the program to debug. It enables specification of an active iSeries job name that will be associated with the debugging task. If the library name of the target program is unknown, VISUAL Debugger lets users explore libraries for the appropriate program file.
After a program selection, VISUAL Debugger displays five panes: Program Navigator, Source Code, Command Line, Watch Variable List, and Command Log (Figure 1). The left pane is the Program Navigator feature, which shows the general organization of a program's sequence. Its Fan Out view shows program calls to external objects, and the Fan In view shows external call sources. These are easiest to think of as the program's "table of contents" and "index," respectively. Both views inform developers of all affected subroutines when making any code changes.
The right pane provides a source-code view of the program, which is where graphical features such as color-coding and indentation display. Developers can scroll up and down to view code lines or navigate through the program using hyperlinks. From here, users can display variable values on demand and debug interactive, batch, and remote jobs via SEU commands, among other features.
The bottom tabs on the standard display let developers access the Application Explorer. This feature automatically creates a navigable, graphical diagram of the application that users can move through by clicking tree branches, which lets them drill down to open objects and individual code lines.
Along the top of the source code view is a Command Line window, into which developers can enter iSeries commands, program calls, and SEU-like commands, for example, to find a certain code string. Users can also run any iSeries command here (e.g., changing the library list or altering the local data area).
Alternatively for finding specific program points, VISUAL Debugger also offers Find and Highlight functions that let users search for the next occurrence or all occurrences of text strings, specific changes, breakpoints, and other program locations. Clicking the Highlight function lets user enter any text, statement type, or changes (i.e., changes made to code since a particular date) to find, highlight, or insert a breakpoint at that site. Types of breakpoints users can set are unconditional, conditional, or temporary.
At the bottom of the source code view is the Watch Variable List, which shows the type and value of expressions in the upper part of the view that the developer wants to monitor. A "stop when change" feature stops the debugger at any statement that changes the contents of this variable regardless of breakpoints, which can save time when looking for elusive bugs. Tab buttons at the bottom of the debug view include one to access a data dictionary that VISUAL Debugger automatically compiles.
After deverlopers make changes and set breakpoints, VISUAL Debugger lets them execute program code to look for problems. While that's happening, users also have the option of capturing job information to help diagnose problems. For example, programmers can view the job log, LDA, QTEMP objects, library list, and the call stack.
VISUAL Debugger also includes a coverage tracker for software testing, a source-mapping wizard that can debug iSeries jobs via source code on a remote machine, a code-printing tool, and automatic recovery procedures if the client or server crashes or the network link drops.
If you need some help debugging source code but don't have the budget for an IDE or more comprehensive tool set, VISUAL Debugger could be just what you're looking for.
John Ghrist is senior products editor for iSeries NEWS.
Solution Spotlight is a feature of iSeries NEWS that provides more in-depth coverage of significant iSeries products. Offerings are selected for Solution Spotlight by iSeries NEWS editorial staff, based on staff perception of the product as either new or innovative, or because the product is the subject of extensive discussions in Internet forums on iSeriesNetwork.com and elsewhere.
|
VENDOR CONTACT INFORMATION
|
| SoftLanding Systems (U.S. distributor) (800) 545-9485 softlanding.com VISUAL Debugger for Windows |