1. Computer software recorded on a medium for assessing the relative complexity of different options for performing a task on a computer, the computer software comprising: software code means for defining a task as a sequenced set data structure that specifies actions of the task, and sequence information that specifies the order in which particular actions are to be performed; software code means for storing recipes available for performing constituent actions of the task as sequenced set data structures that specify subactions of the recipes for the constituent actions, and sequence information that specifies the order in which the subactions are to be performed; software code means for determining complexity measures associated with performing the task using different combinations of recipes for constituent actions of the task, based upon complexity measures of actions specified by respective combinations of available recipes; software code means for delegating the defined task to a primary agent for execution of the task by at least one of the primary agent and one or more contracting agents, wherein determining complexity measures of the action is based on mutually exclusive measures comprising (i) the presence of recipes with the primary agent for performing the action and also the presence of agents for contracting out the action; (ii) the presence of recipes with the primary agent and the absence of agents for contracting; (iii) the presence of agents for contracting and the absence of recipes with the primary agent; and (iv) the absence of both agents and recipes; and software code means for presenting a report of the complexity measures associated with performing the task.