Visual Expert. Visual Expert is a static code analysis tool, extracting design and technical information from software source code by reverse-engineering, used by programmers for software maintenance, modernization or optimization.

It is designed to parse several programming languages at the same time (PL/SQL, Transact-SQL, PowerBuilder...) and analyze cross-language dependencies, in addition to each language's source code.

Visual Expert checks source code against hundreds of code inspection rules for vulnerability assessment, bug fix, and maintenance issues.

Features 
 Cross-references exploration: Impact Analysis, E/R diagrams, call graphs, CRUD matrix, dependency graphs.
 Software documentation: a documentation generator produces technical documentation and low-level design descriptions.
Inspect the code to detect bugs, security vulnerabilities and maintainability issues. Native integration with Jenkins.
Reports on duplicate code, unused objects and methods and naming conventions. Calculates software metrics and source lines of code. 
 Code comparison: finds differences between several versions of the same code.
Performance analysis: identifies code parts that slow down the application because of their syntax - it extracts statistics about code execution from the database and combines it with the static analysis of the code.

Usage 
Visual Expert is used in several contexts:
 Change impact analysis: evaluating the consequences of a change in the code or in a database. Avoiding negative side effects when evolving a system.
 Static Application Security Testing (SAST): detecting and removing security issues.
 Continuous Integration / Continuous Inspection : adding a static code analysis job in a CI/CD workflow to automatically verify the quality and security of a new build when it is released.
 Program comprehension: helping programmers understand and maintain existing code, or modernize legacy systems. Transferring knowledge of the code, from one programmer to another.
 Software sizing: calculating the size of an application, or a piece of code, in order to estimate development efforts.
 Code review: improving the code by finding and removing code smells, dead code, code causing poor performances or violations of coding conventions.

Limitations 
 As a static code analyzer, Visual Expert is limited to the programming languages supported by its code parsers - Oracle PL/SQL, SQL Server Transact-SQL, PowerBuilder.
 A preliminary reverse engineering  is required. Visual Expert does it automatically, but its duration depends on the size of the code parsed. Users must wait for the parsing completion prior to using the features, or schedule it in advance. They must also allocate sufficient hardware resources to support their volume of code.
 Visual Expert is based on a client/server architecture: the code analysis is running on a Windows PC - preferably a server. The information extracted from the code is stored in a RDBMS, communicating with a client application installed on the programmer's computer - no web client is available. This requires that the code, the parsers, the RDBMS and the programmers’ computers are connected to the same LAN or VPN.

History 
 1995- 1998 - Prog and Doc - Initial version distributed on the French market 
 2001 - Visual Expert 4.5
 2003 - Visual Expert 5 
 2007 - Visual Expert 5.7
 2010 - Visual Expert 6.0 
 2015 - Visual Expert 2015 - Server component added to schedule code analyses
 2016 - Visual Expert 2016 - Oracle PL/SQL code parser, code inventory (lines of code, number of objects…)
 2017 - Visual Expert 2017 - SQL Server T-SQL code parser, Code comparison, CRUD matrix
2018 - Visual Expert 2018 - DB Code Performance Analysis, integration with TFS
2019 - Visual Expert 2019 - Generation of E/R diagrams from the code
2020 - Visual Expert 2020 - Object dependency matrix, naming consistency verification, integration with GIT and SVN
2021 - Visual Expert 2021 - Continuous Code Inspection, integration with Jenkins

References

External links 
 Visual Expert for Oracle 
 Visual Expert for SQL Server 
 Visual Expert for PowerBuilder 
 Visual Expert Changelog

Code navigation tools
Desktop database application development tools
Programming tools
Software documentation
Documentation generators
Static program analysis tools
Software review
Microsoft database software
Oracle database tools