Developing, Implementing and Evaluating Computer-based Instruction