Sign up to receive free email alerts when patent applications with chosen keywords are publishedSIGN UP

Abstract:

A method for bi-directional synchronization of tracing relationships
between a requirements repository and textual requirements documents,
including: in a first operating mode: gathering trace information from a
requirements repository; and formatting the trace information and
inserting the trace information as text in textual requirements
documents; and in a second operating mode: modifying the trace
information in the textual requirements documents; and updating the
requirements repository to match the modifications that were made in the
textual requirements documents.

Claims:

1. A method for bi-directional synchronization of tracing relationships
between a requirements repository and textual requirements documents,
comprising:in a first operating mode:gathering trace information from a
requirements repository; andformatting the trace information and
inserting the trace information as text in textual requirements
documents; andin a second operating mode:modifying the trace information
in the textual requirements documents; andupdating the requirements
repository to match the modifications that were made in the textual
requirements documents.

2. The method of claim 1, wherein when in the first operating mode the
method further comprises:scanning the textual requirements documents for
requirements descriptions using a word processor application programmable
interface (API), wherein for each requirement found:obtaining a type and
a unique identifier of the requirement;deleting all tracing information
blocks associated with the requirement;using the unique identifier of the
requirement to gather the trace information from the requirements
repository via a requirements management tool API;formatting the trace
information by constructing a formatted text string containing
information identifying where the requirement was traced from and where
the requirement is to be traced to; andusing the word processor APT to
insert the trace information into traced from and traced to sections of
new tracing information blocks associated with the requirement.

3. The method of claim 2, wherein when in the first operating mode the
method further comprises:inserting a timestamp indicating when the trace
information was inserted into the textual requirements documents.

4. The method of claim 1, wherein when in the second operating mode the
method further comprises:scanning the textual requirements documents for
requirements descriptions using a word processor API, wherein for each
requirement found:extracting the tracing information associated with the
requirement using the word processor API;parsing for a unique identifier
of the requirement in traced from and traced to sections of tracing
information blocks associated with the requirement;verifying that the
unique identifier of the requirement is valid and maintaining a list of
errors for reporting; andupdating the requirements repository by
synchronizing traced from and traced to information associated with the
requirement using a requirements management tool API.

5. The method of claim 1, wherein the requirements repository is part of a
requirements management tool.

6. The method of claim 1, wherein the textual requirements documents are
documents that are capable of being modified using a word processor API.

7. A system for bi-directional synchronization of tracing relationships
between a requirements repository and textual requirements documents,
comprising:a memory device for storing a program;a processor in
communication with the memory device, the processor operative with the
program to:in a first operating mode:gather trace information from a
requirements repository; andformat the trace information and insert the
trace information as text in textual requirements documents; andin a
second operating mode:modify the trace information in the textual
requirements documents; andupdate the requirements repository to match
the modifications that were made in the textual requirements documents.

8. The system of claim 7, wherein the processor is further operative with
the program when in the first operating mode to:scan the textual
requirements documents for requirements descriptions using a word
processor application programmable interface (API), wherein for each
requirement found:obtain a type and a unique identifier of the
requirement;delete all tracing information blocks associated with the
requirement;use the unique identifier of the requirement to gather the
trace information from the requirements repository via a requirements
management tool API;format the trace information by constructing a
formatted text string containing information identifying where the
requirement was traced from and where the requirement is to be traced to;
anduse the word processor API to insert the trace information into traced
from and traced to sections of new tracing information blocks associated
with the requirement.

9. The system of claim 8, wherein the processor is further operative with
the program when in the first operating mode to:insert a timestamp
indicating when the trace information was inserted into the textual
requirements documents.

10. The system of claim 7, wherein the processor is further operative with
the program when in the second operating mode to:scan the textual
requirements documents for requirements descriptions using a word
processor API, wherein for each requirement found:extract the tracing
information associated with the requirement using the word processor
API;parse for a unique identifier of the requirement in traced from and
traced to sections of tracing information blocks associated with the
requirement;verify that the unique identifier of the requirement is valid
and maintaining a list of errors for reporting; andupdate the
requirements repository by synchronizing traced from and traced to
information associated with the requirement using a requirements
management tool API.

11. The system of claim 7, wherein the requirements repository is part of
a requirements management tool.

12. The system of claim 7, wherein the textual requirements documents are
documents that are capable of being modified using a word processor API.

