CSC/ECE 517 Fall 2014/final E1471 asuv: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
Information Display and Student Interaction
==Information Display and Student Interaction==
---
Expertiza is a web application developed using Ruby on Rails that serves as a peer-review system. The application allows students to submit and peer-review learning objects (articles, code, web sites, etc)<ref>[https://github.com/expertiza/expertiza Expertiza on GitHub]</ref><ref>[http://wikis.lib.ncsu.edu/index.php/Expertiza Expertiza Wiki Page]</ref>. It is an open source project and it's codebase is maintained in GitHub. We are contributing to Expertiza as a part of our Object-Oriented Design and Development's Open-Source Software (OSS) Project. Our goal in this project is to refactor the <b>StudentQuiz controller</b>. In this Wiki Page, we would be explaining the changes that we have made for the same.


__TOC__
=Introduction=
=Introduction=
==Background==
==Background==

Revision as of 17:13, 11 November 2014

Information Display and Student Interaction

--- Expertiza is a web application developed using Ruby on Rails that serves as a peer-review system. The application allows students to submit and peer-review learning objects (articles, code, web sites, etc)<ref>Expertiza on GitHub</ref><ref>Expertiza Wiki Page</ref>. It is an open source project and it's codebase is maintained in GitHub. We are contributing to Expertiza as a part of our Object-Oriented Design and Development's Open-Source Software (OSS) Project. Our goal in this project is to refactor the StudentQuiz controller. In this Wiki Page, we would be explaining the changes that we have made for the same.

Introduction

Background

Scope

Purpose

Approach

As the project was originally assigned to students two years ago, the functionality is mostly complete. The main concern is that, as the project was completed 2 years ago (in December 2012), it was made for an older version of rails.

General Approach

Our general approach to the project would be as follows:

  • Run the current project with rails 4
  • Check the functionality to find out the incompatible parts
  • Refactor the parts of code that do not function as expected and port them to rails 4 specification
  • After making sure everything runs, refactor the entire code to make sure it follows the global code rules.

Specific Approach

The specific approach to each of the two functionality is as follows:

Better display for assignments

Dashboard for students

Testing

Files involved

Dashboard for students

  • Model
  • ScoreCache.rb
  • View
  • grades\view_my_scored.html.erb
  • Controller
  • grades_controller.rb, review_mapping_controller.rb,response_controller.rb
  • Database tables
  • Assignments,Participants, score_caches, response_maps,responses


Functionality of each file

Sr. No. File Name Type Functionality for this project
1 ScoreCache.rb Model Makes an entry into score_cache table whenever a response is given/edited
2 grades\view_my_scores.html.erb View Modified in order to display all new features
3 grades_controller.rb Controller To get information all information about an assignment and its score which is average score of all reviews and plotting the graph for grade distinction
4 review_mapping_controller.rb Controller To get additional information about assignment like total reviews submitted
5 Assignments Table All information related to assignment
6 Responses Table Stores individual assignment review response information
7 Score_caches Table Stores individual assignment review score information
8 response_maps Table Mapping between response, reviewer and reviewee

Use case

UML diagram