Colleges often have difficulty finding and retaining quality teachers for such courses.
Thus, this is an ideal area for the use of computer-based learning environments. Cognitive tutors are based on a psychological theory of learning and employ artificial intelligence techniques to model the subject-matter competencies a student is supposed to acquire in a course. Cognitive tutors are particularly appropriate for developmental students because they adapt to student variability and provide a supportive practice environment that encourages studying and reduces frustration. They also change the role of teachers from lecturers to facilitators of individual learning. Over the past ten years a number of cognitive tutors have been built for computer programming and high school mathematics.