Grading Rubric for MATLAB Assignments: Grading First and foremost, meet the specifications. 60% Does it do precisely what it was asked to do? It should be well-designed. 10% This includes well-designed functions; good use of built-in functions; effective use of parameters; correct logic; avoiding global variables; clear labels (including units); and appropriate application of engineering, science, math, and numerical techniques. Style and Readability 10% Software is written not just to be run, but also for others to read. Pity the person who needs to modify your script in order to solve related problems or to fix mistakes in your script. Descriptive variable names, spacing, indentation, and general neatness all help in this. Documentation 10% If you provide good documentation, that person who needs to modify your code will have a better chance of success. There is both internal and external documentation. The internal documentation is contained within the program file(s) and includes a description giving the input data, overall processing, and answers produced. It also includes a comment section for each function, listing what is being passed into it via the parameters, what the function's main task is, and what values are being passed back out. External documentation is separate from the code and may consist of items like the specifications, various drawings, record of testing, etc. In this course, external documentation is only to be turned in if asked for. Efficiency 10% Don't needlessly waste computer time or memory space. In particular, don't waste a lot of it. If there is a tradeoff between efficiency and a clear design, having a clear design is probably better (unless we would waste a lot of time or space to get it).