If the test administered by the teacher is a multiple choice test. We should provide a way to automatically score the test by cross referencing the participants responses with a key. This could be as simple as the response to question number 1 is multiple choice value 5, thus if the Participant entered the "correct" value return a 1, if not return a 0 and then adding all the scores up to give a total. Although this would provide a "score", it would be nice to also provide an explanation for incorrect answers. Thus, if the test is automatically scored, it should not only say you missed 7 of 50 questions, but also tell you which questions you missed and give you an explanation for the correct answer. In testing one things that has little to do with Scoring but more to do with the design of a test, which would be useful for professors is the ability to write out a short essay for display and then follow it with a section of multiple choice question... although the scoring wouldn't change, this has an impact on the way information is displayed. Likewise, it would be nice to assign subcategories for scores (i.e. questions 1-15 are to be part of your "section 1 on the text book score", whereas questions 16-30 are part of you "section 2 in the text book score"). Thus a single test (i.e. survey) could provide independent scores for various sections of a test.
Another service teachers would need is the ability to translate point values into scores. For example, in the United States it is common practice to give an "A" to people with 92% of the total possible or higher, and an "A-" for 90-92%, a "B+" for 88-90%, a "B" for 82-88%, etc. In Germany on the other hand, scores are given in the form of numbers 1-6 (with 6 being the lowest score). We should have a way of taking the compiled score (which would be a total number of points), and translating this into either a percentage or a score which is defined by that percentage or the total number of points.
Then, there are tools for the teach. A Teacher may want to have an overview of the entire test. What he/she care may care about is "what are the points breakdowns for all students" or "which questions were most frequently missed by students" (this way the teacher could discern if a certain question was possibly written poorly - if for example almost everybody missed a particular question). The best/most visually appealing way to present this information is through bar graphs (which are relatively easy to program), one may want to use a pie chart to show score breakdowns, but I do not know how we could auto generate this in code. If you have a suggestion please let me know.
Finally, if a teacher were administering an online class... he/she, and or his/her teachers assistants may want to receive notification about a test having been completed. So we should add notification for a survey having been completed. There already appears to be the functionality to notify yourself, but this is not working in postgresql, and it would be good to be able to specify other people as well.