RE Tools

Key Attributes

Source Environment

Merits

Demerits

Rigi [5]

Fault-tolerance

Completeness

Correctness

Performance

Extensible

Scalability

Portability

Availability

Usability

C, C++

1) The major advantages of the tool are that it features new technologies (e.g. layered views, Shrimp view, layout algorithms etc.).

2) The tool provides supporting Capabilities (e.g. filters, metrics, groups, etc.) and it is extensible in some way.

3) The only tool that allows to save the generated views and represent at-ions.

1) The major drawback of Rigi is the provided parser which can only parse functions and structure data Types.

2) This limits the views that can be generated mainly to functional views (call graph).

3) Another Problem is that the tool because it is a research prototype is not too stable.

Doclike Viewer [6]

Performance

Scalability

Portability

Usability

C, C++

1) Doclike Viewer is best to be used within software life cycle.

1) It uses Rigi parser. It does not have its own parser.

SNIFF+ [7]

Fault-tolerance

Scalability

Portability

Usability

C, C++

1) Sniff+ provides an efficient and portable environment with a comfortable user interface.

2) Sniff+ also provides good printing capabilities.

3) Sniff+ is the only tool that also supports browsing between all generated views which comes in handy sometimes.

1) In view, is limited to that connections can only go in one direction from an entity, therefore, resulting in many representations of one item (e.g. function) if the item is referenced somewhere else.

2) Because of this limitation of the views, highly connected entities cannot be identified and the reading of the views can get complicated with large graphs.

Shrimp [8]

Performance

Extensible

Scalability

Portability

Availability

C, C++

1) Tool provides a customizable and Interactive environment for navigating and browsing complex information spaces.

2) It employs a fully zoom able interface for exploring software.

1) Adapting SHriMP to new data domains within Eclipse, and applying the idea of terminals to program visualization [9] .

Code crawler [10]

Extensible

Scalability

Portability

Availability

Usability

C, C++, java

small talk

1) It supports reverse engineering through the combination of metrics and software visualization.

2) In this we can see screen shot also.

1) The visualization will be performed: for every node and edge the user can choose from a selection of metrics is contain little complexity.

CSV [11]

Correctness

Performance

Extensible

Scalability

Portability

Availability

Usability

C, C++

1) In this user can choose colour for Syntax elements as if statements in C++.

2) Supports gradual zooming up to the point where a line of text becomes 1 pixel.

1) Excludes option for lexical highlighting.

Solidsx [12]

Available

Portable

Usable

Scalable

Performance

Completeness

Fault-tolerance

C, C++, .NET/c# and Java code bases

1) It tightly integrates several visual techniques HEBs, tree maps, table lenses with several reverse engineering and analysis in a single environment.

2) The most important feature for user acceptance of Solidsx is integration ease.

3) Solidsx was used in several industrial reverse engineering and program comprehension Projects.

1) Tool is too generic; needs customized wizards that should address specific questions [13] .

Dalli [14]

Compliance

Full coverage Completeness Scalability Portability

Language independence

1) Dalli is recoverable because parsing and lexical technique which is highly versatile.

2) Dalli tool is versatile in light weight then other base technique.

1) It provides low accuracy.

2) Dalli itself cannot extract the complete source code as there is no one tool that can successfully extract the complete source code/ architecture model.

3) Dalli tool required to preprocessing as it allows and analyst to interact with the recovered information by accessing the result of reconstruction effort.