Reverse Engineering

14,000,000 Leading Edge Experts on the ideXlab platform

Scan Science and Technology

Contact Leading Edge Experts & Companies

Scan Science and Technology

Contact Leading Edge Experts & Companies

The Experts below are selected from a list of 49716 Experts worldwide ranked by ideXlab platform

Kenny Wong - One of the best experts on this subject based on the ideXlab platform.

  • Reverse Engineering a roadmap
    International Conference on Software Engineering, 2000
    Co-Authors: Hausi A. Müller, Scott Tilley, Margaret-anne Storey, Jens H Jahnke, Dennis B Smith, Kenny Wong
    Abstract:

    By the early 1990s the need for reEngineering legacy systems was already acute, but recently the demand has increased significantly with the shift toward web-based user interfaces. The demand by all business sectors to adapt their information systems to the Web has created a tremendous need for methods, tools, and infrastructures to evolve and exploit existing applications efficiently and cost-effectively. Reverse Engineering has been heralded as one of the most promising technologies to combat this legacy systems problem. This paper presents a roadmap for Reverse Engineering research for the first decade of the new millennium, building on the program comprehension theories of the 1980s and the Reverse Engineering technology of the 1990s.

  • The Reverse Engineering notebook
    2000
    Co-Authors: Hausi A. Müller, Frank Ruskey, Kenny Wong
    Abstract:

    Software must evolve over time or it becomes useless. Much of software production today is involved not in creating wholly new code from scratch but in maintaining and building upon existing code. Much of this code resides in old legacy software systems. Unfortunately, these systems are often poorly documented. Typically, they become more complex and difficult to understand over time. Thus, there is a need to better understand existing software systems. An approach toward this problem would be a first step toward easing changes and extending the continuous evolution of these systems. This dissertation addresses the problem by enabling continuous software understanding. There should be a base of Reverse Engineering abstractions that are carried forward during evolution. The proposed approach seeks to redocument existing software structure, capture the analysis decisions made, and support personal, customizable, and live perspectives of the software in an online journal called the Reverse Engineering Notebook. The premise that software Reverse Engineering be applied continuously through-out the lifetime of the software has major tool design implications. Thus, tool integration, process, and adoption are key issues for the Notebook. In particular, data integration requirements, control integration via pervasive scripting, presentation integration through the management of views, user roles, methodology, end user needs, and goal-directed framework for the Notebook are described. A major theme of the dissertation is learning from the successes and failures of studies involving tool integration and Reverse Engineering technologies. Case studies and user experiments helped to evaluate various aspects of the Notebook approach and provide feedback into software understanding tool requirements.

  • PROGRAMMABLE Reverse Engineering
    International Journal of Software Engineering and Knowledge Engineering, 1994
    Co-Authors: Scott Tilley, Kenny Wong, Margaret-anne Storey, Hausi A. Müller
    Abstract:

    Program understanding can be enhanced using Reverse Engineering technologies. The understanding process is heavily dependent on both individuals and their specific cognitive abilities, and on the set of facilities provided by the program understanding environment. Unfortunately, most Reverse Engineering tools provide a fixed palette of extraction, selection, and organization techniques. This paper describes a programmable approach to Reverse Engineering. The approach uses a scripting language that enables users to write their own routines for common Reverse Engineering activities, such as graph layout, metrics, and subsystem decomposition, thereby extending the capabilities of the Reverse Engineering toolset to better suit their needs. A programmable environment supported by this approach subsumes existing Reverse Engineering systems by being able to simulate facets of each one.

  • ICSM - Domain-retargetable Reverse Engineering
    1993 Conference on Software Maintenance, 1
    Co-Authors: Scott Tilley, Hausi A. Müller, M.j. Whitney, Kenny Wong
    Abstract:

    A user programmable approach to Reverse Engineering is described. The approach uses a scripting language that enables users to write their own routines for these activities, making the system domain-retargetable. The environment supported by this programmable approach subsumes existing Reverse Engineering systems by being able to simulate facets of each one and provides a smooth transition from semi-automatic to automatic Reverse Engineering. >

