1. A method in a network node in a communication network, for managing workflows for communication network provisioning, said method comprising: obtaining an electronic record representing a predefined workflow comprising two or more tasks ordered along one or more task execution paths in a task tree, according to a default task ordering; obtaining compounded failure risk values for one or more of the tasks in the predefined workflow and, additionally, for one or more of any tasks in the predefined workflow that cannot be rolled back, obtaining blocking penalty values, wherein, for any given task, the compounded failure risk value represents a combination of the probability that execution of the given task will fail and the probabilities that execution of any child tasks in the task tree will fail, and wherein for any given task that cannot be rolled back, the blocking penalty value indicates a cost associated with a temporary blocking of resources arising from an execution failure of the given task; generating a reordered workflow having a new task ordering that is at least partly optimized with respect to the compounded failure risk values and the blocking penalty values, by, subject to any inter-task dependencies, ordering tasks having higher compounded failure risk values before tasks having lower compounded failure risk values, and ordering tasks that cannot be rolled back after tasks that can be rolled back, including ordering the tasks that cannot be rolled back according to a descending ranking of the corresponding blocking penalty values; and dispatching the reordered workflow.