VOOPA: Visualising Object-oriented Programming using Analogies

Published as:

V. Lian, E. Varoy and N. Giacaman (2022), "Learning Object-Oriented Programming Concepts Through Visual Analogies," in IEEE Transactions on Learning Technologies, doi: 10.1109/TLT.2022.3154805.

Download article (PDF)


VOOPA (Visualising Object-Oriented Progamming using Analogies) is a game-like application designed to help learners visualise fundamental OOP concepts.

The set of activities are designed to target known difficulties and misconceptions identified in computing education literature.

The same activities are available using two different OOP languages: C++ and Java.


Here’s an instructional video about it. The demo in the video shows the C++ version, but it works exactly the same for the Java version:

The following instructions will also help you understand how to move around in the game:

The Analogy

The analogy used in the visual activities revolves around houses. The mappings of the OOP concept to the house analogy are summarised as follows:


This application was developed as a Masters project by Victor Lian under the supervision of Nasser Giacaman and co-supervision of Elliot Varoy.

Victor Lian

Elliot Varoy

Nasser Giacaman