Return to Article Details Coffee challenge: a game for teaching software design patterns