Designing Scheduling Algorithms via a Mathematical Perspective