13. A computer readable medium tangibly embodying a program of
instructions executable by a processor to perform method steps for
bi-directional synchronization of tracing relationships between a
requirements repository and textual requirements documents, the method
steps comprising:in a first operating mode:gathering trace information
from a requirements repository; andformatting the trace information and
inserting the trace information as text in textual requirements
documents; andin a second operating mode:modifying the trace information
in the textual requirements documents; andupdating the requirements
repository to match the modifications that were made in the textual
requirements documents.

14. The computer readable medium of claim 13, wherein when in the first
operating mode the method further comprises:scanning the textual
requirements documents for requirements descriptions using a word
processor application programmable interface (API), wherein for each
requirement found:obtaining a type and a unique identifier of the
requirement;deleting all tracing information blocks associated with the
requirement;using the unique identifier of the requirement to gather the
trace information from the requirements repository via a requirements
management tool API;formatting the trace information by constructing a
formatted text string containing information identifying where the
requirement was traced from and where the requirement is to be traced to;
andusing the word processor API to insert the trace information into
traced from and traced to sections of new tracing information blocks
associated with the requirement.

15. The computer readable medium of claim 14, wherein when in the first
operating mode the method further comprises:inserting a timestamp
indicating when the trace information was inserted into the textual
requirements documents.

16. The computer readable medium of claim 13, wherein when in the second
operating mode the method further comprises:scanning the textual
requirements documents for requirements descriptions using a word
processor API, wherein for each requirement found:extracting the tracing
information associated with the requirement using the word processor
API;parsing for a unique identifier of the requirement in traced from and
traced to sections of tracing information blocks associated with the
requirement;verifying that the unique identifier of the requirement is
valid and maintaining a list of errors for reporting; andupdating the
requirements repository by synchronizing traced from and traced to
information associated with the requirement using a requirements
management tool API.

17. The computer readable medium of claim 13, wherein the requirements
repository is part of a requirements management tool.

18. The computer readable medium of claim 13, wherein the textual
requirements documents are documents that are capable of being modified
using a word processor API.

19. A method for bi-directional synchronization of tracing information
with requirements, comprising:synchronizing tracing information from a
requirements repository with textual requirements descriptions in textual
requirements documents by removing old tracing information blocks that
include old tracing information associated with the textual requirements
descriptions from the textual requirements documents, and replacing the
old tracing information blocks with new tracing information blocks that
include new tracing information associated with the textual requirements
descriptions; andsynchronizing modified tracing information from the
textual requirements documents with the requirements repository by
retrieving the modified trace information from the textual requirements
documents and updating the requirements repository to match the
modifications that were made in the textual requirements documents.

20. The method of claim 19, wherein the tracing information is modified
directly in the textual requirements documents.

Description:

CROSS-REFERENCE TO RELATED APPLICATION

[0001]This application claims the benefit of U.S. Provisional Application
No. 60/941,308, filed Jun. 1, 2007, the disclosure of which is
incorporated by reference herein in its entirety.

BACKGROUND OF THE INVENTION

[0002]1. Technical Field

[0003]The present invention relates to requirements management.

[0004]2. Discussion of the Related Art

[0005]Requirements management is an essential task of product development,
since it assures that a developed product fulfills the expectations of
the customer. Requirements traceability, i.e., the ability to "follow the
life of a requirement in both a forward and a backwards direction", as
stated in O. Gotel, and A. Finkelstein, An Analysis of the Requirements
Traceability Problem, 1st International Conference on Requirements
Engineering, 1994 pp. 94-101, is an important part of requirements
management and provides critical support for developing and maintaining
products. Traceability supports analysis in numerous engineering
activities such as change analysis, requirements validation, and software
code verification.

