CSC/ECE 517 Fall 2014/final E1472 gjfz
Design Document
E1472: Connect changes to score model with changes to score views
Introduction
Expertiza is a web application where students can submit and peer-review learning objects (articles, code, web sites, etc). It is used in select courses at NC State and by professors at several other colleges and universities. One of the Expertiza features is to report scores to both students and the instructor. The student can see the feedback from other students, such as the max score, the min score and the average score.
Requirements
This class is responsible for displaying grades to students (via view_my_scores) and instructors (via the view method).
What we should do
- Remove the get_ and set_ accessor names; just use Ruby accessors.
- Change camel-case vs. underscores to match the Ruby convention.
- In grades/_participant.html.erb, don’t create local variables in the view; rather, create an object that has max, min, and avg fields for each kind of reviews. Try to avoid the need to check review type; instead, just pass the kind of review when referring to a max, min, or avg field and use polymorphism.
- Also, you shouldn’t have to check for the existence topic in the view; if it is null, a null string should just be returned.
- There are lots of calculations in the views, which should be moved to the model.
Use Case
Name: Instructor or Teaching Assistant viewing the list of teams scores
Actor: Instructor or Teaching Assistant
Other Participants: None
Precondition: At least one team's score exists.
Primary Sequence:
- Log in to Expertiza
- Choose Assignment from multiple Assignments
- Select View Scores button from an Assignment menu
a
Name: Student views his team score Actor: Student Other Participants: None Precondition: At least team's score exists. Primary Sequence: Log in to Expertiza Choose Assignment from multiple Assignments Select Your Scores button from an Assignment menu [edit]
b
Name: Instructor or Teaching Assistant viewing the list of teams scores
Actor: Instructor or Teaching Assistant
Other Participants: None
Precondition: At least one team's score exists.
Primary Sequence:
- Log in to Expertiza
- Choose Assignment from multiple Assignments
- Select View Scores button from an Assignment menu