Abstract

Analogy-based learning methods map the concept being learned to a concept well understood by the learner. An analogy is primarily useful when learners do not know the topic being studied. Computer science is an area where the concepts exhibit a high level of abstraction and, hence, are hard for students to comprehend. The use of analogies in instruction can significantly reduce the cognitive load a student faces in learning abstract computer science concepts. The role of analogies in helping students learn computer science topics has not been explored adequately. This paper presents our efforts related to using analogy-based teaching in computer science. Over the last several years, we have developed extensive analogies for many advanced computer science concepts. We have used these analogies extensively in classroom teaching at our institution. We list the analogies that we have developed and used in our classroom teaching and, as illustration, discuss two analogies: one from the field of operating systems and another one in modular software design. We have also conducted experiments to evaluate the impact of using these two analogies on student learning outcomes. Our results confirm our hypothesis that analogy-based instruction techniques are effective and result in improved student learning outcomes.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call