El software educativo se refiere a programas diseñados para la enseñanza y el aprendizaje autónomo que desarrollan habilidades cognitivas. Existen cuatro tipos principales: 1) software algorítmico como sistemas tutoriales y entrenadores, 2) software heurístico como simuladores, 3) instrucción asistida por computadora que sustituye parcialmente a los profesores, y 4) software educativo abierto y dinámico basado en micromundos de exploración y construcción.