IP Library Granted Patent US 8,707,446
Granted Patent B2
US 8,707,446 · App. 13/540,448 · Granted Apr 22, 2014

Enforcing alignment of approved changes and deployed changes in the software change life-cycle

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,707,446
App. No.
13/540,448
Granted
Apr 22, 2014
Kind
B2
Abstract

On a host, host content change requests are intercepted in real-time. In a tracking mode, the change requests are logged and allowed to take effect on the host. In an enforcement mode, the change requests are logged and additionally compared against authorized change policies and a determination is made whether to allow the change to take effect or to block the changes, thereby enforcing the authorized change policies on the host. Tracking and enforcement can be done in real-time. In either mode and at any time, the logged changes can be reconciled against a set of approved change orders in order to identify classes of changes, including changes that were deployed but not approved and changes that were approved but not deployed.

Claims (108)

1. A method to be executed by a processor, comprising:

intercepting, by a host computer, a host content change request indicating a change to a persistent object on the host computer;

determining whether the change is authorized, as indicated by a set of change authorization policies; and

allowing the change to take effect when the change is authorized;

allowing the change to take effect when the change is not authorized for an initial period;

logging information about the host content change request when the change is not authorized during the initial period; and

blocking the change from taking effect when the change is not authorized after the initial period,

wherein the set of change authorization policies is configurable to define whether the persistent object can be changed.

2. The method of claim 1 , further comprising:

logging information about the host content change request;

obtaining a log representing a set of host content change requests;

filtering the log to select change requests which meet a condition to form a filtered log;

comparing the filtered log to a set of approved change orders for any one or more of a plurality of persistent objects on the host;

identifying at least one correlation between the set of host content change requests and the set of approved change orders; and

providing user-readable data representing the at least one correlation.

3. The method of claim 2 , wherein the condition is selected from a group consisting of:

change requests related to a specified set of hosts;

change requests generated in a time window; and

change requests that represent a change in one or more specified host capabilities.

4. The method of claim 1 , further comprising:

logging information about the host content change request from a plurality of time windows;

obtaining a log for each time window of the plurality of time windows;

identifying a bug during a time window of the plurality of time windows; and

identifying a set of persistent objects from the log of the time window of the bug.

5. The method of claim 1 , further comprising:

logging information about the host content change request; and

filtering the host content change request to prevent logging the host content change request if the host content change request is non-material.

6. The method of claim 5 , wherein the host content change request is nonmaterial if the host content change request includes one or more of:

creation of specified registry entries;

modification of specified registry entries; and

creation, deletion, or modification of temporary objects.

7. Logic encoded in one or more non-transitory computer readable media having computer-executable instructions and when executed by a processor is operable to perform operations comprising:

intercepting a host content change request indicating a change to a persistent object on a host;

determining whether the change is authorized, as indicated by a set of change authorization policies; and

allowing the change to take effect when the change is authorized;

logging information about the host content change request;

obtaining a log representing a set of host content change requests;

filtering the log to select change requests which meet a condition to form a filtered log;

comparing the filtered log to a set of approved change orders for any one or more of a plurality of persistent objects on the host;

identifying at least one correlation between the set of host content change requests and the set of approved change orders; and

providing user-readable data representing the at least one correlation,

wherein the set of change authorization policies is configurable to define whether the persistent object can be changed.

8. The logic of claim 7 , wherein the operations further comprise:

allowing the change to take effect when the change is not authorized for an initial period;

logging information about the host content change request when the change is not authorized during the initial period; and

blocking the change from taking effect when the change is not authorized after the initial period.

9. The logic of claim 7 , wherein the condition is selected from a group consisting of:

change requests related to a specified set of hosts;

change requests generated in a time window; and

change requests that represent a change in one or more specified host capabilities.

10. The logic of claim 7 , wherein the operations further comprise:

logging information about the host content change request from a plurality of time windows;

obtaining a log for each time window of the plurality of time windows;

identifying a bug during a time window of the plurality of time windows; and

identifying a set of persistent objects from the log of the time window of the bug.

11. The logic of claim 7 , wherein the operations further comprise:

logging information about the host content change request; and

filtering the host content change request to prevent logging the host content change request if the host content change request is non-material.

12. The logic of claim 11 , wherein the host content change request is nonmaterial if the host content change request includes one or more of:

creation of specified registry entries;

modification of specified registry entries; and

creation, deletion, or modification of temporary objects.

13. A host, comprising:

a memory element for storing data; and

a processor operable to execute instructions associated with the data, wherein the processor and the memory element cooperate when the processor executes the instructions, such that the host is configured to:

intercept a host content change request indicating a change to a persistent object on the host;

determine whether the change is authorized, as indicated by a set of change authorization policies; and

allow the change to take effect when the change is authorized;

log information about the host content change request from a plurality of time windows;

obtain a log for each time window of the plurality of time windows;

identify a bug during a time window of the plurality of time windows; and

identify a set of persistent objects from the log of the time window of the bug,

wherein the set of change authorization policies is configurable to define whether the persistent object can be changed.

14. The host of claim 13 , wherein the host is further configured to:

allow the change to take effect when the change is not authorized for an initial period;

log information about the host content change request when the change is not authorized during the initial period; and

block the change from taking effect when the change is not authorized after the initial period.

15. The host of claim 13 , wherein the host is further configured to:

log information about the host content change request;

obtain a log representing a set of host content change requests;

filter the log to select change requests which meet a condition to form a filtered log;

compare the filtered log to a set of approved change orders for any one or more of a plurality of persistent objects on the host;

identify at least one correlation between the set of host content change requests and the set of approved change orders; and

provide user-readable data representing the at least one correlation.

16. The host of claim 15 , wherein the condition is selected from a group consisting of:

change requests related to a specified set of hosts;

change requests generated in a time window; and

change requests that represent a change in one or more specified host capabilities.

17. The host of claim 13 , wherein the host is further configured to:

log information about the host content change request; and

filter the host content change request to prevent logging the host content change request if the host content change request is non-material.

18. At least one non-transitory computer readable medium having computer-executable instructions stored therein, and when executed by a host computer, cause the host computer to:

intercept a host content change request indicating a change to a persistent object on the host computer;

determine whether the change is authorized, as indicated by a set of change authorization policies; and

allow the change to take effect when the change is authorized;

allow the change to take effect when the change is not authorized for an initial period;

log information about the host content change request when the change is not authorized during the initial period; and

block the change from taking effect when the change is not authorized after the initial period,

wherein the set of change authorization policies is configurable to define whether the persistent object can be changed.

19. At least one non-transitory computer readable medium having computer-executable instructions stored therein, and when executed by a host computer, cause the host computer to:

intercept a host content change request indicating a change to a persistent object on the host computer;

determine whether the change is authorized, as indicated by a set of change authorization policies; and

allow the change to take effect when the change is authorized;

log information about the host content change request from a plurality of time windows;

obtain a log for each time window of the plurality of time windows;

identify a bug during a time window of the plurality of time windows; and

identify a set of persistent objects from the log of the time window of the bug,

wherein the set of change authorization policies is configurable to define whether the persistent object can be changed.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →