Our old workflow program (while it was sadly lacking in many ways) allowed for tasks to be dependent. So, for instance, in a transaction, negotiation may take several days. "Agreed upon contract" could set off a series of tasks AFTER it's completed. Then tasks don't show up as due or overdue when something else has to happen first.
This would be very helpful for transactions, but also other tasks if possible.