IP Library Granted Patent US 10,884,716
Granted Patent B2
US 10,884,716 · App. 16/875,209 · Granted Jan 5, 2021

Method and mechanism for optimal scope evaluation in scope based hierarchical configuration using evaluated scope propagation technique

Inventor: Sachin G. Totale (Pleasanton, CA)
Assignee: EMC IP Holding Company LLC
G06F8/35G06F16/2246G06F8/71G06F9/44536
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 10,884,716
App. No.
16/875,209
Granted
Jan 5, 2021
Kind
B2
Abstract

A first and second local scope definition associated with a first and second node, respectively, in a hierarchical application tree are received where the hierarchical application tree includes application instructions at one or more nodes within the hierarchical application tree. A pruned version of the hierarchical application tree is determined including by propagating the first local scope definition from the first node to the second node, a child of the first node. Any nodes that are not relevant to a particular set of one or more local scope definitions at a given node are pruned in order to obtain a pruned version of the hierarchical application tree. A qualified application is generated using those application instructions at the unpruned nodes in the pruned version of the hierarchical application tree.

Claims (43)

1. A system, comprising:

a communication interface coupled with a processor and configured to receive a first local scope definition associated with a first node in a hierarchical application tree and a second local scope definition associated with a second node in the hierarchical application tree, wherein the hierarchical application tree includes application instructions at one or more nodes within the hierarchical application tree; and

the processor configured to:

determine a pruned version of the hierarchical application tree, including by:

propagating the first local scope definition from the first node to the second node which is a child of the first node; and

pruning any nodes from the hierarchical application tree that are not relevant to a particular set of one or more local scope definitions at a given node in order to obtain the pruned version of the hierarchical application tree; and

generate a qualified application using those application instructions at the unpruned nodes in the pruned version of the hierarchical application tree, wherein:

generating the qualified application includes generating an application executable associated with a web-based application; and

the communication interface is further configured to send the application executable to a web browser on a device, wherein the web browser loads and performs the application executable.

2. The system recited in claim 1 , wherein propagating the first local scope definition includes propagating a scope that is associated with one or more of the following: device type, user role, object scope, or plan level.

3. The system recited in claim 1 , wherein:

propagating the first local scope definition includes propagating a scope that is associated with a device type having a value of mobile; and

pruning in order to obtain the pruned version of the hierarchical application tree includes pruning at least some graphics-related application instructions.

4. The system recited in claim 1 , wherein the processor is further configured to: in the event a new type of local scope is encountered which has not been encountered before while traversing the hierarchical application tree, generate a cloned hierarchical application tree in addition to the pruned version of the hierarchical application tree.

5. The system recited in claim 1 , wherein the processor is further configured to: in the event a new type of local scope is encountered which has not been encountered before while traversing the hierarchical application tree, generate a cloned hierarchical application tree in addition to the pruned version of the hierarchical application tree, wherein the cloned hierarchical application tree excludes those nodes that were encountered in the hierarchical application tree prior to the to new type of local scope.

6. A method, comprising:

receiving a first local scope definition associated with a first node in a hierarchical application tree and a second local scope definition associated with a second node in the hierarchical application tree, wherein the hierarchical application tree includes application instructions at one or more nodes within the hierarchical application tree;

determining a pruned version of the hierarchical application tree, including by:

propagating the first local scope definition from the first node to the second node which is a child of the first node; and

pruning any nodes from the hierarchical application tree that are not relevant to a particular set of one or more local scope definitions at a given node in order to obtain the pruned version of the hierarchical application tree; and

generating a qualified application using those application instructions at the unpruned nodes in the pruned version of the hierarchical application tree, wherein:

generating the qualified application includes generating an application executable associated with a web-based application; and

the method further includes sending the application executable to a web browser on a device, wherein the web browser loads and performs the application executable.

7. The method recited in claim 6 , wherein propagating the first local scope definition includes propagating a scope that is associated with one or more of the following: device type, user role, object scope, or plan level.

8. The method recited in claim 6 , wherein:

propagating the first local scope definition includes propagating a scope that is associated with a device type having a value of mobile; and

pruning in order to obtain the pruned version of the hierarchical application tree includes pruning at least some graphics-related application instructions.

9. The method recited in claim 6 further including: in the event a new type of local scope is encountered which has not been encountered before while traversing the hierarchical application tree, generating a cloned hierarchical application tree in addition to the pruned version of the hierarchical application tree.

10. The method recited in claim 6 further including: in the event a new type of local scope is encountered which has not been encountered before while traversing the hierarchical application tree, generating a cloned hierarchical application tree in addition to the pruned version of the hierarchical application tree, wherein the cloned hierarchical application tree excludes those is nodes that were encountered in the hierarchical application tree prior to the new type of local scope.

11. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving a first local scope definition associated with a first node in a hierarchical application tree and a second local scope definition associated with a second node in the hierarchical application tree, wherein the hierarchical application tree includes application instructions at one or more nodes within the hierarchical application tree;

determining a pruned version of the hierarchical application tree, including by:

propagating the first local scope definition from the first node to the second node which is a child of the first node; and

pruning any nodes from the hierarchical application tree that are not relevant to a particular set of one or more local scope definitions at a given node in order to obtain the pruned version of the hierarchical application tree; and

generating a qualified application using those application instructions at the unpruned nodes in the pruned version of the hierarchical application tree, wherein:

the computer instructions for generating the qualified application include computer instructions for generating an application executable associated with a web-based application; and

the computer program product further includes computer instructions for sending the application executable to a web browser on a device, wherein the web browser loads and performs the application executable.

12. The computer program product recited in claim 11 , wherein the computer instructions for propagating the first local scope definition include computer instructions for propagating a scope that is associated with one or more of the following: device type, user role, object scope, or plan level.

13. The computer program product recited in claim 11 , wherein:

the computer instructions for propagating the first local scope definition include computer instructions for propagating a scope that is associated with a device type having a value of mobile; and

the computer instructions for pruning in order to obtain the pruned version of the hierarchical application tree include computer instructions for pruning at least some graphics-related application instructions.

14. The computer program product recited in claim 11 further including computer instructions for: in the event a new type of local scope is encountered which has not been encountered before while traversing the hierarchical application tree, generating a cloned hierarchical application tree in addition to the pruned version of the hierarchical application tree.

15. The computer program product recited in claim 11 further including computer instructions for: in the event a new type of local scope is encountered which has not been encountered before while traversing the hierarchical application tree, generating a cloned hierarchical application tree in addition to the pruned version of the hierarchical application tree, wherein the cloned hierarchical application tree excludes those nodes that were encountered in the hierarchical application tree prior to the new type of local scope.

Assignments (11)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0106 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060332/0864 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2020
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052707/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: TOTALE, SACHIN G.
To: EMC CORPORATION
Reel/Frame 052676/0828 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052676/0956 →