1. Introduction

2. Survey Methodology
2.1. Our Context within WfMSs
2.2. Techniques Covered
2.3. Technique Dimensions Considered

3. Taxonomy of Existing Solutions
3.1. Flow Optimization Mechanisms
3.2. Optimization Objectives
3.3. Optimization Solution Types
3.4. Adaptivity of Data-Centric Flow
3.5. Execution Environment
3.6. Metadata
3.7. Application Domain

4. Presentation of Existing Solutions
4.1. Task Ordering
4.2. Task Introduction
4.3. Task Removal
4.4. Task Merge
4.5. Task Decomposition
4.6. Task Implementation Selection
4.8. Execution Engine Configuration

5. Evaluation Approaches

6. Discussion on findings

7. Additional Issues in Data-centric Flow Optimization
7.1. Optimization In Massively Parallel Data Flow Systems
7.2. Techniques Facilitating Data-centric Flow Optimization
7.3. On Scheduling Optimizations in Data-centric Flows
7.4. On incorporation Optimization Techniques into Existing Systems

8. Related Work

9. Summary