Sample Project Analysis: Questions and Answers
CISC 323, winter 2004

Question: What kinds of questions must the program handle? For example, will they all be multiple choice?
Answer: The program must handle three different kinds of questions: multiple choice, true/false, and short answer (i.e. the student must type a word or short phrase).

Question: What is the format of the file created by the teacher?
Answer: The file will be a text file containing a sequence of questions. Each question is represented by several lines. The first line is always a two-letter code for the type of question: "SA" for short answer, "TF" for true/false, and "MC" for multiple choice. For all types of questions, the second line is the text of the question as it should be displayed to the student. The number of remaining lines and their contents depends on the type of question: Here is an example quiz file.

Question: How are the quiz files created? Does the program need to edit them?
Answer: The quiz files can be created and edited with a text editor such as Notepad, but the program should also provide functionality for a teacher to create a quiz file and edit a quiz (add, delete and modify questions).

Question: How complicated does the editing functionality need to be?
Answer: We want only simple editing capabilities. The user should be able to edit the text of the question and the answer using a text field, as well as change the choices for a multiple choice question.

Question: What do you mean by "change the choices for a multiple choice question"? Does it just mean that the user can edit individual choices, or does it also mean that the user can add and delete choices and change the order of the choices?
Answer: Changing the order of the choices is something you can leave out; it would be messy. But the user should be able to do all the other things: edit an individual choice, and add or delete a choice.

Question: What should happen if the program finds an error in a quiz file -- for example, the first line of a question is not one of the three choices?
Answer: If the file is not formatted correctly, the program should show an informative error message (including the line number) and refuse to read the file, but not exit.

Question: Will the program use just one quiz file?
Answer: The program will use only one quiz file at a time. However, during one run of the program a user might want to take or edit several quizzes, each from a different file.

Question: Are all questions in a quiz weighted equally?
Answer: Yes.

Question: What kind of feedback should the user get?
Answer: After each question, the user should be told if her answer was right or wrong. If the answer was wrong, the user should also be told what the correct answer was (unless the question was true/false, in which case that's pretty obvious!). During a quiz and at the end, the program should display the number of questions answered so far and the number which were answered correctly.

Question: Is there a limit to the number of choices in a multiple choice question?
Answer: You may impose such a limit if it is helpful, but the limit must not be less than 10. You may also assume each multiple choice question has at least 2 choices.

Question: Should the program always ask the questions in the order they are given in the file?
Answer: No, the questions should be asked in random order.

Question: For short-answer questions, how exactly must the user match the correct answer?
Answer: The user's answer must match the correct answer exactly, with the following exceptions: it may differ in case (i.e. upper case vs. lower case) and it may contain leading and trailing blanks. For example, suppose the quiz file specifies that the correct answer to a question is "Sir Isaac Newton". If the user types "sir isaac NEWTON" or " Sir Isaac Newton ", those answers should be counted as correct. If, however, the user types "Isaac Newton", this should be considered a wrong answer.


Last modified: