The problem of scheduling several tasks over time, including the topics of measures of performance, single-machine sequencing, flow shop scheduling, the job shop problem, and priority dispatching. Integer programming, dynamic programming, and heuristic approaches to various problems are presented.