IP Library Granted Patent US 8,887,143
Granted Patent B1
US 8,887,143 · App. 11/430,212 · Granted Nov 11, 2014

System and services for handling computing environments as documents

Inventors: William Blume (Santa Clara, CA); Sekaran Nanja (San Jose, CA); Jagadish Bandhole (San Jose, CA)
Assignee: Symantec Operating Corporation
G06F8/61
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,887,143
App. No.
11/430,212
Granted
Nov 11, 2014
Kind
B1
Abstract

A system for describing computing environments as electronic documents, programs or other types of electronic representation or data is disclosed. The environment description can be created, transferred and ultimately used to create the specified computing environment for use by an end user, or users, in many different applications. The invention provides abstraction software and a user interface to allow a human user to specify a definition for the computing environment. Desired components are selected and included in the environment definition. Environment definitions can be stored and transferred in a manner compatible with typical electronic information. Environment definitions can be installed onto hardware and software resources by installation software. Environments can be installed on specific components from which the environment was originally abstracted, or on other sufficiently similar components. Environments can be remotely manipulated and accessed from computers, terminals, web browsers, handheld devices, or other devices.

Claims (87)

1. A method comprising:

displaying a list of software components to a user, wherein

an existing computing environment comprises the software components;

receiving input signals from the user indicating a plurality of software components selected from the list of software components;

determining one or more hardware constraints in response to the receiving the input signals;

generating an environment document, wherein

the environment document comprises first information identifying each software component of the plurality of software components,

the environment document comprises instructions for installing the plurality of software components onto a new computing environment,

the environment document comprises information identifying the one or more hardware constraints, wherein

the one or more hardware constraints comprise at least one of a memory device capacity, a memory device type, or a processor type, and

the displaying, receiving, and generating are performed by a computing device, wherein

the existing computing environment is accessible to the computing device; and

installing the new computing environment based on the environment document, wherein the installing comprises

identifying a plurality of hardware devices that satisfy the one or more hardware constraints, wherein

the identifying comprises accessing a database of available hardware,

determining whether a first hardware device of the plurality of hardware devices is compatible with the new computing environment, and

selecting the first hardware device in response to the determining.

2. The method of claim 1 , further comprising:

receiving user input modifying the environment document;

generating third information identifying a constraint corresponding to an integrity check, in response to the user input; and

storing the modified environment document, wherein the modified environment document comprises fourth information modified by the user input and the third information identifying the constraint.

3. The method of claim 2 , further comprising:

preventing a second user from accessing the modified environment document; and

allowing the second user to access the environment document.

4. The method of claim 1 , further comprising:

generating a second environment document, wherein the second environment document corresponds to first server software, wherein the first server software is one of the plurality of software components, and wherein installing the plurality of software components from the environment document comprises accessing the second environment document.

5. The method of claim 1 , further comprising:

identifying a network address of each of server included in the plurality of software components, wherein the environment document comprises the identified network address.

6. The method of claim 1 , wherein the environment document is a template document, and wherein installing the existing computing environment from the environment document comprises obtaining parameters for the template document from a database.

7. The method of claim 1 , further comprising:

transferring the new computing environment from a first machine to a second machine.

8. The method of claim 1 , wherein

the identifying comprises selecting a best hardware component of a plurality of compatible hardware components using a user-specified algorithm.

9. A non-transitory computer readable storage medium comprising program instructions executable by one or more processors to:

display a list of software components to a user, wherein

an existing computing environment comprises the software components;

receive input signals from the user indicating a plurality of software components selected from the list of software components;

determine one or more hardware constraints in response to receiving the input signals;

generate an environment document, wherein

the environment document comprises first information identifying each software component of the plurality of software components,

the environment document comprises instructions for installing the plurality of software components onto a new computing environment, and

the environment document comprises information identifying the one or more hardware constraints, wherein

the one or more hardware constraints comprise at least one of a memory device capacity, a memory device type, or a processor type; and

install the new computing environment based on the environment document, wherein installing the new computing environment comprises

