By Topic

Program Comprehension, 1993. Proceedings., IEEE Second Workshop on

Date 8-9 July 1993

Filter Results

Displaying Results 1 - 22 of 22
  • Proceedings IEEE Second Workshop on Program Comprehension (Cat. No.93TH0551-2)

    Publication Year: 1993
    Request permission for commercial reuse | PDF file iconPDF (171 KB)
    Freely Available from IEEE
  • Deriving path expressions recursively

    Publication Year: 1993, Page(s):177 - 185
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (532 KB)

    Program representation plays an important role in software engineering, because it is used by the tools supporting software life cycle activities. To represent a program's control structure, the dominator tree and the implied tree, derived from the program's ddgraph, can be profitably used. In fact, thanks to their recursive structure, these trees are especially suitable for designing very simple ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Model-based tools to record program understanding

    Publication Year: 1993, Page(s):87 - 95
    Cited by:  Papers (8)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (824 KB)

    Tools to record the knowledge gained by maintainers engaged in understanding an existing program are described. These tools are based on a model of the comprehension process and of reverse engineering as a whole. They form a part of an integrated reverse engineering toolset based around a central repository. Using these tools new documentation for an existing software system may be built up increm... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Partial evaluation as an aid to the comprehension of Fortran programs

    Publication Year: 1993, Page(s):46 - 54
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (688 KB)

    The authors describe a technique and a tool supporting partial evaluation of Fortran programs, i.e. their specialization for specific values of their input variables. They aim at understanding old programs, which have become very complex due to numerous extensions. From a given Fortran program and these values of its input variables, the tool provides a simplified program, which behaves like the i... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Use of a program understanding taxonomy at Hewlett-Packard

    Publication Year: 1993, Page(s):66 - 70
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (392 KB)

    Summarizes the use of a program understanding taxonomy developed at Hewlett-Packard. The primary use of the taxonomy has been in the creation of a company internal document called the Software Tools Report. The Software Tools Report is a selection and evaluation guide to software tools that addresses key company software engineering areas which include program understanding. A description of the R... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Extracting application domain functions from old code: a real experience

    Publication Year: 1993, Page(s):186 - 192
    Cited by:  Papers (6)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (452 KB)

    This work deals with the problem of locating domain dependent functions into old application systems and drawing out them for reengineering and reuse. The approach is based on a particular form of program slicing which makes it possible to recover user functionalities although they are spread over the code. Supported by a commercial tool, the approach has been experimented with a banking applicati... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A hybrid approach to recognizing programming plans

    Publication Year: 1993, Page(s):96 - 103
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (620 KB)

    Most current models of program understanding are unlikely to scale up successfully. Top-down approaches require advance knowledge of what the program is supposed to do, which is rarely available with aging software systems. Bottom-up approaches require complete matching of the program against a library of programming plans, which is impractical with the large plan libraries needed to understand pr... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Criteria for program comprehension derived from software complexity metrics

    Publication Year: 1993, Page(s):8 - 16
    Cited by:  Papers (3)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (588 KB)

    Program comprehension is close related to program complexity. In order to analyze program complexity much effort has been spent to measure the complexity of programs. For this reason hundreds of software complexity measures have been proposed. Criteria/conditions for program comprehension from software complexity measures are derived. It is also shown that using measurement theoretic numerical con... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An integrated and interactive reverse engineering environment for existing software comprehension

    Publication Year: 1993, Page(s):128 - 137
    Cited by:  Papers (4)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (756 KB)

    Software comprehension is an incremental process to support the understanding of both the behaviour and the structure of software system. It uses the existing documentation of the system and completes it with information deduced from the code by means of reverse engineering tools. Current reverse engineering tools produce pre-defined sets of reports and, in some cases, furnish answers to fixed kin... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Charon: a tool for code redocumentation and re-engineering

    Publication Year: 1993, Page(s):169 - 176
    Cited by:  Papers (1)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (616 KB)

    The maintenance of applications constitutes the most relevant issue of the overall life cycle activities. CASE tools claim to be effective in producing efficient and error free software, but usually the maintainer doesn't want to produce new system applications, but just to modify the existing ones. Re-engineering appears to be a suitable way of getting the advantages of the automated CASE tools, ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • From program comprehension to tool requirements for an industrial environment

    Publication Year: 1993, Page(s):78 - 86
    Cited by:  Papers (36)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (808 KB)

    A major portion of the maintenance effort is spent understanding existing software. The authors present an integrated code comprehension model and experiences with it in an industrial setting. They use audio-taped, think-aloud reports to investigate how well this integrated code comprehension model works during industrial maintenance activities ranging from code fixes to enhancements, code leverag... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Experiments in identifying reusable abstract data types in program code

    Publication Year: 1993, Page(s):36 - 45
    Cited by:  Papers (12)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (868 KB)

    The issue of program comprehension is addressed from the software reuse perspective. In particular the identification of abstract data types in existing program code is explored. A candidature criterion is presented and a prototype implementing it is described. The criterion is applied in an experiment that analyses five very different programs and the resulting output is discussed. The work descr... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Facilitating the comprehension of C-programs: an experimental study

    Publication Year: 1993, Page(s):55 - 63
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (656 KB)

    A software environment called CARE (computer-aided re-engineering) that facilitates the comprehension of existing C programs is described. Program comprehension in CARE is accomplished by visualizing program dependencies (i.e. entities and their relations). A repository of such dependencies is maintained and displayed using a graphical model which combines control and data-flow information. Moreov... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Understanding the process of software maintenance

    Publication Year: 1993, Page(s):2 - 5
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (380 KB)

    An extensive programme of research has been in progress at Durham University for the past seven years to investigate how formal transformations may be used to assist the process of software maintenance, particularly addressing the issues of understanding and representing existing large software systems. The results from the research are drawn together in order to assess the success and problems of... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A combined representation for the maintenance of C programs

    Publication Year: 1993, Page(s):119 - 127
    Cited by:  Papers (4)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (592 KB)

    An important aid to the problems of program comprehension has been the use of static analysis tools to provide useful and up to date information on a program. Through the use of different views a maintainer can gain a much clearer understanding of a program. A drawback of static analysis tools is that various representations of the code are required to construct the different views of the program.... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Understanding concurrent programs using program transformations

    Publication Year: 1993, Page(s):160 - 168
    Cited by:  Papers (6)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (632 KB)

    Reverse engineering of concurrent real-time programs with timing constraints is a particularly challenging research area, because the functional behaviour of a program, and the non-functional timing requirements, are implicit and can be very difficult to discover. The authors present a significant advance in this area, which is achieved by modelling real-time concurrent programs in the wide spectr... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Recovering user interface specifications for porting transaction processing applications

    Publication Year: 1993, Page(s):71 - 76
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (480 KB)

    The Reverse Engineering group at EDS Research has developed software tools to mechanically assist in reengineering transaction processing applications. The authors apply the software tools to assist in converting a very large minicomputer application written in COBOL to run under CICS on an IBM mainframe. The two platforms provide very different user interfaces and computational environments. The ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Understanding Lolita: program comprehension in functional languages

    Publication Year: 1993, Page(s):26 - 34
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (712 KB)

    Traditional arguments concerning the comprehensibility of functional programs have been illustrated with trivial examples. The authors present the real-life example of a large system for natural language processing which has been programmed entirely in a lazy functional language. This system is undergoing constant change as new features are added to different areas. They present a series of case s... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A toolset for program understanding

    Publication Year: 1993, Page(s):110 - 118
    Cited by:  Papers (6)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (592 KB)

    Program understanding is associated with the hierarchy of abstractions and interpretations that are deduced from the code. Program understanding requires the identification and study of the numerous complex interrelationships that are induced by the data flow, calling, and functional dependencies that exist in the software. Therefore, an environment is needed in order aid the programmer in underst... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • The role of testing and dynamic analysis in program comprehension supports

    Publication Year: 1993, Page(s):149 - 158
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (884 KB)

    Test cases. amd the human activities involved in testing and error analysis play a peculiar and considerable role in the comprehension of a software product and process. This subject was systematically explored in the context of the Esprit DOCKET Project designing and experimenting second-generation reverse engineering processes which combine multiple knowledge sources. This paper describes the ap... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A process algebra based program and system representation for reverse engineering

    Publication Year: 1993, Page(s):17 - 25
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (612 KB)

    A reverse engineering approach based on process algebras for system representation and understanding is presented. Process algebras offer both a formal framework for representing communicating processes and a proof theory for proving semantic equivalences between them. Programs and program fragments are denoted as concurrent agents and code behaviour is defined in terms of interactions among agent... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • DOCKET: program comprehension-in-the-large

    Publication Year: 1993, Page(s):140 - 148
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (720 KB)

    With the growing awareness of the importance of software maintenance, has come a re-evaluation of software maintenance tools. Such tools range from source code analysers to semi-intelligent tools which seek to reconstruct systems designs and specification documents from source code. However, it is clear that relying solely upon source code as the basis for reverse engineering has many problems. Th... View full abstract»

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