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

Source Code Critical Region Hyper-Data

IP.com Disclosure Number: IPCOM000105126D
Original Publication Date: 1993-Jun-01
Included in the Prior Art Database: 2005-Mar-19
Document File: 2 page(s) / 96K

Publishing Venue

IBM

Related People

Fitzpatrick, GP: AUTHOR [+3]

Abstract

In constructing or examining source code for software modules, developers encounter pre-existing segments of code which possess varying degrees of sensitivity or "criticality". That is, the effect of making changes to different areas of code varies widely. Changes to source code comments (while affecting the future maintenance of the code) do not directly affect the operation of the code. Changes to executable instructions and machine-readable information (MRI), however, can have effects ranging from a simple misspelling in an error message to a complete system failure.

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

Source Code Critical Region Hyper-Data

      In constructing or examining source code for software modules,
developers encounter pre-existing segments of code which possess
varying degrees of sensitivity or "criticality".  That is, the effect
of making changes to different areas of code varies widely.  Changes
to source code comments (while affecting the future maintenance of
the code) do not directly affect the operation of the code.  Changes
to executable instructions and machine-readable information (MRI),
however, can have effects ranging from a simple misspelling in an
error message to a complete system failure.

      There is currently no adequate method for developers to be made
aware of the relative criticality of varying areas of source code.
Described is a method for establishing and presenting "hyper-data"
for arbitrary segments of source code, which conveys information
depicting the criticality of those segments.

      Provided is an enhancement to source code browsers/editors and
CASE (Computer Aided Software Engineering) tools which enables those
familiar with existing source code to create/view/alter hyper-data
associated with segments of source code.  Users can employ
conventional techniques to mark tokens or entire blocks for which
hyper-data is desired.  Additionally, users may choose to allow a
process to mark candidate critical areas automatically.

      For example, hyper-data is automatically added to critical code
regions in various source files which make up a product.  The
hyper-data contains matter which can be used to correlate critical
regions accessing the same resource.  Of course, a user may override
the automatically generated correlation data with customized
preferences.

      Invocation of the hyper-data likewise may be initiated by the
user using standard techniques (keyboard entry, mouse click,
touch-screen, etc.) The user may request hyper-data anywhere within a
given hyper-linked block.  Alternately, the user may request that the
process show hyper-data for all areas marked.

      The usefulness of this approach can be readily seen in relation
to source code "critical regions".  Critical regions are segments of
memory on which many different pieces of code depend.  These often
take the form of shared-memory or global variables.  In this
scenario, a given block of data (the critical region) may be accessed
and potentially altered by several different software modules.  To
avoid more than one process updating the region at once, semaphores
(flags) are used to indicate when the region is in use and to lock
out other competing processes.  Segments of code which access such
regions have a high degree of sensitivity and should not be modified
without careful scrutiny.  It is precisely the developers of such
code segments who can most benefit from the hyper-data associations
d...