A Taxonomy of Workflow Scheduling Algorithms

  • Fernando Aguilar-Reyes
  • J. Octavio Gutierrez-Garcia
Conference paper

DOI: 10.1007/978-3-319-57972-6_8

Part of the Communications in Computer and Information Science book series (CCIS, volume 697)
Cite this paper as:
Aguilar-Reyes F., Gutierrez-Garcia J.O. (2017) A Taxonomy of Workflow Scheduling Algorithms. In: Barrios Hernández C., Gitler I., Klapp J. (eds) High Performance Computing. CARLA 2016. Communications in Computer and Information Science, vol 697. Springer, Cham


A workflow is a set of steps or tasks that model the execution of a process, e.g., protein annotation, invoice generation and composition of astronomical images. Workflow applications commonly require large computational resources. Hence, distributed computing approaches (such as Grid and Cloud computing) emerge as a feasible solution to execute them. Two important factors for executing workflows in distributed computing platforms are (1) workflow scheduling and (2) resource allocation. As a consequence, there is a myriad of workflow scheduling algorithms that map workflow tasks to distributed resources subject to task dependencies, time and budget constraints. In this paper, we present a taxonomy of workflow scheduling algorithms, which categorizes the algorithms into (1) best-effort algorithms (including heuristics, metaheuristics, and approximation algorithms) and (2) quality-of-service algorithms (including budget-constrained, deadline-constrained and algorithms simultaneously constrained by deadline and budget). In addition, a workflow engine simulator was developed to quantitatively compare the performance of scheduling algorithms.


Workflow scheduling Distributed computing Scheduling algorithms 

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Fernando Aguilar-Reyes
    • 1
  • J. Octavio Gutierrez-Garcia
    • 1
  1. 1.Department of Computer ScienceITAMMexico CityMexico

Personalised recommendations