What Is An Exam?
This is a question that we may encounter in our day-to-day lives. An examination can be understood to be a test used to gauge the knowledge of a student in a particular area of study. The test can be done or administered in many forms. The most common way is through a formal test. When undertaking an exam, students are given a set of questions which the examiner expects the learners to apply their logical reasoning to give the most appropriate answer/s. The teacher then awards marks based on the quality of the answers given by the students. The marks obtained by a student differentiate those who have passed from those who have failed.
Programming on the other hand can be understood in a simple language, as a way of instructing a computer to undertake specific tasks. These tasks can range from easy ones like the addition of two numbers to more complex ones which may involve more than one sequence of instructions. The instructions are given in a language the computer can understand. This is called the programming language.
There are different programming languages that students learn and are tested on. These include but are not limited to:
- Python-It is one of the most commonly used programming languages used today. This is so because it is easy to learn and also very appropriate.
- JavaScript-It is a very effective language, especially when creating effects on websites.
- C-It is among the oldest programming languages around. It is flexible in that it can be used in developing both applications and also systems.
- Java-It is considered a general-purpose programming language. It is applicable when developing applications for desktop as well as mobile devices.
- C++ can be considered an extension of the C language. It is considered more advanced than C and hence performs more advanced tasks. For instance, it has been found very effective when developing games.
Different exams are done at different levels. Exams conducted in schools and colleges test learners' understanding of the subjects that have been taught. Among these subjects, programming may be one of them. This means that programming exams have to be done at some point by Programming students.
In academics, therefore, Programming exams are aimed at testing the learner's technical and logical skills. The exam can either be conducted in a theory where students write down their answers on a booklet or practice which is done practically using a computer.
In the theory exams, students are able to write codes that they have learned and memorized. Although. they are more tiresome; they offer the teacher a more reliable outcome which helps in understanding the student's comprehension of various programming theories. On the other hand, practical exams offer a more suitable coding environment. Students are able to showcase their skills by coding error-free programs, which run without compiling errors. They also present students with an opportunity to debug their programming solutions. This is basically finding and fixing syntax errors in their programming.
When developing programming exams, assessors ought to ensure that the exams are challenging yet fairly set. Before setting a programming exam. an examiner should first and foremost answer some questions honestly as to why they want to set the exams.
- Will the exams help him/her observe the progress made by students in order to dictate how the course is taught?
- Will the questions he/she intends to set motivate and challenge the students to be better?
- Will the grade achieved by the student be used to grade them at the end of the course?
After answering the above questions, an examiner is able to settle on some aspects such as the length of the exam, format to adopt, the time required to return students' results, and the type of answers expected for the exam they intend to set.
In order for an examination to act as a good measure of reflecting the student’s true skills and knowledge in programming, they are required to meet a particular standard. These include:
Consistency
The consistency in a programming exam is shown by the relationship between the objectives of the course learned, how the course is taught and how the test achieves the set goals for instance if the student learned about coding, then the test should be aimed at proving how well the student learned to code and can apply the same to solve a specific question. A coding test should also be reliable in the results it presents. This means that a student should get the same results regardless of where he or she takes the test from.
Use of clear instructions.
A fair programming examination should always have clear instructions. This greatly reduces the possibility of students making assumptions that may prove costly to them. The instructions should instruct how students should go about when answering the set questions. This may include how the lecturer wants the exams answered say in paragraph or bullet form. The examiner should also state whatever the student should show his or her work. Marks distribution across each question should be clear. This helps students to better plan their time when handling the exam.
Time factor
Programming tests are quite challenging and demanding. With this in mind, the examiner should set questions that can be completed within a reasonable allocated time. If this important aspect is not put into consideration, the student will be under time pressure which could result in errors hence impacting students’ performance. To achieve this, an examiner may time how long it takes to complete a task themselves and then allow students to say triple the time it took.
Have objective testing questions.
A programming exam should have questions that are out to test a certain taught concept. These questions may take different forms for instance some parts may include multiple choice questions to test the student's ability to remember and open-ended questions or essays to show a candidate's ability to make neutral analysis. To achieve this, the examiner should write down what they intend to achieve by setting the test. This ensures that there is only one answer to the set question.
The examiner may also employ several tactics to attain this. For instance, test only a single idea, use common student mistakes as distractors and make questions simple and clear.
Inclusivity.
A coding exam should not only focus on a single concept but diversify the same. This allows a student who has not fully grasped everything that has been taught in class to still have a chance to demonstrate what they have learned. Hence the examiner should not be biased when setting the exam
After the exam has been set the lecturer should then grade each student to enable them to identify the areas they need to work on. To enable grading the examiner should always have a marking scheme beforehand. This is useful since it enables the lecturer to explore all the possible answers to the questions set. The lecturer should also have a grading system that will be used to rate each student based on what they score.
Conclusion
A quality programming test, therefore, is basically aimed at giving students a chance to express their degree of understanding of the programming curriculum through their thinking and solving of coding-related problems. This ensures that the learners are in a position to apply in real-life situations what has been taught in the coding class. It should also be noted that programming terminologies should be used when setting the exams and learners should also use the same language when answering the programming questions asked.