User Guide | API Java Doc | Version History

Analyst AVI video demo
6 minutes, 30MB.

Eclipse plug-in client to access Analyst, quick video demo
3.5 minutes, 23MB.


Following program flow is a key task in all aspects of software development. Joanju Analyst performs fast and effective analysis of applications written in Progress 4GL (OpenEdge Advanced Business Language, "ABL"). It allows program flow to be followed easily, both backward (impact analysis) and forward (flow analysis). You will want Analyst in your toolbox for:

  • Productivity
  • Impact analysis
  • Flow analysis
  • Debugging
  • Re-engineering


In regular day-to-day software development and maintenance, two of the most frequently required bits of information are: Where is this procedure called from? and What procedures can this call lead to?. Without the right tools, getting this information can be time consuming and error prone. Ideally, it should not take much longer than a few seconds to find calls and procedures. In fact, it should not take more than a few seconds to jump to the source code for those calls or procedures. With Joanju Analyst, finding and browsing calls and procedures is fast and easy.

Impact analysis

When making changes which affect the behavior of a procedure, the locations in the system which call the procedure should be examined to check that the changes will not have any unexpected impact. If the calling locations cannot be quickly found and examined, then this step is frequently skipped, under the assumption that the change to the procedure is well understood and safe. With Analyst, impact analysis is a snap.

Flow analysis

The process of following and understanding program flow is made slow if the target procedure for a call cannot be quickly jumped to and viewed. It is made even more difficult by dynamically bound calls, because it is frequently not obvious which procedure(s) a call is referencing. Analyst makes it easy to follow simple calls as well as dynamically bound calls, so that the developer or analyst can focus on program flow without hindrances.


Visual debugging tools help the programmer understand how data flows through the application. In many cases though, such as with hard to reproduce bugs, it is important for the programmer to be able to understand overall program flow, especially the "border cases" of program flow. In addition to understanding overall program flow, Analyst can help programmers determine whether a procedure is being called from where they expect, and whether a dynamically bound call is targeting the procedures they expect.


There are certain types of projects which benefit from the ability to trace calls from one procedure to the next. These include refactoring and re-architecting projects, and any sort of project which requires the reverse-engineering of your application's source code. This is true whether or not you've attached the "legacy" label to your system. These kinds of large scale analysis projects are difficult to get started without the ability to easily follow the application's procedure flow.

Joanju Analyst comes with a programmer's interface, so that its data can be exported to the reports and tools that you need for your project.

Copyright © 2001-2015 Joanju Software. All rights reserved.
Joanju, Joanju Proparse, and Joanju AutoDox are trademarks of Joanju Software.