Patent ID: 6851104

Claim:
A software ensemble stored on a computer readable medium and executable by a computer, the software ensemble comprising: a plurality of software units, each software unit of said plurality of software units including a method and data; an executive software unit including links between said plurality of software units; wherein a software unit of the software ensemble is described by a model M, given by: M=(inGates, {inSign g }, {a g }, Q, q 0 , outGates, {outSign gt }, {outFunction gt }), where inGates is the set of software unit input gates, outGates is the set of software unit output gates, a g is an action for every g in inGates, Q is the set of software unit states, q 0 is the software unit's initial state, in Sign g is the gate g input-output signature for each g in inGates, outSign gt is the gate gt input-output signature for each gt in outGates, outfunction gt , is the gate gt output function for every gt in outGates, where the signature is a 2-tuple containing the range set of incoming and outgoing parameters, and the output function of gate gt maps a set of incoming values into a value belonging to the input signature of the output gate gt.