Turn in:
Links to:
- Github project
- Documentation – There must be a README.md in the project that explains exactly how to setup and use the system.
- Webpage
Grading Rubric
| Criteria | Excellent | Acceptable | Unacceptable |
|---|---|---|---|
| Documented & Maintainable (The program is well-documented with appropriate names and comments making it easy to understand.) | all naming conventions are followedboth in-line and header comments are included and clearly explain the what the code accomplishes and howwhite space is used well | most naming conventions are followedsome comments are confusing or missingwhite space is used well in most places | poor or no use of naming conventionstoo few or too many comments are used and they are unclear or inaccuratepoor use of white space |
| Adaptable & Reusable (The program is modular, using abstraction well and any limitations are clearly specified.) | all interfaces between objects are clearappropriate utility functions are used and well-documentedmost code can be reused | most object interfaces are clearsome appropriate utility functions are used and documentedsome code can be reused | poor object interface definitionsfew or no utility functionsno code can be reused |
| Robust & Correct (The program provides the correct output for all possible input.) | the program works completely as expectedthe output is displayed to specification for all valid inputthe program responds appropriately for all invalid input | the program works as expected for most inputthere may be minor errors in output formatting for valid inputnot all invalid input is handled reasonably | the program does not produce correct output for even the sample inputthe program fails to handle invalid inputexceptions are not caught |
| Efficient & Elegant (The program uses both time and space on the computer effectively, without losing source code clarity.) | no extra variables or definitions are usedthe code is small, efficient yet still easily understood | extra variables do not make the code harder to understandbrute-force problem solving approach | extra variables are pervasive and confusingthe code is unnecessarily long and patched together |
| 25-20% | 19-11% | 10-0% |
Grading Results
| Criteria | Comments | Grade (25-0) |
|---|---|---|
| Documented & Maintainable | ||
| Adaptable & Reusable | ||
| Robust & Correct | ||
| Efficient & Elegant | ||
| Total |
Software project grading rubric
| Category | Developing 1-3 | Competent 4-7 | Accomplished 8-10 | Score |
|---|---|---|---|---|
| Articulate requirements and design of the Project. | Demonstrated understanding of requirement and design issues. | Articulated requirement and design of the project. Described most constraints and variables to be maximized or minimized. | Clearly articulated requirements and design and underlying issues. Clearly articulated constraints and variables to be maximized or minimized. Correctly answered clarifying questions, demonstrating mastery of issues. | |
| Plan the solution and implementation of the project. | Identified some critical tasks. Created plan with some foreseeable problems. | Identified critical tasks. Delegated tasks to team members. Created plan for task and project completion that is workable with some modifications. | Identified critical tasks. Delegated tasks to team members. Accurately estimated time and resources for critical tasks. Created credible plan for task and project completion. | |
| Choose appropriate tools and methods for each task | Selected appropriate tools and methods for most tasks. Identified strengths and weakness of most chosen tools. | Selected appropriate tools and methods for each task. Identified strengths and weaknesses of various tools and methods. Cited reasons for choices. | Selected appropriate tools and methods for each task. Articulated strengths and weakness of various tools and methods. Discussed and gave credible justification for choices. | |
| Give clear and coherent oral presentation | Provided minimal presentation of design problem and results. | Presentation was reasonable and organized. Presentation presented mostly in a professional manner | Presentation was coherent and well organized. Presentation presented in a professional manner | |
| Give clear and coherent written final report | Provided acceptable final report detailing all project phases and results. | Provided acceptable final report detailing all project phases and results. Report was reasonable and organized. Report was provided mostly in a professional manner. | Provided acceptable final report detailing all project phases and results. Report was coherent and well organized. Report presented design in a clear and professional manner. | |
| Function well as a team | Contributions of team members’ variable. Lack of leadership on the project. Many individual contributions with some overlap. | Most team members contributed. Little or no duplication of effort. Conflicts usually amicably resolved. Team members demonstrated some understanding of the overall project. | Each team member contributed to the success of the design. Little or no duplicated effort. Few conflicts, amicably resolved. .Team members able to respond to audience’s questions throughout the presentation. | |
| Create well documented set of life cycle products specific to the project | Project documents/solution was acceptable but limited due to the background of the team. | Project documents/solution met objectives set for the project. Project documents/solution considerations showed team generally understood the problem | Project document/solution exceeded the initial objectives. Innovative approaches were demonstrated in the design. Solution indicated a thorough understanding of project. | |
