Разработчик программы курса должен определить: ожидаемый уровень исполнения; какие для его достижения потребуются навыки и знания; в какой последовательности с ними придется знакомить и тренировать; какие учебные задания помогут этому; как обеспечить регулярную обратную связь для необходимой корректировки процесса обучения. Технология обучения максимально формализована например, программированное обучение и т.п. Студенты следуют запланированному пути.