Scientific Foundations - Scheduling Strategies and Algorithm Design for Heterogeneous Platforms