Lab Policy 1) Plagiarism: Copying and/or submitting the SAME WORK as another student is considered plagiarism and is subject to disciplinary action by the University. If you turn in the SAME WORK as another student either with or without the other student's permission, everyone involved will receive a warning and 0 points for the work in question! To help avoid this situation, do NOT leave your program printouts lying around the lab or in the trash! You may CONSULT with other students while working on the lab assignments but every student MUST write their own program by themselves and MUST put the names of all other students consulted on the program when it is handed in or it will be considered plagiarism! !!! YOU ONLY GET ONE WARNING !!! If you turn in the SAME WORK as another student after having been warned then everyone involved will receive a failing grade in the course and be reported to the University Academic Disciplinary Committee! 2) Attendance Lab attendance is MANDATORY which means that there is no excuse for missing a lab quiz! Lab work can be completed outside of scheduled lab hours but you must still attend lab during your scheduled lab section. The lab TA's will ask you to demonstrate that your program works so it is important for you to attend your scheduled lab section. 3) Preparation You should perform the analysis and design for the lab assignment before coming to the lab. This should include a listing of variables that will appear in the program along with a description and purpose of the variables and the algorithms required to solve the problem. Follow the case studies in the textbook for examples. 4) Assignments You are expected to follow the style guidelines outlined in the textbook and discussed in class. Your programs should be neatly and professionally written and should: - use meaningful variable names such as "hours" instead of "h" for hours worked, etc. - use consistent indentation to make them easier to read - use comments in the declaration section of your functions to document the variables and before each major step of the algorithm to explain the code - begin with a multi-line comment that includes your name, class, section, class instructor, lab instructor, assignment name and date of the lab It is VERY important that you follow all of the programming conventions and styles described both in class and in the textbook and that you are able to demonstrate that your program works correctly. For the majority of the lab assignments you will also be expected to hand in a design document that includes the following: - Problem Specification Statement of the problem - Analysis Inputs Outputs Variables Constants Formulas - Design Algorithm Algorithm Refinements - Implementation Program that you write and hand in - Testing Plan to demonstrate that the program works You can write your design document using an editor on your computer and include the design document in your program as a comment delimited by the comment characters /* ... */. You can also use your editor to write the program from the design document as discussed in the book Section 3.1. 5) Grading Programs MUST follow the programming style that is outlined in the textbook and be neat, clear and readable. The program should work for several cases including unexpected data. As part of your design document you should list the specific cases you intend to test to demonstrate that your program works correctly. For example, in the coins lab you want to check for an amount of nickels or pennies that is zero, a total amount that has exactly 0 cents, an amount that has 0 dollars, etc. Lab grade points are awarded based upon the following criteria: Points Description ------ --------------------------------------------------------------- 0 Program does not compile 2 Program compiles but does not run 4 Program compiles and runs but produces incorrect results 6 - 8 Program compiles, runs and produces correct results but has not been adequately tested 10 Program compiles, runs, produces correct results and has been adequately tested Lab grade points are deducted based upon the following criteria: Points Description ------ --------------------------------------------------------------- 1 - 4 Inadequate comments / documentation / case study 1 - 2 Incorrect programming style 1 - 2 Inconsistent indentation or no indentation 1 - 2 Identifier names that are not meaningful So, for example, if your program compiles, runs, produces correct results and has been adequately tested you would be awarded 10 points. If you did not use any meaningful identifier names 2 points would be deducted so your grade would be 8 points. 6) Submission Your lab assignments should be submitted to your lab TA via e-mail as a file attachment. You should submit your design and program documentation as well as scripted output demonstrating that the program works. All lab work must be handed in by the START of your scheduled lab section the week the assignment is due or the assignment will be considered late. 1 point will be deducted for each day that the assignment is late. You should do your best to finish all of your lab work on time. Falling behind only makes it more difficult to complete subsequent assignments. You should NOT be working on late lab assignments during your scheduled lab section! Your scheduled lab section should be spent working on the current lab assignment. This is to help prevent you from falling further behind.