At present, the workflow scheduler is very simple. It gets the first worker which is ready and ticks it.
An alternative approach is to analyse a schema and tick a worker which is the close-in to the end of the schema.
This smart scheduler lets some workers be run parallelly.