Teaching and Learning Forum 99 [ Contents ]

How to design an assessment system to ensure students acquiring the necessary practical skills in a computer programming unit

Kum Leng Chin
School of Information Systems
Curtin University of Technology
The teaching of a computer programming unit usually consists of a major hands-on component; it is therefore inevitable that a practical component to be included as part of the unit assessment. Practical assessment component usually involves laboratory exercises, individual assignment or practical test.

Throughout my teaching experience with programming units, there arises a dilemma between the weighting of the practical assessment and the theoretical assessment component with the educational processes required for competent programmers.

With programming units, it is vital to ensure that students will acquire the skills in writing programs, hence a need for practical assessment. However, my experience reveals that high weighting on practical assessment component might tempt weak students to plagiarise. Consequently, the assessment does not reflect the student's programming skills. On the other hand, with low weighting on practical component, students do not feel there is sufficient incentive to put in the effort; given that programming assignments are usually very time consuming. In some cases, after considering the time involved and the maximum marks they will be rewarded, students might choose to ignore the practical component altogether. In such cases, students who fail the practical assessment but pass the unit overall may not have acquired the necessary programming skills.


Assessment has always been an inevitable part of any education system. As Nightingale, Te Wiata, Toohey, Ryan, Hughes, and Magin (1996) pointed out:
Students wish to know how they are individually doing, how they are doing in comparison with others and whether they will pass and ultimately have an institution sanctioned degree or qualification to show to future employers. Teachers need to know whether their students are achieving the intended learning outcomes for their subject, while proving to others that they are effective teachers. The institution too needs to know whether students are achieving the intended learning outcomes. An institution also needs to know whether a prospective applicant has reached a required or appropriate standard before being accepted as student. The institution then awards the student with the appropriate documentation at the completion of their course, while proving to others (such as funding bodies) that their graduates have achieved what the institution claims they have. Finally, the community needs to know whether an institution and its teachers are effective and its graduate employable.

Although many assessment methods are well documented in literature (Cartwright, 1997), choosing the right method or the right combination of methods for assessing students in a unit is still, by no mean, an easy task. For the remaining of this paper, I would like to share some of the problems I have encountered when assessing students of a computer programming unit. Indeed, these problems are not unique to just a computer programming unit. And the intention here is to stimulate thoughts and discussion on issues related to assessment on unit with a practical component.

The problem situation

Students enrolled in the first year programming unit at Curtin Business School will learn about programming concepts, problem solving techniques, programming environment, a programming language plus other skills such as program debugging. At the end of the semester, students are expected to be able to write programs at a certain level of complexity. Given the objective is to gain practical skills, practical assessment seems to be a reasonable choice. Practical assessment could take the form of laboratory exercise, individual assignment, practical test or a combination of these.

Problem arises when deciding the proportion of practical assessment component over final examination. When I was running the unit for the first time, I decided to get the students to do a major assignment that is worth 30% of the total assessment. To prepare the students for this major assignment, they were given smaller non-assessable lab exercises to do every week to gain various programming skills. Since these exercises were not assessable, I soon found that many students were not doing them. Consequently, many were having great difficulties in completing the major assignment. As a result, not only many failed the assignment badly, I also discovered that some assignments were similar to each other, in other words, some students were copying each others' assignments. In the following semester, instead of one major assignment, I decided to give them three smaller assignments, which is worth 10% each. I had also decided to put 10% on the lab exercises. I thought the students would appreciate that, but instead I heard complaints such as: too many assignments; so much work for so little! By the end of that semester, many students still did not do all the lab exercises, their excuse was that each exercise was only worth 1% (there were ten exercises) and the most they could lose was 10% in total. As for the assignments, not only plagiarism was a problem, I had also created a new problem for myself - the volume of marking had increased threefold and I was not able to give my students timely feedback on their learning progress.

Analyses of the problem

My experience in assessing students in the computer programming unit revealed two major problems with students' learning in the unit: lack of motivation and plagiarism.

