CSC/ECE 517 Spring 2023 - E2320. Reimplement the Question Hierarchy: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
(Added ack. and references)
Line 5: Line 5:


===Explanation of Feature - Question Hierarchy===
===Explanation of Feature - Question Hierarchy===
The Question class and its sub-classes are used to implement all rubric items, quiz questions, and survey questions in Expertiza. For example, a professor could use this feature to make up a review quiz for their class.
The Question class and its sub-classes are used to implement all rubric items, quiz questions, and survey questions in Expertiza. For example, a professor could use this feature to make up a review quiz for their class. There are 3 main types of questions in Experitza: Scored, Unscored, and upload file.


Here is the hierarchy:
Here is the hierarchy:
Line 21: Line 21:
* Text Field
* Text Field
'''3. Upload File'''
'''3. Upload File'''
Scored questions are
Unscored
Upload file allows the user to upload a file to use as a quiz. Meaning that whatever file is uploaded will be converted into a quiz.


===List of Work Done so Far===
===List of Work Done so Far===

Revision as of 16:54, 7 April 2023

Design Doc

Problem Statement

The current implementation of the question hierarchy is not very clean and contains confusing variable and method names. Also, many methods return long HTML strings which are difficult to read. The goal of this project is to reimplement this part of the application to make it more readable, understandable and maintainable.

Explanation of Feature - Question Hierarchy

The Question class and its sub-classes are used to implement all rubric items, quiz questions, and survey questions in Expertiza. For example, a professor could use this feature to make up a review quiz for their class. There are 3 main types of questions in Experitza: Scored, Unscored, and upload file.

Here is the hierarchy:

1. Choice question

  • Scored question
    • Scale
    • Criterion
  • Unscored question
    • Dropdown
    • Multiple Choice
    • Check Box

2. Text Response

  • Text Area
  • Text Field

3. Upload File

Scored questions are Unscored Upload file allows the user to upload a file to use as a quiz. Meaning that whatever file is uploaded will be converted into a quiz.

List of Work Done so Far

The following list describes tasks that were accomplished in Program 3:

  • Improved naming of variables and methods
  • Included comments for further clarification
  • Implemented partials to deal with the HTML strings
  • Added RSpec test cases

Plan of work

Based on the feedback provided to us by both our mentors and also peer reviews our team has decided upon a few key design goals to work on for the continuation of our work into Program 4. These goals are outlined below.

Design Goals

  • Update code comments - Some methods and classes currently do not have any code comments, while other comments are not in depth enough to give proper context for functionality. One of our design goals will be to write more in depth comments that better explain functionality for the code.
  • DRY out code with partials - Implement additional partials for certain classes. Ex: Question_Controller

Tests

Conclusions / Future Work

Specific Tasks Completed

[Will be updated near final submission deadline]

Team

Mentor
  • Prof. Edward F. Gehringer
  • Priyam Garg
Members
  • Colleen Britt
  • Kimberly Jones
  • Priyanka Arghode

References

  1. Expertiza
  2. Organizing Partials
  3. Render Views and Partials Outside Controllers
  4. Github Repo
  5. Link to initial pull request
  6. GitHub Project Board