Wednesday, February 01, 2006

Visual Expert

Perhaps you've already heard of Visual Expert. If not, it's well worth looking at. Basically it's a code analysis and reporting tool for PowerBuilder applications. There are a large number of features in the product, too many to cover in a single blog posting. Today I just want to focus on three that I use extensively.

Dead Code
The tool examines the code and locates functions, attributes, variables, function parameters and event parameters scripts to determine when there are variable declarations that are no longer used. It's very useful if the application is a bit older or has gone through major rework and you're no longer sure what's actually being used.
Dead Code

Unused Components
The Unused Components analysis does for objects in an application what the Dead Code analysis does for code in objects. You have to be a lot more careful with this one though. If the objects are referenced dynamically, the tool has no way of determining the reference. For example, many of the objects reported in this analysis are referenced as a result of data coming from the database (the database contains the object references). Still, it gives you a good start on determining where you should start looking for dead objects.
Unused Components

Development Rules
If your development shop is rigorous about following coding guidelines (mine is), the Development Rules analysis comes in real handy. If I'm working on some major modifications or some large new functionality, I find it all too easy to skip over doing stuff like adding script headers until the code is complete. The problem is, once the code is complete I'm not really sure where I have addressed the guidelines and where I haven't. The Development Rules analysis tells me exactly where I need to revisit.
Development Rules

2 comments:

Tobias said...

Hello,

nice to see that are such tools. What about the Software from CAST (www.castsoftware.com) It does more than VisualExpert: It scans databases, PowerBuilder and a lot of other programming languages e.g. C, C++, C#, VB (.NET), Cobol, Fortran, PL/SQL, T-SQL and a lot more. You can get results in text- or grafik-mode, create reports and ypu take a look at a lot of metrics-data.

Test it! ;)

regards,
Tobias

Bruce Armstrong said...

I'm already familar with CAST, having been involved in it's selection and use at a former client site. I don't recal, however, that it handles dead code analysis. We used it primarily for database migration analysis. I also believe it is considerably more expensive than Visual Expert.