Proceedings Seventh Working Conference on Reverse Engineering

23-25 Nov. 2000

Filter Results

Displaying Results 1 - 25 of 42
  • Proceedings Seventh Working Conference on Reverse Engineering

    Publication Year: 2000
    Request permission for commercial reuse | PDF file iconPDF (192 KB)
    Freely Available from IEEE
  • Dynamic re-engineering of binary code with run-time feedbacks

    Publication Year: 2000, Page(s):2 - 10
    Cited by:  Papers (1)  |  Patents (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (777 KB)

    Dynamic binary translation is the process of translating and optimising executable code from one machine to another at run-time, while the program is executing on the target machine. The translation technique is a process of low-level re-engineering consisting of an initial reverse engineering phase followed by a forward engineering phase. UQDBT, a machine-adaptable dynamic binary translator, can ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Reverse engineering from assembler to formal specifications via program transformations

    Publication Year: 2000, Page(s):11 - 20
    Cited by:  Papers (10)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (741 KB)

    The FermaT transformation system, based on research carried out over the last sixteen years at Durham University, De Montfort University and Software, Migrations Ltd., is an industrial-strength formal transformation engine with many applications in program comprehension and language migration. This paper is a case study which uses automated plus manually-directed transformations and abstractions t... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Reverse engineering tools as media for imperfect knowledge

    Publication Year: 2000, Page(s):22 - 31
    Cited by:  Papers (14)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1118 KB)

    Reverse engineering is an imperfect process driven by imperfect knowledge. Most current reverse engineering tools do not adequately consider these inherent characteristics. They focus an representing precise, complete and consistent knowledge and work towards enforcing predefined structures on the processes. According to our experience, this design paradigm seriously limits human-centred reverse e... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Exploring legacy systems using types

    Publication Year: 2000, Page(s):32 - 41
    Cited by:  Papers (8)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (956 KB)

    We show how hypertext-based program understanding tools can achieve new levels of abstraction by using inferred type information for cases where the subject software system is written in a weakly typed language. We propose TYPEXPLORER, a tool for browsing COBOL legacy systems based on these types. The paper addresses: how types, an invented abstraction, can be presented meaningfully to software re... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Reverse architecting: an industrial experience report

    Publication Year: 2000, Page(s):42 - 50
    Cited by:  Papers (23)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (829 KB)

    Reverse architecting is a flavour of reverse engineering that concerns the extraction of software architecture models from the system implementation. This paper presents experience in recovering the architecture of an embedded software system developed in Nokia. It outlines the reverse architecting approach, discusses its application on the case study and presents usage scenarios of the extracted ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Migrating legacy user interfaces to the Internet: shifting dialogue initiative

    Publication Year: 2000, Page(s):52 - 58
    Cited by:  Papers (16)  |  Patents (10)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (645 KB)

    A critical problem in many businesses today is in reengineering legacy information systems to operate on the Internet. Migrating a sequentially structured program to the Internet requires restructuring it to be event-driven to accommodate a new Web-based user interface. The Model Oriented Reengineering Process for Human-Computer Interface (MORPH) technique and toolset were developed to automatical... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Constructing XML-speaking wrappers for WEB applications: towards an interoperating WEB

    Publication Year: 2000, Page(s):59 - 68
    Cited by:  Papers (11)  |  Patents (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (961 KB)

    We discuss an architecture for integrating WWW applications that offer information and services in the same domain. At the center of this architecture exists a mediator, whose responsibilities are to interact with the user and to effectively exchange information with the underlying applications in order to accomplish the user's task. The integration and interoperation of the existing applications ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Data reverse engineering: a historical survey

    Publication Year: 2000, Page(s):70 - 78
    Cited by:  Papers (11)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (706 KB)

    Data reverse engineering is a rapidly growing field which is sometimes misunderstood. In our effort to promote the realization that data reverse engineering is a valuable and essential part of reverse engineering and is now finding its place in software engineering, we present a summary of the history of data reverse engineering. A definition of data reverse engineering, a summary of the history o... View full abstract»

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

    Publication Year: 2000, Page(s):79 - 85
    Cited by:  Papers (1)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (579 KB)

    We report on an experience in teaching database reverse engineering. We found a graduated sequence of case studies to be effective. Our evidence is anecdotal, but we believe the observations will be helpful for improving teaching techniques. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Method and process for iterative reengineering of data in a legacy system

    Publication Year: 2000, Page(s):86 - 96
    Cited by:  Papers (8)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1053 KB)

    This paper presents an iterative approach to database reengineering, starting from the assumption that for the user organization, the data are the most important assets in a legacy system. The most innovative feature of the proposed approach, in comparison with other rival approaches, is that it can eliminate all the ageing symptoms of the legacy database. The new database can therefore be readily... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Advanced clone-analysis to support object-oriented system refactoring

    Publication Year: 2000, Page(s):98 - 107
    Cited by:  Papers (65)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (922 KB)

    Manual source code copy and modification is often used by programmers as an easy means for functionality reuse. Nevertheless, such practice produces duplicated pieces of code or clones whose consistent maintenance might be difficult to achieve. It also creates implicit links between classes sharing a functionality. Clones are therefore good candidates for system redesign. This paper presents a nov... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Recovering use case models from object-oriented code: a thread-based approach

    Publication Year: 2000, Page(s):108 - 117
    Cited by:  Papers (15)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (924 KB)

    Use case models describe the behavior of a software system from the user's perspective. This paper presents a reverse engineering approach for recovering a use case model from object-oriented code. The approach identifies use cases by analyzing class method activation sequences triggered by input events and terminated by output events. The approach produces a structured use case model including di... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Reengineering using design patterns

    Publication Year: 2000, Page(s):118 - 127
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (823 KB)

    Starting from a legacy system, originally developed in C and using text files, we first conducted a reverse engineering of this system to obtain its object-oriented analysis model. Then, in a process that is called segmentation, we restructured the code, changing all data structures to abstract data types and procedures to methods, eliminating all data access anomalies. This paper presents an expe... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An architecture-based approach for synthesizing and integrating adapters for legacy software

    Publication Year: 2000, Page(s):128 - 137
    Cited by:  Papers (9)  |  Patents (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1024 KB)

    In software organizations there is a very real possibility that a commitment to existing assets will require migration of legacy software towards new environments that use modern technology. One technique that has been suggested for facilitating the migration of existing legacy assets to new platforms is via the use of the adapter design pattern, also known as component wrapping. We describe an ap... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Revisiting the Delta IC approach to component recovery

    Publication Year: 2000, Page(s):140 - 149
    Cited by:  Papers (4)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (990 KB)

    Component recovery supports program understanding, architecture recovery and reuse. Among the best known techniques for detection of reusable objects (related global variables and their accessor functions) is Delta-IC (Canfora et al., 1996). This paper re-visits the original approach and extends it in different ways. It describes a variant of Delta-IC suitable for reverse engineering that omits th... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A reference architecture for Web servers

    Publication Year: 2000, Page(s):150 - 159
    Cited by:  Papers (21)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (746 KB)

    A reference software architecture for a domain defines the fundamental components of the domain and the relations between them. Research has shown the benefits of having a reference architecture for product development, software reuse and maintenance. Many mature domains, such as compilers and operating systems, have well-known reference architectures. We present a process to derive a reference ar... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • GXL: toward a standard exchange format

    Publication Year: 2000, Page(s):162 - 171
    Cited by:  Papers (104)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (985 KB)

    This paper describes ongoing work toward the development of a standard software exchange format (SEF), for exchanging information among tools that analyze computer programs. A particular exchange format called GXL (Graph Exchange Language) is proposed. GXL can be viewed as a merger of well known formats (e.g. GraX, PROGRES, RPA, RSF and TA) for exchanging typed, attributed, directed graphs. By usi... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Towards portable source code representations using XML

    Publication Year: 2000, Page(s):172 - 182
    Cited by:  Papers (36)  |  Patents (4)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1150 KB)

    One of the most important issues in source code analysis and software re-engineering is the representation of software code text at an abstraction level and form suitable for algorithmic processing. However, source code representation schemes must be compact, accessible by well defined application programming interfaces (APIs) and above all portable to different operating platforms and various CAS... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A structured demonstration of program comprehension tools

    Publication Year: 2000, Page(s):184 - 193
    Cited by:  Papers (10)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (902 KB)

    This paper describes a structured tool demonstration, a hybrid evaluation technique that combines elements from experiments, case studies and technology demonstrations. Developers of program understanding tools were invited to bring their tools to a common location to participate in a scenario with a common subject system. Working simultaneously the tool teams were given reverse engineering tasks ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Analyzing XFIG with GUPRO

    Publication Year: 2000, Page(s):194 - 196
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (398 KB)

    GUPRO (Generic Unit for Program Understanding, http://www.gupro.de) provides an adaptable and extensible workbench for program understanding and software reengineering. GUPRO is strongly based on graph technology, i.e. source code is parsed into graph structures which are accessible by graph algorithms and a general graph query language GReQL. In GUPRO, these base technologies are combined into re... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Analyzing xfig using the Bauhaus tool

    Publication Year: 2000, Page(s):197 - 199
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (331 KB)

    The Bauhaus project researches reengineering techniques to help program understanding of legacy code. Part of the program understanding task is the discovery of the system's architecture, which consists of components, subsystems, connectors, and constraints. Information about the system is exclusively extracted from the source code (because this is the only reliable source of information), in a se... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • PBS tool demonstration report on xfig

    Publication Year: 2000, Page(s):200 - 202
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (386 KB)

    The Portable Book Shelf (PBS) (http://www.turing.cs.toronto.edu/phs) software consists of a set of tools to extract and visualize the architecture of a software system. Currently, it can extract the architecture for systems written in C, C++, Java, and PL/IX. The tools can be classified into three categories: 1. The source code extractor (SCE): extracts system artifacts and their relationships fro... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Applying traditional Unix tools during maintenance: an experience report

    Publication Year: 2000, Page(s):203 - 206
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (418 KB)

    The Unix programming environment provides a rich and fairly standard set of generic tools for the development and maintenance of software. In an age of advanced software tools and environments, it is useful to see how new tools compare against an old baseline. The exercise involved performing three tasks: (1) producing summary documentation; (2) evaluating program structure; and (3) reconnoitering... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Analyzing xfig using the Rigi tool suite

    Publication Year: 2000, Page(s):207 - 209
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (287 KB)

    An experiment is conducted on how well expert users of program comprehension tools are able to perform specific program understanding and maintenance tasks on the xfig drawing program using these tools. The paper reports on the experiences of the users of the Rigi reverse engineering tool suite. Rigi is an interactive, visual tool designed to help developers better understand and redocument their ... View full abstract»

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