Scott Tilley - One of the best experts on this subject based on the ideXlab platform.

  • Reverse Engineering a roadmap
    International Conference on Software Engineering, 2000
    Co-Authors: Hausi A. Müller, Scott Tilley, Margaret-anne Storey, Jens H Jahnke, Dennis B Smith, Kenny Wong
    Abstract:

    By the early 1990s the need for reEngineering legacy systems was already acute, but recently the demand has increased significantly with the shift toward web-based user interfaces. The demand by all business sectors to adapt their information systems to the Web has created a tremendous need for methods, tools, and infrastructures to evolve and exploit existing applications efficiently and cost-effectively. Reverse Engineering has been heralded as one of the most promising technologies to combat this legacy systems problem. This paper presents a roadmap for Reverse Engineering research for the first decade of the new millennium, building on the program comprehension theories of the 1980s and the Reverse Engineering technology of the 1990s.

  • A Reverse-Engineering Environment Framework
    1998
    Co-Authors: Scott Tilley
    Abstract:

    Abstract : This report describes a framework for Reverse Engineering environments used to aid program understanding. The framework is based on a descriptive model that categorizes important support mechanism features based on a hierarchy of attributes. The attributes include cognitive model support, Reverse-Engineering tasks, canonical activities that are characteristic of the Reverse-Engineering process, quality attributes supported by the Reverse-Engineering environment, and miscellaneous characteristics.

  • PROGRAMMABLE Reverse Engineering
    International Journal of Software Engineering and Knowledge Engineering, 1994
    Co-Authors: Scott Tilley, Kenny Wong, Margaret-anne Storey, Hausi A. Müller
    Abstract:

    Program understanding can be enhanced using Reverse Engineering technologies. The understanding process is heavily dependent on both individuals and their specific cognitive abilities, and on the set of facilities provided by the program understanding environment. Unfortunately, most Reverse Engineering tools provide a fixed palette of extraction, selection, and organization techniques. This paper describes a programmable approach to Reverse Engineering. The approach uses a scripting language that enables users to write their own routines for common Reverse Engineering activities, such as graph layout, metrics, and subsystem decomposition, thereby extending the capabilities of the Reverse Engineering toolset to better suit their needs. A programmable environment supported by this approach subsumes existing Reverse Engineering systems by being able to simulate facets of each one.

  • ICSM - Domain-retargetable Reverse Engineering
    1993 Conference on Software Maintenance, 1
    Co-Authors: Scott Tilley, Hausi A. Müller, M.j. Whitney, Kenny Wong
    Abstract:

    A user programmable approach to Reverse Engineering is described. The approach uses a scripting language that enables users to write their own routines for these activities, making the system domain-retargetable. The environment supported by this programmable approach subsumes existing Reverse Engineering systems by being able to simulate facets of each one and provides a smooth transition from semi-automatic to automatic Reverse Engineering. >

Rugaber - One of the best experts on this subject based on the ideXlab platform.

  • ICSM - Domain analysis and Reverse Engineering
    Proceedings International Conference on Software Maintenance ICSM-94, 1994
    Co-Authors: Debaud, Moopen, Rugaber
    Abstract:

    Current Reverse Engineering technology is typically based on program analysis methods such as parsing and data flow analysis. As such, it is limited in what it can accomplish. Knowledge of the application domain containing a program can help overcome this limit and aid the comprehension process. The paper discusses the relationship of application domain analysis and Reverse Engineering. Two case studies are presented. The first describes how domain knowledge, expressed as an object-oriented framework, can aid the Reverse Engineering process for a well-understood domain. The second studies how Reverse Engineering can be used to build a domain model. Issues raised by the confluence of domain analysis and Reverse Engineering are discussed, and implications on future work in the area are suggested. >

