A system for generating reverse engineering tools

被引:1
|
作者
Canfora, G
DeLucia, A
DiLucca, GA
机构
关键词
D O I
10.1109/STEP.1997.615462
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Most current reverse engineering techniques start with an analysis of the system's source code to derive structural information, based on compiler technology. As a consequence of the maturity of the field, several formal program models exist that have allowed the automatic generation of language processing front-end. However, the software engineer has to code the data structures that implement the program model and the algorithms that implement the desired analysis. Thus, while the domain of code analysis is well understood, economic convenience leads very often to rigid code analysers that perform a fixed set of analyses and produce standard reports that users can only marginally customise. We have implemented a system for developing code analysers that uses a unique database to store both a no-loss fine-grained intermediate representation and the analyses' results. The analysers are automatically generated from a very high-level specification of the desired analyses expressed in a domain-oriented language. We use an algebraic representation, called F(p), as the user-visible intermediate representation Analysers are specified in a logic-based language, called F(p)-l, which allows the specification of an analysis in the form of a traversal of an algebraic expression, with accesses to, and scores of the database information the algebraic expression indexes. A foreign language interface allows the analysers to be embedded into C programs to facilitate interoperation with other tools.
引用
收藏
页码:34 / 44
页数:11
相关论文
共 50 条
  • [1] System for generating reverse engineering tools: A case study of software modularization
    Canfora G.
    De Lucia A.
    Di Lucca G.A.
    [J]. Automated Software Engineering, 1999, 6 (3) : 233 - 263
  • [2] System for generating reverse engineering tools: A case study of software modularization
    Canfora, Gerardo
    De Lucia, Andrea
    Di Lucca, Giuseppe A.
    [J]. Automated Software Engineering, 1999, 6 (03): : 233 - 263
  • [3] Tools for reverse engineering
    [J]. Database Program Des, 10 (74):
  • [4] Reverse Engineering Software Tools Based on a Comprehension System
    Tenoyo, Bayu
    Mursanto, Petrus
    Santoso, Harry Budi
    [J]. 2017 7TH WORLD ENGINEERING EDUCATION FORUM (WEEF), 2017, : 202 - 209
  • [5] Characterization of reverse engineering tools
    Caracterización de herramientas de ingeniería inversa
    [J]. Monroy, M.E. (mmonroyr@unicartagena.edu.co), 1600, Centro de Informacion Tecnologica (23): : 31 - 42
  • [6] Database Reverse Engineering Tools
    Mlan, Natash Ali
    Hussain, Tauqeer
    [J]. SEPADS 08: PROCEEDINGS OF THE 7TH WSEAS INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PARALLEL AND DISTRIBUTED SYSTEMS, 2008, : 206 - 211
  • [7] A comparison of four reverse engineering tools
    Bellay, B
    Gall, H
    [J]. PROCEEDINGS OF THE FOURTH WORKING CONFERENCE ON REVERSE ENGINEERING, 1997, : 2 - 11
  • [8] Analysis of Ten Reverse Engineering Tools
    Koskinen, Jussi
    Lehmonen, Tero
    [J]. ADVANCES TECHNIQUES IN COMPUTING SCIENCES AND SOFTWARE ENGINEERING, 2010, : 389 - +
  • [9] Hardware Reverse Engineering Tools and Techniques
    Gordon, Thomas
    Kilgore, Eric
    Wylds, Nick
    Nowatkowski, Michael
    [J]. 2019 IEEE SOUTHEASTCON, 2019,
  • [10] Reusing domains for the construction of reverse engineering tools
    Gouveia de Freitas, Felipe
    Sampaio do Prado Leite, Julio Cesar
    [J]. Reverse Engineering - Working Conference Proceedings, 1999, : 24 - 34