Introducing object oriented design patterns through a puzzle-based serious computer game | IEEE Conference Publication | IEEE Xplore