Saint Louis University |
Computer Science 3100
|
Dept. of Computer Science |
For an oral homework assignment, groups of students will be given several problems in advance. They should solve these problems, write some personal notes, and prepare for making a live presentation of the solution to the instructor using a whiteboard. Consider this as preparation for typical tech interviews.
Students should form groups for completing the assignment. Members of a group should work together in advance of the presentation session in discussing the problems, developing solutions, and preparing for the presentation session. Each member in a group will present at least one problem from a given homework set. The assignment of who presents what will be chosen randomly by the instructor at the beginning of the presentation session. Therefore, every member of the group should be well prepared to present any of the problems.
Those not presenting should for the most part remain quiet, unless either the instructor or the person presenting requests help or clarification from another group member. The presenter is allowed to ask a homework partner, if he or she is totally stuck and can't remember how to solve the problem. However, the group will lose points for this, so try to avoid it! Make sure you all know how to solve every problem, so that you can try for full credit. However, if your answer is wrong and you can't fix it, you are better off asking for help and getting partial credit if your partner can get it correct - you'll only lose a few points off the total, so that is better than a 0.
Grades for the overall assignment will be based on the combination of all problems that are presented, with each member of the group assigned the same composite score based on the group's presented solutions.
Aim to present your solutions in 5 minutes. We will budget 10 minutes for each problem that is to be presented, with this limit strict. Please aim for making your presentation in 5 minutes, so that there remain 5 minutes for questions and conversation. I will stop you after 10 minutes on one problem, so you should practice giving your solution quickly and accurately! This means you need to be well organized (in advance), and that you don't dwell on unnecessary or trivial details.
Write your solutions, but don't read your solutions! Ideally, you will want to write out your solution, even if you don't need to turn it in. Very often you will only find a bug in the solution when trying to write it down, and even if it is correct, you will improve your presentation by first writing out the argument to clarify it in your own mind. But when it comes to present your solutions, you must be able to fluently discuss your problem, and not to seem like you are simply copying all of your written notes to the board or reading directly from notes.
Don't dwell on the details! Assume that the listener, who is after all the instructor for the class, is familiar with the topics from class. So you don't need to explain big-Oh notation or any other background from the class, and you don't need to provide motivation. (After all, your motivation is probably that I assigned it!) If the solution only differs from something presented in class by a small detail, say that! If additional details are needed, the instructor will not be shy about asking.
Don't forget the proof of correctness and runtime analysis. If your problem is to present an algorithm to solve a problem, then you should presumably make sure to explain why your algorithm is correct and to analyze its running time. You must only highlight the salient points of those arguments. Your job is to convince the audience that you understand the proof, rather than to present the type of formal proof that might be expected in a written solution.
During your presentation, I may interrupt, ask questions, provide or ask for clarifying comments, point out flaws or counterexamples, or any other similar behavior. Usually this can be taken as an indication that either you haven't made things clear or there is an error. It might also be that you've assumed too much of your tired, stressed, and overworked instructor. In any case, don't panic, because I'm not out to get you; just answer the questions to the best of your ability.
Part of the value is that you can get immediate, real-time feedback on your solutions. However, at some point it is very likely that you will find out that something is incorrect or unclear in a problem you are presenting. Don't panic! You can still get partial credit for these problems, and may even be able to fix the solution. Part of the value of this experience is learning to think on your feet while communicating your solutions.
Within reason, the instructor may allow you to react and modify your solutions. However, full points for content will only be awarded when initial solutions are correct. Yes, we realize that this gives oral presentation an advantage over written homework, since you are more likely to fix errors and get partial credit. Enjoy it!