Using puzzles in IT is an introductory model that uses many kinds of puzzles, puzzle-like problems and games to illustrate abstraction and problem-solving concepts in IT with hands-on pedagogy. It is difficult for a novice to understand abstraction IT concepts and programming language at introductory step can be challenging. In order to ease the conceptual and language barrier, puzzle was developed for IT education. Puzzle has been used in IT programs in recent years and there are many kinds of puzzles. In this paper, three-dimensional puzzle was used for interests by hands-on activity. Abstraction and problem-solving concepts are parts of 'Programming Fundamentals and Algorithms' in CC2006 curriculum. When a student solves the puzzle, they develop their own problem-solving strategy. By analyzing student's thinking process, it is possible to construct student's thoughts into steps. At each step, a person's thought might differ from others and description of all the steps is referred as 'Think-Aloud'. Aside from developing their own problem-solving strategy, this paper also focuses on student's ability to group puzzles with similar problem-solving strategy and ability to generalize the problem-solving strategy. In 2006, an experiment was conducted which consisted of 25 students who are majoring in Computer Science Education in Korea University. Experimental results showed that students understood abstraction concepts easier by solving Puzzle. In addition, outstanding students had fewer problem-solving steps compared to the rest of the class. It was found that tendency to use more efficient processes promoted the acquisition of hints: analyzing structure, features and constraints of the Puzzle.