HWXX: NetID, NetID
Title:
Description of Your Program
- What exactly does your program do? Clearly state the goals of your program in terms of what concepts, principles, capabilities, etc. that it is supposed to demonstrate.
- User Manual for your program. In detail, explain exactly how the user should operate your program, including how to see the various ideas, features and capabilities that you wish to demonstrate.
- UML Diagrams. Include at least full UML class diagrams and, optionally, any other diagrams that help illustrate your design and operation of your program. Your code should already include full Javadocs for all classes, interfaces, methods and fields.
- URL to your code: The SVN URL needed for the peer reviews to branch your code
Description of Principles and Design Patterns
- What CS principles at being demonstrated? Be specific and look for concepts that apply beyond the bounds of your program. Identify exact portions of your program operation, design and code where these principles are found.
- What design patterns are being used to exemplify which CS principles? Be explicit about where these patterns are to be found in your design, naming specific classes that are involved and their relationship to the associated designed pattern.
Analysis of Your Program
- OOP/D design goals: Specifically, how does your design address the following issues:
- Flexibility: Can the system be used for a wide variety of tasks?
- Extensibility: Can the system be extended with minimal disruption for new tasks?
- Robustness: Is the system resistant to unknown and incorrect user or other inputs, including malicious ones?
- Correctness: Does the system aid and/or ensure correct behavior and/or results?
- Advantages: In terms of applications beyond your program, what are the advantages of the concepts and techniques demonstrated by your program? Be specific. Clearly describe at least 3 other applications or situations where it would be useful to leverage the ideas in your program.
- Disadvantages: In terms of applications beyond your program, what are the disadvantages of the concepts and techniques demonstrated by your program? Be specific. Clearly describe at least 3 other applications or situations where the main notions you are demonstrating may not be appropriate.
Additional notes for anything not covered above.
Peer Review Feedback (not included above) -- Be sure to include the reviewers' NetID's linked to the text color used!
Peer Review Scores (20 pts total per review)
[[HWXX]]