M Di Penta - One of the best experts on this subject based on the ideXlab platform.

  • Frontiers of Reverse Engineering: A conceptual model
    2008 Frontiers of Software Maintenance, 2008
    Co-Authors: Gerardo Canfora, M Di Penta
    Abstract:

    Software Reverse Engineering is a crucial task to reconstruct high-level views of a software system - with the purpose of understanding and/or maintaining it - when the only reliable source of information is the source code, or even the system binaries. This paper discusses key Reverse Engineering concepts through a UML conceptual model. Specifically, the model is composed of a set of UML class diagrams describing relationships existing among Reverse Engineering processes, tools, artifacts, and stakeholders.

  • new frontiers of Reverse Engineering
    International Conference on Software Engineering, 2007
    Co-Authors: Gerardo Canfora, M Di Penta
    Abstract:

    Comprehending and modifying software is at the heart of many software Engineering tasks, and this explains the growing interest that software Reverse Engineering has gained in the last 20 years. Broadly speaking, Reverse Engineering is the process of analyzing a subject system to create representations of the system at a higher level of abstraction. This paper briefly presents an overview of the field of Reverse Engineering, reviews main achievements and areas of application, and highlights key open research issues for the future.

  • FOSE - New Frontiers of Reverse Engineering
    Future of Software Engineering (FOSE '07), 2007
    Co-Authors: Gerardo Canfora, M Di Penta
    Abstract:

    Comprehending and modifying software is at the heart of many software Engineering tasks, and this explains the growing interest that software Reverse Engineering has gained in the last 20 years. Broadly speaking, Reverse Engineering is the process of analyzing a subject system to create representations of the system at a higher level of abstraction. This paper briefly presents an overview of the field of Reverse Engineering, reviews main achievements and areas of application, and highlights key open research issues for the future.

Hausi A. Müller - One of the best experts on this subject based on the ideXlab platform.

  • Reverse Engineering a roadmap
    International Conference on Software Engineering, 2000
    Co-Authors: Hausi A. Müller, Scott Tilley, Margaret-anne Storey, Jens H Jahnke, Dennis B Smith, Kenny Wong
    Abstract:

    By the early 1990s the need for reEngineering legacy systems was already acute, but recently the demand has increased significantly with the shift toward web-based user interfaces. The demand by all business sectors to adapt their information systems to the Web has created a tremendous need for methods, tools, and infrastructures to evolve and exploit existing applications efficiently and cost-effectively. Reverse Engineering has been heralded as one of the most promising technologies to combat this legacy systems problem. This paper presents a roadmap for Reverse Engineering research for the first decade of the new millennium, building on the program comprehension theories of the 1980s and the Reverse Engineering technology of the 1990s.

  • The Reverse Engineering notebook
    2000
    Co-Authors: Hausi A. Müller, Frank Ruskey, Kenny Wong
    Abstract:

    Software must evolve over time or it becomes useless. Much of software production today is involved not in creating wholly new code from scratch but in maintaining and building upon existing code. Much of this code resides in old legacy software systems. Unfortunately, these systems are often poorly documented. Typically, they become more complex and difficult to understand over time. Thus, there is a need to better understand existing software systems. An approach toward this problem would be a first step toward easing changes and extending the continuous evolution of these systems. This dissertation addresses the problem by enabling continuous software understanding. There should be a base of Reverse Engineering abstractions that are carried forward during evolution. The proposed approach seeks to redocument existing software structure, capture the analysis decisions made, and support personal, customizable, and live perspectives of the software in an online journal called the Reverse Engineering Notebook. The premise that software Reverse Engineering be applied continuously through-out the lifetime of the software has major tool design implications. Thus, tool integration, process, and adoption are key issues for the Notebook. In particular, data integration requirements, control integration via pervasive scripting, presentation integration through the management of views, user roles, methodology, end user needs, and goal-directed framework for the Notebook are described. A major theme of the dissertation is learning from the successes and failures of studies involving tool integration and Reverse Engineering technologies. Case studies and user experiments helped to evaluate various aspects of the Notebook approach and provide feedback into software understanding tool requirements.

  • PROGRAMMABLE Reverse Engineering
    International Journal of Software Engineering and Knowledge Engineering, 1994
    Co-Authors: Scott Tilley, Kenny Wong, Margaret-anne Storey, Hausi A. Müller
    Abstract:

    Program understanding can be enhanced using Reverse Engineering technologies. The understanding process is heavily dependent on both individuals and their specific cognitive abilities, and on the set of facilities provided by the program understanding environment. Unfortunately, most Reverse Engineering tools provide a fixed palette of extraction, selection, and organization techniques. This paper describes a programmable approach to Reverse Engineering. The approach uses a scripting language that enables users to write their own routines for common Reverse Engineering activities, such as graph layout, metrics, and subsystem decomposition, thereby extending the capabilities of the Reverse Engineering toolset to better suit their needs. A programmable environment supported by this approach subsumes existing Reverse Engineering systems by being able to simulate facets of each one.

  • ICSM - Domain-retargetable Reverse Engineering
    1993 Conference on Software Maintenance, 1
    Co-Authors: Scott Tilley, Hausi A. Müller, M.j. Whitney, Kenny Wong
    Abstract:

    A user programmable approach to Reverse Engineering is described. The approach uses a scripting language that enables users to write their own routines for these activities, making the system domain-retargetable. The environment supported by this programmable approach subsumes existing Reverse Engineering systems by being able to simulate facets of each one and provides a smooth transition from semi-automatic to automatic Reverse Engineering. >