Problem solving is part of our daily life. Despite solving problems is important for everybody, for programmers, problem solving skill has a different value. It is consider as one of the key skills in profession. Sommerville (2010) argued that it is one of the key factors that should influence the selection of staff. Gomes & Mendes (2007) argued that major cause of the students’ failure in introductory programming course is the lack of problem solving ability.
Note: This is an article that is fractionalized in two parts. In this part relevant psychological research regarding problem-solving is outlined. In next article, topic how should programmers solve the problems will be outlined.
The process of problem solving is complicated and there are still no theory of how problem-solving works. However we are almost certain that problem solving requires knowledge, judgement, decision making, pattern recognition, information gathering skills, personality, emotion, perception, creative or lateral thinking. It has been argued that by studying problem-solving we might be able understand how problems are solved effectively as well as what goes wrong when a problem can’t be solved. Continue Reading →