Part I: General Project Information
• All projects are individual projects unless it is notified otherwise.
• All projects must be submitted via Blackboard. No late projects or e-mail submissions or hard copies will be accepted.
• Unlimited submission attempts will be allowed on Blackboard. Only the last attempt will be graded.
• Work will be rejected with no credit if
The project is late.
The project is not submitted properly (wrong files, not in required format, files that can’t open,
etc.).
The project is a copy or partial copy of others' work (such as work from another person or the Blackboard site or the Internet).
• Students must turn in their original work. Any cheating violation will be reported to the college. Students can help others by sharing ideas, but not by allowing others to copy their work.
• Documents to be submitted as a zipped file:
o UML class diagram(s) – created with Violet UML or StarUML
o Java source file(s) with Javadoc style inline comments
o Supporting files if any (For example, files containing all testing data.)
Note: Only the above-mentioned files are needed. Copy them into a folder outside the Eclipse, zip the folder, and submit the zipped file. We don’t need other files from the project.
• Students are required to submit a design, all error-free source files with Javadoc style inline comments, and supporting files. Lack of any of the required items or programs with errors will result in a low credit or no credit.
• Grades and feedback: TAs will grade. Feedback and grades for properly submitted work will be posted on Blackboard. For questions regarding the feedback or the grade, students should reach out to their TAs first. Students have limited time/days from when a grade is posted to dispute the grade. Check email daily for the grade review notifications sent from the TAs. Any grade dispute request after the dispute period will not be considered.
• Proper use of the course materials including the source codes: All course materials including source codes/diagrams, lecture notes, etc., are references for your study only. Any misuse of the materials is prohibited. For example,
o Copy the source codes/diagrams and modify them into the projects. Students are required to submit the original work for the projects. For each project, every single statement for each source file and every single class diagram for each design must be created by the students from scratch.
o Post the source codes and diagrams on some Web sites.
o Others
Part II: Project grading rubric
Components Max points
UML Design (See an example in part II.) Max. 10 points
Javadoc Inline comments (See an example in part II.) Max. 10 points
The rest of the project Max. 40 points
All projects will be evaluated based upon the following software development activities.
Analysis:
• Does the software meet the exact specification / customer requirements?
• Does the software solve the exact problem?
Design:
• Is the design efficient?
Code:
• Are there errors?
• Are code conventions followed?
• Does the software use the minimum computer resource (computer memory and processing time)?
• Is the software reusable?
• Are comments completely written in Javadoc format?
a. Class Javadoc comments must be included before a class header.
b. Method Javadoc comments must be included before a method header.
c. More inline comments (in either single line format or block format) must be included inside each method body.
d. All comments must be completed in correct format such as tags, indentation etc.
Debug/Testing:
• Are there bugs in the software?
Documentation:
• Complete all documents that are required.
Part III: Examples on complete a project from start to finish
To complete a project, the following steps of a software development cycle should be followed. These steps are not pure linear but overlapped.
Analysis-design-code-test/debug-documentation.
1) Read project description to understand all specifications (Analysis).
2) Create a design (an algorithm for method or a UML class diagram for a class) (Design)
3) Create Java programs that are translations of the design. (Code/Implementation)
4) Test and debug, and (test/debug)
5) Complete all required documentation. (Documentation)
The following shows a sample design and the conventions.
• Constructors and constants should not be included in a class diagram.
• For each field (instance variable), include visibility, name, and type in the design.
• For each method, include visibility, name, parameter type(s) and return type in the design.
o DON’T include parameter names, only parameter types are needed.
• Show class relationships such as dependency, inheritance, aggregation, etc. in the design. Don’t include
the driver program or any other testing classes since they are for testing purpose only.
o Aggregation: For example, if Class A has an instance variable of type Class B, then, A is an aggregate of B.
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of