A total of 100 points is possible, but don't expect to get anywhere the total possible points --- the point guidelines include a lot of "headroom" for exceptional projects, with typical scores being 50-75% of the maximum in each category.
50 - Functionality |
||
Robustness: 15 points |
||
15 = absolutely bulletproof |
||
12 = robust under reasonable use |
||
8 = minor bugs, works well enough to be usable |
||
4 = major bugs interfere with normal use |
||
0 = doesn't run |
||
Feature Set: 15 pts |
||
15 = WOW! Exceptional |
||
11 = All needed features and some pleasant surprises |
||
6 = Adequate for the intended purpose |
||
2 = Missing features interfere with normal use |
||
Ease of setup: 5 pts |
||
5 = a snap to install - on a par with highly automated installers |
||
4 = easy to install |
||
3 = a little cumbersome, but installed without major problems |
||
1 = major difficulties installing |
||
0 = couldn't install |
||
Ease of use: 15 pts |
||
15 = couldn't ask for more |
||
11 = Quite usable, but could be improved |
||
6 = Adequate usability, won't discourage normal use |
||
2 = Usability problems interfere with normal use |
||
0 = Completely unusable |
||
20 - Final SRS, SDS, and Project Plan |
||
Final Project Plan - 5 pts |
||
5 = Report clearly indicates who did what, when they did it, and how long everyone spent on each of their tasks (assigned date and completed date, as well as time on task). A process was in place to have each group member's task completion verified and initialed by another group member. There is clear record of when meetings were held, who attended, who arrived significantly late, the agenda, and what was accomplished and agreed upon at each meeting. A series of continually updated project plans continues to show all of the major project milestones and deliverables. |
||
3 = A plan was in place and followed. Tasks and roles were assigned, but it is not perfectly clear who did what, when they did it, and how long everyone spent on each task (from assigned date to completed date, as well as time on task). |
||
0 = No final updated report of the project management is provided. |
||
Final SRS and SDS - 15 pts |
||
This document should include an updated SRS and SDS, as
well as additional detailed technical documentation that
would be required to fully understand, modify, and extend
the system. YOU MUST SUBMIT YOUR ORIGINAL, GRADED AND
MARKED-UP SRS, SDS, and Project Plan WITH YOUR FINAL
PROJECT. |
||
15 = Exceptionally complete and useful design
documentation; with a small amount of study I could easily
port, extend, or modify the system. The system is organized
in a way that makes it exceptionally easy to extend or
modify, and each part of the system is specified precisely
enough that it could be modified or replaced without
studying other parts of the system. Anticipated changes
(e.g., features or generalizations that did not make it into
this version) are clearly documented. The SRS has been
updated to reflect how the requirements have evolved, and
the SDS has been updated to reflect the updated SRS. The SDS
matches what was actually built and turned in. All source
code is well-commented. |
||
10 = Good design documentation, adequate for maintaining and extending the system. Most changes that might be anticipated would be easy, and the documentation of each part of the system is adequate. Some changes may not be quite as localized as one would like, but non-localized changes are reasonably simple, and the documentation is adequate to determine what must be changed. Documentation includes some anticipated changes for future versions of the system. 7 = Adequate design documentation, with some things that could be improved. Some changes may be more difficult to make than they should be. 5 = Some major problems in design documentation, or some things that should be localized or easily configurable are inapropriately hard-wired in the application. 0 = Technical documentation is inadequate, to the point that the only practical way to determine how to make a change is to read the source code. |
||
15 - External/User Documentation |
||
README.txt: 5 pts |
||
This should be a text file, submitted with the source
code, explaining what are the files being submitted, who are
the authors, the class name and assignment, and what needs
to be done to both compile the source code and run the
program. The file should still work a year from now, in case
a future 422/522 instructor is given a directory containing
these files. The file should list the version of the
compiler and any other software that was used, and any
additional setup that may be required. |
||
5 = complete overview with overview description and complete manifest including guide to other documents |
||
4 = very good README |
||
3 = adequate README, but either some inappropriate choices of what to put in or leave out |
||
minor organizational problems that make it less useful than it would otherwise be |
||
2 = README exists, but has flaws that limit its usefulness |
||
0 = README doesn't exist or is useless |
||
User docs - installation/tutorial/reference: 10 pts |
||
This should include everything a user needs to install
and use the system. |
||
10 = really professional standards, on a par with the best commercial software |
||
8 = Good solid documentation for both tutorial and reference use; not quite |
||
professional standards, but very good for a short project |
||
6 = adequate user documents for both tutorial and reference use |
||
4 = not very useful, due to flaws, omissions, or poor organization |
||
2 = barely useful at all |
||
0 = no user documentation, or useless documentation |
||
15 - Initial SRS / SDS / Project Plan |
||
This is the first deliverable for the project. The 15
points are distributed among the three components. |
||
Project Plan - 5 pts |
||
5 = Solid, well-thought-out and agreed-upon plan for proceeding with the project. A milestone is associated with every major activity. The project management demonstrates a well-justified and deliberate decision to follow a specific software development process. Clearly identified channels and means for communicating and maintaining a shared knowledge base. Well-defined tasks and roles, and an internal documentation system for accounting for who does what. Your group is able to clearly communicate all aspects of the project and its management. 3 = A good build plan is determined and followed. Tasks and roles have been assigned. But no one is really sure what other folks are doing, and how they are progressing with their tasks. 0 = No clear management in place. Things get done when they get done. Tasks may be assigned, but there is little or not documentation tracking who is doing what, and when it gets done. |
||
Mini-SRS - 5 pts |
||
5 = Clear motivation for the system, problem statement, description of what the system will do, Clear description of the user, what they will expect, what they will know, and their current technology usage patterns. Realistic and detailed scenarios describe all possible major interactions with the system. Sufficient measurable functional and non-functional user and system requirements. The document can be easily updated and maintained as requirements change. |
||
Mini-SDS - 5 pts |
||
5 = A clear breakdown of system into major parts, description of criteria for breaking into subsystems (e.g., it would be obvious where code for a new feature should go), and abstract understanding of program behavior. System structure and control model are clear. Subsystems are sufficiently detailed so that a programmer could take this document and start writing code. Models are provided for each major subsystem, showing the design from a number of different persectives. Rationale is provided for all major design decisions. The document can be easily updated and maintained as the design changes. |
A.Hornof, Winter 2001. Adapted from materials created by Michal Young, Spring 2000.