IP Library Granted Patent US 7,437,706
Granted Patent B2
US 7,437,706 · App. 10/608,942 · Granted Oct 14, 2008

Automating the life cycle of a distributed computing application

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 7,437,706
App. No.
10/608,942
Granted
Oct 14, 2008
Kind
B2
Abstract

A system for automating the life cycle of a software application is provided. The software application utilizes computing resources distributed over a network. A representative system includes creating logic operable to create a task list which describes how at least one stage in the application life cycle is to be performed, and processing logic responsive to the creating logic, operable to process the task list to perform at least one stage in the application life cycle. The processing logic is integrated with a development environment, and the development environment is used to develop the software application.

Claims (55)

1. A computer readable storage medium having a program for automating a life cycle of a grid node application, where the grid node application utilizes a plurality of computing resources distributed over a network, the program:

creating a file describing a plurality of stages of the life cycle, wherein the plurality of stages comprises development, packaging, distribution, installation, execution, collection, and uninstall, wherein the distribution stage includes at least distributing the grid node application to at least one remote computing resource on the network;

creating a task list in the file which describes how at least one of the stages in the life cycle of the grid node application is to be performed; and

processing the task list by a process engine to perform at least one stage in the life cycle,

wherein the process engine is integrated with a development environment, where the development environment is used to develop the grid node application.

2. The computer readable medium of claim 1 , wherein the development environment is an integrated development environment.

3. The computer readable medium of claim 1 , wherein the grid node application utilizes computing resources through service providers connected to the network.

4. The computer readable medium of claim 1 , wherein the file is a text file.

5. The computer readable medium of claim 4 , wherein the text file is an extensible markup language (XML) file.

6. The computer readable medium of claim 1 , wherein the execution stage includes executing the grid node application on at least one remote computing resource.

7. The computer readable medium of claim 1 , wherein collection stage includes collecting results from at least one remote computing resource.

8. The computer readable medium of claim 1 , wherein the uninstall stage includes removing the grid node application from at least one remote computing resource.

9. The computer readable medium of claim 1 , wherein the processing the task list further comprises:

verifying that a precondition associated with a task in the task list is satisfied before performing the task.

10. The computer readable medium of claim 1 , wherein the processing the task list further comprises:

verifying that a precondition is satisfied before performing the task, wherein the precondition is associated with a task in the task list and describes requirements of the system on which the grid node application executes.

11. The computer readable medium of claim 1 , wherein the processing the task list further comprises:

obtaining a description of available resources for at least a portion of the plurality of computing resources; and

verifying that a precondition is satisfied before performing a task, wherein the precondition is associated with a task in the task list and describes the system requirements of the grid node application.

12. A system embodied in a computer readable storage medium for automating a life cycle of a software application, where the software application utilizes computing resources distributed over a network, the system comprising:

an editor configured to create a file, where the file describes a plurality of stages in the life cycle of the software application, the plurality of stages comprising development, packaging, distribution, installation, execution, collection, and uninstall, wherein the distribution stage includes at least distributing the software application to at least one remote computing resource;

wherein the file further includes a task list which describes how at least one of the stages in the life cycle of the software application is to be performed; and

a process engine configured to operate on the task list to perform the at least one stage in the life cycle.

13. The system of claim 12 , further comprising:

a development environment for developing the software application, where the process engine is integrated with the development environment.

14. The system of claim 13 , wherein the development environment is an integrated development environment.

15. The system of claim 12 , wherein the software application utilizes computing resources through service providers connected to the network.

16. The system of claim 12 , wherein the file is a text file.

17. The system of claim 16 , wherein the text file is an extensible markup language (XML) file.

18. The system of claim 12 , wherein the execution stage includes at least executing the software application on at least one remote computing resource.

19. The system of claim 12 , wherein the collection stage includes at least collecting results from at least one remote computing resource.

20. The system of claim 12 , wherein the uninstall stage includes removing the software application from at least one remote computing resource.

21. The system of claim 12 , wherein the process engine is further configured to:

verify that a precondition associated with a task in the task list is satisfied before performing the task.

22. The system of claim 12 , wherein the process engine is further configured to:

verify that a precondition is satisfied before performing a task, wherein the precondition is associated with a task in the task list and describes requirements of the system on which the software application executes.

23. The system of claim 12 , wherein the process engine is further configured to:

obtain a description of available resources for at least a portion of the plurality of computing resources; and

verify that a precondition is satisfied before performing a task, wherein the precondition is associated with a task in the task list and describes the system requirements of the software application.

24. A system embodied in a computer readable storage medium for automating a life cycle of a software application, where the software application utilizes computing resources distributed over a network, the system comprising:

creating logic operable to create a file describing a plurality of stages of the life cycle, wherein the plurality of stages comprises development, packaging, distribution, installation, execution, collection, and uninstall, wherein the distribution stage includes at least distributing the software application to at least one remote computing resource;

the file further comprising a task list which describes how at least one of the stages in the software application life cycle is to be performed; and

processing logic responsive to the creating logic, operable to process the task list to perform at least one stage in the software application life cycle,

wherein the processing logic is integrated with a development environment, wherein the development environment is used to develop the software application.

25. The system of claim 24 , wherein the development environment is an integrated development environment.

26. The system of claim 24 , wherein the software application utilizes computing resources through service providers connected to the network.

27. The system of claim 24 , wherein the file is a text file.

28. The system of claim 27 , wherein the text file is an extensible markup language (XML) file.

29. The system of claim 24 , wherein the processing logic is further configured to:

verify that a precondition associated with a task in the task list is satisfied before performing the task.

30. The system of claim 24 , wherein the processing logic is further configured to:

verify that a precondition is satisfied before performing a task, wherein the precondition is associated with a task in the task list and describes requirements of the system on which the software application executes.

31. The system of claim 24 , wherein the processing logic is further configured to:

obtain a description of available resources for at least a portion of the plurality of computing resources; and

verify that a precondition is satisfied before performing a task, wherein the precondition is associated with a task in the task list and describes the system requirements of software application.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2008
From: AT&T DELAWARE INTELLECTUAL PROPERTY, INC., F/K/A AT&T BLS INTELLECTUAL PROPERTY, INC., F/K/A AT&T INTELLECTUAL PROPERTY, INC., F/K/A BELLSOUTH INTELLECTUAL PROPERTY CORPORATION
To: AT&T INTELLECTUAL PROPERTY I, L.P.
Reel/Frame 021441/0722 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2003
From: WOODGEARD, LARRY A.
To: BELLSOUTH INTELLECTUAL PROPERTY CORPORATION
Reel/Frame 014247/0365 →