<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.expertiza.ncsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ppatel16</id>
	<title>Expertiza_Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.expertiza.ncsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ppatel16"/>
	<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=Special:Contributions/Ppatel16"/>
	<updated>2026-05-07T01:07:42Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A2_Lightweight_Badging_System&amp;diff=114203</id>
		<title>CSC/ECE 517 Fall 2017/E17A2 Lightweight Badging System</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A2_Lightweight_Badging_System&amp;diff=114203"/>
		<updated>2017-12-02T07:32:08Z</updated>

		<summary type="html">&lt;p&gt;Ppatel16: Updated the new and edited files changed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;External Links&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/document/d/1WYiXxhYyycp9a3I0GTC-4KFgHrg65Tf27ijJNQvxhmk/edit#heading=h.mo1zn1d9w38l Fall 2017 Final Project Topics]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/pushpendrasp/expertiza/tree/badges Working Repo Branch]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/expertiza/expertiza/pull/1095 Expertiza Pull Request]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Team Contact&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; MEMBERS:&lt;br /&gt;
&lt;br /&gt;
:Priyanka Jain: [mailto:pjain15@ncsu.edu pjain15@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Pushpendra Patel: [mailto:ppatel16@ncsu.edu ppatel16@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Tanay Kothari: [mailto:tkothar@ncsu.edu tkothar@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Timothy Dement: [mailto:tmdement@ncsu.edu tmdement@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; MENTOR:&lt;br /&gt;
&lt;br /&gt;
:Zhewei Hu: [mailto:zhu6@ncsu.edu zhu6@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Project Description&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The goal of this project is to create a simple badging system for Expertiza, allowing students to earn badges when they meet certain predefined criteria while using the platform. The full E17A2 project topic description can be found [https://docs.google.com/document/d/1WYiXxhYyycp9a3I0GTC-4KFgHrg65Tf27ijJNQvxhmk/edit#heading=h.u6i7q1mdz0zl here]&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Per the full project topic description, the badges will be designed using [https://credly.com Credly]. Previous work on this project topic revealed that any text included on the badges is too small to read, so all text should be removed from the badges and instead appear when the badges are hovered over.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This project is concerned with two preliminary badges — &amp;quot;Good Reviewer&amp;quot; and &amp;quot;Good Teammate&amp;quot; — but the design will be such that the badging system can be easily extended to include more badges in the future. The &amp;quot;Good Reviewer&amp;quot; badge will be awarded to students who receive very high review grades. The &amp;quot;Good Teammate&amp;quot; badge will be awarded to team members who receive very high teammate review scores. By default, the &amp;quot;threshold&amp;quot; for earning these badges will be set to a score of 95, but this value will be configurable on a per-assignment basis by the instructor.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
A new &amp;quot;Badges&amp;quot; tab will be added for instructors on the &amp;quot;Edit Assignment&amp;quot; page where instructors can add badges and configure the badge criteria for a given assignment. Badges a student has earned can be seen when they view their &amp;quot;Task List&amp;quot; page, and an instructor will be able to view all badges earned by students when they view the &amp;quot;Participants List&amp;quot; page.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Please refer to the sections below for further detail.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Project Requirements&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1. Create badges using Credly (do not include text)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.1. Create the &amp;quot;Good Reviewer&amp;quot; Badge&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.2. Create the &amp;quot;Good Teammate&amp;quot; Badge&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.3. Store these badge images in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges&amp;lt;/span&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
2. Create tables for the badging system&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1. Create a table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.1. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;primary key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.2. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;name&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;varchar&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.3. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;description&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;varchar&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2. Create a mapping table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.1 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;primary key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.2 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;foreign key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.3 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;foreign key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.4 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;threshold&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;int&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3. Create a mapping table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.1. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — primary key&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.2. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id&amp;lt;/span&amp;gt; — foreign key&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.3. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;participant_id&amp;lt;/span&amp;gt; — foreign key&lt;br /&gt;
&lt;br /&gt;
3. Change the UI so that instructors can add, configure, and view badges, and so that students can view their badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.1. Add a new &amp;quot;Badges&amp;quot; tab to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignments/edit&amp;lt;/span&amp;gt; page for instructors to add and configure badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.2. Add badge icons to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;participants/list&amp;lt;/span&amp;gt; page for instructors to view badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.3. Add badge icons to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;student_task/list&amp;lt;/span&amp;gt; page for students to view badges&lt;br /&gt;
&lt;br /&gt;
4. Write feature tests to verify the modifications&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;4.1. Include tests in the a new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_system_spec.rb&amp;lt;/span&amp;gt; file in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features&amp;lt;/span&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Preliminary Mocks&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Badges&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following Credly badge will be awarded to students who meet the &amp;quot;Good Reviewer&amp;quot; criterion for a given assignment:&lt;br /&gt;
&lt;br /&gt;
[[File:Badge-Good-Reviewer-Small.png|none|frame|Good Reviewer Badge]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following Credly badge will be awarded to team members who meet the &amp;quot;Good Teammate&amp;quot; criterion for a given assignment:&lt;br /&gt;
&lt;br /&gt;
[[File:Badge-Good-Teammate-Small.png|none|frame|Good Teammate Badge]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Tables&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | name (varchar)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | description (varchar)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | Good Reviewer&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | This badge is awarded to students who receive very high review grades.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | Good Teammate&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | This badge is awarded to team members who receive very high teammate review scores.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family:menlo; color:cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; mapping table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | badge_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | assignment_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | threshold (int)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 95&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 95&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 90&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 4&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 85&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 5&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 80&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The first row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 1&amp;lt;/span&amp;gt; with the default threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;95&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The second row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 1&amp;lt;/span&amp;gt; with the default threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;95&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The third row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 2&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;90&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The fourth row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 2&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;85&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The fifth row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 3&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;80&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; mapping table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | badge_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | participant_id (foreign key)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 4&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The first row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 1&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The second row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 1&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The third row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 2&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The fourth row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 3&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) for the given assignment.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Views&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding:10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following screenshots show a comparison of the existing &amp;quot;Assignments Edit&amp;quot; page, alongside a mockup incorporating the new badging system where instructors can add and configure badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Assignments-Edit.png|none|frame|The original &amp;quot;Assignments Edit&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Assignments-Edit.png|none|frame|The modified &amp;quot;Assignments Edit&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following screenshots show a comparison of the existing &amp;quot;Participants List&amp;quot; page, alongside a mockup incorporating the new badging system where instructors can view all awarded badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Participants-List.png|none|frame|The original &amp;quot;Participants List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Participants-List.png|none|frame|The modified &amp;quot;Participants List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following screenshots show a comparison of the existing &amp;quot;Student Task List&amp;quot; page, alongside a mockup incorporating the new badging system where students can view all of the badges they have earned.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Student-Task-List.png|none|frame|The original &amp;quot;Student Task List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Student-Task-List.png|none|frame|The modified &amp;quot;Student Task List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Test Plan&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
The following will be our test plan for this project: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Reviewer Badge Presence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Reviewer Badge Absence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Teammate Badge Presence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Teammate Badge Absence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_system_spec.rb&amp;lt;/span&amp;gt; file will be created in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features&amp;lt;/span&amp;gt; folder, and will include feature tests that verify the modifications made for the project.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More information will be included in this section as the project progresses and the tests are written.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Video Demonstrations&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More information will be included in this section as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Files Modified&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;New Files&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;A new directory created to house the new badge image files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges/Badge-Good-Reviewer.png&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The image used for the new &amp;quot;Good Reviewer&amp;quot; badge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges/Badge-Good-Teammate.png&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The image used for the new &amp;quot;Good Teammate&amp;quot; badge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/assignments/edit/_badges.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features/badge_system_spec.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file holding the new tests written for the badging system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115222415_create_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115224048_create_assignment_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115230007_create_awarded_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/assignment_badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/awarded_badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;test/fixtures/assignment_badges.yml&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;test/fixtures/awarded_badges.yml&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;test/fixtures/badges.yml&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;test/models/assignment_badge_test.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;test/models/awarded_badge_test.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;test/models/badge_test.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Edited Files&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/assignment_badges_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/assignments_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/response_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/review_mapping_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/assignment_form.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/review_response_map.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file in which the code for the &amp;quot;Good Reviewer&amp;quot; badge will be inserted.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More detail will be provided as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/teammate_review_response_map.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file in which the code for the &amp;quot;Good Teammate&amp;quot; badge will be inserted.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More detail will be provided as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/assignments/edit.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing instructors to add and calibrate badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/assignments/edit/_badges.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/participants/list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing instructors to view badges for the participants of a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/participants/_participant.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/factories/factories.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/shared_scripts/_user_list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/student_task/list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing students to view their badges for all of their assignments.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/schema.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Incorporating schema changes for the three new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt;, and &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; tables.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;References&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Videos summarizing the previous team's work on this project topic can be found  [https://www.youtube.com/playlist?list=PLdDBHYYDZueeGNdQtzS2FfI-eC0-SK6cb here].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ppatel16</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A2_Lightweight_Badging_System&amp;diff=114201</id>
		<title>CSC/ECE 517 Fall 2017/E17A2 Lightweight Badging System</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A2_Lightweight_Badging_System&amp;diff=114201"/>
		<updated>2017-12-02T07:17:43Z</updated>

		<summary type="html">&lt;p&gt;Ppatel16: /* Edited Files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;External Links&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/document/d/1WYiXxhYyycp9a3I0GTC-4KFgHrg65Tf27ijJNQvxhmk/edit#heading=h.mo1zn1d9w38l Fall 2017 Final Project Topics]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/pushpendrasp/expertiza/tree/badges Working Repo Branch]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/expertiza/expertiza/pull/1095 Expertiza Pull Request]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Team Contact&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; MEMBERS:&lt;br /&gt;
&lt;br /&gt;
:Priyanka Jain: [mailto:pjain15@ncsu.edu pjain15@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Pushpendra Patel: [mailto:ppatel16@ncsu.edu ppatel16@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Tanay Kothari: [mailto:tkothar@ncsu.edu tkothar@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Timothy Dement: [mailto:tmdement@ncsu.edu tmdement@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; MENTOR:&lt;br /&gt;
&lt;br /&gt;
:Zhewei Hu: [mailto:zhu6@ncsu.edu zhu6@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Project Description&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The goal of this project is to create a simple badging system for Expertiza, allowing students to earn badges when they meet certain predefined criteria while using the platform. The full E17A2 project topic description can be found [https://docs.google.com/document/d/1WYiXxhYyycp9a3I0GTC-4KFgHrg65Tf27ijJNQvxhmk/edit#heading=h.u6i7q1mdz0zl here]&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Per the full project topic description, the badges will be designed using [https://credly.com Credly]. Previous work on this project topic revealed that any text included on the badges is too small to read, so all text should be removed from the badges and instead appear when the badges are hovered over.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This project is concerned with two preliminary badges — &amp;quot;Good Reviewer&amp;quot; and &amp;quot;Good Teammate&amp;quot; — but the design will be such that the badging system can be easily extended to include more badges in the future. The &amp;quot;Good Reviewer&amp;quot; badge will be awarded to students who receive very high review grades. The &amp;quot;Good Teammate&amp;quot; badge will be awarded to team members who receive very high teammate review scores. By default, the &amp;quot;threshold&amp;quot; for earning these badges will be set to a score of 95, but this value will be configurable on a per-assignment basis by the instructor.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
A new &amp;quot;Badges&amp;quot; tab will be added for instructors on the &amp;quot;Edit Assignment&amp;quot; page where instructors can add badges and configure the badge criteria for a given assignment. Badges a student has earned can be seen when they view their &amp;quot;Task List&amp;quot; page, and an instructor will be able to view all badges earned by students when they view the &amp;quot;Participants List&amp;quot; page.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Please refer to the sections below for further detail.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Project Requirements&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1. Create badges using Credly (do not include text)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.1. Create the &amp;quot;Good Reviewer&amp;quot; Badge&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.2. Create the &amp;quot;Good Teammate&amp;quot; Badge&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.3. Store these badge images in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges&amp;lt;/span&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
2. Create tables for the badging system&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1. Create a table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.1. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;primary key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.2. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;name&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;varchar&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.3. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;description&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;varchar&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2. Create a mapping table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.1 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;primary key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.2 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;foreign key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.3 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;foreign key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.4 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;threshold&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;int&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3. Create a mapping table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.1. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — primary key&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.2. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id&amp;lt;/span&amp;gt; — foreign key&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.3. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;participant_id&amp;lt;/span&amp;gt; — foreign key&lt;br /&gt;
&lt;br /&gt;
3. Change the UI so that instructors can add, configure, and view badges, and so that students can view their badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.1. Add a new &amp;quot;Badges&amp;quot; tab to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignments/edit&amp;lt;/span&amp;gt; page for instructors to add and configure badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.2. Add badge icons to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;participants/list&amp;lt;/span&amp;gt; page for instructors to view badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.3. Add badge icons to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;student_task/list&amp;lt;/span&amp;gt; page for students to view badges&lt;br /&gt;
&lt;br /&gt;
4. Write feature tests to verify the modifications&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;4.1. Include tests in the a new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_system_spec.rb&amp;lt;/span&amp;gt; file in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features&amp;lt;/span&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Preliminary Mocks&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Badges&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following Credly badge will be awarded to students who meet the &amp;quot;Good Reviewer&amp;quot; criterion for a given assignment:&lt;br /&gt;
&lt;br /&gt;
[[File:Badge-Good-Reviewer-Small.png|none|frame|Good Reviewer Badge]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following Credly badge will be awarded to team members who meet the &amp;quot;Good Teammate&amp;quot; criterion for a given assignment:&lt;br /&gt;
&lt;br /&gt;
[[File:Badge-Good-Teammate-Small.png|none|frame|Good Teammate Badge]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Tables&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | name (varchar)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | description (varchar)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | Good Reviewer&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | This badge is awarded to students who receive very high review grades.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | Good Teammate&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | This badge is awarded to team members who receive very high teammate review scores.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family:menlo; color:cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; mapping table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | badge_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | assignment_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | threshold (int)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 95&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 95&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 90&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 4&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 85&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 5&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 80&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The first row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 1&amp;lt;/span&amp;gt; with the default threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;95&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The second row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 1&amp;lt;/span&amp;gt; with the default threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;95&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The third row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 2&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;90&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The fourth row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 2&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;85&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The fifth row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 3&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;80&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; mapping table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | badge_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | participant_id (foreign key)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 4&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The first row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 1&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The second row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 1&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The third row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 2&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The fourth row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 3&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) for the given assignment.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Views&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding:10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following screenshots show a comparison of the existing &amp;quot;Assignments Edit&amp;quot; page, alongside a mockup incorporating the new badging system where instructors can add and configure badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Assignments-Edit.png|none|frame|The original &amp;quot;Assignments Edit&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Assignments-Edit.png|none|frame|The modified &amp;quot;Assignments Edit&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following screenshots show a comparison of the existing &amp;quot;Participants List&amp;quot; page, alongside a mockup incorporating the new badging system where instructors can view all awarded badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Participants-List.png|none|frame|The original &amp;quot;Participants List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Participants-List.png|none|frame|The modified &amp;quot;Participants List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following screenshots show a comparison of the existing &amp;quot;Student Task List&amp;quot; page, alongside a mockup incorporating the new badging system where students can view all of the badges they have earned.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Student-Task-List.png|none|frame|The original &amp;quot;Student Task List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Student-Task-List.png|none|frame|The modified &amp;quot;Student Task List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Test Plan&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
The following will be our test plan for this project: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Reviewer Badge Presence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Reviewer Badge Absence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Teammate Badge Presence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Teammate Badge Absence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_system_spec.rb&amp;lt;/span&amp;gt; file will be created in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features&amp;lt;/span&amp;gt; folder, and will include feature tests that verify the modifications made for the project.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More information will be included in this section as the project progresses and the tests are written.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Video Demonstrations&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More information will be included in this section as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Files Modified&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;New Files&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;A new directory created to house the new badge image files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges/Badge-Good-Reviewer.png&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The image used for the new &amp;quot;Good Reviewer&amp;quot; badge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges/Badge-Good-Teammate.png&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The image used for the new &amp;quot;Good Teammate&amp;quot; badge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features/badge_system_spec.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file holding the new tests written for the badging system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115222415_create_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115224048_create_assignment_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115230007_create_awarded_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/assignment_badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/awarded_badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Edited Files&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/assignment_badges_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/assignments_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/response_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/controllers/review_mapping_controller.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/review_response_map.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file in which the code for the &amp;quot;Good Reviewer&amp;quot; badge will be inserted.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More detail will be provided as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/teammate_review_response_map.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file in which the code for the &amp;quot;Good Teammate&amp;quot; badge will be inserted.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More detail will be provided as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/assignments/edit.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing instructors to add and calibrate badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/participants/list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing instructors to view badges for the participants of a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/student_task/list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing students to view their badges for all of their assignments.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/schema.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Incorporating schema changes for the three new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt;, and &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; tables.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;References&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Videos summarizing the previous team's work on this project topic can be found  [https://www.youtube.com/playlist?list=PLdDBHYYDZueeGNdQtzS2FfI-eC0-SK6cb here].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ppatel16</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A2_Lightweight_Badging_System&amp;diff=114197</id>
		<title>CSC/ECE 517 Fall 2017/E17A2 Lightweight Badging System</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A2_Lightweight_Badging_System&amp;diff=114197"/>
		<updated>2017-12-02T07:09:19Z</updated>

		<summary type="html">&lt;p&gt;Ppatel16: Updated the test plan section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;External Links&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/document/d/1WYiXxhYyycp9a3I0GTC-4KFgHrg65Tf27ijJNQvxhmk/edit#heading=h.mo1zn1d9w38l Fall 2017 Final Project Topics]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/pushpendrasp/expertiza/tree/badges Working Repo Branch]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/expertiza/expertiza/pull/1095 Expertiza Pull Request]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Team Contact&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; MEMBERS:&lt;br /&gt;
&lt;br /&gt;
:Priyanka Jain: [mailto:pjain15@ncsu.edu pjain15@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Pushpendra Patel: [mailto:ppatel16@ncsu.edu ppatel16@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Tanay Kothari: [mailto:tkothar@ncsu.edu tkothar@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Timothy Dement: [mailto:tmdement@ncsu.edu tmdement@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; MENTOR:&lt;br /&gt;
&lt;br /&gt;
:Zhewei Hu: [mailto:zhu6@ncsu.edu zhu6@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Project Description&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The goal of this project is to create a simple badging system for Expertiza, allowing students to earn badges when they meet certain predefined criteria while using the platform. The full E17A2 project topic description can be found [https://docs.google.com/document/d/1WYiXxhYyycp9a3I0GTC-4KFgHrg65Tf27ijJNQvxhmk/edit#heading=h.u6i7q1mdz0zl here]&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Per the full project topic description, the badges will be designed using [https://credly.com Credly]. Previous work on this project topic revealed that any text included on the badges is too small to read, so all text should be removed from the badges and instead appear when the badges are hovered over.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This project is concerned with two preliminary badges — &amp;quot;Good Reviewer&amp;quot; and &amp;quot;Good Teammate&amp;quot; — but the design will be such that the badging system can be easily extended to include more badges in the future. The &amp;quot;Good Reviewer&amp;quot; badge will be awarded to students who receive very high review grades. The &amp;quot;Good Teammate&amp;quot; badge will be awarded to team members who receive very high teammate review scores. By default, the &amp;quot;threshold&amp;quot; for earning these badges will be set to a score of 95, but this value will be configurable on a per-assignment basis by the instructor.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
A new &amp;quot;Badges&amp;quot; tab will be added for instructors on the &amp;quot;Edit Assignment&amp;quot; page where instructors can add badges and configure the badge criteria for a given assignment. Badges a student has earned can be seen when they view their &amp;quot;Task List&amp;quot; page, and an instructor will be able to view all badges earned by students when they view the &amp;quot;Participants List&amp;quot; page.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Please refer to the sections below for further detail.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Project Requirements&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1. Create badges using Credly (do not include text)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.1. Create the &amp;quot;Good Reviewer&amp;quot; Badge&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.2. Create the &amp;quot;Good Teammate&amp;quot; Badge&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;1.3. Store these badge images in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges&amp;lt;/span&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
2. Create tables for the badging system&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1. Create a table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.1. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;primary key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.2. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;name&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;varchar&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.1.3. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;description&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;varchar&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2. Create a mapping table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.1 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;primary key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.2 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;foreign key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.3 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;foreign key&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.2.4 &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;threshold&amp;lt;/span&amp;gt; — &amp;lt;em&amp;gt;int&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3. Create a mapping table named &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; with the following attributes&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.1. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;id&amp;lt;/span&amp;gt; — primary key&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.2. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id&amp;lt;/span&amp;gt; — foreign key&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;2.3.3. &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;participant_id&amp;lt;/span&amp;gt; — foreign key&lt;br /&gt;
&lt;br /&gt;
3. Change the UI so that instructors can add, configure, and view badges, and so that students can view their badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.1. Add a new &amp;quot;Badges&amp;quot; tab to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignments/edit&amp;lt;/span&amp;gt; page for instructors to add and configure badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.2. Add badge icons to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;participants/list&amp;lt;/span&amp;gt; page for instructors to view badges&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3.3. Add badge icons to the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;student_task/list&amp;lt;/span&amp;gt; page for students to view badges&lt;br /&gt;
&lt;br /&gt;
4. Write feature tests to verify the modifications&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;4.1. Include tests in the a new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_system_spec.rb&amp;lt;/span&amp;gt; file in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features&amp;lt;/span&amp;gt; directory&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Preliminary Mocks&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Badges&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following Credly badge will be awarded to students who meet the &amp;quot;Good Reviewer&amp;quot; criterion for a given assignment:&lt;br /&gt;
&lt;br /&gt;
[[File:Badge-Good-Reviewer-Small.png|none|frame|Good Reviewer Badge]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following Credly badge will be awarded to team members who meet the &amp;quot;Good Teammate&amp;quot; criterion for a given assignment:&lt;br /&gt;
&lt;br /&gt;
[[File:Badge-Good-Teammate-Small.png|none|frame|Good Teammate Badge]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Tables&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | name (varchar)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | description (varchar)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | Good Reviewer&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | This badge is awarded to students who receive very high review grades.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | Good Teammate&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | This badge is awarded to team members who receive very high teammate review scores.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family:menlo; color:cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; mapping table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | badge_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | assignment_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | threshold (int)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 95&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 95&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 90&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 4&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 85&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 5&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 80&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The first row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 1&amp;lt;/span&amp;gt; with the default threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;95&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The second row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 1&amp;lt;/span&amp;gt; with the default threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;95&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The third row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 2&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;90&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The fourth row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 2&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;85&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The fifth row represents that the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) has been activated for assignment with &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_id 3&amp;lt;/span&amp;gt; with a customized threshold of &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;80&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following is an example of mock data in the &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; mapping table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | id (primary key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | badge_id (foreign key)&lt;br /&gt;
! style=&amp;quot;padding:10px; text-align: center&amp;quot; | participant_id (foreign key)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 4&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;padding:10px; text-align: center&amp;quot; | 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The first row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 1&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The second row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 1&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The third row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 2&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 1&amp;lt;/span&amp;gt; (&amp;quot;Good Reviewer&amp;quot;) for the given assignment.&lt;br /&gt;
&lt;br /&gt;
The fourth row represents that the assignment participant with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;participant_id 3&amp;lt;/span&amp;gt; has earned the badge with &amp;lt;span style=&amp;quot;font-family: menlo; color:cornflowerblue&amp;quot;&amp;gt;badge_id 2&amp;lt;/span&amp;gt; (&amp;quot;Good Teammate&amp;quot;) for the given assignment.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Views&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding:10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following screenshots show a comparison of the existing &amp;quot;Assignments Edit&amp;quot; page, alongside a mockup incorporating the new badging system where instructors can add and configure badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Assignments-Edit.png|none|frame|The original &amp;quot;Assignments Edit&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Assignments-Edit.png|none|frame|The modified &amp;quot;Assignments Edit&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following screenshots show a comparison of the existing &amp;quot;Participants List&amp;quot; page, alongside a mockup incorporating the new badging system where instructors can view all awarded badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Participants-List.png|none|frame|The original &amp;quot;Participants List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Participants-List.png|none|frame|The modified &amp;quot;Participants List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;The following screenshots show a comparison of the existing &amp;quot;Student Task List&amp;quot; page, alongside a mockup incorporating the new badging system where students can view all of the badges they have earned.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Original-Student-Task-List.png|none|frame|The original &amp;quot;Student Task List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;[[File:Modified-Student-Task-List.png|none|frame|The modified &amp;quot;Student Task List&amp;quot; page.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Test Plan&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
The following will be our test plan for this project: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Reviewer Badge Presence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Reviewer Badge Absence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Teammate Badge Presence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when threshold is set below score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the instructor's participant list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should appear on the student's task list when score is set above threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
describe 'Good Teammate Badge Absence' do&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when threshold is set above score&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the instructor's participant list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
  it &amp;quot;should not appear on the student's task list when score is set below threshold&amp;quot; do&lt;br /&gt;
&lt;br /&gt;
  end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badge_system_spec.rb&amp;lt;/span&amp;gt; file will be created in the &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features&amp;lt;/span&amp;gt; folder, and will include feature tests that verify the modifications made for the project.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More information will be included in this section as the project progresses and the tests are written.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Video Demonstrations&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More information will be included in this section as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Files Modified&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;New Files&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;A new directory created to house the new badge image files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges/Badge-Good-Reviewer.png&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The image used for the new &amp;quot;Good Reviewer&amp;quot; badge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/assets/images/badges/Badge-Good-Teammate.png&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The image used for the new &amp;quot;Good Teammate&amp;quot; badge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;spec/features/badge_system_spec.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file holding the new tests written for the badging system.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115222415_create_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115224048_create_assignment_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/migrate/20171115230007_create_awarded_badges.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The migration for the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/assignment_badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/awarded_badge.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The model associated with the new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; table.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;Edited Files&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/review_response_map.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file in which the code for the &amp;quot;Good Reviewer&amp;quot; badge will be inserted.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More detail will be provided as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/models/teammate_review_response_map.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The file in which the code for the &amp;quot;Good Teammate&amp;quot; badge will be inserted.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;strong&amp;gt;NOTE:&amp;lt;/strong&amp;gt; More detail will be provided as the project progresses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/assignments/edit.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing instructors to add and calibrate badges for a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/participants/list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing instructors to view badges for the participants of a given assignment.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;app/views/student_task/list.html.erb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;The UI changes allowing students to view their badges for all of their assignments.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;• &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;db/schema.rb&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Incorporating schema changes for the three new &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;badges&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;assignment_badges&amp;lt;/span&amp;gt;, and &amp;lt;span style=&amp;quot;font-family: menlo; color: cornflowerblue&amp;quot;&amp;gt;awarded_badges&amp;lt;/span&amp;gt; tables.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;em&amp;gt;&amp;lt;strong&amp;gt;References&amp;lt;/strong&amp;gt;&amp;lt;/em&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Videos summarizing the previous team's work on this project topic can be found  [https://www.youtube.com/playlist?list=PLdDBHYYDZueeGNdQtzS2FfI-eC0-SK6cb here].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ppatel16</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1776_Enhance_Imports&amp;diff=110703</id>
		<title>CSC/ECE 517 Fall 2017/E1776 Enhance Imports</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1776_Enhance_Imports&amp;diff=110703"/>
		<updated>2017-10-28T03:25:36Z</updated>

		<summary type="html">&lt;p&gt;Ppatel16: /* Assets */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;padding: 25px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
= Team Contact =&lt;br /&gt;
&lt;br /&gt;
; MEMBERS:&lt;br /&gt;
&lt;br /&gt;
:Pushpendra Patel: [mailto:ppatel16@ncsu.edu ppatel16@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Tanay Kothari: [mailto:tkothar@ncsu.edu tkothar@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Timothy Dement: [mailto:tmdement@ncsu.edu tmdement@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
; MENTOR:&lt;br /&gt;
&lt;br /&gt;
:Ferry Pramudianto: [mailto:fferry@ncsu.edu fferry@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Topic Description =&lt;br /&gt;
&lt;br /&gt;
=== Backgroud ===&lt;br /&gt;
&lt;br /&gt;
Expertiza is web application devloped on Ruby on Rails platform. It helps students to create reusable learning objects through peer review. It also supports document submission and team projects. Expertiza allows the instructors to import following data:&lt;br /&gt;
&lt;br /&gt;
* A list of users.&lt;br /&gt;
* A list of participants for an existing assignment.&lt;br /&gt;
* A list of participants for an existing course.&lt;br /&gt;
* A list of teams for an existing assignment&lt;br /&gt;
* A list of teams for an existing course.&lt;br /&gt;
* A list of reviewer assignments.&lt;br /&gt;
* A list of meta-reviewer assignments.&lt;br /&gt;
&lt;br /&gt;
These imports are done by uploading a file containing data. The data should be formatted as different rows represented as lines of text in the file. The rows should contain values separated using delimiters. There can be 4 types of delimiters:&lt;br /&gt;
# Comma&lt;br /&gt;
# Space&lt;br /&gt;
# Tab&lt;br /&gt;
# Other - Any custom delimiter provided by the user as text&lt;br /&gt;
&lt;br /&gt;
=== Problem Statement ===&lt;br /&gt;
&lt;br /&gt;
The following is an Expertiza based OSS project which deals primarily with the Import File controller. This project is associated with fixing [https://github.com/expertiza/expertiza/issues/110 issue #110] on the Expertiza Github. The problem with these imports is that they are not implemented consistently. There are restrictions to how the columns should be ordered in the import file. The aim of this project is to improve the import functionality as well as provide a flexible and user-friendly user-interface to the users so that they are able easily import users, participants, topics, etc.&lt;br /&gt;
&lt;br /&gt;
=== Solution ===&lt;br /&gt;
&lt;br /&gt;
To resolve this issue we have changed the interface and the import process to an extent, keeping the core methods of import intact with just few required minor changes. In the new interface, upon importing, the system would then display what was imported, and let the user choose from a dropdown which field was which. The default ordering is the same as what is currently required by Expertiza unless a specific order is provided by the user as a header in the import file.&lt;br /&gt;
&lt;br /&gt;
= Added Features =&lt;br /&gt;
&lt;br /&gt;
= Files Changed =&lt;br /&gt;
&lt;br /&gt;
=== Assets ===&lt;br /&gt;
&lt;br /&gt;
To implement the functionality of non-duplicate column names, we created two new methods ''checkIfUserColumnDuplicate()'' and ''checkIfParticipateColumnDuplicate()'' in the shared.js .&lt;br /&gt;
We have also fixed the ''checkIfFileExist()'' method so that if the user doesn't select the file and click on import button it gives him/her an error stating that &amp;quot;No file has been selected to import&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Config ===&lt;br /&gt;
&lt;br /&gt;
We needed to change the ''routes.rb'' so that the new partial views can be implemented.&lt;br /&gt;
&lt;br /&gt;
=== Controllers ===&lt;br /&gt;
&lt;br /&gt;
For the enhancement of the import functionality, we modified the import_file_controller. In this controller, we modified one existing method ''import()'', other than that we had to declare some additional methods ''import_from_hash()'', ''hash_rows_with_headers()'', ''parse_to_hash()'', ''parse_to_grid()'' and ''show()''.&lt;br /&gt;
&lt;br /&gt;
=== Helpers ===&lt;br /&gt;
&lt;br /&gt;
As we changed the original implementation from array to hash we need to also modify the import_file_helper a little bit.&lt;br /&gt;
&lt;br /&gt;
=== Models ===&lt;br /&gt;
&lt;br /&gt;
Here is a list of models and their respective methods that we had to modify to enhance the import functionality:&lt;br /&gt;
&lt;br /&gt;
#assignment_participant : ''self.import()''&lt;br /&gt;
#course_participant : ''self.import()''&lt;br /&gt;
#course_team : ''add_member()''&lt;br /&gt;
#metareview_response_map : ''self.import()''&lt;br /&gt;
#review_response_map : ''self.import()''&lt;br /&gt;
#team : ''import_team_members()'' and ''self.import()''&lt;br /&gt;
#user : ''self.import()''&lt;br /&gt;
&lt;br /&gt;
=== Views ===&lt;br /&gt;
&lt;br /&gt;
To use the import functionality in a new and enhanced way, we modified one of the existing view and added new views, listed below:&lt;br /&gt;
&lt;br /&gt;
Views Modified:&lt;br /&gt;
#''start.html.erb''&lt;br /&gt;
&lt;br /&gt;
Views Created:&lt;br /&gt;
#''_metareviewer.html.erb''&lt;br /&gt;
#''_participant.html.erb''&lt;br /&gt;
#''show.html.erb''&lt;br /&gt;
#''_reviewer.html.erb''&lt;br /&gt;
#''_team.html.erb''&lt;br /&gt;
#''_user.html.erb''&lt;br /&gt;
&lt;br /&gt;
= Demonstrations =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== User Import ==&lt;br /&gt;
&lt;br /&gt;
[https://youtu.be/HaaXKxfqzes User Import Demo]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Assignent Participant and Course Participant Import ==&lt;br /&gt;
&lt;br /&gt;
[https://youtu.be/BGGPjJrkEjI Participant Import Demo]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Assignment Team and Course Team Import ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Reviewer and Metareviewer Import ==&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
== &amp;lt;span style=&amp;quot;font-weight:bold;color:red&amp;quot;&amp;gt;[UNDER CONSTRUCTION] Topic Import&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Navigating Expertiza =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== User Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the User import process, first select the &amp;quot;User&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Users.png|none|frame|Manage Users]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next, scroll to the bottom of the page and click the &amp;quot;Import Users&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Users.png|none|frame|Import Users]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the User import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Participant Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two types of Participants, Assignment Participants and Course Participants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assignment Participant Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Assignment Participant import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Add Participants&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Add-Assignment-Participant.png|none|frame|Add Assignment Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import assignment participants&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Assignment-Participant.png|none|Import Assignment Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Assignment Participant import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Course Participant Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Course Participant import process, first select the &amp;quot;Courses&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Courses.png|none|frame|Manage Courses]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Courses&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate course and click the &amp;quot;Add Participants&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Add-Course-Participant.png|none|frame|Add Course Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import course participants&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Course-Participant.png|none|frame|Import Course Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Course Participant import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Team Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two types of Teams, Assignment Teams and Course Teams.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assignment Team Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Assignment Team import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Create Teams&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Create-Assignment-Teams.png|none|frame|Create Assignment Team]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import Teams&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Assignment-Teams.png|none|Import Assignment Teams]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Assignment Team import page.&lt;br /&gt;
&lt;br /&gt;
=== Course Team Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Course Team import process, first select the &amp;quot;Courses&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Courses.png|none|frame|Manage Courses]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Courses&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Create Teams&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Create-Course-Teams.png|none|frame|Create Course Team]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import Teams&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Course-Teams.png|none|Import Course Teams]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Course Team import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Reviewer and Metareviewer Import ==&lt;br /&gt;
&lt;br /&gt;
To begin the Reviewer and Metareviewer import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Assign reviewers&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Assign-Reviewers.png|none|Assign Reviewers]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page, and click either the &amp;quot;Import reviewer mappings&amp;quot; link or the &amp;quot;Import meta reviewer mappings&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Reviewer-Mappings.png|none|Import Reviewer Mappings]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Metareviewer-Mappings.png|none|Import Metareviewer Mappings]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to either the Reviewer import page or the Metareviewer import page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== &amp;lt;span style=&amp;quot;font-weight:bold;color:red&amp;quot;&amp;gt;[UNDER CONSTRUCTION] Topic Import&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
To begin the Topic import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Edit&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Edit-Assignment.png|none|frame|Edit Assignment]]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next, select the &amp;quot;Topics&amp;quot; tab, scroll to the bottom of the page and click the &amp;quot;Import topics&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Topics.png|none|frame|Import Topics]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If topics have not been set up yet on the given assignment, you will receive an alert that will need to be accepted before continuing.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Topic-Alert.png|none|frame|Topic Alert]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Topic import page.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ppatel16</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1776_Enhance_Imports&amp;diff=110607</id>
		<title>CSC/ECE 517 Fall 2017/E1776 Enhance Imports</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1776_Enhance_Imports&amp;diff=110607"/>
		<updated>2017-10-28T02:26:38Z</updated>

		<summary type="html">&lt;p&gt;Ppatel16: /* Files Changed */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;padding: 25px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
