Article: Levels of abstraction in students’ understanding of the concept of algorithm: the qualitative perspective
This study is a follow-up of an investigation into the levels of thinking of computer science students. A summary and reflective essay of that investigation can be found at AREE (Perrenet, 2006). For better understanding of the following, the reader is advised to consult those texts first. In the first study we defined four levels of abstraction in students’ thinking about the concept of algorithm: the execution level, the program level, the object level and problem level. We constructed a questionnaire about algorithms to measure the answering level as an indication for the thinking level. Most of its items had the format of a proposition with the possibility to agree or disagree (or even both) followed by the obligation to give an argumentation for the choice made. It was mainly the supporting argumentation and not the choice of the answer that was used for further analysis. A scoring system was developed to determine the answering level as indication of the student’s thinking level. The questionnaire was presented several times to Bachelor students of three year groups. For details see Perrenet (2006). The main findings were as follows:
- The argumentations as measured with the constructed instrument were mainly on level 2 and 3, a few on 1 or 4.
- Within a students’ year group the answering level generally increased during the year.
- For successive year groups the answering level was generally higher.
- The reliability of the instrument was good (the scores given by several raters correlated well enough).
An important question remained after the first study, the question about validity: did we really measure abstraction level of thinking? The argumentations we analyzed consisted of a few lines of text. Could it not be that students sometimes only reproduced standard definitions, giving the false impression that they really did understand the terms used? It is this kind of question that typically asks for qualitative research, because it is the thinking process one is interested in. In the first study mainly quantitative research methods were used. This completion with a more qualitative study is in accordance with the pledge by Almstrum et al. (2005) for diversification of the research methods in CSE. Both kinds are necessary to provide a full picture of what is going on.
In the qualitative study an analysis was done on a large amount of data from only a few students: nine students from different bachelor years and different ability. These students were asked to complete the questionnaire, while thinking aloud, and subsequently were interviewed about their answers. The main goal was to investigate to what extent the students really understood the computer science terms they had used in their written answers.
In total the use of 34 computer science terms was analyzed, varying from terms like ‘algorithm’ and ‘implementation’ (used by all of them due to their appearance in the items of the questionnaire) to terms like ‘greedy‘ and ‘upper bound’ only individually used. The most important result was that generally the students appeared to understand the terms they used. In only about 5% it was clear that their understanding was insufficient; in about 75% of the cases their understanding of the term is evaluated as (reasonably) well. In 20% it did not become clear within the given interview time.
From this result it can be concluded that not only the reliability but also the validity of our instrument to measure the abstraction level of thinking about the concept of algorithm has proved to be satisfactory.
Almstrum, V.L., Guzdial, M., Hazzan, O. and Petre M. Challenges to Computer Science Education Research (Panel Discussion). Proceedings ITiCSE, St. Louis, 2005, 191-192.
Perrenet, J.C. (2006) Exploring Students’ Understanding of the Concept of algorithm: Levels of Abstraction. Annals of Research of Engineering Education Vol.2, No.3.
Author 1: Jacob Perrenet [email protected]
Author 2: Eric Kaasenbrood [email protected]