identifying a plurality of hardware devices that satisfy the one or more hardware constraints, wherein

the identifying comprises accessing a database of available hardware,

determining whether a first hardware device of the plurality of hardware devices is compatible with the new computing environment, and

selecting the first hardware device in response to the determining.

10. The non-transitory computer readable storage medium of claim 9 , wherein the program instructions are further executable to:

receive user input modifying the environment document;

generate third information identifying a constraint corresponding to an integrity check, in response to the user input; and

store the modified environment document, wherein the modified environment document comprises fourth information modified by the user input and the third information identifying the constraint.

11. The non-transitory computer readable storage medium of claim 10 , wherein the program instructions are further executable to:

prevent a second user from accessing the modified environment document; and

allow the second user to access the environment document.

12. The non-transitory computer readable storage medium of claim 9 , wherein the program instructions are further executable to:

generate a second environment document, wherein the second environment document corresponds to first server software, wherein the first server software is one of the plurality of software components, and wherein installation of the plurality of software components from the environment document comprises accessing the second environment document.

13. The non-transitory computer readable storage medium of claim 9 , wherein the program instructions are further executable to:

identify a network address of each of server included in the plurality of software components, wherein the environment document comprises the identified network address.

14. The non-transitory computer readable storage medium of claim 9 , wherein the environment document is a template document, and wherein installation of the existing computing environment from the environment document comprises obtaining parameters for the template document from a database.

15. A system comprising one or more processors and a memory, wherein the memory stores program instructions executable by the one or more processors to:

display a list of software components to a user, wherein

an existing computing environment comprises the software components;

receive input signals from the user indicating a plurality of software components selected from the list of software components;

determine one or more hardware constraints in response to receiving the input signals;

generate an environment document, wherein

the environment document comprises first information identifying each software component of the plurality of software components,

the environment document comprises instructions for installing the plurality of software components onto a new computing environment, and

the environment document comprises information identifying the one or more hardware constraints, wherein

the one or more hardware constraints comprise at least one of a memory device capacity, a memory device type, or a processor type; and

install the new computing environment based on the environment document, wherein installing the new computing environment comprises

identifying a plurality of hardware devices that satisfy the one or more hardware constraints, wherein

the identifying comprises accessing a database of available hardware,

determining whether a first hardware device of the plurality of hardware devices is compatible with the new computing environment, and

selecting the first hardware device in response to the determining.

16. The system of claim 15 , wherein the program instructions are further executable to:

receive user input modifying the environment document;

generate third information identifying a constraint corresponding to an integrity check, in response to the user input; and

store the modified environment document, wherein the modified environment document comprises fourth information modified by the user input and the third information identifying the constraint.

17. The system of claim 16 , wherein the program instructions are further executable to:

prevent a second user from accessing the modified environment document; and

allow the second user to access the environment document.

18. The system of claim 15 , wherein the program instructions are further executable to:

generate a second environment document, wherein the second environment document corresponds to first server software, wherein the first server software is one of the plurality of software components, and wherein installation of the plurality of software components from the environment document comprises accessing the second environment document.

19. The system of claim 15 , wherein the program instructions are further executable to:

identify a network address of each of server included in the plurality of software components, wherein the environment document comprises the identified network address.

20. The system of claim 15 , wherein the environment document is a template document, and wherein installation of the existing computing environment from the environment document comprises obtaining parameters for the template document from a database.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2021
From: BLUME, WILLIAM; NANJA, SEKARAN; BANDHOLE, JAGADISH
To: JAREVA TECHNOLOGIES, INC.
Reel/Frame 055435/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: SYMANTEC CORPORATION
To: CA, INC.
Reel/Frame 051144/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2015
From: SYMANTEC OPERATING CORPORATION
To: SYMANTEC CORPORATION
Reel/Frame 036205/0117 →
CHANGE OF NAME Recorded Oct 1, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019899/0213 →
Continuity (2)
Continuation 09872346 · Jun 1, 2001
Provisional Application 60232602 · Sep 14, 2000