• No results found

A Comparison of Reverse Engineering Tool Code to Visual Flowchart and Imagix-4D

N/A
N/A
Protected

Academic year: 2020

Share "A Comparison of Reverse Engineering Tool Code to Visual Flowchart and Imagix-4D"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

429

A Comparison of Reverse Engineering Tool Code to Visual

Flowchart and Imagix-4D

Rashmi Yadav

1

, Ravindra Patel

2

Rajiv Gandhi Technical University Bhopal, Madhya Pradesh India

Abstract-- Today modifications are needed in each and every filed and it is equally true in the arena of software. The software that developed earlier is needed to be modified as per the present customer requirements Software industries facing challenge to understand & modify the legacy software as pertoday’s customer requirements. Rebuilding theLegacy software from Scratch is difficult. Reverse engineering is one way to understand the existing huge legacy software. To alleviatethis reverse engineering tools are already available. But little is known about the advantages and disadvantages of the tools in different situations. We have studied of several paper reverse engineering tool study and pick Code to visual flowchart tool and Imagix- 4D. We are picking the Imagix-4D for their inherent features which are widely adopted by the software industries and Code to visual flowchart tool for their good parsing capabilities. In this paper we compare both the tools on the basis of flowchart generation from the existing code. This study will give the capabilities and limitation of the tool and further guide the features that will require in the existing reverse engineering tools and indicate the need of full featured reverse engineering tool.

I.

R

ELATED

W

ORK

The leagacy software are not fulfil the customer todays

need. So we have to modify or renovate the software so

that the software satisfies the current need.When modify

the exiting source code first we need to understand legacy

or any existing software as we know the software is huge

and millions of line of code.Graphical representationis

easier to understandthat’s by understanding the source

code in the form of pictorial representation is good. The

reverse engineering tool is used to solve this problem.

Reverse engineering tool take source code as an input and

visualize

pictorial

representations.Various

reverse

engineering tools are already available like Rigi [1]

Doclike Viewer [2]SNIFF+ [3] Shrimp[4] [5] Code

crawler [6] CSV [7] Solidsx [8] [9] Dalli [10] GUPRO

[11] DEFCTO [13] COLUMBS [14] Reveal Tool [15]

Reverse Engineering tool [16] Super Womble [17] Pilfer

[18] REOffice [19] SVG graph editor[20] The Code

Struc-TureVisualization Tool [21] PL/SQL Reverse

Engineering Tool[22] Code to visual flowchart [23]

WSAD [24] Solid* tools[25] Imagix-4D [26].

Details and feature of all the tools and case study of

Imagix-4D was evaluated and reported [27]. We select the

two tools for comparison first is Imagix-4D for their

inherent capabilities & widely adopted by the industries.

Second is code to visual flowchart for their excellent

parsing capabilities.

Comparison between Imagix-4D and Code to visual

Flowchart tool some sample of source code is taken and

give as an input to the Tool code to visual flowchart and

Imagix-4D and generated flowchart analyse and

comparison is evaluated.

a) Program Prime No. C Program

Thisis a small program in which enters the number by

user it check the Condition if the condition is true the

number is prime Else the number is not prime. It is

implemented in C language.

#include <stdio.h>

int main()

