Thinking and Behaving Scientifically in Computer Science: When Failure Is an Option!

Article excerpt


In their sociological research into academia in the UK and the US, Becher and Trowler (2001) describe the knowledge landscape as being measured in two different dimensions, one being a continuum between the soft and hard disciplines, and the other graduation being between pure and applied academic pursuits. Within this framework, engineering and computer science occupy academic territories in the quadrant described by the intersection of the hard and applied dimensions, thus they are purposeful, pragmatic disciplines that focus on technique development and production. More specifically, Ylikoki (2000) found in a Finnish study that "the disciplinary culture of the computer science tribe is professionally oriented, emphasizing the virtue of hard expertise wanted by computer firms in business life". Not surprisingly, these descriptions resonate with the study of Computer Science here at our university in Melbourne, Australia.

In line with the described disciplinary culture, our undergraduate teaching curriculum places a strong emphasis on the acquisition of skills and expertise, such as programming and problem solving. Additionally, like many other institutions (Upchurch & Sims-Knight, 1997), the capstone task in our degree is a software engineering project designed to solve a particular business problem for an industry client. With such an applied and practical focus, it is perhaps not surprising that we have noticed a disparity between staff and student beliefs similar to that reported in the Finnish study mentioned above. There, of the four disciplines examined "Only in the case of computer science is there a difference between teachers' and students' conceptions, since the former try to steer the disciplinary culture in a more academic direction and the latter in a more business life direction" (Ylikoki 2000, pg 395). This paper reports upon the introduction of an assessment task designed to realign these conceptions by broadening the student experience. By deliberately shifting some of our teaching along the axis between the pure and applied (Becher & Trowler, 2001) towards the pure sciences, we hoped to expose students to some of the 'pure' aspects of our discipline and to encourage them to recognize and appreciate the scientific mindset within Computer Science.

The vehicle chosen to do this was the elective study of Intelligent Systems in our undergraduate degree. This course is an introduction to the various problem solving strategies and heuristics of artificial intelligence covering such diverse topics as expert systems, robotics, machine intelligences, genetic algorithms and neural networks. Typically students attempt this elective in their third and final year since some programming and software development experience is required to contend with the broad scope of the subject. By introducing an assignment task where students were asked to explore a problem solution by conducting several (Computer Science) experiments, we hoped to shift student focus more onto the process rather than the solution, i.e., towards the 'pure' end of the computer science spectrum and away from the applied. To achieve this, students were asked to maintain a Research Diary during assignment completion where they recorded their thinking and behaviors. Even more unique from a student's perspective was that 'failure' to solve the given problem by experimentation was a viable option; their efforts would be rewarded given they conducted themselves 'scientifically' in their attempt.

Rationale for & Design of the Task

Although much academic argument continues about the true nature of science and the scientific method (Chalmers, 2003; Popper, 1972; Stewart, 1995), in their advice for research students Phillips and Pugh (2000) point out there are two quite separate aspects of the scientific approach. The first aspect is that of the classic hypothesis testing and deductive logical approach, recognizable to most readers as the use of experimentation to decide between possible alternate hypotheses or problem solving strategies being under investigation. …