Mini Project Programming Exams

A number of different types of final programming exams used or considered at the Department of Computer Science, Aalborg University, are identified and analyzed. Based on this analysis, a new type of programming exam is introduced called a Mini Project Pr

  • PDF / 258,301 Bytes
  • 15 Pages / 430 x 660 pts Page_size
  • 104 Downloads / 195 Views

DOWNLOAD

REPORT


Abstract. A number of different types of final programming exams used or considered at the Department of Computer Science, Aalborg University, are identified and analyzed. Based on this analysis, a new type of programming exam is introduced called a Mini Project Programming (MIP) exam. MIP is a group-based programming assignment that is intended as a medium-scale programming effort followed by a final oral exam. MIP is characterized and compared to existing types of final programming exams by use of a number of independent criteria. The chapter motivates the MIP approach and reports on our experience over four years. The MIP exam is a compromise between (1) a long problem-based project exam and (2) a short oral or written programming exam. It is concluded that the strengths of MIP are the high degree of realism in the exam assignment and comprehensiveness relative to the course syllabus. The main challenge of MIP is how to detect fraud.

1

Introduction

Programming is a core discipline in computer science and software engineering. It is important, therefore, to have exams that test the programming skills of the students. To test these skills, a number of different exam forms are used ranging from oral to written, from 20 minutes to 6 hours duration and from pencil to computer. We find that there are several problems with the existing programming exam forms. First, the existing exam forms are not realistic seen in relation to the way programming is practiced in a real-world setting. As a particular problem, the students are not constructing complete programs, but typically only program fractions. Second, most exam forms cover only a few central topics from the course syllabus. Finally, the exams often require many resources from the teachers who conduct the exam. In this chapter we describe a new kind of final programming exam called Mini Project Programming (MIP) exam. The MIP approach is designed to avoid the problems discussed above while retaining the good features of the existing exams. MIP is a take-home exam where groups of 2 to 4 students must design and implement a complete program for a specific task. The source code and a short design document are handed in for evaluation. The students demonstrate the program and defend it at an oral group exam. J. Bennedsen et al. (Eds.): Teaching of Programming, LNCS 4821, pp. 228–242, 2008. c Springer-Verlag Berlin Heidelberg 2008 

Mini Project Programming Exams

229

MIP is the final exam following a four ECTS credits course in object-oriented programming (OOP). The OOP course is a CS1 course. It consists of 15 fourhour modules spread over approximately 10 weeks in a half-year semester. Each module consists of two hours of lecture and two hours of programming exercises. The Java programming language is used in the course along with the tools BlueJ, Eclipse or Emacs. Between 80 and 120 students follow the course. Attending the lectures is non-compulsory. The students do the exercises in groups of up to seven students. Each group has its own room. The lecturer and 2 to 3 teachi