forward and backward scheduling