CS439 Threads Project Rubric
For longer explanations of the categories and more detailed
information about the grading criteria, please visit
the Grading Criteria page of this
website.
Threads Project Detailed Rubric
Project Component
|
Level 5
|
Level 4
|
Level 3
|
Level 2
|
Design, Design Communication, and Documentation
|
- Use of synchronization constructs demonstrates an
understanding of their intended purpose and use.
- No race conditions or concurrency errors revealed when
visually inspected.
- Parallelism is not unnecessarily limited.
- Data structures are always created and managed
correctly and efficiently.
- Scheduler is not invoked unnecessarily.
- In alarm, design ensures that threads will wake on time.
- Priority scheduling and priority donation are properly
designed in all cases.
- Design document accurately and clearly describes code
function and answers the given questions clearly and succinctly.
- Follows all structure and
formatting guidelines, including those provided for
the design document.
|
- Use of synchronization constructs demonstrates a satisfactory
understanding of their intended purpose and use.
- When visually inspected, reveals two or fewer race
conditions or concurrency errors
- Parallelism is sometimes unnecessarily limited.
- Data structures are sometimes not created and managed
correctly and efficiently.
- Scheduler is sometimes invoked unnecessarily.
- In alarm, design may cause thread waking to be
minimally early or late, even if not caught in test cases.
- Priority scheduling and priority donation are properly
designed in most cases, but in some instances the wrong
thread may be scheduled.
- Design document satisfactorily describes code function
and answers the given questions clearly and succinctly.
- Follows most structure and
formatting guidelines, including those provided for
the design document.
|
- Use of synchronization constructs demonstrates an
unsatisfactory understanding of their intended purpose and use.
- When visually inspected, reveals five or fewer race conditions
or concurrency errors
- Parallelism is often unnecessarily limited.
- Data structures are often not created and managed
correctly and efficiently.
- Scheduler is often invoked unnecessarily.
- In alarm, design may cause thread waking to be early or
late, even if not caught in test cases.
- Priority scheduling and priority donation are properly
designed in some cases, but often the wrong thread may be
scheduled.
- Design document unsatisfactorily describes code
function and answers the given questions clearly and succinctly.
- Follows few structure and
formatting guidelines, including those provided for
the design document.
|
- Use of synchronization constructs reveals a lack of
understanding of their intended purpose and use.
- When visually inspected, reveals many race conditions,
concurrency errors, or a failure to use synchronization at
all.
- Parallelism is unnecessarily limited.
- Data structures are not created and managed
correctly and efficiently.
- Scheduler is regularly invoked unnecessarily.
- In alarm, design may cause some threads to never wake
up or never sleep, even if not caught in test cases.
- Priority scheduling and priority donation are not
properly designed in most or all cases, and the wrong thread
is usually scheduled.
- Design document incorrectly or fails to describe code
function and answer the given questions clearly and succinctly.
- Follows few structure and
formatting guidelines, including those provided for
the design document.
|
Test Cases
|
- Code submission passes all test cases
|
- Code submission passes 15 test cases or more
|
- Code submission passes 10 test cases or more
|
- Code submission fails more than 10 test cases or doesn't execute
|
Notes
- Completing the a) planning and reflections and b) evaluation
documents for this project will add 4/10ths to your design score,
or the pro-rated equivalent. However, a grade higher than a 5
may not be awarded. Conversely,
students who fail to complete all documents may earn a
maximum of a 4 on the design
- Turning in the skeleton code earns a design document score of 1.
- Be certain to review the General Grading Criteria that applies to all projects.
- You may report a grade discrepancy if you feel that we overlooked information and thus made a mistake in evaluating your submission. Please see the syllabus for more information.
|
|