{

int n, i, flag=0;

printf("Enter a positive integer: ");

scanf("%d",&n);

for(i=2;i<=n/2;++i)

{

if(n%i==0)

{

flag=1;

break;

}

}

if (flag==0)

printf("%d is a prime number.",n);

else

printf("%d is not a prime number

",n);

(2)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

430

We give program (a) to Imagix-4D and the generated

flowchart given in figure 1 The inadequacy we have

observed that is displayed FOR loop Two times, first for

loop display in assignment block as well as in conditional

statement also. This repetition may create overhead in

large projects.

[image:2.612.138.466.241.511.2]

Same program runs by the Code to visual flowchart and

in figure no. 2 are clearly observable that, for loop is not

repeated. It is easy to understand and less complex. It is

suitable for the large and complex program.But in

Imagix-4D the code is display with line number the code

traceability and understandability isgood but the display

line number is not available in code to visual flowchart.

(3)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

[image:3.612.91.526.121.453.2]

431

Figure 2: Flowchart generated by Code to Visual flowchart with coding details.

When the code is huge and we are interested only flow

not in detail coding the Imagix-4D gives the choice to

display the flowchart with minimum coding details in

figure 3.

Code to visual flow chart also having excellent

capability that it Given below figure 4 generates the Flow

chart of Prime Number Program without the source Code

details.

[image:3.612.213.406.517.697.2]
(4)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

[image:4.612.72.273.508.720.2]

432

Figure 4: Flow chart of Prime Number Program without coding details

b)

A program to find even no. in c++

This program identifies the entered number is even or

not it is implemented in C++ we remove the variable

declaration.

This program given as an input into Imagix-4D and

generated diagram in figure 5 it is clearly shown that the

it display the assignment block for variable declaration

just after the start block. It has no error detection

mechanism available.

#includes<iostream.h>

#include<conio.h>

Void main ()

{

//declaration of variable i removed

while(i<=100)

{

if(i%2==0)

{

cout<<i<<" is even number";

(5)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

[image:5.612.96.522.134.369.2]

433

Figure 5: Flow chart of Program(b) generated by Imagix-4D

When we gave input the program (b) to Code to visual

flowchart we observe that the variable declaration box is

not display in the figure 6 which is shown the good

parsing capability whereas the Imagix-4D give the

variable declaration even in the code there is no variable

declaration means Imagix-4D have the no limited paring

(6)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

[image:6.612.76.540.127.468.2]

434

Figure 6: Flow chart of Program (b) generated by Code to visual flowchart

II.

C

ONCLUSION

In this study we found that the Imagix-4D is good as it

display the flowchart with some context like code

traceability is easy due to line number but the repetition

of the loop display many time will increase the overhead

and there is limited parsing capability .

Whereas the code to visual flowchart shows that there

is no traceability as line number is not display in the

flowchart but excellent parsing capability by no repetition

of the loops.

The comparison of these tools articulates that the

individually the Imagix-4D and code to visual flowchart

are not sufficient generate the flowchart of the legacy

code during reverse engineering. The selection of the tool

is depends on the situation. This paper draw a conclusion

that there is no single tool are sufficient to generate the

flowchart from source code so there is need to develop the

Full featured reverse engineering tool for flow chart

generation.

REFERENCES

[1] Muller, H.A. and Kienle, H.M. Rigi—An Environment for Software Reverse Engineering, Exploration, Visualization, and Redocumentation. Science of Computer Programming, Volume 75, Issue 4, pp 247–263, April 2010.

[2] Suleiman, S. Doclike Viewer: A Software Visualization Tool. Proceeding of 1st Malaysian Software Engineer- ing Conference (MySEC’05), Penang, 12-13 Dec. 2005, pp. 263-265.

[3] Bellay, B. and Gall, H. An Evaluation of Reverse Engineering Tool Capabilities.journalof Software Maintenance: Research

Practice,1998,10,pp305-31.http://dx.doi.org/10.1002/(SICI)1096908X(199809/10)10:5<30 5::AIDSMR175>3.0.CO;2-7

[4] Storey M.-A. and Michaud, J. (2001) Shrimp Views: An Interactive Environment for Exploring Multiple Hierarchical Views of a Java Program, in ICSE 2001 (Workshop on Software Visualization). 10.1109/WPC.2001.921719,, pp12-13, May 2001. [5] Rayside, D., Litoiu, M. and Storey, M.-A. (2001) Integrating

(7)

International Journal of Emerging Technology and Advanced Engineering

Website: www.ijetae.com

(ISSN 2250-2459, ISO 9001:2008 Certified Journal,

Volume 8, Issue 3, March 2018)

435

[6] Lanza, M. CodeCrawler—Lessons Learned in Building Software

Visualization Tool. Proceeding of 7th European Conference on Software Maintenance and Reengineering, Benevento (Italy), pp.409-418, 28 March2003.

[7] Moberts, I.B. Code Structure Visualization. Master Thesis,

Department of Mathematics and Computer Science,

TechnischeUniversiteit Eindhoven, Eindhoven, 2005.

[8] Reniers, D., Voinea, L., Ersoy, O. and Telea, A. The Solid Toolset for Software Visual Analytics of Program Structure and Metrics Comprehension: From Research Prototype to Product. Science of

Computer Programming, 2014

79,224-240.http://dx.doi.org/10.1016/j.scico.2012.05.002.

[9] Alexandru Tele and HeorhiyByelas, A Framework for Reverse Engineering Large C++ Code Bases‖ Elsevier Electronic Notes in Theoretical Computer Science 233 ,pp143–159,2009.

[10] Kazman, R. and Carriere, S.J. Playing Detective: Reconstructing Software Architecture from Available Evi- dence. Journal Automated Software Engineering , 6, pp107-138, 1999.

[11] Riediger, V. Analyzing XFIG with GUPRO. 7th Working Conference on Reverse Engineering, Brisbane, 23-25.November 2000 http://dx.doi.org/10.1109/WCRE.2000.891466.

[12] Ebert, J., Kullbach, B., Riediger, V. and Winter, A. (2002) GUPRO: Generic Understanding of Programs: An Overview. Electronic Notes in Theoretical Computer Science, 47-56. (http://www.elsevier.nl/ locate/entcs/volume72.html)2002 . [13] H.J.S. Basten and P. KLINT DEFACTO, ―Language- Parametric

fact Extraction from Source Code SLE, volume 5452 of Lecture Notes in Computer Science, page 265-284. Springer, 2008. [14] Rudolf Ferenc, Arpad Beszedes, MikkoTarkiainen, and

TiborGyimothy. Columbus—reverse engineering tool a schema for C++. 18th IEEE International Conference on Software Maintenance (ICSM’02), pages 172–181, October 2002.

[15] Matzko, S., Clarke, P.J., Gibbs, T.H., Malloy, B.A. and Power, J.F.Reveal: A Tool to Reverse Engineer Class Diagrams. Proceeding of the 40th International Conference on Tools Pacific: Objects for Internet, Mobile and Em- bedded Applications, Australia,, pp. 13-21, 1 Feb2002.

[16] Federico Bellucci, Giuseppe Ghiani, Fabio Paternò, Claudio Porta ―Automatic Reverse Engineering of Interactive Dynamic Web Applications to Support Adaptation across Platforms‖ IUI’12, Lisbon, Portugal ACM 978-1-4503-1048,2012.

[17] Jackson, D. and Waingold, A. Lightweight Construction of Object Models from Bytecode. IEEE Transactions on Software Engineeri pp156-169. 2001 http://dx.doi.org/10.1109/32.908960.

[18] Sutton, A. and Maletic, J.I. Mappings for Accurately Reverse

Engineering UML Class Models from C++.WCRE’05:

Proceedings of the 12th Working Conference on Reverse Engineering, Washington DC, 175-1847 Nov 2005.

[19] F. Yang. Using Excel and PowerPoint to build a reverse engineering tool. Master’s thesis,Department of Computer Science, University of Victoria, 2003.

[20] H. M. Kienle, A.Weber, and H. A. M¨uller.Leveraging SVG in the Rigi reverse engineering tool. SVG Open / Carto.net Developers Conference, July 2002.

[21] Kienle, H. and Muller, H.A. 1st International Workshop on Advanced Software Development Tools and Techniques (WASDeTT), 2008.

[22] MartinHabringer Michael Moser and Josef Pichler reverse engineering PL/SQL legacy code , IEEE International Conference on Software Maintenance and Evolution,pp 553-556, 1063-6773/14 ,DOI 10.1109/ICSME, 2014.

[23]

http://code-visual-to-flowchart-full-version.software.informer.com ,visited on 2013.

[24] H. M. Kienle and H. A. M¨uller.A WSAD-based fact extractor for J2EE web projects. Proceedings of the 9th IEEE International Symposium on Web Systems Evolution,Paris, France, DOI: 10.1109/WSE.2007.4380245 Jan-2007.

[25] DennieReniers , Lucian Voinea, OzanErsoy, AlexandruTelea ―The Solid* toolset for software visual analytics of program structure and metrics comprehension: From research prototype to product, Science of Computer programming , A special issue of the Workshop on Academic Software Development Tools and Techniques, Volume 79, Pages 224–240, 2014.

[26] http://www.imagix.com .

Figure

Figure 1: Flowchart generated by Imagix-4D of Input program (a)
Figure 2: Flowchart generated by Code to Visual flowchart with coding details.
Figure 4:  Flow chart of Prime Number Program without coding details
Figure 5: Flow chart of Program(b) generated by Imagix-4D
+2

References

Related documents

- Borre stated that Eric Neumann from ITS can work with Lori Erdman to figure out how to let students know about the best way to obtain the software they may need for

This rapid literature review has searched for experiences of areas or regions that have gone from having a form of special status governance to integration into a national

El arquitecto francés Jean Louis Cohen, por entonces estudiante de arquitectura en la École des Beaux-Arts de París2, explica cómo, más allá del conflicto general en el que

Therefore, this thesis will first examine the phenomenon of impoliteness by investigating Indonesian participants on giving online comments in Indonesian football

Mimi Emig, MD

For a plaid grating that moves with temporal frequencies so high and contrasts so low that only the first-order motion system con- tributes to perception, only one parameter,

The findings also revealed a positive but average relationship between parental involvement in early literacy level acquisition and students’ achievement in integrated science