Jump to content

Visual Expert: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Fxrs90 (talk | contribs)
Edited categories
Citation bot (talk | contribs)
Altered archive-url. URLs might have been anonymized. | Use this bot. Report bugs. | Suggested by Abductive | Category:Desktop database application development tools | #UCB_Category 5/18
 
(36 intermediate revisions by 20 users not shown)
Line 1: Line 1:
{{Infobox software
{{Infobox software
| name = VISUAL EXPERT
| name = VISUAL EXPERT
| logo =
| logo =
| developer = Novalys
| developer = Novalys
| released = 1995
| released = 1995
| latest release version = Visual Expert 2021 <ref>{{cite news |title=Visual Expert 2021 Release News |url=https://www.powerbuilder.eu/powerbuilder-blog/625-code-inspection-tool-powerbuilder-oracle-sql-server}}</ref>
| programming language = C#
| programming language = C#
| operating system = Windows
| operating system = Windows
| language = English, Japanese, Spanish, French
| language = English, Japanese, Spanish, French
| genre = Code analysis tools
| genre = Code analysis tools
| license = Subscription, Perpetual, Concurrent <ref>{{cite web |url=https://www.visual-expert.com/EN/visual-expert-price.html |website=Visual Expert |title=Visual Expert Pricing}}</ref>
| license = Proprietary
| website = https://www.visual-expert.com/
| website = https://www.visual-expert.com/
}}
}}


'''Visual Expert''' is a [[Static program analysis|static code analysis tool]], extracting design and technical information from software [[source code]] by [[Reverse engineering|reverse-engineering]], used by programmers for software maintenance, modernization or optimization.
= Visual Expert =

Visual Expert is a [[Static program analysis|static program analyzer]], extracting design and technical information from software [[source code]] by [[Reverse engineering|reverse-engineering]], used by programmers for software maintenance <ref>{{Cite web|url=http://www.dtic.mil/dtic/tr/fulltext/u2/a213470.pdf|title=The challenge of software maintenance costing|last=Dr Kankey|first=Roland D|date=19 October 1989|website=|archive-url=|archive-date=|dead-url=|access-date=}}</ref> , modernization<ref>{{Cite web|url=http://www.computerweekly.com/essentialguide/Essential-guide-to-application-modernisation#guideSection2|title=Essential guide to application modernisation|last=|first=|date=|website=Computer Weekly|archive-url=|archive-date=|dead-url=|access-date=}}</ref> or optimization.
It is designed to [[Parsing|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]], [[Patch (computing)|bug fix]], and [[Software maintenance|maintenance issues]].<ref>{{Cite web|title=Code Inspection for PB, Oracle & SQL Server|url=https://www.visual-expert.com/EN/visual-expert-blog/posts-2020/code-inspection-tutorial.html|access-date=2021-05-15|website=www.visual-expert.com}}</ref>


== Features ==
== Features ==
* Cross-references exploration: [[Change impact analysis|Impact Analysis]], [[Entity–relationship model|E/R diagrams]], [[call graph]]s, [[Create, read, update and delete|CRUD matrix]], [[dependency graph]]s.
* Code exploration: [[Call graph|call graphs]], [[Create, read, update and delete|CRUD matrix]], [[File comparison|cross-references]], [[Dependency graph|dependency graphs]] <ref name=":1">{{Cite web|url=http://guru-powerbuilder.blogspot.fr/2008/10/visual-expert-for-powerbuilder.html|title=Visual Expert for PowerBuilder|last=|first=|date=15 October 2008|website=PowerBuilder Guru|archive-url=|archive-date=|dead-url=|access-date=}}</ref> <ref name=":3">{{Cite web|url=http://www.powerbuildertv.com/index.php/en/2014-01-09-07-56-51/powerbuilder-product-reviews/719-become-familiar-with-a-new-application-with-visual-expert|title=Become familiar with a new application!|last=Mikhailovsky|first=George|date=|website=www.powerbuildertv.com|archive-url=|archive-date=|dead-url=|access-date=}}</ref>.
* Software documentation: a [[documentation generator]] produces [[Software documentation|technical documentation]] <ref name=":3" /> and [[Low-level design|low-level design descriptions]]<ref name=":0">{{Cite web|url=http://billgreen.sys-con.com/node/42481|title=Visual Expert v4.5 Review|last=Green|first=Bill|date=1 September 2002|website=|archive-url=|archive-date=September 1, 2002|dead-url=|access-date=}}</ref>.
* Software documentation: a [[documentation generator]] produces [[Software documentation|technical documentation]] and [[Low-level design|low-level design descriptions]].
*Inspect the code to detect [[Software bug|bugs]], [[Vulnerability (computing)|security vulnerabilities]] and [[maintainability]] issues. Native integration with [[Jenkins (software)|Jenkins]].<ref>{{Cite web|date=2021-09-21|title=Visual Expert Jenkins Plugin|url=https://www.jenkins.io/doc/pipeline/steps/visualexpert/|website=Jenkins.io}}</ref>
*Reports on [[duplicate code]], [[Unreachable code|unused objects and methods]] and [[Naming convention (programming)|naming conventions]]. Calculates [[Software metric|software metrics]] and [[source lines of code]].
* Code comparison: [[File comparison|finds differences]] between several versions of the same code.
* Code comparison: [[File comparison|finds differences]] between several versions of the same code.
*[[Profiling (computer programming)|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.
* [[Automated code review]]: calculates [[Software metric|software metrics]] and [[source lines of code]] <ref name=":4">{{Cite web|url=http://powerbuildercentral.com/index.php/en/powerbuilder-resources-blog-forum/product-reviews/item/603-visual-expert-product-review|title=Visual Expert In the Real World|last=Aumen|first=Bill|date=9 May 2005|website=www.powerbuildercentral.com|archive-url=|archive-date=|dead-url=|access-date=}}</ref>. Finds [[Unreachable code|unused objects and methods]]. Identifies [[Duplicate code|duplicate objects]]. Controls [[Naming convention (programming)|naming conventions]].


== Usage ==
== Usage ==
Visual Expert is used in several contexts:
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.
* [[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|Static Application Security Testing (SAST)]]: detecting and removing security issues.
* [[Program comprehension]]: helping programmers understand and maintain existing code, or modernize [[Legacy system|legacy systems]]. [[Knowledge transfer|Transferring knowledge]] of the code, from one programmer to another.
*[[Continuous integration|Continuous Integration]] / Continuous Inspection : adding a static code analysis job in a [[Continuous delivery|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 system]]s. [[Knowledge transfer|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 [[Software development effort estimation#Development estimation software|estimate development efforts]].
* [[Software sizing]]: calculating the size of an application, or a piece of code, in order to [[Software development effort estimation#Development estimation software|estimate development efforts]].
* [[Code review]]: [[Code audit|auditing]] source code, in order to discover issues, such as [[Dead code elimination|dead code]], code causing poor performances or violations of programming conventions.
* [[Code review]]: improving the code by finding and removing [[Code smell|code smells]], [[Dead code elimination|dead code]], code causing poor performances or violations of [[coding conventions]].


== Limitations ==
== Limitations ==
* As a [[Static program analysis|static code analyzer]], Visual Expert is limited to the programming languages supported by its [[Parsing|code parsers]] - [[Oracle Database|Oracle]] [[PL/SQL]], [[Microsoft SQL Server|SQL Server]] [[Transact-SQL]], [[PowerBuilder]].
* As a [[Static program analysis|static code analyzer]], Visual Expert is limited to the programming languages supported by its [[Parsing|code parsers]] - [[Oracle Database|Oracle]] [[PL/SQL]], [[Microsoft SQL Server|SQL Server]] [[Transact-SQL]], [[PowerBuilder]].
* A preliminary [[reverse engineering]]  is required, with a duration depending on the [[Software sizing|size of the code]] parsed. Users must wait for the parsing completion prior to using the features, or [[Scheduling (computing)|schedule it]] in advance.
* A preliminary [[reverse engineering]] is required. Visual Expert does it automatically, but its duration depends on the [[Software sizing|size of the code]] parsed. Users must wait for the parsing completion prior to using the features, or [[Scheduling (computing)|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 model|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 [[Relational database management system|RDBMS]], communicating with a client application installed on the programmer’s computer - no [[Web application|web client]] available. This implies that the [[Source code|code]], the [[Parsing|parsers]], the [[Relational database management system|RDBMS]] and the programmers’ computers are connected to the same [[Local area network|LAN]] or [[Virtual private network|VPN]].
* Visual Expert is based on a [[Client–server model|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 [[Relational database management system|RDBMS]], communicating with a client application installed on the programmer's computer - no [[Web application|web client]] is available. This requires that the [[Source code|code]], the [[Parsing|parsers]], the [[Relational database management system|RDBMS]] and the programmers’ computers are connected to the same [[Local area network|LAN]] or [[Virtual private network|VPN]].


== History ==
== History ==
* 1995- 1998 - Prog and Doc - Initial version distributed on the French market <ref>{{Cite web|url=https://web-beta.archive.org/web/19970707152457fw_/http://www.eurelys.com:80/fr/prog&doc.htm|title=Prog & Doc (french page from Web Archive)|last=|first=|date=7 July 1997|website=Eurelys|archive-url=|archive-date=|dead-url=|access-date=}}</ref>
* 1995- 1998 - Prog and Doc - Initial version distributed on the French market <ref>{{Cite web|url=http://www.eurelys.com:80/fr/prog&doc.htm|title=Prog & Doc (french page from Web Archive)|date=7 July 1997|website=Eurelys|archive-url=https://web.archive.org/web/19970707152457/http://www.eurelys.com/fr/prog%26doc.htm|archive-date=1997-07-07|url-status=dead}}</ref>
* 2001 - Visual Expert 4.5<ref name=":0" />
* 2001 - Visual Expert 4.5
* 2003 - Visual Expert 5<ref>{{Cite web|date=2004-06-16|title=Mise à jour de Visual Expert - version 5.0|url=https://www.programmez.com/actualites/mise-jour-de-visual-expert-version-50-14566|website=Programmez!}}</ref>
* 2003 - Visual Expert 5 <ref name=":4" />
* 2007 - Visual Expert 5.7<ref name=":1" /><ref>{{Cite web|url=http://chrispollach.sys-con.com/node/365638|title=Visual expert 5.7 released|last=Pollach|first=Chris|date=April 23, 2007|website=|archive-url=|archive-date=|dead-url=|access-date=}}</ref><ref>{{Cite web|url=http://www.brucearmstrong.org/2007/04/visual-expert-57-build-7420.html|title=Visual Expert 5.7|last=Armstrong|first=Bruce|date=April 27, 2007|website=|archive-url=|archive-date=|dead-url=|access-date=}}</ref>
* 2007 - Visual Expert 5.7<ref>{{Cite web|url=http://chrispollach.sys-con.com/node/365638|title=Visual expert 5.7 released|last=Pollach|first=Chris|date=April 23, 2007|archive-url=https://web.archive.org/web/20140726045932/http://chrispollach.sys-con.com/node/365638|archive-date=2014-07-26|url-status=dead}}</ref>
* 2010 - Visual Expert 6.0<ref>{{Cite web|url=http://www.dbta.com/Editorial/News-Flashes/Novalys-Introduces-Visual-Expert-60-54481.aspx|title=Novalys introduces Visual Expert 6.0|last=|first=|date=23 April 2009|website=DBTA|archive-url=|archive-date=|dead-url=|access-date=}}</ref>
* 2010 - Visual Expert 6.0<ref>{{Cite web|url=http://www.dbta.com/Editorial/News-Flashes/Novalys-Introduces-Visual-Expert-60-54481.aspx|title=Novalys introduces Visual Expert 6.0|last=|first=|date=23 April 2009|website=DBTA|access-date=}}</ref>
* 2015 - Visual Expert 2015 - Server component added to schedule code analyses<ref name=":2">{{Cite web|url=http://www.visual-expert.com/EN/support-question-example-powerbuilder-pl-sql-tsql-stored-procedure/update-list-pb-plsql-t-sql.html|title=Visual Expert Update List|last=Novalys|first=|date=|website=Visual Expert|archive-url=|archive-date=|dead-url=|access-date=}}</ref>
* 2015 - Visual Expert 2015 - Server component added to schedule code analyses<ref>{{Cite web|date=2015-05-10|title=Introduction to Visual Expert 2015|url=http://powerbuilder-world-tour.com/download/NCPBUG-Conference-May-2015-visual-expert.pdf|website=Charlotte PowerBuilder Conference}}</ref><ref>{{Cite web|date=2015-05-15|title=Visual Expert Team System|url=https://www.visual-expert.com/EN/visual-expert-documentation/install-and-configure-visual-expert/collaborative-coding.html|website=Visual Expert}}</ref>
* 2016 - Visual Expert 2016 - Oracle PL/SQL code parser, code inventory (lines of code, number of objects…)<ref>{{Cite web|date=2021-09-21|title=Visual Expert Release History|url=http://www.visual-expert.com/EN/support-question-example-powerbuilder-pl-sql-tsql-stored-procedure/update-list-pb-plsql-t-sql-source_wpve.html|website=Visual Expert}}</ref>
* 2016 - Visual Expert 2016 - New Oracle PL/SQL code parser<ref name=":2" />
* 2017 - Visual Expert 2017 - Code comparison, CRUD matrix, SQL Server T-SQL code parser<ref name=":2" />
* 2017 - Visual Expert 2017 - SQL Server T-SQL code parser, Code comparison, CRUD matrix<ref>{{Cite web|date=2017-10-01|title=Visual Expert for SQL Server|url=https://dbmstools.com/tools/visual-expert-for-sql-server|website=DBMC tools}}</ref>
*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,<ref>{{Cite web|last=Dufourmantelle|first=Christophe|date=2020-11-17|title=Improve the Security and Quality of Your Code|url=https://www.youtube.com/watch?v=D4Q47Hbrb3g|website=Youtube}}</ref> integration with Jenkins


== References ==
== References ==
<!--- See [[Wikipedia:Footnotes]] on how to create references using <ref></ref> tags which will then appear here automatically -->
{{Reflist}}
{{Reflist}}


Line 54: Line 65:


<!--Categories-->
<!--Categories-->
[[Category:Computer programming tools]]
[[Category:Programming tools]]
[[Category:Software documentation]]
[[Category:Software documentation]]
[[Category:Documentation generators]]
[[Category:Documentation generators]]
Line 62: Line 73:
[[Category:Oracle database tools]]
[[Category:Oracle database tools]]
[[Category:Desktop database application development tools]]
[[Category:Desktop database application development tools]]
[[Category:Microsoft_database_software]]
[[Category:Microsoft database software]]

Latest revision as of 22:58, 13 February 2024

VISUAL EXPERT
Developer(s)Novalys
Initial release1995
Stable release
Visual Expert 2021 [1]
Written inC#
Operating systemWindows
Available inEnglish, Japanese, Spanish, French
TypeCode analysis tools
LicenseSubscription, Perpetual, Concurrent [2]
Websitehttps://www.visual-expert.com/

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.[3]

Features

[edit]

Usage

[edit]

Visual Expert is used in several contexts:

Limitations

[edit]

History

[edit]
  • 1995- 1998 - Prog and Doc - Initial version distributed on the French market [5]
  • 2001 - Visual Expert 4.5
  • 2003 - Visual Expert 5[6]
  • 2007 - Visual Expert 5.7[7]
  • 2010 - Visual Expert 6.0[8]
  • 2015 - Visual Expert 2015 - Server component added to schedule code analyses[9][10]
  • 2016 - Visual Expert 2016 - Oracle PL/SQL code parser, code inventory (lines of code, number of objects…)[11]
  • 2017 - Visual Expert 2017 - SQL Server T-SQL code parser, Code comparison, CRUD matrix[12]
  • 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,[13] integration with Jenkins

References

[edit]
  1. ^ "Visual Expert 2021 Release News".
  2. ^ "Visual Expert Pricing". Visual Expert.
  3. ^ "Code Inspection for PB, Oracle & SQL Server". www.visual-expert.com. Retrieved 2021-05-15.
  4. ^ "Visual Expert Jenkins Plugin". Jenkins.io. 2021-09-21.
  5. ^ "Prog & Doc (french page from Web Archive)". Eurelys. 7 July 1997. Archived from the original on 1997-07-07.
  6. ^ "Mise à jour de Visual Expert - version 5.0". Programmez!. 2004-06-16.
  7. ^ Pollach, Chris (April 23, 2007). "Visual expert 5.7 released". Archived from the original on 2014-07-26.
  8. ^ "Novalys introduces Visual Expert 6.0". DBTA. 23 April 2009.
  9. ^ "Introduction to Visual Expert 2015" (PDF). Charlotte PowerBuilder Conference. 2015-05-10.
  10. ^ "Visual Expert Team System". Visual Expert. 2015-05-15.
  11. ^ "Visual Expert Release History". Visual Expert. 2021-09-21.
  12. ^ "Visual Expert for SQL Server". DBMC tools. 2017-10-01.
  13. ^ Dufourmantelle, Christophe (2020-11-17). "Improve the Security and Quality of Your Code". Youtube.
[edit]