A heuristic-based task scheduling algorithm for scientific workflows in heterogeneous cloud computing platforms | Synapse