1. In a computing environment comprising a workflow runtime, a method of optimizing workflow execution, the method comprising: identifying a completion condition, wherein the completion condition is specified as part of the overall workflow; identifying a plurality of activities that could be executed to satisfy the completion condition; ordering one or more activities from the plurality of activities into an execution plan and assigning system resources based on an analysis of activities in the plurality of activities and the completion condition.