The problem of scheduling tasks, each of which is logically decomposed into a mandatory subtask and an optional subtask, is considered. The mandatory subtask must be executed to completion in order to produce an acceptable result. The optional subtask begins after the mandatory subtask is completed and refines the result in order to reduce the error in the result. The optional subtask can be left incomplete. The error in the result of a task is equal to the processing time of the unfinished portion of the optional subtask. Two preemptive algorithms for scheduling, on a uniprocessor system, n dependent tasks with rational ready times, deadlines, and processing times are described. Two algorithms for finding optimal schedules of dependent tasks on a uniprocessor system for the special case when all optional subtasks have identical processing times are also presented.