Computer Science Project Courses : Contrasting Students’ Experiences with Teachers’ Expectations

Abstract: Including small or large project courses is widely recognized as important in preparing computer science students for a professional career. Typical examples are the capstone courses, which often are seen as the jewel in the crown since this is where students will bring their previous knowledge and skills together to show mastery of their craft. These courses are, however, quite complex with often contradictory ideas about how to actually run them in order to reach the learning objectives. This thesis deals with the contrast between students’ experiences and teachers’ expectations of such courses. The research presented in this thesis contributes to the field of knowledge of computer science project courses by investigating processes that are of importance in relation to the desired practices that the students’ should experience. A method is developed, based on the theory of communities of practice and an identification of key features in project work, for evaluating project courses in terms of setting up a learning environment suitable for its learning objectives. The method is focused on capturing the students’ experiences, which then are mapped onto desirable outcomes, as seen from the teachers’ point of view and expressed in terms of communities of practice theory. The result of the analysis is stories capturing the strengths and deficiencies that can be observed in computer science project courses. Key findings are that rewarding learning environments are not automatically created by following the project model; unclear goals and priorities, for example the choice between focusing on the result of the project or the learning process, can confound, or hinder, the learning outcome. Students may experience a difficult choice between using the project course as a way to become more specialized in a particular area or to develop skills that broaden their knowledge. The method developed throughout the thesis is a result in itself, allowing academics and institutions to reason systematically about the aims and learning outcomes of project coursework. The strength of the method lies in the insight gained from combining the concept of communities of practice with a series of studies that identify key features of project courses, in order to reveal and explain why students’ experience processes and learning outcomes in particular ways.