Category
|
Main Criteria
|
Points
|
Executive
Summary
|
|
5
|
Project
Proposal
|
- What problem/application will
you study?
- Explain why this is an
interesting problem/application.
|
5
|
Analysis
and UML Use-Case Diagram(s)
|
- What should the software
application do?
- Explain user interactions,
calculations/algorithms, and process/work
- UML use-case diagram is
required to support your analysis.
|
10
|
Design,
Prototype Plan, and UML Class Diagrams
|
- How should the program work?
- Object model, UML class
diagram(s) to show the interactions among the objects.
|
10
|
Project
Presentation
|
- Introduce the program idea
and show the UML use-case diagram. Explain what the program does.
- Show the application,
including a narrative of what you're doing at each step. Show how the
program works.
- Talk briefly about the
design, including in particular showing the UML class diagram. Explain
how the program is constructed.
- Discuss the go/no-go
recommendation, as well as lessons learned.
- Ask for and answer questions
from class.
|
20
|
GUI
screens
|
- Intuitive user-interface design
- Visually pleasing layout,
colors, sizes, etc
- Good choice of GUI components
appropriate to the task.
- Intuitive and consistent
naming of visual elements.
- Correctly implements multiple
window GUI
|
10
|
Database
design and implementation
|
- Reasonable table structure,
choice of fields.
- Relationships between tables
are appropriate.
|
5
|
Use of JavaBeans
for data exchange
|
- Correct modeling of data
elements in class member data.
- Appropriately named methods,
formal parameters, return types.
|
5
|
Middleware/DB
Interface components
|
- Separation of SQL statements
from GUI screens.
- Reasonable method names.
- Correct use of JavaBean components as formal parameters and/or
return types.
|
10
|
Miscellaneous
code
|
- Implementation of data
processing/algorithms
- Provide the “glue” which ties
everything together.
|
10
|
Useful
comments in the code
|
- Header comments in each file.
- All significant algorithms
explained.
- Explain methods, parameter
lists.
- Explain flow of control.
- Sufficient for someone other
than the author to be able to read/understand/debug the code.
|
10
|