Scott Grissom
School of Computing & Info Systems
Grand Valley State University
picture

Programming Project Guidelines

Programming projects are designed to give you valuable experience working with algorithms to reinforce concepts covered in class. They may take a lot of time so you should not delay getting started. If you wait until the last night (like everyone else) you may not be able to find a computer, the printer might be busy, or the computers might even be 'down'.

late policy

Programming assignments are due AT THE BEGINNING OF CLASS ON THE DUE DATE. Projects can be turned in late with the following penalties: 20% for the first weekday and additional 10% penalties for each subsequent weekday. Weekends are not included in calculating late penalties. The maximum late penalty is 50% if turned in by the last scheduled lecture of the semester.

grading

Source code and any additional documentation must be clearly written so that it is evident what the problem was and how it was solved. Refer to the Project Grade Sheet for additional information. Assignments will be graded according to the following criteria. All deliverables should be well written and have a professional appearance.

  • 10% Prototype Screen Design -- Is it attractive and complete? Refer to How To Screen Capture in EOS.
  • 15% Object Oriented Design - complete class definitions including method signatures, instance variables and appropriate Javadoc comments. No code should be provided except for the minimum GUI code needed to display the prototype.
  • 10% Class Diagram -- Is it complete and accurately reflect the design? Is your name included on the diagram? Did you use a UML drawing tool?
  • 10% Testing Plan - will include at least ten test cases with a justification of why the test cases are robust and complete. Each test case should have a well defined rationale, a set of inputs (or actions to be performed), and the expected results. Refer to the sample test plan.
  • 10%: Program Style -- A professional programmer should not only be able to write efficient and correct code, but it must be written in a style that others can understand. Follow the suggestions in the Java Style Guide. Program style is taken seriously in industry as well as this course.
  • 25%: Executable Bytecode -- Results should be correct and verifiable. I will test your software to determine if it meets the specifications. Any errors discovered will lower your grade.
  • 5%: Usability -- The fully functional program should be easy for a novice to use. Labels and warning messages should be clear. Workflow should be natural for the user.
  • 5% Revised Class Diagram - this diagram accurately reflects the final implementation of your project. Provide a brief description of how and why your design evolved from phase 1.
  • 5%: Development Journal - This should be a well written summary of your development experience for this project. Each entry should have a date and amount of time spent that day. Provide a summary at the beginning that includes the total time spent on the project and the most valuable lesson or experience. What changes did you detect during development? What did you discover after conducting each of your test cases? What changes did you have to make? What errors did you correct? Refer to the sample journal #1 and sample journal #2.
  • 5%: Overall Quality -Each document should be stapled with an attractive cover sheet. There should be few typos. Remember to provide your parital gradesheet from Phase 1 when you turn in Phase 2.

warning

While a certain amount of consultation between students in working on a project is encouraged, the work you submit must be your own (or yours team). Do not create a difficult situation by representing someone else's work as your own. For more information, consult the University Catalog, the GVSU Student Code, and the CS&IS Guidelines for Academic Honesty.

A good rule of thumb is that if anyone else types the code then it is not your work.

I reserve the right to give you an oral quiz about your code and overall solution with no advanced warning. Your project grade will be adjusted based on your performance on this oral quiz.