= Team Contact =&lt;br /&gt;
&lt;br /&gt;
; MEMBERS:&lt;br /&gt;
&lt;br /&gt;
:Pushpendra Patel: [mailto:ppatel16@ncsu.edu ppatel16@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Tanay Kothari: [mailto:tkothar@ncsu.edu tkothar@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Timothy Dement: [mailto:tmdement@ncsu.edu tmdement@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
; MENTOR:&lt;br /&gt;
&lt;br /&gt;
:Ferry Pramudianto: [mailto:fferry@ncsu.edu fferry@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Topic Description =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt; '''Background''' &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Expertiza is web application devloped on Ruby on Rails platform. It helps students to create reusable learning objects through peer review. It also supports document submission and team projects. Expertiza allows the instructors to import following data:&lt;br /&gt;
&lt;br /&gt;
* A list of users.&lt;br /&gt;
* A list of participants for an existing assignment.&lt;br /&gt;
* A list of participants for an existing course.&lt;br /&gt;
* A list of teams for an existing assignment&lt;br /&gt;
* A list of teams for an existing course.&lt;br /&gt;
* A list of reviewer assignments.&lt;br /&gt;
* A list of meta-reviewer assignments.&lt;br /&gt;
&lt;br /&gt;
These imports are done by uploading a file containing data. The data should be formatted as different rows represented as lines of text in the file. The rows should contain values separated using delimiters. There can be 4 types of delimiters:&lt;br /&gt;
# Comma&lt;br /&gt;
# Space&lt;br /&gt;
# Tab&lt;br /&gt;
# Other - A custom delimiter provided by the user as text&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt; '''Problem Statement''' &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following is an Expertiza based OSS project which deals primarily with the Import File controller. This project is associated with fixing [https://github.com/expertiza/expertiza/issues/110 issue #110] on the Expertiza Github. The problem with these imports is that they are not implemented consistently. There are restrictions to how the columns should be ordered in the import file. The aim of this project is to improve the import functionality as well as provide a flexible and user-friendly user-interface to the users so that they are able easily import users, participants, topics, etc.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt; '''Solution''' &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To resolve this issue, we have changed the interface and the import process to an extent keeping the core methods of import intact with just required minor changes. In the new interface, upon importing, the system would then display what was imported, and let the user choose from a dropdown which field was which. The default ordering is the same as what is currently required by Expertiza unless a specific order is provided by the user as a header in the import file.&lt;br /&gt;
&lt;br /&gt;
= Added Features =&lt;br /&gt;
&lt;br /&gt;
= Files Changed =&lt;br /&gt;
&lt;br /&gt;
== Assets ==&lt;br /&gt;
&lt;br /&gt;
To implement the functionality of non-duplicate column names, we created two new methods ''checkIfUserColumnDuplicate()'' and ''checkIfParticipateColumnDuplicate()'' in the shared.js .&lt;br /&gt;
&lt;br /&gt;
== Config ==&lt;br /&gt;
&lt;br /&gt;
We needed to change the ''routes.rb'' so that the new partial views can be implemented.&lt;br /&gt;
&lt;br /&gt;
== Controllers ==&lt;br /&gt;
&lt;br /&gt;
For the enhancement of the import functionality, we modified the import_file_controller. In this controller, we modified one existing method ''import()'', other than that we had to declare some additional methods ''import_from_hash()'', ''hash_rows_with_headers()'', ''parse_to_hash()'', ''parse_to_grid()'' and ''show()''.&lt;br /&gt;
== Helpers ==&lt;br /&gt;
&lt;br /&gt;
As we changed the original implementation from array to hash we need to also modify the import_file_helper a little bit.&lt;br /&gt;
&lt;br /&gt;
== Models ==&lt;br /&gt;
&lt;br /&gt;
There is a list of models we had to modify for enhancing the import functionality, which are listed below along with the original methods we needed to modify:&lt;br /&gt;
&lt;br /&gt;
#assignment_participant : ''self.import()''&lt;br /&gt;
#course_participant : ''self.import()''&lt;br /&gt;
#course_team : ''add_member()''&lt;br /&gt;
#metareview_response_map : ''self.import()''&lt;br /&gt;
#review_response_map : ''self.import()''&lt;br /&gt;
#team : ''import_team_members()'' and ''self.import()''&lt;br /&gt;
#user : ''self.import()''&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
To use the import functionality in a new and enhanced way, we modified one of the existing view and added new views, listed below:&lt;br /&gt;
&lt;br /&gt;
Views Modified:&lt;br /&gt;
#''start.html.erb''&lt;br /&gt;
&lt;br /&gt;
Views Created:&lt;br /&gt;
#''_metareviewer.html.erb''&lt;br /&gt;
#''_participant.html.erb''&lt;br /&gt;
#''show.html.erb''&lt;br /&gt;
#''_reviewer.html.erb''&lt;br /&gt;
#''_team.html.erb''&lt;br /&gt;
#''_user.html.erb''&lt;br /&gt;
&lt;br /&gt;
= Demonstrations =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== User Import ==&lt;br /&gt;
&lt;br /&gt;
[https://youtu.be/HaaXKxfqzes User Import Demo]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Assignent Participant and Course Participant Import ==&lt;br /&gt;
&lt;br /&gt;
[https://youtu.be/BGGPjJrkEjI Participant Import Demo]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Assignment Team and Course Team Import ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Reviewer and Metareviewer Import ==&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
== &amp;lt;span style=&amp;quot;font-weight:bold;color:red&amp;quot;&amp;gt;[UNDER CONSTRUCTION] Topic Import&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Navigating Expertiza =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== User Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the User import process, first select the &amp;quot;User&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Users.png|none|frame|Manage Users]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next, scroll to the bottom of the page and click the &amp;quot;Import Users&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Users.png|none|frame|Import Users]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the User import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Participant Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two types of Participants, Assignment Participants and Course Participants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assignment Participant Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Assignment Participant import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Add Participants&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Add-Assignment-Participant.png|none|frame|Add Assignment Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import assignment participants&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Assignment-Participant.png|none|Import Assignment Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Assignment Participant import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Course Participant Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Course Participant import process, first select the &amp;quot;Courses&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Courses.png|none|frame|Manage Courses]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Courses&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate course and click the &amp;quot;Add Participants&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Add-Course-Participant.png|none|frame|Add Course Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import course participants&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Course-Participant.png|none|frame|Import Course Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Course Participant import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Team Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two types of Teams, Assignment Teams and Course Teams.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assignment Team Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Assignment Team import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Create Teams&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Create-Assignment-Teams.png|none|frame|Create Assignment Team]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import Teams&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Assignment-Teams.png|none|Import Assignment Teams]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will be redirected to the Assignment Team import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Course Team Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Course Team import process, first select the &amp;quot;Courses&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Courses.png|none|frame|Manage Courses]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Courses&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Create Teams&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Create-Course-Teams.png|none|frame|Create Course Team]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import Teams&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Course-Teams.png|none|Import Course Teams]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Course Team import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Reviewer and Metareviewer Import ==&lt;br /&gt;
&lt;br /&gt;
To begin the Reviewer and Metareviewer import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Assign reviewers&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Assign-Reviewers.png|none|Assign Reviewers]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page, and click either the &amp;quot;Import reviewer mappings&amp;quot; link or the &amp;quot;Import meta reviewer mappings&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Reviewer-Mappings.png|none|Import Reviewer Mappings]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Metareviewer-Mappings.png|none|Import Metareviewer Mappings]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to either the Reviewer import page or the Metareviewer import page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== &amp;lt;span style=&amp;quot;font-weight:bold;color:red&amp;quot;&amp;gt;[UNDER CONSTRUCTION] Topic Import&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
To begin the Topic import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Edit&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Edit-Assignment.png|none|frame|Edit Assignment]]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next, select the &amp;quot;Topics&amp;quot; tab, scroll to the bottom of the page and click the &amp;quot;Import topics&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Topics.png|none|frame|Import Topics]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If topics have not been set up yet on the given assignment, you will receive an alert that will need to be accepted before continuing.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Topic-Alert.png|none|frame|Topic Alert]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Topic import page.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ppatel16</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1776_Enhance_Imports&amp;diff=110539</id>
		<title>CSC/ECE 517 Fall 2017/E1776 Enhance Imports</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1776_Enhance_Imports&amp;diff=110539"/>
		<updated>2017-10-28T01:14:34Z</updated>

		<summary type="html">&lt;p&gt;Ppatel16: Order Changed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;padding: 25px 25px 25px 25px&amp;quot;&amp;gt;&lt;br /&gt;
