Developer Effort Analysis for Gradebook Changes



Take a look at Foundation Gradebook Confluence for some idea of what Indiana's working on. They also
have some estimates of the work involved. Interestingly, they seem to think they have "Equal Weight" and "Add Drop Lowest" on their plate, but have put off this effort in favor of finishing other stuff. We should make sure they haven't done any work on these items before proceeding with them.



Summary of Gradebook API Changes

see Summary of Gradebook API Changes

UI Effort Analysis

see UI Effort Analysis

Detailed analysis

Out of Date

The text below was based on the assumption that modifying the existing pages was a possible route. So each page is examined for its potential UI and API changes. The API changes will still be necessary, but the UI changes will for the most past be superseded by the new UI.

Legend

Symbol

Meaning

Symbol

Meaning

API changes look reasonably straightforward

API changes have some significant complexity and will require more thorough testing

API changes will require extensive discussion and rigorous testing

New UI component

Wireframes

Gradebook Setup Changes (Category & Item Setup)

Checkboxes to select which statistics the instructor wants to display

Incorporate Grade Items into Categories and Weighting Setup

Gradebook Overview Changes

Additional Statistics Display

Read-only version of the hierarchical table UI component from Gradebook Setup Changes

  • Should be possible to develop the component above to be either read-only or editable

    • Using it in two different pages implies that its a taglib object, I think

Student Summary Changes (Grade Student All Items)

Changes to the existing table

Gradebook Item Summary Changes (Grade Item All Students)

Null entry warning popup

  • This strongly implicates the use of AJAX to talk to the server before page submission, since otherwise we will have to write a significant amount of involved javascript that duplicates logic already available in the java code.

Changes to the existing table

  • New column to select individual items per student to be excluded requires API changes

    • This should be the same underlying logic changes that are required for the Student Summary changes above

  • Comment box open/close click on/off behavior will require some Javascript, at least Why is this different from the comments box in Student Summary?

  • Change tab order behavior

    • This will most likely require some fairly involved changes to the UI, since it means that we have to count each item we display in order

Course Multi-Grade (Grade All Students and Items)

New grade entry table

New widget to choose which items to grade

  • This shouldn't involve any API changes

New widget to show Course Grade Entry Options

  • This is just a condensed version of the Course Grade Options page

New widget to show Course Statistics

Course Grades Changes

Course Summary widget

  • New statistics requires API changes as per above for stats

  • Replace calculate final grades with radio button

    • raises the issue of when that change gets implemented – does clicking on the radio button refresh the screen and recalculate?

Course Grade Options Summary View

  • New ui (read-only) version of the Course Grade Options screen

Changes to the existing table

Comments Box

I'm not completely clear on what's changing here, but it looks like the existing API has all the necessary fields to provide this data.