Ramsden (1992), in his book: Learning to teach in higher education, defines the purpose of assessment as "understanding the process and outcome of student learning, and understanding the students who have done the learning" and assessment should be aimed to "make both student learning and our teaching better". Equipped with this understanding, I feel I should look at the students' problems beyond assessment methods or the proportions of assessment component. Below are some of my observations into the problem situation.

Students' lack of interest

Students enrolled in this unit include those from the single major degree courses (IS, IT) and the double major degree courses (Accounting & IS, Marketing & IS, etc). Usually, some of the double major students do not have much interest in programming. These students will consider their first major area of study such as accounting, economics, marketing, etc, as the career path they intend to pursue. Information Systems (IS) or Information Technology (IT), although as their other major area of study, is being viewed as to enhance their qualification when applying for jobs. These students find it hard to relate themselves with programming, many think that although they want an IS or IT double major degree, they don't need to know about programming.

The nature of the programming unit

Many students find programming unit different from their other business units. They complain that it is three or four times more time-consuming than the other units, and they also feel that they need a lot more assistance to do their programming assignment than they do with other units.

Inexperienced students; unsure of expectation

Students in their first programming unit often underestimate the time required to complete an assignment. They often start late and find themselves running out of time before completion. In addition, they were also unprepared for other problems such as unexpected network downtime, software problems and not being able to find an available PC in the computer lab. Many have failed to understanding that there is a steep learning curve when using the technology for the first time. Finding errors and correcting them can be a very time-consuming and frustrating task when their tutor is not there to help them. They also complain that they were unsure of the expectation of programming assignments; when they were first given the assignment, they did not know what questions to ask, but by the time they had lots of problems, they ran out of time.

Plagiarism as an acceptable option

Although we do not want to believe plagiarism exists among students, the fact is, some students are resolved to regarding plagiarism as an acceptable option when they could not produce their own assignments. I even have this fact confirmed to me by students themselves. This is also partly because copying computer file is an easy 'few-minutes' job. Very often, plagiarism can be disguised simply by slight modifications such as changing variables' name. Usually, unless the assignments are identical, it is difficult for tutors to find out; especially when the students involved have different tutors. Also, unless students are caught in the process of copying assignments or their assignments are absolutely identical, University's rules make it hard for tutor to persecute the offenders.


In view of the above possible problem areas, I like to propose the following investigations into the matter: Obviously I am hoping there will be other issues emerged from the discussion which will help to improve the above problem situation. Perhaps, after all, it is not just a dilemma in designing effective assessment system for a programming unit, it is a dilemma of effective teaching and learning. But then, assessment is part of teaching and learning.


Cartwright, N. (1997). Assessment and feedback: A handbook for tertiary teachers. Victoria: University of Ballarat.

Nightingle, P., Te Wiata, I., Toohey, S., Ryan, G., Hughes, C., & Magin, D. (1996). Assessing Learning in Universities. Sydney: University of New South Wales Press.

Ramsden, P. (1992). Learning to teach in higher education. London: Routledge

Please cite as: Chin, K. L. (1999). How to design an assessment system to ensure students acquiring the necessary practical skills in a computer programming unit. In K. Martin, N. Stanley and N. Davison (Eds), Teaching in the Disciplines/ Learning in Context, 72-75. Proceedings of the 8th Annual Teaching Learning Forum, The University of Western Australia, February 1999. Perth: UWA. http://lsn.curtin.edu.au/tlf/tlf1999/chin.html

[ TL Forum 1999 Proceedings Contents ] [ TL Forums Index ]
HTML: Roger Atkinson, Teaching and Learning Centre, Murdoch University [rjatkinson@bigpond.com]
This URL: http://lsn.curtin.edu.au/tlf/tlf1999/chin.html
Last revision: 24 Feb 2002. The University of Western Australia
Previous URL 12 Jan 1999 to 24 Feb 2002 http://cleo.murdoch.edu.au/asu/pubs/tlf/tlf99/ac/chin.html