Patent ID: 8631160

Claim:
A computer-implemented method for developing a parallel/distributed application, the method comprising: designing the parallel/distributed application using a script language for representing one or more elements of a connectivity graph and connectivity between the one or more elements; implementing the designed parallel/distributed application including implementing in a computing module one or more functional blocks that perform the computation of the parallel/distributed application, each computing module receiving at least one of input data, input events, or initialization parameters, and generating at least one of output data or output events, buffering shared data in a data module which is at least one of used by at least two computing modules or exchanged between at least two computing modules, each data module having an input gate, output fields, and initialization parameters, the buffering comprising instantiating in the data module a list of buffers providing write and read memory for the computing modules connected to the data module, wherein only a first computing module of the plurality of computing modules associated with the data module owns a buffer in the list for a first value to be published, and wherein the first computing module is the only computing module configured to publish the buffer with the first value; connecting computing modules and data modules with link modules, with at least one link module implementing a communication protocol; and defining a type of execution for the computing modules by grouping the one or more computing modules in one or more threads using one or more predefined executors; distributing the parallel/distributed application over one or more computing devices by grouping a set of executors in a single process using one or more predefined process-instances; and monitoring and testing the implemented parallel/distributed application using one or more abstraction levels from the group of a functionality level, a module level, and a system level.