= Team Contact =&lt;br /&gt;
&lt;br /&gt;
; MEMBERS:&lt;br /&gt;
&lt;br /&gt;
:Pushpendra Patel: [mailto:ppatel16@ncsu.edu ppatel16@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Tanay Kothari: [mailto:tkothar@ncsu.edu tkothar@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
:Timothy Dement: [mailto:tmdement@ncsu.edu tmdement@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
; MENTOR:&lt;br /&gt;
&lt;br /&gt;
:Ferry Pramudianto: [mailto:fferry@ncsu.edu fferry@ncsu.edu]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Topic Description =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Added Features =&lt;br /&gt;
&lt;br /&gt;
= Files Changed =&lt;br /&gt;
&lt;br /&gt;
= Demonstrations =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== User Import ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
[https://youtu.be/HaaXKxfqzes User Import Demo]&lt;br /&gt;
&lt;br /&gt;
== Assignent Participant and Course Participant Import ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
== Assignment Team and Course Team Import ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
== Reviewer and Metareviewer Import ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;font-weight:bold;color:red&amp;quot;&amp;gt;[UNDER CONSTRUCTION] Topic Import&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
&lt;br /&gt;
LINK TO YOUTUBE VIDEO&lt;br /&gt;
&lt;br /&gt;
= Navigating Expertiza =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== User Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the User import process, first select the &amp;quot;User&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Users.png|none|frame|Manage Users]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next, scroll to the bottom of the page and click the &amp;quot;Import Users&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Users.png|none|frame|Import Users]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the User import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Participant Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two types of Participants, Assignment Participants and Course Participants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assignment Participant Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Assignment Participant import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Add Participants&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Add-Assignment-Participant.png|none|frame|Add Assignment Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import assignment participants&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Assignment-Participant.png|none|Import Assignment Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Assignment Participant import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Course Participant Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Course Participant import process, first select the &amp;quot;Courses&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Courses.png|none|frame|Manage Courses]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Courses&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate course and click the &amp;quot;Add Participants&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Add-Course-Participant.png|none|frame|Add Course Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import course participants&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Course-Participant.png|none|frame|Import Course Participant]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Course Participant import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Team Import ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two types of Teams, Assignment Teams and Course Teams.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assignment Team Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Assignment Team import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Create Teams&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Create-Assignment-Teams.png|none|frame|Create Assignment Team]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import Teams&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Assignment-Teams.png|none|Import Assignment Teams]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will be redirected to the Assignment Team import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Course Team Import ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To begin the Course Team import process, first select the &amp;quot;Courses&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Courses.png|none|frame|Manage Courses]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Courses&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Create Teams&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Create-Course-Teams.png|none|frame|Create Course Team]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page and click the &amp;quot;Import Teams&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Course-Teams.png|none|Import Course Teams]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Course Team import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Reviewer and Metareviewer Import ==&lt;br /&gt;
&lt;br /&gt;
To begin the Reviewer and Metareviewer import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Assign reviewers&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Assign-Reviewers.png|none|Assign Reviewers]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, scroll to the bottom of the page, and click either the &amp;quot;Import reviewer mappings&amp;quot; link or the &amp;quot;Import meta reviewer mappings&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Reviewer-Mappings.png|none|Import Reviewer Mappings]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Metareviewer-Mappings.png|none|Import Metareviewer Mappings]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to either the Reviewer import page or the Metareviewer import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;font-weight:bold;color:red&amp;quot;&amp;gt;[UNDER CONSTRUCTION] Topic Import&amp;lt;/span&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
To begin the Topic import process, first select the &amp;quot;Assignments&amp;quot; link from the &amp;quot;Manage&amp;quot; drop-down menu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Manage-Assignments.png|none|frame|Manage Assignments]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure that &amp;quot;Assignments&amp;quot; is highlighted on the &amp;quot;Manage content&amp;quot; page, then locate the appropriate assignment and click the &amp;quot;Edit&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Edit-Assignment.png|none|frame|Edit Assignment]]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next, select the &amp;quot;Topics&amp;quot; tab, scroll to the bottom of the page and click the &amp;quot;Import topics&amp;quot; link.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Import-Topics.png|none|frame|Import Topics]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If topics have not been set up yet on the given assignment, you will receive an alert that will need to be accepted before continuing.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px 0px 0px 25px&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Topic-Alert.png|none|frame|Topic Alert]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will then be redirected to the Topic import page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ppatel16</name></author>
	</entry>
</feed>