Computer assisted instruction for computer science

This paper surveys the state of the art of Computer Assisted Instruction (CAI) in general and concentrates on what has been developed for university level Computer Science. The first part of this paper defines and describes CAI and the many issues surrounding its development and use. First CAI terms are defined and its history is traced. This is followed by a discussion of some of the issues surrounding CAI's place in Computer Science education. CAI has not yet reached its true potential and possible reasons for this are discussed. There are several strains of CAI for Computer Science that have emerged and proven useful. These are discussed next along with several reports on actual packages in use at universities. Last there is a discussion of some evaluation criteria for CAI in computer science. The second part of the paper contains reviews of the CAI currently available to students at CSUN via the school's computers. These include eight graduate student-authored packages and a micro-version of Plato (Structured Programming in Fortran), supplied by Control Data Corporation. In the conclusion are recommendations for successful CAI for Computer Science and a discussion of the future of CAI.