This paper describes a building blocks approach to the design of scientific workflow systems. We discuss RADICAL-Cybertools as one implementation of the building blocks concept, showing how they are designed and developed in accordance with this approach. This paper offers three main contributions: (i) showing the relevance of the design principles underlying the building blocks approach to support scientific workflows on high performance computing platforms; (ii) illustrating a set of building blocks that enable multiple points of integration, "unifying" conceptual reasoning across otherwise very different tools and systems; and (iii) case studies discussing how RADICAL-Cybertools are integrated with existing workflow, workload, and general purpose computing systems and used to develop domain-specific workflow systems.
@article{arxiv.1903.10057,
title = {Middleware Building Blocks for Workflow Systems},
author = {Matteo Turilli and Vivek Balasubramanian and Andre Merzky and Ioannis Paraskevakos and Shantenu Jha},
journal= {arXiv preprint arXiv:1903.10057},
year = {2019}
}