Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

A System for Extracting Data Passed among Routines

IP.com Disclosure Number: IPCOM000123147D
Original Publication Date: 1998-Jun-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 103K

Publishing Venue

IBM

Related People

Shinomi, H: AUTHOR [+2]

Abstract

Disclosed is a system for extracting from a program data items passed by calling subroutines, in order to help programmers understand the structure of the program. Even if there are no documents specifying the subroutine call interfaces, the system helps programmers to understand the specification of the interfaces. The method used in the system is applicable to any programming language (e.g., COBOL, PL/I, C, or Fortran).

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

A System for Extracting Data Passed among Routines

   Disclosed is a system for extracting from a program data
items passed by calling subroutines, in order to help programmers
understand the structure of the program.  Even if there are no
documents specifying the subroutine call interfaces, the system
helps programmers to understand the specification of the interfaces.
The method used in the system is applicable to any programming
language (e.g., COBOL, PL/I, C, or Fortran).

   The method can be used to extract data items passed between
programs, as well as between internal routines in a program.  For
simplicity, however, the following describes only its application to
data items passed among internal routines.

   Data items passed by subroutine calls are extracted in the
following steps:
  1) Input a program, and generate a parse tree for it.
  2) Extract information on the control flow between statements
      from the parse tree.
  3) Extract caller-callee relationships between subroutines
      from the control flow.
  4) Extract data items passed by the calls.

   Step 4 is based on the following algorithm.  The system
searches the portions (routines) of the program  where the value of
each data item in each routine is set.  This is done by traversing
statements upstream along the control flow.  The search process
extracts information on the data flow of each data item (where set,
where used).  During the search, routine calls are found in the
control flow.  The data flow information (passing of data items) is
added to each routine call.  Finally, each caller-callee relationship
includes passed data items.

   The following is a description of the system's user
interface.  First, a caller-callee relationship chart is displayed in
the window (see Fig. 1).  In t...