[0006]Requirements traceability is supported by modern requirements
managements tools such as Requisite Pro (IBM Corporation, Rational
Requisite Pro, 2007
<http://www.306.ibm.com/software/awdtools/reqpro/>), DOORS
(Telelogic, Telelogic DOORS, 2007
<http://www.telelogic.com/products/doors/index.cfm>), and Caliber
(Borland, Borland Caliber, 2007
<http://www.borland.com/us/products/caliber/index.html>). These
tools provide the means for developers to specify trace relationships
between requirements. Requirements are typically captured in textual form
and stored in a requirements repository along with tracing information.
These tools provide various views into the repository which allow users
to report on and modify the requirements and the traces. These views are
only available online to licensed users of the tool; however, it is
possible to export the contents of these views into a text document or
spreadsheet.

[0007]As a result, two different views are used for manipulating
requirements and tracing information. One view shows the detailed
description of requirements (see e.g., FIG. 1), while another view shows
traceability links between identifiers of the requirements (such as names
or unique IDs) (see e.g., FIGS. 2A and 2B). While this separation of
concerns may be beneficial (for example, one person can do the tracing
while another person adds descriptive text to the requirements), in some
situations it could be preferable to show and edit requirements details
and traceability information in a single view. For instance, if the
traceability information could be combined with the detailed requirements
information, then a review of the information could be more effective,
since both, the requirements and the traces, could be reviewed
simultaneously.

SUMMARY OF THE INVENTION

[0008]In an exemplary embodiment of the present invention, a method for
bi-directional synchronization of tracing relationships between a
requirements repository and textual requirements documents, comprises: in
a first operating mode: gathering trace information from a requirements
repository; and formatting the trace information and inserting the trace
information as text in textual requirements documents; and in a second
operating mode: modifying the trace information in the textual
requirements documents; and updating the requirements repository to match
the modifications that were made in the textual requirements documents.

[0009]When in the first operating mode the method further comprises:
scanning the textual requirements documents for requirements descriptions
using a word processor application programmable interface (API), wherein
for each requirement found: obtaining a type and a unique identifier of
the requirement; deleting all tracing information blocks associated with
the requirement; using the unique identifier of the requirement to gather
the trace information from the requirements repository via a requirements
management tool API; formatting the trace information by constructing a
formatted text string containing information identifying where the
requirement was traced from and where the requirement is to be traced to;
and using the word processor API to insert the trace information into
traced from and traced to sections of new tracing information blocks
associated with the requirement.

[0010]When in the first operating mode the method further comprises
inserting a timestamp indicating when the trace information was inserted
into the textual requirements documents.

[0011]When in the second operating mode the method further comprises:
scanning the textual requirements documents for requirements descriptions
using a word processor API, wherein for each requirement found:
extracting the tracing information associated with the requirement using
the word processor API; parsing for a unique identifier of the
requirement in traced from and traced to sections of tracing information
blocks associated with the requirement; verifying that the unique
identifier of the requirement is valid and maintaining a list of errors
for reporting; and updating the requirements repository by synchronizing
traced from and traced to information associated with the requirement
using a requirements management tool API.

[0012]The requirements repository is part of a requirements management
tool.

[0013]The textual requirements documents are documents that are capable of
being modified using a word processor API.

[0014]In an exemplary embodiment of the present invention, a system for
bi-directional synchronization of tracing relationships between a
requirements repository and textual requirements documents, comprises: a
memory device for storing a program; a processor in communication with
the memory device, the processor operative with the program to: in a
first operating mode: gather trace information from a requirements
repository; and format the trace information and insert the trace
information as text in textual requirements documents; and in a second
operating mode: modify the trace information in the textual requirements
documents; and update the requirements repository to match the
modifications that were made in the textual requirements documents.

[0015]The processor is further operative with the program when in the
first operating mode to: scan the textual requirements documents for
requirements descriptions using a word processor API, wherein for each
requirement found: obtain a type and a unique identifier of the
requirement; delete all tracing information blocks associated with the
requirement; use the unique identifier of the requirement to gather the
trace information from the requirements repository via a requirements
management tool API; format the trace information by constructing a
formatted text string containing information identifying where the
requirement was traced from and where the requirement is to be traced to;
and use the word processor API to insert the trace information into
traced from and traced to sections of new tracing information blocks
associated with the requirement.

[0016]The processor is further operative with the program when in the
first operating mode to insert a timestamp indicating when the trace
information was inserted into the textual requirements documents.

[0017]The processor is further operative with the program when in the
second operating mode to: scan the textual requirements documents for
requirements descriptions using a word processor API, wherein for each
requirement found: extract the tracing information associated with the
requirement using the word processor API; parse for a unique identifier
of the requirement in traced from and traced to sections of tracing
information blocks associated with the requirement; verify that the
unique identifier of the requirement is valid and maintaining a list of
errors for reporting; and update the requirements repository by
synchronizing traced from and traced to information associated with the
requirement using a requirements management tool API.

[0018]The requirements repository is part of a requirements management
tool.

[0019]The textual requirements documents ale documents that are capable of
being modified using a word processor API.

[0020]In an exemplary embodiment of the present invention, a computer
readable medium is provided that tangibly embodies a program of
instructions executable by a processor to perform method steps for
bi-directional synchronization of tracing relationships between a
requirements repository and textual requirements documents, the method
steps comprising: in a first operating mode: gathering trace information
from a requirements repository; and formatting the trace information and
inserting the trace information as text in textual requirements
documents; and in a second operating mode: modifying the trace
information in the textual requirements documents; and updating the
requirements repository to match the modifications that were made in the
textual requirements documents.

[0021]When in the first operating mode the method further comprises:
scanning the textual requirements documents for requirements descriptions
using a word processor API, wherein for each requirement found: obtaining
a type and a unique identifier of the requirement; deleting all tracing
information blocks associated with the requirement; using the unique
identifier of the requirement to gather the trace information from the
requirements repository via a requirements management tool API;
formatting the trace information by constructing a formatted text string
containing information identifying where the requirement was traced from
and where the requirement is to be traced to; and using the word
processor API to insert the trace information into traced from and traced
to sections of new tracing information blocks associated with the
requirement.

[0022]When in the first operating mode the method further comprises
inserting a timestamp indicating when the trace information was inserted
into the textual requirements documents.

[0023]When in the second operating mode the method further comprises:
scanning the textual requirements documents for requirements descriptions
using a word processor API, wherein for each requirement found:
extracting the tracing information associated with the requirement using
the word processor API; parsing for a unique identifier of the
requirement in traced from and traced to sections of tracing information
blocks associated with the requirement; verifying that the unique
identifier of the requirement is valid and maintaining a list of errors
for reporting; and updating the requirements repository by synchronizing
traced from and traced to information associated with the requirement
using a requirements management tool API.

[0024]The requirements repository is part of a requirements management
tool.

[0025]The textual requirements documents are documents that are capable of
being modified using a word processor API.

[0026]In an exemplary embodiment of the present invention, a method for
bi-directional synchronization of tracing information with requirements,
comprises: synchronizing tracing information from a requirements
repository with textual requirements descriptions in textual requirements
documents by removing old tracing information blocks that include old
tracing information associated with the textual requirements descriptions
from the textual requirements documents, and replacing the old tracing
information blocks with new tracing information blocks that include new
tracing information associated with the textual requirements
descriptions; and synchronizing modified tracing information from the
textual requirements documents with the requirements repository by
retrieving the modified trace information from the textual requirements
documents and updating the requirements repository to match the
modifications that were made in the textual requirements documents.

[0028]The foregoing features are of representative embodiments and are
presented to assist in understanding the invention. It should be
understood that they are not intended to be considered limitations on the
invention as defined by the claims, or limitations on equivalents to the
claims. Therefore, this summary of features should not be considered
dispositive in determining equivalents. Additional features of the
invention will become apparent in the following description, from the
drawings and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

[0029]FIG. 1 shows a detailed description of requirements;

[0030]FIGS. 2A and 2B show traceability links between identifiers of
requirements;

[0031]FIG. 3 is a high-level overview of a structure of a method and
system for bi-directionally synchronizing tracing relationships between a
requirements repository and textual requirements documents according to
an exemplary embodiment of the present invention;

[0032]FIG. 4 is a flowchart of a method for bi-directionally synchronizing
tracing relationships between a requirements repository and textual
requirements documents according to an exemplary embodiment of the
present invention;

[0033]FIG. 5 is a flowchart of a repository authority mode according to an
exemplary embodiment of the present invention;

[0034]FIG. 6 is a flowchart of a document authority mode according to an
exemplary embodiment of the present invention;

[0035]FIG. 7 is a requirements document created according to an exemplary
embodiment of the present invention; and

[0036]FIG. 8 is a block diagram of a system in which exemplary embodiments
of the present invention may be implemented.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

[0037]Presented herein is a method and system that provides bi-directional
synchronization of traceability information with textual requirements
descriptions according to an exemplary embodiment of the present
invention. The invention integrates with Rational Requisite Pro (IBM
Corporation, Rational Requisite Pro, 2007 <http://www-306.ibm
com/software/awdtools/reqpro/>), but can also be extended for use with
other requirements management tools.

[0038]The invention has two major functions: First, it allows tracing
information to be shown from a requirements repository/database directly
in textual requirements documents (captured, for example, as Microsoft
Word documents). Second, in addition to showing this information, tracing
information can be edited directly in the Word documents and the chances
are automatically synchronized with the database of the requirements
management tool.

[0039]FIG. 3 is a high-level overview of a structure of a method and
system for bi-directionally maintaining tracing relationships between a
requirements repository and textual requirements documents according to
an exemplary embodiment of the present invention.

[0040]As shown in FIG. 3, a Tracing Synchronization Tool (TST), a
requirements repository and textual requirements documents make up the
structure.

[0041]The TST is a software module that is part of a computer. The TST
connects to the requirements repository and to the textual requirements
documents via a word processor that is used to maintain the textual
requirements documents.

[0042]The requirements repository is a database that is part of a
requirements management tool such as Rational Requisite Pro. The
requirements repository may also be part of a requirements management
tool such as DOORS (Telelogic, Telelogic DOORS, 2007
<http://www.telelogic.com/products/doors/index.cfm>), Caliber
(Borland, Borland Caliber, 2007
<http://www.borland.com/us/products/caliber/index.html>), and
Star-Track (X. Song, B. Hasling, G. Mangla, B. Sherman, Lessons Learned
from Building a Web-Based Requirements Tracing System, Proceedings of the
3rd International Conference on Requirements Engineering. Putting
Requirements Engineering to Practice, 1998).

[0043]The textual requirements documents are Microsoft Word documents. The
textual requirements documents may also be any word processor document
type for which the word processor provides an appropriate application
programmable interface (API).

[0044]As further shown in FIG. 3, reference numerals (1-4) are provided
which indicate the steps of a method for bi-directionally maintaining
tracing relationships between a requirements repository and textual
requirements documents according to an exemplary embodiment of the
present invention. This method will now be described with reference to
FIG. 4.

[0046]In the repository authority mode, trace information is gathered from
the requirements repository (1). Requirement IDs (or other identifying
information) are formatted appropriately and inserted as text in proper
places in each textual requirements document (2). These appear as trace
information blocks below the requirements. Examples of this are shown in
FIG. 7. As changes are made to the requirements repository, the textual
requirements documents are periodically brought up to date by removing
old trace information blocks and replacing them with new trace
information blocks. A timestamp indicating when the trace insertion was
performed is also placed in the document.

[0047]In the document authority mode, textual requirements documents
maintainers directly modify the trace information blocks in the textual
requirements documents (3). The textual requirements documents are then
scanned to retrieve the trace information blocks, i.e., identifiable
areas of a textual requirements document that contain tracing
information. Trace information blocks can be marked using a label or
specific text formatting. These are then used to update the requirements
repository to match the modifications that were made in the textual
requirements documents (4). Any incorrectly specified trace information
that is detected is flagged for correction.

[0048]By using the TST in such a manner: 1) Developers can edit tracing
information in the requirements repository via a user interface of the
requirements management tool. The TST then automatically inserts the
tracing information into the textual requirements documents. 2)
Developers can modify the tracing information in the textual requirements
documents with a word processor. The TST then updates the requirements
repository of the requirements management tool to reflect the
modifications in the textual requirements documents.

[0049]The repository authority mode, which is used to synchronize
information from the requirements repository to the textual requirements
documents, will now be described with reference to FIG. 5.

[0061]Extract the tracing information for the requirement using the word
processor API (620a).

[0062]Parse for the requirement identifiers in the "Traced from" and
"Traced to" sections of the tracing information block (620b).

[0063]Verify that the requirements identifiers are valid. Maintain a list
of errors for reporting after the process has been completed (620c).

[0064]Synchronize the "Traced from" and "Traced to" information in the
requirements repository using the requirements management tool API
(620d).

[0065]FIG. 7 is a requirements document created using the TST. As can be
gleaned, the requirements document displays a detailed description of the
requirement SRS3347 (SRS3347 being the requirement ID, the requirement
type being embedded in the requirement ID) and traceability information
(the "Traced from" and "Traced to" information shown in the trace
information blocks) in a single view. By doing so, the requirements and
their traceability information as shown, for example, in FIG. 1 and FIGS.
2A and 2B, respectively, can be readily accessible in one view. This
eliminates the need to switch between requirements documents and the
requirements management tool, thereby enabling tracing information to be
more efficiently managed. In addition, a stakeholder does not have to
access the requirements management tool to review or modify the tracing
information.

[0066]Some aspects of the above-described invention will now be discussed.

[0067]The invention enables developers and reviewers to see a more
complete picture of the requirements by combining detailed textual
requirements information with traceability information.

[0068]The invention enables developers to more efficiently manage
traceability by editing the tracing information in the view of the
detailed textual requirements (i.e., in the textual requirements
documents).

[0069]The invention enables more efficient and thorough reviews by making
the traceability information readily accessible outside the tool
environment.

[0070]The invention removes the need for developers or stakeholders to use
the user interface of the requirements management tool. Tracing
information may be modified in the textual description, which is first
verified against the requirements repository and then synchronized.

[0071]The invention reduces cost by eliminating the need for all reviewers
to have a license for accessing the requirements management tool.

[0072]The invention reduces cost by eliminating the need for all reviewers
to be trained in the use of the requirements management tool.

[0073]The invention can increase the productivity of the requirements
management process. For example, the invention lows developers to view
and modify the tracing information in the same view as the detailed
requirements. As such, the overhead of using two separate views for
managing requirements is reduced. If desired, the developer can use just
the word processor to capture requirements and tracing information, and
does not have to use the user interface of the requirements management
tool.

[0074]The invention enables requirements reviews that are performed by
stakeholders to be greatly facilitated. For example, previously,
stakeholders needed access to the requirements management tool to access
tracing information. As such, there was significant cost for acquiring
licenses and training to use the requirements management tool. Using the
invention, the tracing information can be embedded into the requirements
documents. Thus, since most stakeholders already have and are familiar
with their word processor, there are no additional licensing or training
costs involved.

[0075]The invention also enables the ability to work on the textual
requirements document entirely "offline", since there is no need for any
connection either wired or wireless to edit the document.

[0076]A system in which exemplary embodiments of the present invention may
be implemented will now be described with reference to FIG. 8.

[0077]As shown in FIG. 8, the system includes a requirements repository
805, a computer 810 and word processor API 815 connected over a wired or
wireless network 820 such as the internet.

[0078]The requirements repository 805 is the same as the requirements
repository shown in FIG. 3.

[0079]The computer 810, which may be a portable or laptop computers
includes a central processing unit (CPU) 825 and a memory 830 which are
connected to an input device 850 and an output device 855. The CPU 825
includes a TST module 845 that includes software for executing the
above-described functions of the TST shown in FIG. 3.

[0080]The memory 830 includes a random access memrory (RAM) 835 and a
read-only memory (ROM) 840. The memory 830 can also include a database,
disk drive, tape drive, etc., or a combination thereof. The RAM 835
functions as a data memory that stores data used during execution of a
program in the CPU 825 and is used as a work area. The ROM 840 functions
as a program memory for storing a program executed in the CPU 825. The
input 850 is constituted by a keyboard, mouse, etc., and the output 855
is constituted by a liquid crystal display (LCD), cathode ray tube (CRT)
display, printer, etc.

[0081]The word processor API 815 is part of any word processor that is
used to maintain textual requirements documents. The textual requirements
documents may be stored in the computer 810. The word processor is
resident in the computer 810 and is operable via the word processor API
815.

[0082]It is understood that the present invention may be implemented in
various forms of hardware, software, firmware, special purpose
processors, or a combination thereof. In one embodiment, the present
invention may be implemented in software as an application program
tangibly embodied on a program storage device (e.g., magnetic floppy
disk, RAM, CD ROM, DVD, ROM, and flash memory). The application program
may be uploaded to, and executed by, a machine comprising any suitable
architecture.

[0083]It is also understood that because some of the constituent system
components and method steps depicted in the accompanying figures may be
implemented in software, the actual connections between the system
components (or the process steps) may differ depending on the manner in
which the present invention is programmed. Given the teachings of the
present invention provided herein, one of ordinary skill in the art will
be able to contemplate these and similar implementations or
configurations of the present invention.

[0084]It is further understood that the above description is only
representative of illustrative embodiments. For the convenience of the
reader, the above description has focused on a representative sample of
possible embodiments, a sample that is illustrative of the principles of
the invention. The description has not attempted to exhaustively
enumerate all possible variations. That alternative embodiments may not
have been presented for a specific portion of the invention, or that
further undescribed alternatives may be available for a portion, is not
to be considered a disclaimer of those alternate embodiments. Other
applications and embodiments can be implemented without departing from
the spirit and scope of the present invention.

[0085]It is therefore intended, that the invention not be limited to the
specifically described embodiments, because numerous permutations and
combinations of the above and implementations involving non-inventive
substitutions for the above can be created, hut the invention is to be
defined in accordance with the claims that follow. It can be appreciated
that many of those undescribed embodiments are within the literal scope
of the following claims, and that others are equivalent.

Patent applications by Paul J. Bruschi, Princeton Junction, NJ US

Patent applications by Sascha J. Konrad, Plainsboro, NJ US

Patent applications by William Sherman, Hillsborough, NJ US

Patent applications by Siemens Corporate Research, Inc.

Patent applications in class DATABASE SCHEMA OR DATA STRUCTURE

Patent applications in all subclasses DATABASE SCHEMA OR DATA STRUCTURE