CSCI 1060 - Scientific Programming
Project Presentation and Final Delivery


Overview

Topic: Project Presentation and Final Delivery
Due date: Presentation dates are announced via email, the report and code is due Friday, December 10th via email. Submit your work to dferry@slu.edu

The final project will be graded on the basis of an in-class presentation, a written final report, and the code you submit. This page describes each of these components and gives a grading rubric for each. Each component contributes to the final grade in the following amounts:

In-Class Presentation (30% of total)

There have been a lot of good ideas for projects this semester, and the in-class presentation is an opportunity for you to both show your work as well as see the variety of problems and solutions presented by your classmates. Presentations will be relatively short with just 10 minutes for each project. Plan on ~1 minute to load your files onto the presentation computer and getting started, 5-7 minutes for your description and demonstration, leaving just 1-2 minutes for a question or two from the audience. In terms of grading, your presentation must:

  1. (10%) Be practiced and polished- nervousness and mistakes are OK, but major hiccups reflect poorly
  2. (5%) Describe your project
  3. (5%) Say why your selected problem is important, or why it is meaningful to you
  4. (5%) Describe at least one major technical challenge and your solution
  5. (5%) Demonstrate your software

As a teaching opportunity you must strive to convey the significance of your project as well as the effort needed to solve your problem. It is strongly reccomended that you make use of the whiteboard, Powerpoint, or similar presentation tools to devlier this information. A classic presentation format might be:

Lastly, attendance at all presentation sessions is mandatory without prior approval of absence. Failure to attend all presentation sessions without prior approval will result in a 10% penalty to your grade.

Written Report (30% of total)

The written report should be a 2-3 page document that describes your project as well as instructing any would-be users about how to use your software. Much of the same information contained in your presentation should be present here as well. Feel free to use text from your project proposal, presentation, and code for some of the content, but this is a separate document with separate aims. In particular, you should devote roughly a paragraph to describing each of:
  1. (5%) The problem you are solving, or why your project interests you
  2. (5%) Your project's goals and all desired project functionality
  3. (5%) Does your project meet all the objectives given in your proposal? If not, what does not work and why? Are there any known known bugs in your code?
  4. (5%) At least one but possibly more technical challenges and their solutions
  5. (5%) The structure of your code. Did you use a script or a function, or both? Why? If you have multiple scripts or functions then how did you decide to split functionality?
  6. (5%) Give detailed usage instructions: What do I need to do to run your code? What menus or text commands are expected? What scripts or functions do you provide and what is their purpose? Give several example commands that illustrate the use of your project. Possibly include screenshots of what to expect if usage is particularly tricky.

Code Submission (40% of total)

The code submission is the project itself, and includes any MATLAB scripts and functions necessary to run your project. This also includes any supporting files such as data files necessary to run your code. If the data is extremely large or otherwise cannot be delivered you are expected to provide a limited data set that demonstrates project functionality. Your code will be graded on the following basis:
  1. (15%) Project meets the goals described in the project proposal. Missing features disclosed in the written report will be graded leniently.
  2. (10%) Code is documented appropriately. Each code file should include comments describing the purpose the file. Scripts should describe what variables control the execution of the script. Functions should describe each input and output parameter. Each file should have the author(s) listed at the top. Code found or referenced online or from another source should be cited in a comment.
  3. (10%) The examples given in your written report should run without errors and demonstrate the full capability of the code.
  4. (5%) Your code otherwise runs without errors. Known bugs disclosed in the written report will not subtract from your grade.