During the last decade a new computer science curriculum has been taught in Israeli high schools. This curriculum introduces CS concepts and problem-solving methods independently of specific computers and programming languages, along with the practical implementation of those concepts and methods encountered in actual programming languages. The advanced study unit of the curriculum, Software Design, introduces the students to various aspects of software systems design through the use of abstract data types (ADTs). One main goal of the unit is to develop abstract thinking skills and problem-solving abilities. More specifically, the unit presents principles such as procedural abstraction, data abstraction, information hiding, modularity, efficiency, and reuse of code. We present the results of a preliminary study whose aim was to assess students' attitudes regarding procedural abstraction. The research population consisted of high-school students who attended the Software Design course (beginners), and a control group of undergraduate CS students (advanced). The results of the study clearly indicated a significant difference between the attitudes of the two groups. We found that the advanced students preferred algorithms that were formulated to some extent with high-level abstraction; however, they encountered a cognitive barrier when dealing with algorithms that they had evaluated as too abstract for them. However, beginners felt more comfortable with algorithms with low-level abstraction. Nevertheless they showed open-mindedness toward some degree of procedural abstraction. The results of the study were used to design scaffolding problem-solving tools for algorithm development, utilizing procedural abstraction techniques that can be adapted to various student populations (Haberman, B. (2002) SIGCSE Bulletin, 34(4), 60–64).