By Topic

Proceedings Eighth Working Conference on Reverse Engineering

2-5 Oct. 2001

Filter Results

Displaying Results 1 - 25 of 40
  • Proceedings Eighth Working Conference on Reverse Engineering

    Publication Year: 2001
    Request permission for commercial reuse | PDF file iconPDF (203 KB)
    Freely Available from IEEE
  • Author index

    Publication Year: 2001, Page(s): 381
    Request permission for commercial reuse | PDF file iconPDF (59 KB)
    Freely Available from IEEE
  • CRAFT: a framework for evaluating software clustering results in the absence of benchmark decompositions [Clustering Results Analysis Framework and Tools]

    Publication Year: 2001, Page(s):93 - 102
    Cited by:  Papers (11)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1048 KB) | HTML iconHTML

    Software clustering algorithms are used to create high-level views of a system's structure using source code-level artifacts. Software clustering is an active area of research that has produced many clustering algorithms. However, we have so far seen very little work that investigates how the results of these algorithms can be evaluated objectively in the absence of a benchmark decomposition or wi... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Wrapper development for legacy data reuse

    Publication Year: 2001, Page(s):198 - 207
    Cited by:  Papers (9)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (792 KB) | HTML iconHTML

    This paper is devoted to the technology of wrappers for legacy data systems reuse. Their characteristics are outlined and a generic wrapper architecture is defined. This architecture is intended to be instantiated for specific legacy data models and systems. A general methodology is proposed to define the architecture components. The methodology is supported by an operational CASE tool that helps ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Application of UML associations and their adornments in design recovery

    Publication Year: 2001, Page(s):81 - 90
    Cited by:  Papers (8)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (848 KB) | HTML iconHTML

    Many CASE tools support reverse engineering and UML. However, it can be observed that, usually, only a subset of the UML notation is supported, namely those parts with a more or less direct code representation. Although a lot of research has been done in this field, the more advanced features of UML notations are not commonly supported in reverse engineering. In this paper, we show approaches to d... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Wrapping legacy COBOL programs behind an XML-interface

    Publication Year: 2001, Page(s):189 - 197
    Cited by:  Papers (19)  |  Patents (19)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (600 KB) | HTML iconHTML

    This paper describes the tools and techniques for encapsulating host COBOL programs with an XML interface. The legacy programs are divided into three classes - online programs, batch programs and subprograms. For each program type, a different wrapping technique and a different tool is employed. Online programs are transformed into data-driven subprograms which process an XML document. Batch progr... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Requirements-driven software re-engineering framework

    Publication Year: 2001, Page(s):71 - 80
    Cited by:  Papers (12)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1248 KB) | HTML iconHTML

    Software re-engineering projects such as migrating code from one platform to another or restructuring a monolithic system into a modular architecture are popular maintenance tasks. Usually, projects of this type have to conform to hard and soft quality constraints (or non-functional requirements) such as "the migrant system must run as fast as the original", or "the new system should be more maint... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Reengineering relational databases to object-oriented: constructing the class hierarchy and migrating the data

    Publication Year: 2001, Page(s):335 - 344
    Cited by:  Papers (6)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (808 KB) | HTML iconHTML

    The object-oriented data model is predicted to be the heart of the next generation of database systems. Users want to move from old legacy databases into applying this new technology that provides extensibility and flexibility in maintenance. However, a major limitation on the wide acceptance of object-oriented databases is the amount of time and money invested on existing database applications, w... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Program comprehension risks and opportunities in extreme programming

    Publication Year: 2001, Page(s):176 - 185
    Cited by:  Papers (12)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (952 KB) | HTML iconHTML

    Investigates the relationship between reverse engineering and program comprehension on the one hand, and the software process on the other. To understand this relationship, we select one particular existing software process, extreme programming (XP), and study the role played in it by program comprehension and reverse engineering. To that end, we analyze five key XP practices in depth: pair progra... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Comparing type-based and proof-directed decompilation

    Publication Year: 2001, Page(s):362 - 367
    Cited by:  Papers (6)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (480 KB) | HTML iconHTML

    In the past couple of years interest in decompilation has widened from its initial concentration on reconstruction of control flow into well-founded-in-theory methods to reconstruct type information. A. Mycroft (1999) described Type-Based Decompilation and S. Katsumata and A. Ohori (2001) described Proof-Directed Decompilation. The article summarises the two approaches and identifies their commona... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Parsing in a hostile world

    Publication Year: 2001, Page(s):291 - 300
    Cited by:  Papers (4)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (816 KB) | HTML iconHTML

    The paper describes a formalization and development effort aimed at automating the production of parsers for languages for which the common classifications (LALR (F. DeRemer and T.J. Pennello, 1982; B.B. Kristensen and O.L. Madsen, 1981), LL), and even the common division of labor between lexical and syntactical analysis, do not apply. This effort, implemented in tools named DURA and lexyt, aims a... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Union schemas as a basis for a C++ extractor

    Publication Year: 2001, Page(s):59 - 67
    Cited by:  Papers (21)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (648 KB) | HTML iconHTML

    An extractor is a program which processes source code and outputs facts about the code in a software exchange format (SEF). An SEF can be further specified by a schema, analogous to a schema for a database. This paper explains how two such schemas can be combined into a union schema as the basis for creating an extractor. We describe CPPX (C Plus Plus eXtractor), which transforms a schema designed... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Displaying dependence graphs: a hierarchical approach

    Publication Year: 2001, Page(s):261 - 270
    Cited by:  Papers (7)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (872 KB) | HTML iconHTML

    We present a method to handle data- and control-flow information, represented as simplified system dependence graphs. As soon as a program is bigger than a few dozens of lines of code, its dependence graph becomes unreadable with standard drawing tools, since it contains far too many nodes and edges. In our approach, we propose to decompose the program into a hierarchy of groups that are likely to... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Interactive migration of legacy databases to net-centric technologies

    Publication Year: 2001, Page(s):328 - 334
    Cited by:  Papers (2)  |  Patents (14)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (648 KB) | HTML iconHTML

    Due to the rapid growth of e-commerce (and other Internet-related technologies), many companies want to migrate their information systems to the net-centric environment. We are proposing a toolkit (Varlet/Babel) that helps the user to achieve this goal. This is accomplished in two stages. In the first stage, a database schema is obtained and refined, then an XML description for the database schema... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Node coarsening calculi for program slicing

    Publication Year: 2001, Page(s):25 - 34
    Cited by:  Papers (4)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (704 KB) | HTML iconHTML

    Several approaches to reverse and re-engineering are based upon program slicing. Unfortunately, for large systems, such as those which typically form the subject of reverse engineering activities, the space and time requirements of slicing can be a barrier to successful application. Faced with this problem, several authors have found it helpful to merge control flow graph (CFG) nodes, thereby impr... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Characterizing the informal knowledge contained in systems

    Publication Year: 2001, Page(s):166 - 175
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (800 KB) | HTML iconHTML

    Program comprehension of legacy systems is a highly knowledge-intensive task. One of the goals of reverse engineering is to propose automated help to relate application domain concepts to all their implementation instances. It is generally accepted that to do so would require analyzing such documentation as identifiers or comments. However, before attempting to perform this difficult analysis, it ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An investigation into the connectivity properties of source-header dependency graphs

    Publication Year: 2001, Page(s):115 - 124
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (784 KB) | HTML iconHTML

    A modularization is a partitioning of a software system into components based on a variety of criteria, each depending on the clustering approach and desired level of abstraction. Source-header dependency graphs are bipartite graphs that are formed by flattening include file dependencies and enumerating source-file-to-header-file dependencies. In this paper, we describe an approach for identifying... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Simple type system for program reengineering

    Publication Year: 2001, Page(s):357 - 361
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (368 KB) | HTML iconHTML

    This paper describes a type system used in a disassembler program to produce enhanced disassembly output The type system described in this paper is capable of representing C language types. It operates using the following methodology. First, the type information is collected from the standard C headers and is stored in type library files. The stored information is then used to comment and enhance ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Computer security analysis through decompilation and high-level debugging

    Publication Year: 2001, Page(s):375 - 380
    Cited by:  Papers (6)  |  Patents (7)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (616 KB) | HTML iconHTML

    The extensive use of computers and networks worldwide has raised the awareness of the need for tools and techniques to aid in computer security analysis of binary code, such as the understanding of viruses, trojans, worms, backdoors and general security flaws, in order to provide immediate solutions with or without the aid of software vendors. The paper is a proposal for a high-level debugging too... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Preprocessor conditional removal by simple partial evaluation

    Publication Year: 2001, Page(s):281 - 290
    Cited by:  Papers (23)  |  Patents (3)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (752 KB) | HTML iconHTML

    Preprocessors with conditionals are often used as software configuration management tools, with preprocessor variables naming configuration aspects. The preprocessor conditionals found in large systems often have complex enabling Boolean equations and nesting. Over long periods, some configuration aspects lose all utility. Removal of all traces of a configuration variable and code dependent on tha... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Towards a standard schema for C/C++

    Publication Year: 2001, Page(s):49 - 58
    Cited by:  Papers (17)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (840 KB) | HTML iconHTML

    Developing a standard schema at the abstract syntax tree (AST) level for C/C++ to be used by reverse engineering and reengineering tools is a complex and difficult problem. In this paper we present a catalogue of issues that need to be considered in order to design a solution. Three categories of issues are discussed. Lexical structure is the first category and pertains to characteristics of the s... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Reverse engineering to achieve maintainable WWW sites

    Publication Year: 2001, Page(s):249 - 257
    Cited by:  Papers (30)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (744 KB) | HTML iconHTML

    The growth of the World Wide Web and the accelerated development of web sites and associated web technologies has resulted in a variety of maintenance problems. The maintenance problems associated with web sites and the WWW are examined. It is argued that currently web sites and the WWW lack both data abstractions and structures that could facilitate maintenance. A system to analyse existing web s... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An approach for reverse engineering of web-based applications

    Publication Year: 2001, Page(s):231 - 240
    Cited by:  Papers (24)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (752 KB) | HTML iconHTML

    The new possibilities offered by WEB applications are pervasively and radically changing several areas. WEB applications, compared to WEB sites, offer substantially greater opportunities: a WEB application provides the WEB user with a means to modify the site status. WEB applications must cope with an extremely short development/evolution life cycle. Usually, they are implemented without producing... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Lessons learned in data reverse engineering

    Publication Year: 2001, Page(s):323 - 327
    Cited by:  Papers (3)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (408 KB) | HTML iconHTML

    Reverse engineering of data has been performed in one form or another for over twenty-five years (1976-2001 approx.). The author describe the lessons learned in data reverse engineering (DRE) as contributed in a survey of data reverse engineers. Interesting is the fact that some of the lessons learned tell us how we are doing in the process of initial database design as well as how difficult the D... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Generating robust parsers using island grammars

    Publication Year: 2001, Page(s):13 - 22
    Cited by:  Papers (73)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (928 KB) | HTML iconHTML

    Source model extraction, the automated extraction of information from system artifacts, is a common phase in reverse engineering tools. One of the major challenges of this phase is creating extractors that can deal with irregularities in the artifacts that are typical for the reverse engineering domain (for example, syntactic errors, incomplete source code, language dialects and embedded languages... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.