Analyzing Stack Flows to Compare Java Programs

Cited 6 time in webofscience Cited 0 time in scopus
  • Hit : 699
  • Download : 0
This paper presents a method for comparing and detecting clones of Java programs by analyzing program stack flows. A stack flow denotes an operational behavior of a program by describing individual instructions and stack movements for performing specific operations. We analyze stack flows by simulating the operand stack movements during execution of a Java program. Two programs for detection of clones of Java programs are compared by matching similar pairs of stack flows in the programs. Experiments were performed on the proposed method and compared with the earlier approaches of comparing Java programs, the Tamada, k-gram, and stack pattern based methods. Their performance was evaluated with real-world Java programs in several categories collected from the Internet. The experimental results show that the proposed method is more effective than earlier methods of comparing and detecting clones of Java programs.
Publisher
IEICE-INST ELECTRONICS INFORMATION COMMUNICATIONS ENG
Issue Date
2012-02
Language
English
Article Type
Article
Keywords

SOFTWARE THEFT; BIRTHMARKS

Citation

IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, v.E95D, no.2, pp.565 - 576

ISSN
0916-8532
DOI
10.1587/transinf.E95.D.565
URI
http://hdl.handle.net/10203/98046
Appears in Collection
CS-Journal Papers(저널논문)
Files in This Item
There are no files associated with this item.
This item is cited by other documents in WoS
⊙ Detail Information in WoSⓡ Click to see webofscience_button
⊙ Cited 6 items in WoS Click to see citing articles in records_button

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0