System and methodology for developing, integrating and monitoring computer applications and programs
First Claim
1. A system for users to develop distributed applications over a network of computing units, the system comprising:
- a. a plurality of component programs installed over the network of computing units to create the distributed application, wherein the only functionality of the component programs are to receive data presented at their input ports, process said data and write the results to their output ports, and wherein the component programs do not contain routing information and information related to other component programs;
b. a plurality of data stores on one or more of the computing units that contain a specification of component programs that make up the application, the communication routes between the component programs, and the nodes on which the component programs are to run;
c. a graphical user interface based application composer that composes said distributed application within said one or more data stores by allowing users to graphically specify the component programs that make up the application, the communication routes between the component programs, and the nodes on which the component programs are to run; and
,d. a multiplicity of controller programs running on a multiplicity of computing units in the network for transmitting data to said input ports of the component programs and receiving data from said output ports of the component programs and for transmitting and receiving data with controller programs and disseminating said routing information to other controller programs, and wherein controller programs pass data between component programs based on the routing information disseminated to them from the data stores in which the distributed application has been composed.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a system, method and computer program product for developing distributed applications, integrating component programs, integrating enterprise applications and managing change. The invention provides for an infrastructure where component programs that are the computational logic of the distributed application are installed over a network of computing units having controller programs running on each of these computing units. The invention provides for separating the concerns of computation, installation, execution and monitoring of the distributed application in terms of time, space and people involved. This is accomplished as the component programs simply perform the computation task and the communication between the component programs and their monitoring is handled by the controller programs.
-
Citations
10 Claims
-
1. A system for users to develop distributed applications over a network of computing units, the system comprising:
-
a. a plurality of component programs installed over the network of computing units to create the distributed application, wherein the only functionality of the component programs are to receive data presented at their input ports, process said data and write the results to their output ports, and wherein the component programs do not contain routing information and information related to other component programs; b. a plurality of data stores on one or more of the computing units that contain a specification of component programs that make up the application, the communication routes between the component programs, and the nodes on which the component programs are to run; c. a graphical user interface based application composer that composes said distributed application within said one or more data stores by allowing users to graphically specify the component programs that make up the application, the communication routes between the component programs, and the nodes on which the component programs are to run; and
,d. a multiplicity of controller programs running on a multiplicity of computing units in the network for transmitting data to said input ports of the component programs and receiving data from said output ports of the component programs and for transmitting and receiving data with controller programs and disseminating said routing information to other controller programs, and wherein controller programs pass data between component programs based on the routing information disseminated to them from the data stores in which the distributed application has been composed. - View Dependent Claims (2, 3)
-
-
4. A method for developing distributed applications over a network of computing units, with multiple controller programs running on multiple computing units, the method comprising steps of:
-
a. customizing component programs; b. registering the component programs; c. composing said distributed application externally in a data stores wherein said distributed application is composed by using a graphical user interface based application composer that composes said distributed application within said one or more data stores by allowing users to graphically specify the component programs that make up the application, the communication routes between the component programs, and the nodes on which the component programs are to run; d. running multiple controller programs on multiple computing units in the network for transmitting data to input ports of the component programs and receiving data from output ports of the component programs and for transmitting and receiving data with controller programs and disseminating said routing information to other controller programs; e. receiving said transmitted data at the input ports of the component programs, processing said data within said component programs and writing the results to the output ports of the component programs; and f. optionally checking the connectivity and resources on multiple controller programs running on multiple computing units; g. executing the distributed application. - View Dependent Claims (5, 6, 7, 8, 9, 10)
-
Specification