CSC/ECE 517 Spring 2020 - E2026. Specialized rubrics for different topic types

From Expertiza_Wiki
Jump to navigation Jump to search

This wiki page contains description of changes made as part of E2026. Specialized rubrics for different topic types (e.g., Servo project, refactoring project), a Final Project for Spring 2020, CSC/ECE 517


Background

In CSC/ECE 517, there are Expertiza-based course projects, Mozilla-based course projects, etc. However, currently, we can only specify one kind of rubric for all kinds of course projects. This means that refactoring projects, testing projects, and Mozilla projects need to use the same rubric. We hope we could specify different rubrics to be used with different kinds of course projects.

This project has been implemented in Spring 2019. We will be implementing our project on top of what was implemented by the previous team, and fix the issues that were found in their implementation. More on what the previous team had worked on is described in the Previous Implementation section.

Previous Implementation

All aspects of previous implementation were good, and their design was well appreciated. Their changes were also merged to expertiza:beta branch, but were later reverted since the specialized rubrics weren’t saved in the database. This github issue provides a detailed explanation to the problem.

For us to get started, we were provided with following links from previous implementation:

Design Strategy

UML Diagram

Files to be modified

Database Flow

Testing Plan

As part of our implementation, we would need to modify existing code as well as add new code. To ensure that existing functionality is not broken, and new functionality works as expected, we will be using the following Test Strategy (which was also used by previous team):

  • Run and pass existing RSpec Tests
    • All the existing RSpec tests related to the files that have to be modified should pass.
  • Develop New RSpec Tests
    • As part of previous implementation, the team had introduced following new RSpec test files:
      • spec/helpers/assignment_helper_spec.rb
      • spec/models/self_review_response_map_spec.rb
    • We plan to use those rspec files as well as implement new ones that might be required once we start on our implementation.
    • All these rspec tests should pass for us to complete the testing.
  • Test the updated/new features on Expertiza UI instance
    • Since the changes in the project would be related to topics, and rubrics for assignment, those features will be tested in Expertiza UI. Current view of Topics and Rubrics tab looks as follows. Additional check boxes, or dropdown fields will be added in both these tabs once we implement the changes.

Team Information

  • Dave Bell (dbell5)
  • Steven Green (stgreen)
  • Abhishek Upadhyaya Ghimire (aupadhy3)
  • Mentor: Anuja Kulkarni