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:
-
For short answer questions, the third and last line is the
correct answer to the question.
-
For true/false questions, the third and last line is either "T" or
"F", indicating the correct answer.
-
For multiple choice questions, the next line is the number of
choices for the questions. The lines following this are the texts
of the choices. The final line is the number of the correct choice
(counting from zero).
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: