IP Library Granted Patent US 8,266,591
Granted Patent B2
US 8,266,591 · App. 11/849,073 · Granted Sep 11, 2012

Method and system for identifying suspect links between objects

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,266,591
App. No.
11/849,073
Granted
Sep 11, 2012
Kind
B2
Abstract

Techniques are provided for identifying suspect links between objects from multiple domains. A plurality of links that associates a collection of requirement objects with a set of configuration management objects is stored. The collection of requirement objects is defined in a requirement management system for a software product, and the set of configuration management objects is defined in a configuration management system that is operable to manage the development of the software product. A determination is made that a particular requirement object was changed. In response to determining that the particular requirement object was changed, one or more links of the plurality of links are automatically determined. The one or more links respectively associate one or more configuration management objects, of the set of configuration management objects, with the particular requirement object. The one or more links are then identified as suspect.

Claims (55)

1. A computer-implemented method comprising:

storing a plurality of links that associates a collection of requirement objects with a set of configuration management objects;

wherein the collection of requirement objects is defined in a requirement management system for a software product;

wherein the set of configuration management objects is defined in a configuration management system that is operable to manage the development of the software product;

determining that a change was made to a particular requirement object of the collection of requirement objects;

in response to determining that the change was made to the particular requirement object, automatically determining one or more links from the plurality of links;

wherein the one or more links respectively associate one or more configuration management objects, of the set of configuration management objects, with the particular requirement object; and

storing first information that identifies each of the one or more links as suspect.

2. The computer-implemented method as recited in claim 1 , further comprising:

based on the first information, generating suspect link information that indicates that the one or more configuration management objects are suspected as being affected by the change that was made to the particular requirement object; and

providing the suspect link information to a user.

3. The computer-implemented method as recited in claim 1 , wherein automatically determining the one or more links comprises:

inspecting the plurality of links to determine which links, from the plurality of links, associate any configuration management objects with the particular requirement object; and

determining that the one or more links are those links, of the plurality of links, which associate at least one configuration management object with the particular requirement object.

4. The computer-implemented method as recited in claim 1 , wherein each link of the plurality of links comprises:

first data that identifies a requirement object from the collection of requirement objects;

second data that identifies a configuration management object from the set of configuration management objects; and

a field that is operable to store third data which indicates whether or not said each link is identified as suspect.

5. The computer-implemented method as recited in claim 1 , wherein storing the first information that identifies each of the one or more links as suspect comprises:

storing, in a designated field in each link of the one or more links, data that indicates that the change made to the particular requirement object is suspected to affect a configuration management object that is identified in said each link in association with the particular requirement object.

6. The computer-implemented method as recited in claim 1 , further comprising:

receiving input that indicates that a particular configuration management object, of the one or more configuration management objects, is not affected by the change that was made to the particular requirement object; and

based on the input, unmarking as suspect a particular link of the one or more links, wherein the particular link associates the particular configuration management object with the particular requirement object.

7. The computer-implemented method as recited in claim 1 , wherein the particular requirement object is one or more of:

a functional requirement object that specifies one or more functional characteristics of the software product;

a design requirement object that specifies one or more design characteristics of the software product;

a marketing requirement object that specifies one or more marketing characteristics of the software product;

a customer requirement object that specifies one or more characteristics that are requested by a customer of the software product;

a security requirement object that specifies one or more security characteristics of the software product;

a hardware requirement object that specifies one or more hardware characteristics of the software product; and

a test-case requirement object that specifies one or more test cases that need to be performed in the development of the software product.

8. The computer-implemented method as recited in claim 1 , wherein the one or more configuration management objects include at least one of:

an item object that comprises a file and attribute information associated with the file, wherein the attribute information comprises a version of the file;

a change request object that comprises metadata information indicating one or more issues associated with the development of the software product; and

a development task object that comprises metadata information indicating one or more development tasks that need to be performed in the development of the software project.

9. The computer-implemented method as recited in claim 1 , further comprising storing audit trail information based on the first information, wherein the audit trail information associates the change made to the particular requirement object with the one or more configuration management objects.

10. The computer-implemented method as recited in claim 1 , further comprising:

determining that a specific configuration management object, of the set of configuration management objects, was changed;

in response to determining that the specific configuration management object was changed, automatically determining a specific link of the plurality of links, wherein the specific link associates the specific configuration management object with a specific requirement object from the collection of requirement objects; and

storing second information that identifies the specific link as suspect.

11. The computer-implemented method as recited in claim 10 , wherein:

the particular requirement object is the same as the specific requirement object;

the one or more links include the specific link; and

the one or more configuration management objects include the specific configuration management object.

12. A non-transitory machine-readable medium comprising one or more stored instructions which, when processed by one or more processors, cause: storing a plurality of links that associates a collection of requirement objects with a set of configuration management objects; wherein the collection of requirement objects is defined in a requirement management system for a software product; wherein the set of configuration management objects is defined in a configuration management system that is operable to manage the development of the software product; determining that a change was made to a particular requirement object of the collection of requirement objects; in response to determining that the change was made to the particular requirement object, automatically determining one or more links of the plurality of links; wherein the one or more links respectively associate one or more configuration management objects, of the set of configuration management objects, with the particular requirement object; and storing first information that identifies each of the one or more links as suspect.

13. The non-transitory machine-readable medium as recited in claim 12 , wherein the one or more stored instructions further comprise instructions which, when processed by the one or more processors, cause: based on the first information, generating suspect link information that indicates that the one or more configuration management objects are suspected as being affected by the change that was made to the particular requirement object; and providing the suspect link information to a user.

14. The non-transitory machine-readable medium as recited in claim 12 , wherein the instructions that cause automatically determining the one or more links comprise instructions which, when processed by the one or more processors, cause: inspecting the plurality of links to determine which links, from the plurality of links, associate any configuration management objects with the particular requirement object; and determining that the one or more links are those links, of the plurality of links, which associate at least one configuration management object with the particular requirement object.

15. The non-transitory machine-readable medium as recited in claim 12 , wherein each link of the plurality of links comprises: first data that identifies a requirement object from the collection of requirement objects; second data that identifies a configuration management object from the set of configuration management objects; and a field that is operable to store third data which indicates whether or not said each link is identified as suspect.

16. The non-transitory machine-readable medium as recited in claim 12 , wherein the instructions that cause storing the first information that identifies each of the one or more links as suspect comprise instructions which, when processed by the one or more processors, cause: storing, in a designated field in each link of the one or more links, data that indicates that the change made to the particular requirement object is suspected to affect a configuration management object that is identified in said each link in association with the particular requirement object.

17. The non-transitory machine-readable medium as recited in claim 12 , wherein the one or more stored instructions further comprise instructions which, when processed by the one or more processors, cause: receiving input that indicates that a particular configuration management object, of the one or more configuration management objects, is not affected by the change that was made to the particular requirement object; and based on the input, unmarking as suspect a particular link of the one or more links, wherein the particular link associates the particular configuration management object with the particular requirement object.

18. The non-transitory machine-readable medium as recited in claim 12 , wherein the particular requirement object is one or more of: a functional requirement object that specifies one or more functional characteristics of the software product; a design requirement object that specifies one or more design characteristics of the software product; a marketing requirement object that specifies one or more marketing characteristics of the software product; a customer requirement object that specifies one or more characteristics that are requested by a customer of the software product; a security requirement object that specifies one or more security characteristics of the software product; a hardware requirement object that specifies one or more hardware characteristics of the software product; and a test-case requirement object that specifies one or more test cases that need to be performed in the development of the software product.

19. The non-transitory machine-readable medium as recited in claim 12 , wherein the one or more configuration management objects include at least one of: an item object that comprises a file and attribute information associated with the file, wherein the attribute information comprises a version of the file; a change request object that comprises metadata information indicating one or more issues associated with the development of the software product; and a development task object that comprises metadata information indicating one or more development tasks that need to be performed in the development of the software project.

20. The non-transitory machine-readable medium as recited in claim 12 , wherein the one or more stored instructions further comprise instructions which, when processed by the one or more processors, cause storing audit trail information based on the first information, wherein the audit trail information associates the change made to the particular requirement object with the one or more configuration management objects.

21. The non-transitory machine-readable medium as recited in claim 12 , wherein the one or more stored instructions further comprise instructions which, when processed by the one or more processors, cause: determining that a specific configuration management object, of the set of configuration management objects, was changed; in response to determining that the specific configuration management object was changed, automatically determining a specific link of the plurality of links, wherein the specific link associates the specific configuration management object with a specific requirement object from the collection of requirement objects; and storing second information that identifies the specific link as suspect.

22. The non-transitory machine-readable medium as recited in claim 21 , wherein: the particular requirement object is the same as the specific requirement object; the one or more links include the specific link; and the one or more configuration management objects include the specific configuration management object.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2026
From: SERENA SOFTWARE, INC.
To: MICRO FOCUS LLC
Reel/Frame 073758/0887 →
RELEASE OF SECURITY INTEREST REEL/FRAME 039136/0241 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: SERENA SOFTWARE, INC
Reel/Frame 062623/0123 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042383/0830 →
SECURITY INTEREST Recorded Jul 12, 2016
From: SERENA SOFTWARE, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 039136/0241 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY'S NAME PREVIOUSLY RECORDED AT REEL: 026073 FRAME: 0206. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT. Recorded Jun 9, 2016
From: LEHMAN COMMERCIAL PAPER INC., AS RESIGNING ADMINISTRATIVE AGENT AND COLLATERAL AGENT
To: BARCLAYS BANK PLC, AS ADMINISTATIVE AGENT
Reel/Frame 038963/0840 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 032679/0596 Recorded May 2, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: SERENA SOFTWARE, INC.
Reel/Frame 038589/0480 →
RELEASE OF SECURITY AGREEMENT Recorded Apr 17, 2014
From: BARCLAYS BANK PLC, AS COLLATERAL AGENT
To: SERENA SOFTWARE, INC.
Reel/Frame 032712/0493 →
SECURITY INTEREST Recorded Apr 15, 2014
From: SERENA SOFTWARE, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 032679/0596 →
SECURITY AGREEMENT Recorded Apr 4, 2011
From: SERENA SOFTWARE, INC., A DELAWARE CORPORATION
To: BARCLAYS BANK PLC. AS ADMINISTRATIVE AGENT
Reel/Frame 026073/0206 →
PATENT SECURITY AGREEMENT Recorded May 1, 2008
From: SERENA SOFTWARE, INC.
To: LEHMAN BROTHERS COMMERCIAL PAPER INC.
Reel/Frame 020887/0052 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2007
From: BROWN, GARY; DERAKHSHAN, MIR; BAIRD, KERSTIN
To: SERENA SOFTWARE, INC.
Reel/Frame 020160/0277 →