<?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=Nsompal</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=Nsompal"/>
	<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=Special:Contributions/Nsompal"/>
	<updated>2026-05-09T23:05:37Z</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/E1797_Timestamps_for_students_submissions&amp;diff=114336</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=114336"/>
		<updated>2017-12-03T03:59:12Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Approach to solve the problem===&lt;br /&gt;
In this project, a timeline in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
. We will be using HighGraphs to generate the timeline.&lt;br /&gt;
We take the data necessary for each stage for the student from the database tables mentioned below and allow them to appear on the timeline with the time stamps.&lt;br /&gt;
The database tables we use for fetching the data are :&lt;br /&gt;
&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
By fetching the data from the tables necessary regarding the hyperlinks, due dates, review related information and using CSS , High Graphs we mark a timeline in the student Assignment page which would display all the data with a hyperlink to navigate to that page easily.&lt;br /&gt;
&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/student_task_controller.rb&lt;br /&gt;
*app/models/student_task.rb&lt;br /&gt;
*app/views/student_task/_timeline.html.erb&lt;br /&gt;
*The database tables involved for the work is due_dates, due_date_type, submission_record, review _mappings, response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Due Date Type Table&lt;br /&gt;
*Submission Records Table&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
&lt;br /&gt;
*Due Dates table is queried using assignment ID to fetch due date entries and fetch due date type from Due Date Type table which has a foreign key relation with Due Dates table.&lt;br /&gt;
*Submission Records table is queried with team ID and assignment ID to fetch all the submission completed by the team.&lt;br /&gt;
*Response Map table is queried with participant ID to fetch review mapping ID and reviews are fetched from Review Mapping table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Implementation==&lt;br /&gt;
&lt;br /&gt;
Timeline feature is used to display timeline with due dates, submitted links, submitted files, self review, reviews performed(multiple rounds) and Author Feedback. The required data is scattered in the data base in different tables. New method '''get_timeline_data''' was added in '''student_task.rd''' model file to consolidate and parse data from different tables and create a list of all the required data points.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' All names displayed on the timeline is directly picked from the database and the string has not been formatted since there is no constants defined in the code and string parsing would add dependency.&lt;br /&gt;
&lt;br /&gt;
[[File:calling_method.png]]&lt;br /&gt;
&lt;br /&gt;
Method '''get_duedate_data''' will fetch all required due date records using assignment ID, prepare a hash of required data points and add the hash to timeline list.&lt;br /&gt;
&lt;br /&gt;
[[File:duedates_method.png]]&lt;br /&gt;
&lt;br /&gt;
Method '''get_submission_data''' will fetch all required submission records using assignment ID and team ID. Parse all the records, prepare a hash of required data points and add the hash to timeline list.&lt;br /&gt;
&lt;br /&gt;
[[File:submitted_data_method.png]]&lt;br /&gt;
&lt;br /&gt;
Method '''get_review_data''' will fetch all required review, feedback record using participant ID. Parse all the records, prepare a hash of required data points and add the hash to timeline list.     &lt;br /&gt;
&lt;br /&gt;
[[File:review_data_method.png]]&lt;br /&gt;
&lt;br /&gt;
The modular approach helps with future modifications where new data points can be added to the timeline by creating a parser method and call the parser in get_timeline_data method.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The '''get_duedate_data''' method is called from the '''student_task_controller.rb''' file to fetch the timeline list which is used to display the timeline in '''student_task/_timeline.html.erb''' file.&lt;br /&gt;
&lt;br /&gt;
[[File:Student_Task_Controller.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Timeline''' is created using a simple node template, running a loop and displaying each data point in the timeline list.&lt;br /&gt;
&lt;br /&gt;
[[File:_Timeline_html.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Edge Cases===&lt;br /&gt;
&lt;br /&gt;
* When the student doesn't submit the assignment on time ,  due date passed would be shown in the timeline.&lt;br /&gt;
* If the hyperlink submitted by student doesnt get submitted properly, it would not show any link to hyperlink on timeline.&lt;br /&gt;
* If the review is not done before the deadline,review link doesn't appear on the timeline and alos shows that due date is passed on timeline. &lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
===== RSpec =====&lt;br /&gt;
Since we are following the TDD approach, the test cases where first written and then the code was implemented. Since the task of submitting hyperlink, file and performing review was made into methods as it is being used in multiple testcases.&lt;br /&gt;
&lt;br /&gt;
[[File:testcase_hyperlink_method.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:testcase_file_method.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:testcase_review_method.png]]&lt;br /&gt;
&lt;br /&gt;
'''Testcase 1:''' A hyperlink is submitted and expect to find 'submit Hyperlink' in the student task page.&lt;br /&gt;
&lt;br /&gt;
'''Testcase 2:''' A file is submitted and expect to find 'submit File' in the student task page.&lt;br /&gt;
&lt;br /&gt;
'''Testcase 3:''' A review for the assignment is requested, completed and submitted. Expect to find 'round 1 review' in the student task page.&lt;br /&gt;
&lt;br /&gt;
[[File:Testcase_1.png]]&lt;br /&gt;
&lt;br /&gt;
'''Testcase 4:''' Submit hyperlink, file and perform a review. Check timeline for 'submit Hyperlink', 'submit File' and 'round 1 review'. &lt;br /&gt;
&lt;br /&gt;
[[File:testcases_2.png]]&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' All names displayed on the timeline is directly picked from the database and the string has not been formatted since there is no constants defined in the code and string parsing would add dependency.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed with only due dates&lt;br /&gt;
&lt;br /&gt;
[[File:rsz_deadlines.png]]&lt;br /&gt;
&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp.&lt;br /&gt;
&lt;br /&gt;
[[File:rsz_hyperlink.png]]&lt;br /&gt;
&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp.&lt;br /&gt;
&lt;br /&gt;
[[File:rsz_filesubmit.png]]&lt;br /&gt;
&lt;br /&gt;
*'''Step10''' : Submit a review &lt;br /&gt;
*'''Step11''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number page.&lt;br /&gt;
&lt;br /&gt;
[[File:rsz_review_round_1.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:rsz_round_2_review.png]]&lt;br /&gt;
&lt;br /&gt;
*'''Step12''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step13''' : Submit an author feedback. &lt;br /&gt;
*'''Step14''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp.&lt;br /&gt;
&lt;br /&gt;
[[File:rsz_author_review.png]]&lt;br /&gt;
&lt;br /&gt;
*'''Step15''' : Click on the round review link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113688</id>
		<title>CSC/ECE 517 Fall 2017/E1780 OSS Project Teal Email Notification Enhancements</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113688"/>
		<updated>2017-11-20T01:43:50Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Future Work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is for the description of changes made under E1780 OSS Project Teal Email Notification Enhancements.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== About Expertiza ==&lt;br /&gt;
&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities.&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
The following tasks were accomplished in this project:&lt;br /&gt;
:* Instructor should get an option to create a participant if (s)he does not already exist in the system.&lt;br /&gt;
:* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
:* Deadline reminders should include a link on where to go to perform the needed function.&lt;br /&gt;
:* Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
:* Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
:* All activity on ad responses and invitations should be reported to the other party by e-mail.&lt;br /&gt;
:* Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
:* Instructor should get a copy of all emails sent to the student.&lt;br /&gt;
&lt;br /&gt;
== UML Case Diagram ==&lt;br /&gt;
[[File:Drawing2.JPG]]&lt;br /&gt;
&lt;br /&gt;
The UML diagram shows the functionality that is being developed in the project.&lt;br /&gt;
*''' Use Case1'''&lt;br /&gt;
*Use Case Description: Create an Option to create a participant when he doesn't exist&lt;br /&gt;
*Actor: Instructor &lt;br /&gt;
*Precondition: Participant does not exist&lt;br /&gt;
*Post Condition:Gets option to create participant&lt;br /&gt;
&lt;br /&gt;
*''' Use Case2'''&lt;br /&gt;
*Use Case Description: Get an Email once a review is done with a link for the review page&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition:Reviewed team gets emails with review link. On clicking the link , it should direct to the corresponding review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case3'''&lt;br /&gt;
*Use Case Description: Get an Dead line reminder Email once a deadline to review is approaching&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition: Gets  deadline reminder in email to review a team.Email should have the link to the review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case4'''&lt;br /&gt;
*Use Case Description: Gets email notifications for reviews contradicting by a particular threshold&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Team reviews are done by at least 2 reviewers&lt;br /&gt;
*Post Condition: Instructor gets email notifications for reviews contradicting by a particular threshold along with the links the contradicting reviews.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case5'''&lt;br /&gt;
*Use Case Description: Email should be sent to the invitee with the team -join request when join request is sent.&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Invites another participant to join a team&lt;br /&gt;
*Post Condition: Email should be sent to the invitee with the team -join request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case6'''&lt;br /&gt;
*Use Case Description: All activity Emails should be sent to student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Activity is done in expertiza by team members.&lt;br /&gt;
*Post Condition: Student Should receive email on all activity on ad responses and invitations performed by other team members.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case7'''&lt;br /&gt;
*Use Case Description: 	Instructor receives an email for the suggestion request by student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Suggests a topic&lt;br /&gt;
*Post Condition: Instructor receives an email for the suggestion request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case8'''&lt;br /&gt;
*Use Case Description: 	Instructor receives a copy of email for all the mails sent to student on assignment.&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Activity done on assignment.&lt;br /&gt;
*Post Condition: Should get a copy of all emails sent to the student regarding the activities done on assignment.&lt;br /&gt;
&lt;br /&gt;
== Peer Review Information ==&lt;br /&gt;
*The CodeClimate build is failed for the files which are already present, and not for the changes made&lt;br /&gt;
* For the changes to be tested use Instructor Login: username: instructor6 password: password&lt;br /&gt;
*A self explanatory video has been uploaded for the same.&lt;br /&gt;
*Design principles are not needed as we mostly modified existing work.&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
== Files changed ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Controllers&amp;lt;/b&amp;gt;====                           &lt;br /&gt;
::* invitations_controller.rb                    &lt;br /&gt;
::* profile_controller.rb                        &lt;br /&gt;
::* suggestion_controller.rb&lt;br /&gt;
::* users_controller.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Helpers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* mailer_helper.rb&lt;br /&gt;
::* login_helper.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Mailers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* delayed_mailer.rb&lt;br /&gt;
::* mailer.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Models&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* response.rb&lt;br /&gt;
::* user.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Views&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* invite_message.html.erb&lt;br /&gt;
::* new_topic_suggested_message.html.erb&lt;br /&gt;
::* notify_grade_conflict_message.html.erb&lt;br /&gt;
::* _invitation_accepted_html.html.erb&lt;br /&gt;
::* _invitation_declined_html.html.erb&lt;br /&gt;
::* _invitation_pending_html.html.erb&lt;br /&gt;
::* _new_submission_html.html.erb&lt;br /&gt;
::* _submission_deadline_test_html.html.erb&lt;br /&gt;
::* _additional_links.html.erb&lt;br /&gt;
::* add.js.erb&lt;br /&gt;
::* _prefs.html.erb&lt;br /&gt;
====&amp;lt;b&amp;gt;Spec&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* factories.rb&lt;br /&gt;
::* user_spec.rb&lt;br /&gt;
&lt;br /&gt;
== Solutions Implemented ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Providing option to instructor to create non-existent participant&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A flash message was added when the instructor adds a non-existent user as a participant.A new link to redirect the instructor to the user creation page is also added.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:Additional_add.PNG]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Link provided to redirect user to page where review is found&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A  new link was incorporated in the email to redirect the user to the corresponding review page.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:new_submission.png]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Incorporating a link for submission deadline reminder&amp;lt;/b&amp;gt;====&lt;br /&gt;
:Tests were done for already existing functionality as deadline reminders are not being sent as per the current functionality.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:submission_Deadline.png]]&lt;br /&gt;
====Enhancing the email that the instructor receives for contradicting reviews====&lt;br /&gt;
:The email that the instructor receives for contradicting reviews was enhanced by adding the previous average score of the total reviews and the score of the new review. The readability of the email was also increased by adding bullet points wherever necessary.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:conflict1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict3.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
====Sending email to the invitee to join a team====&lt;br /&gt;
:When a particular student invites another student(s) to join a team for a particular assignment, then the invitee(s) should receive an email for the same.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controller25.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:mailer_helper.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:invite_message.png]]&lt;br /&gt;
====All activities on ad responses and invitations should be reported to the other party by e-mail====&lt;br /&gt;
:Three new partials have been created to send emails to both inviter and invitee for the responses(accept, decline, pending) of invitations to join a team&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controllers26.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:inv_acc_dec.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Emailing to the instructor when a student suggest a new topic====&lt;br /&gt;
:When a new topic is suggested by a student to the instructor , an email is sent to the instructor regarding the same for his decision to approve or decline.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:sugg_controller.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:topic_sugg.png]]&lt;br /&gt;
====Instructor should receive copy of emails being sent to the student if (s)he wishes to====&lt;br /&gt;
:Instructor can choose to receive all the emails being sent to the students to understand proper functioning of the system.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq3.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq4.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq5.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq6.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq7.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq8.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq9.png]]&lt;br /&gt;
&lt;br /&gt;
== Testing Details and TestPlan ==&lt;br /&gt;
===Testing with UI(Manual Testing)===&lt;br /&gt;
====Requirement1====&lt;br /&gt;
*If someone attempts to assign a nonexistent user as a participant in an assignment by filling out the form on the Add Participants page, (s)he should be warned that the user does not exist.  This is reasonable behaviour because the username may have been mistyped, and you wouldn't want to create a new user account due to a typo.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
Adding a non-existent user as a participant in an assignment&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active Assignment .&lt;br /&gt;
*Click on Add Participants and add any non-existent user ( any email id ).&lt;br /&gt;
*Result : It gives a flash message regarding user does not exist and gives you the link to create a new user.&lt;br /&gt;
====Requirement2====&lt;br /&gt;
* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active assignment.&lt;br /&gt;
*Add an existing user as a reviewer and another user as a participant to this assignment.&lt;br /&gt;
*Login as the reviewer and submit your review. &lt;br /&gt;
*Result: The participant must have received an email on this review submission with a link to the review submitted.&lt;br /&gt;
====Requirement3====&lt;br /&gt;
*  As there are no deadline reminders implement in expertiza currently , we were asked to verify  the Rspec test cases which are already present in delayed_mailer_spec.rb for the same . We were asked to fix if any bugs were found in that. But no bugs were found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
* Run the Rspec test cases by  following a command :&lt;br /&gt;
bundle exec rspec delayed_mailer_spec.rb&lt;br /&gt;
*Result : See the attachment for the screenshot.&lt;br /&gt;
====Requirement4====&lt;br /&gt;
*Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
*Put the links in the bulleted list that is easy to read.&lt;br /&gt;
*The mail should have the previous average score as well as the new score that is being assigned.&lt;br /&gt;
*Any other kind of improvement to increase the readability of the email is welcome&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor and create three students. &lt;br /&gt;
*Hover over Manage Tab --&amp;gt; click on Assignments --&amp;gt; choose an existing active assignment--&amp;gt;Click on Add Participants section of that assignment.&lt;br /&gt;
*Out of the three users that you have created, add two as reviewers and one as participant to that assignment.&lt;br /&gt;
*Login as the participant and submit any link as your work .&lt;br /&gt;
*After the submission deadline is over, login as each of the reviewers and submit two contradicting reviews of the same assignment. ( Say, one gives all 0s , another gives all 5s).&lt;br /&gt;
*Result : This should send an email to the instructor with the below text.&lt;br /&gt;
====Requirement5====&lt;br /&gt;
*Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor --&amp;gt; click on Assignments tab --&amp;gt; Select an existing active assignment .&lt;br /&gt;
*Add one user as a participant , login as the participant and invite a student to join the team for the assignment.&lt;br /&gt;
*Result: Email has been sent to invitee.&lt;br /&gt;
====Requirement6====&lt;br /&gt;
*The student who issued the invitation should also be e-mailed when the invitee joins the team. And also when a student responds to a teammate advertisement. In general, all activity on ad responses and invitations should be reported to the other party by e-mail (unless these e-mails are turned off in a (new) profile field).&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Continue from Requirement 5. &lt;br /&gt;
*Result : Both the inviter and the invitee should get an email as per the requirement specified above.&lt;br /&gt;
====Requirement7====&lt;br /&gt;
*Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
====Requirement8====&lt;br /&gt;
*Create an option (in the instructor’s profile) to get a copy of ‘e-mails being sent to students (this is so the instructor can verify correct functioning of the system).&lt;br /&gt;
*Modified Requirement : Implemented for one such scenario, can easily be replicated for others.&lt;br /&gt;
&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an existing instructor --&amp;gt; go to profile tab.&lt;br /&gt;
*Do not tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now. &lt;br /&gt;
*Go to Manage Users --&amp;gt; Create a student.&lt;br /&gt;
*Result 1 (negative testing) : Instructor does not receive an email.&lt;br /&gt;
&lt;br /&gt;
*1. Login as the instructor and go to the Profile tab.&lt;br /&gt;
*2. Tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now and Save.&lt;br /&gt;
*3. Perform an event. Here, &amp;quot;Create any other user (may be a Student , Reader ) and Save. While creating the user , please ensure you give an email id that you can access.&lt;br /&gt;
&lt;br /&gt;
*Result2(positive testing) : Both the created user and the instructor receives the email.&lt;br /&gt;
*Note : The instructor only receives copy of all emails happening in the system, if the check box is checked. In this case, we have just implemented for one such scenario . This can easily be replicated for the others.&lt;br /&gt;
&lt;br /&gt;
===Automated Testing Scenario(RSpec)===&lt;br /&gt;
:The test cases for the complete functionality testing are covered.&lt;br /&gt;
:There were existing test cases for the delayed_mailer.rb and the functionality is checked by running those test cases.The snapshot of running the Rspec for the deadline reminder details is given below.&lt;br /&gt;
=====Related snippet&amp;lt;br&amp;gt;[[File:rspec421.png]]=====&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
#Reviewer is receiving an email after a submission is revised.&lt;br /&gt;
##The above mentioned email should also contain the Review round after which the submission has been revised.&lt;br /&gt;
##The above mentioned email must contain a link that redirects the reviewer to the link where the review is found.&lt;br /&gt;
#Reviewer does not receive the above mentioned email if the last round of review has been completed.&lt;br /&gt;
#Deadline reminder emails should be implemented in the system for both submissions and reviews.&lt;br /&gt;
##A link should be provided in that email so that the user knows where to go to perform the needed action.&lt;br /&gt;
#'''Alternative Approach that can be implemented'''&lt;br /&gt;
##All the changes done in view files could be changed to helpers following the OOD coding standards.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/expertiza/expertiza Expertiza on GitHub]&lt;br /&gt;
*[http://expertiza.ncsu.edu/ The live Expertiza website]&lt;br /&gt;
*[https://relishapp.com/rspec Rspec Documentation]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113687</id>
		<title>CSC/ECE 517 Fall 2017/E1780 OSS Project Teal Email Notification Enhancements</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113687"/>
		<updated>2017-11-20T01:41:32Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Future Work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is for the description of changes made under E1780 OSS Project Teal Email Notification Enhancements.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== About Expertiza ==&lt;br /&gt;
&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities.&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
The following tasks were accomplished in this project:&lt;br /&gt;
:* Instructor should get an option to create a participant if (s)he does not already exist in the system.&lt;br /&gt;
:* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
:* Deadline reminders should include a link on where to go to perform the needed function.&lt;br /&gt;
:* Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
:* Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
:* All activity on ad responses and invitations should be reported to the other party by e-mail.&lt;br /&gt;
:* Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
:* Instructor should get a copy of all emails sent to the student.&lt;br /&gt;
&lt;br /&gt;
== UML Case Diagram ==&lt;br /&gt;
[[File:Drawing2.JPG]]&lt;br /&gt;
&lt;br /&gt;
The UML diagram shows the functionality that is being developed in the project.&lt;br /&gt;
*''' Use Case1'''&lt;br /&gt;
*Use Case Description: Create an Option to create a participant when he doesn't exist&lt;br /&gt;
*Actor: Instructor &lt;br /&gt;
*Precondition: Participant does not exist&lt;br /&gt;
*Post Condition:Gets option to create participant&lt;br /&gt;
&lt;br /&gt;
*''' Use Case2'''&lt;br /&gt;
*Use Case Description: Get an Email once a review is done with a link for the review page&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition:Reviewed team gets emails with review link. On clicking the link , it should direct to the corresponding review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case3'''&lt;br /&gt;
*Use Case Description: Get an Dead line reminder Email once a deadline to review is approaching&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition: Gets  deadline reminder in email to review a team.Email should have the link to the review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case4'''&lt;br /&gt;
*Use Case Description: Gets email notifications for reviews contradicting by a particular threshold&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Team reviews are done by at least 2 reviewers&lt;br /&gt;
*Post Condition: Instructor gets email notifications for reviews contradicting by a particular threshold along with the links the contradicting reviews.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case5'''&lt;br /&gt;
*Use Case Description: Email should be sent to the invitee with the team -join request when join request is sent.&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Invites another participant to join a team&lt;br /&gt;
*Post Condition: Email should be sent to the invitee with the team -join request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case6'''&lt;br /&gt;
*Use Case Description: All activity Emails should be sent to student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Activity is done in expertiza by team members.&lt;br /&gt;
*Post Condition: Student Should receive email on all activity on ad responses and invitations performed by other team members.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case7'''&lt;br /&gt;
*Use Case Description: 	Instructor receives an email for the suggestion request by student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Suggests a topic&lt;br /&gt;
*Post Condition: Instructor receives an email for the suggestion request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case8'''&lt;br /&gt;
*Use Case Description: 	Instructor receives a copy of email for all the mails sent to student on assignment.&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Activity done on assignment.&lt;br /&gt;
*Post Condition: Should get a copy of all emails sent to the student regarding the activities done on assignment.&lt;br /&gt;
&lt;br /&gt;
== Peer Review Information ==&lt;br /&gt;
*The CodeClimate build is failed for the files which are already present, and not for the changes made&lt;br /&gt;
* For the changes to be tested use Instructor Login: username: instructor6 password: password&lt;br /&gt;
*A self explanatory video has been uploaded for the same.&lt;br /&gt;
*Design principles are not needed as we mostly modified existing work.&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
== Files changed ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Controllers&amp;lt;/b&amp;gt;====                           &lt;br /&gt;
::* invitations_controller.rb                    &lt;br /&gt;
::* profile_controller.rb                        &lt;br /&gt;
::* suggestion_controller.rb&lt;br /&gt;
::* users_controller.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Helpers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* mailer_helper.rb&lt;br /&gt;
::* login_helper.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Mailers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* delayed_mailer.rb&lt;br /&gt;
::* mailer.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Models&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* response.rb&lt;br /&gt;
::* user.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Views&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* invite_message.html.erb&lt;br /&gt;
::* new_topic_suggested_message.html.erb&lt;br /&gt;
::* notify_grade_conflict_message.html.erb&lt;br /&gt;
::* _invitation_accepted_html.html.erb&lt;br /&gt;
::* _invitation_declined_html.html.erb&lt;br /&gt;
::* _invitation_pending_html.html.erb&lt;br /&gt;
::* _new_submission_html.html.erb&lt;br /&gt;
::* _submission_deadline_test_html.html.erb&lt;br /&gt;
::* _additional_links.html.erb&lt;br /&gt;
::* add.js.erb&lt;br /&gt;
::* _prefs.html.erb&lt;br /&gt;
====&amp;lt;b&amp;gt;Spec&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* factories.rb&lt;br /&gt;
::* user_spec.rb&lt;br /&gt;
&lt;br /&gt;
== Solutions Implemented ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Providing option to instructor to create non-existent participant&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A flash message was added when the instructor adds a non-existent user as a participant.A new link to redirect the instructor to the user creation page is also added.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:Additional_add.PNG]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Link provided to redirect user to page where review is found&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A  new link was incorporated in the email to redirect the user to the corresponding review page.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:new_submission.png]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Incorporating a link for submission deadline reminder&amp;lt;/b&amp;gt;====&lt;br /&gt;
:Tests were done for already existing functionality as deadline reminders are not being sent as per the current functionality.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:submission_Deadline.png]]&lt;br /&gt;
====Enhancing the email that the instructor receives for contradicting reviews====&lt;br /&gt;
:The email that the instructor receives for contradicting reviews was enhanced by adding the previous average score of the total reviews and the score of the new review. The readability of the email was also increased by adding bullet points wherever necessary.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:conflict1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict3.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
====Sending email to the invitee to join a team====&lt;br /&gt;
:When a particular student invites another student(s) to join a team for a particular assignment, then the invitee(s) should receive an email for the same.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controller25.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:mailer_helper.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:invite_message.png]]&lt;br /&gt;
====All activities on ad responses and invitations should be reported to the other party by e-mail====&lt;br /&gt;
:Three new partials have been created to send emails to both inviter and invitee for the responses(accept, decline, pending) of invitations to join a team&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controllers26.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:inv_acc_dec.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Emailing to the instructor when a student suggest a new topic====&lt;br /&gt;
:When a new topic is suggested by a student to the instructor , an email is sent to the instructor regarding the same for his decision to approve or decline.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:sugg_controller.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:topic_sugg.png]]&lt;br /&gt;
====Instructor should receive copy of emails being sent to the student if (s)he wishes to====&lt;br /&gt;
:Instructor can choose to receive all the emails being sent to the students to understand proper functioning of the system.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq3.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq4.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq5.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq6.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq7.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq8.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq9.png]]&lt;br /&gt;
&lt;br /&gt;
== Testing Details and TestPlan ==&lt;br /&gt;
===Testing with UI(Manual Testing)===&lt;br /&gt;
====Requirement1====&lt;br /&gt;
*If someone attempts to assign a nonexistent user as a participant in an assignment by filling out the form on the Add Participants page, (s)he should be warned that the user does not exist.  This is reasonable behaviour because the username may have been mistyped, and you wouldn't want to create a new user account due to a typo.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
Adding a non-existent user as a participant in an assignment&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active Assignment .&lt;br /&gt;
*Click on Add Participants and add any non-existent user ( any email id ).&lt;br /&gt;
*Result : It gives a flash message regarding user does not exist and gives you the link to create a new user.&lt;br /&gt;
====Requirement2====&lt;br /&gt;
* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active assignment.&lt;br /&gt;
*Add an existing user as a reviewer and another user as a participant to this assignment.&lt;br /&gt;
*Login as the reviewer and submit your review. &lt;br /&gt;
*Result: The participant must have received an email on this review submission with a link to the review submitted.&lt;br /&gt;
====Requirement3====&lt;br /&gt;
*  As there are no deadline reminders implement in expertiza currently , we were asked to verify  the Rspec test cases which are already present in delayed_mailer_spec.rb for the same . We were asked to fix if any bugs were found in that. But no bugs were found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
* Run the Rspec test cases by  following a command :&lt;br /&gt;
bundle exec rspec delayed_mailer_spec.rb&lt;br /&gt;
*Result : See the attachment for the screenshot.&lt;br /&gt;
====Requirement4====&lt;br /&gt;
*Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
*Put the links in the bulleted list that is easy to read.&lt;br /&gt;
*The mail should have the previous average score as well as the new score that is being assigned.&lt;br /&gt;
*Any other kind of improvement to increase the readability of the email is welcome&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor and create three students. &lt;br /&gt;
*Hover over Manage Tab --&amp;gt; click on Assignments --&amp;gt; choose an existing active assignment--&amp;gt;Click on Add Participants section of that assignment.&lt;br /&gt;
*Out of the three users that you have created, add two as reviewers and one as participant to that assignment.&lt;br /&gt;
*Login as the participant and submit any link as your work .&lt;br /&gt;
*After the submission deadline is over, login as each of the reviewers and submit two contradicting reviews of the same assignment. ( Say, one gives all 0s , another gives all 5s).&lt;br /&gt;
*Result : This should send an email to the instructor with the below text.&lt;br /&gt;
====Requirement5====&lt;br /&gt;
*Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor --&amp;gt; click on Assignments tab --&amp;gt; Select an existing active assignment .&lt;br /&gt;
*Add one user as a participant , login as the participant and invite a student to join the team for the assignment.&lt;br /&gt;
*Result: Email has been sent to invitee.&lt;br /&gt;
====Requirement6====&lt;br /&gt;
*The student who issued the invitation should also be e-mailed when the invitee joins the team. And also when a student responds to a teammate advertisement. In general, all activity on ad responses and invitations should be reported to the other party by e-mail (unless these e-mails are turned off in a (new) profile field).&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Continue from Requirement 5. &lt;br /&gt;
*Result : Both the inviter and the invitee should get an email as per the requirement specified above.&lt;br /&gt;
====Requirement7====&lt;br /&gt;
*Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
====Requirement8====&lt;br /&gt;
*Create an option (in the instructor’s profile) to get a copy of ‘e-mails being sent to students (this is so the instructor can verify correct functioning of the system).&lt;br /&gt;
*Modified Requirement : Implemented for one such scenario, can easily be replicated for others.&lt;br /&gt;
&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an existing instructor --&amp;gt; go to profile tab.&lt;br /&gt;
*Do not tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now. &lt;br /&gt;
*Go to Manage Users --&amp;gt; Create a student.&lt;br /&gt;
*Result 1 (negative testing) : Instructor does not receive an email.&lt;br /&gt;
&lt;br /&gt;
*1. Login as the instructor and go to the Profile tab.&lt;br /&gt;
*2. Tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now and Save.&lt;br /&gt;
*3. Perform an event. Here, &amp;quot;Create any other user (may be a Student , Reader ) and Save. While creating the user , please ensure you give an email id that you can access.&lt;br /&gt;
&lt;br /&gt;
*Result2(positive testing) : Both the created user and the instructor receives the email.&lt;br /&gt;
*Note : The instructor only receives copy of all emails happening in the system, if the check box is checked. In this case, we have just implemented for one such scenario . This can easily be replicated for the others.&lt;br /&gt;
&lt;br /&gt;
===Automated Testing Scenario(RSpec)===&lt;br /&gt;
:The test cases for the complete functionality testing are covered.&lt;br /&gt;
:There were existing test cases for the delayed_mailer.rb and the functionality is checked by running those test cases.The snapshot of running the Rspec for the deadline reminder details is given below.&lt;br /&gt;
=====Related snippet&amp;lt;br&amp;gt;[[File:rspec421.png]]=====&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
#Reviewer is receiving an email after a submission is revised.&lt;br /&gt;
##The above mentioned email should also contain the Review round after which the submission has been revised.&lt;br /&gt;
##The above mentioned email must contain a link that redirects the reviewer to the link where the review is found.&lt;br /&gt;
#Reviewer does not receive the above mentioned email if the last round of review has been completed.&lt;br /&gt;
#Deadline reminder emails should be implemented in the system for both submissions and reviews.&lt;br /&gt;
##A link should be provided in that email so that the user knows where to go to perform the needed action.&lt;br /&gt;
#'''Alternative Approach that can be implemented'''&lt;br /&gt;
##&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/expertiza/expertiza Expertiza on GitHub]&lt;br /&gt;
*[http://expertiza.ncsu.edu/ The live Expertiza website]&lt;br /&gt;
*[https://relishapp.com/rspec Rspec Documentation]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113686</id>
		<title>CSC/ECE 517 Fall 2017/E1780 OSS Project Teal Email Notification Enhancements</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113686"/>
		<updated>2017-11-20T01:37:13Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* UML Case Diagram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is for the description of changes made under E1780 OSS Project Teal Email Notification Enhancements.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== About Expertiza ==&lt;br /&gt;
&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities.&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
The following tasks were accomplished in this project:&lt;br /&gt;
:* Instructor should get an option to create a participant if (s)he does not already exist in the system.&lt;br /&gt;
:* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
:* Deadline reminders should include a link on where to go to perform the needed function.&lt;br /&gt;
:* Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
:* Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
:* All activity on ad responses and invitations should be reported to the other party by e-mail.&lt;br /&gt;
:* Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
:* Instructor should get a copy of all emails sent to the student.&lt;br /&gt;
&lt;br /&gt;
== UML Case Diagram ==&lt;br /&gt;
[[File:Drawing2.JPG]]&lt;br /&gt;
&lt;br /&gt;
The UML diagram shows the functionality that is being developed in the project.&lt;br /&gt;
*''' Use Case1'''&lt;br /&gt;
*Use Case Description: Create an Option to create a participant when he doesn't exist&lt;br /&gt;
*Actor: Instructor &lt;br /&gt;
*Precondition: Participant does not exist&lt;br /&gt;
*Post Condition:Gets option to create participant&lt;br /&gt;
&lt;br /&gt;
*''' Use Case2'''&lt;br /&gt;
*Use Case Description: Get an Email once a review is done with a link for the review page&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition:Reviewed team gets emails with review link. On clicking the link , it should direct to the corresponding review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case3'''&lt;br /&gt;
*Use Case Description: Get an Dead line reminder Email once a deadline to review is approaching&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition: Gets  deadline reminder in email to review a team.Email should have the link to the review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case4'''&lt;br /&gt;
*Use Case Description: Gets email notifications for reviews contradicting by a particular threshold&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Team reviews are done by at least 2 reviewers&lt;br /&gt;
*Post Condition: Instructor gets email notifications for reviews contradicting by a particular threshold along with the links the contradicting reviews.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case5'''&lt;br /&gt;
*Use Case Description: Email should be sent to the invitee with the team -join request when join request is sent.&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Invites another participant to join a team&lt;br /&gt;
*Post Condition: Email should be sent to the invitee with the team -join request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case6'''&lt;br /&gt;
*Use Case Description: All activity Emails should be sent to student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Activity is done in expertiza by team members.&lt;br /&gt;
*Post Condition: Student Should receive email on all activity on ad responses and invitations performed by other team members.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case7'''&lt;br /&gt;
*Use Case Description: 	Instructor receives an email for the suggestion request by student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Suggests a topic&lt;br /&gt;
*Post Condition: Instructor receives an email for the suggestion request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case8'''&lt;br /&gt;
*Use Case Description: 	Instructor receives a copy of email for all the mails sent to student on assignment.&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Activity done on assignment.&lt;br /&gt;
*Post Condition: Should get a copy of all emails sent to the student regarding the activities done on assignment.&lt;br /&gt;
&lt;br /&gt;
== Peer Review Information ==&lt;br /&gt;
*The CodeClimate build is failed for the files which are already present, and not for the changes made&lt;br /&gt;
* For the changes to be tested use Instructor Login: username: instructor6 password: password&lt;br /&gt;
*A self explanatory video has been uploaded for the same.&lt;br /&gt;
*Design principles are not needed as we mostly modified existing work.&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
== Files changed ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Controllers&amp;lt;/b&amp;gt;====                           &lt;br /&gt;
::* invitations_controller.rb                    &lt;br /&gt;
::* profile_controller.rb                        &lt;br /&gt;
::* suggestion_controller.rb&lt;br /&gt;
::* users_controller.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Helpers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* mailer_helper.rb&lt;br /&gt;
::* login_helper.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Mailers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* delayed_mailer.rb&lt;br /&gt;
::* mailer.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Models&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* response.rb&lt;br /&gt;
::* user.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Views&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* invite_message.html.erb&lt;br /&gt;
::* new_topic_suggested_message.html.erb&lt;br /&gt;
::* notify_grade_conflict_message.html.erb&lt;br /&gt;
::* _invitation_accepted_html.html.erb&lt;br /&gt;
::* _invitation_declined_html.html.erb&lt;br /&gt;
::* _invitation_pending_html.html.erb&lt;br /&gt;
::* _new_submission_html.html.erb&lt;br /&gt;
::* _submission_deadline_test_html.html.erb&lt;br /&gt;
::* _additional_links.html.erb&lt;br /&gt;
::* add.js.erb&lt;br /&gt;
::* _prefs.html.erb&lt;br /&gt;
====&amp;lt;b&amp;gt;Spec&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* factories.rb&lt;br /&gt;
::* user_spec.rb&lt;br /&gt;
&lt;br /&gt;
== Solutions Implemented ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Providing option to instructor to create non-existent participant&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A flash message was added when the instructor adds a non-existent user as a participant.A new link to redirect the instructor to the user creation page is also added.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:Additional_add.PNG]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Link provided to redirect user to page where review is found&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A  new link was incorporated in the email to redirect the user to the corresponding review page.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:new_submission.png]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Incorporating a link for submission deadline reminder&amp;lt;/b&amp;gt;====&lt;br /&gt;
:Tests were done for already existing functionality as deadline reminders are not being sent as per the current functionality.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:submission_Deadline.png]]&lt;br /&gt;
====Enhancing the email that the instructor receives for contradicting reviews====&lt;br /&gt;
:The email that the instructor receives for contradicting reviews was enhanced by adding the previous average score of the total reviews and the score of the new review. The readability of the email was also increased by adding bullet points wherever necessary.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:conflict1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict3.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
====Sending email to the invitee to join a team====&lt;br /&gt;
:When a particular student invites another student(s) to join a team for a particular assignment, then the invitee(s) should receive an email for the same.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controller25.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:mailer_helper.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:invite_message.png]]&lt;br /&gt;
====All activities on ad responses and invitations should be reported to the other party by e-mail====&lt;br /&gt;
:Three new partials have been created to send emails to both inviter and invitee for the responses(accept, decline, pending) of invitations to join a team&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controllers26.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:inv_acc_dec.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Emailing to the instructor when a student suggest a new topic====&lt;br /&gt;
:When a new topic is suggested by a student to the instructor , an email is sent to the instructor regarding the same for his decision to approve or decline.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:sugg_controller.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:topic_sugg.png]]&lt;br /&gt;
====Instructor should receive copy of emails being sent to the student if (s)he wishes to====&lt;br /&gt;
:Instructor can choose to receive all the emails being sent to the students to understand proper functioning of the system.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq3.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq4.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq5.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq6.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq7.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq8.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq9.png]]&lt;br /&gt;
&lt;br /&gt;
== Testing Details and TestPlan ==&lt;br /&gt;
===Testing with UI(Manual Testing)===&lt;br /&gt;
====Requirement1====&lt;br /&gt;
*If someone attempts to assign a nonexistent user as a participant in an assignment by filling out the form on the Add Participants page, (s)he should be warned that the user does not exist.  This is reasonable behaviour because the username may have been mistyped, and you wouldn't want to create a new user account due to a typo.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
Adding a non-existent user as a participant in an assignment&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active Assignment .&lt;br /&gt;
*Click on Add Participants and add any non-existent user ( any email id ).&lt;br /&gt;
*Result : It gives a flash message regarding user does not exist and gives you the link to create a new user.&lt;br /&gt;
====Requirement2====&lt;br /&gt;
* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active assignment.&lt;br /&gt;
*Add an existing user as a reviewer and another user as a participant to this assignment.&lt;br /&gt;
*Login as the reviewer and submit your review. &lt;br /&gt;
*Result: The participant must have received an email on this review submission with a link to the review submitted.&lt;br /&gt;
====Requirement3====&lt;br /&gt;
*  As there are no deadline reminders implement in expertiza currently , we were asked to verify  the Rspec test cases which are already present in delayed_mailer_spec.rb for the same . We were asked to fix if any bugs were found in that. But no bugs were found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
* Run the Rspec test cases by  following a command :&lt;br /&gt;
bundle exec rspec delayed_mailer_spec.rb&lt;br /&gt;
*Result : See the attachment for the screenshot.&lt;br /&gt;
====Requirement4====&lt;br /&gt;
*Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
*Put the links in the bulleted list that is easy to read.&lt;br /&gt;
*The mail should have the previous average score as well as the new score that is being assigned.&lt;br /&gt;
*Any other kind of improvement to increase the readability of the email is welcome&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor and create three students. &lt;br /&gt;
*Hover over Manage Tab --&amp;gt; click on Assignments --&amp;gt; choose an existing active assignment--&amp;gt;Click on Add Participants section of that assignment.&lt;br /&gt;
*Out of the three users that you have created, add two as reviewers and one as participant to that assignment.&lt;br /&gt;
*Login as the participant and submit any link as your work .&lt;br /&gt;
*After the submission deadline is over, login as each of the reviewers and submit two contradicting reviews of the same assignment. ( Say, one gives all 0s , another gives all 5s).&lt;br /&gt;
*Result : This should send an email to the instructor with the below text.&lt;br /&gt;
====Requirement5====&lt;br /&gt;
*Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor --&amp;gt; click on Assignments tab --&amp;gt; Select an existing active assignment .&lt;br /&gt;
*Add one user as a participant , login as the participant and invite a student to join the team for the assignment.&lt;br /&gt;
*Result: Email has been sent to invitee.&lt;br /&gt;
====Requirement6====&lt;br /&gt;
*The student who issued the invitation should also be e-mailed when the invitee joins the team. And also when a student responds to a teammate advertisement. In general, all activity on ad responses and invitations should be reported to the other party by e-mail (unless these e-mails are turned off in a (new) profile field).&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Continue from Requirement 5. &lt;br /&gt;
*Result : Both the inviter and the invitee should get an email as per the requirement specified above.&lt;br /&gt;
====Requirement7====&lt;br /&gt;
*Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
====Requirement8====&lt;br /&gt;
*Create an option (in the instructor’s profile) to get a copy of ‘e-mails being sent to students (this is so the instructor can verify correct functioning of the system).&lt;br /&gt;
*Modified Requirement : Implemented for one such scenario, can easily be replicated for others.&lt;br /&gt;
&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an existing instructor --&amp;gt; go to profile tab.&lt;br /&gt;
*Do not tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now. &lt;br /&gt;
*Go to Manage Users --&amp;gt; Create a student.&lt;br /&gt;
*Result 1 (negative testing) : Instructor does not receive an email.&lt;br /&gt;
&lt;br /&gt;
*1. Login as the instructor and go to the Profile tab.&lt;br /&gt;
*2. Tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now and Save.&lt;br /&gt;
*3. Perform an event. Here, &amp;quot;Create any other user (may be a Student , Reader ) and Save. While creating the user , please ensure you give an email id that you can access.&lt;br /&gt;
&lt;br /&gt;
*Result2(positive testing) : Both the created user and the instructor receives the email.&lt;br /&gt;
*Note : The instructor only receives copy of all emails happening in the system, if the check box is checked. In this case, we have just implemented for one such scenario . This can easily be replicated for the others.&lt;br /&gt;
&lt;br /&gt;
===Automated Testing Scenario(RSpec)===&lt;br /&gt;
:The test cases for the complete functionality testing are covered.&lt;br /&gt;
:There were existing test cases for the delayed_mailer.rb and the functionality is checked by running those test cases.The snapshot of running the Rspec for the deadline reminder details is given below.&lt;br /&gt;
=====Related snippet&amp;lt;br&amp;gt;[[File:rspec421.png]]=====&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
#Reviewer is receiving an email after a submission is revised.&lt;br /&gt;
##The above mentioned email should also contain the Review round after which the submission has been revised.&lt;br /&gt;
##The above mentioned email must contain a link that redirects the reviewer to the link where the review is found.&lt;br /&gt;
#Reviewer does not receive the above mentioned email if the last round of review has been completed.&lt;br /&gt;
#Deadline reminder emails should be implemented in the system for both submissions and reviews.&lt;br /&gt;
##A link should be provided in that email so that the user knows where to go to perform the needed action.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/expertiza/expertiza Expertiza on GitHub]&lt;br /&gt;
*[http://expertiza.ncsu.edu/ The live Expertiza website]&lt;br /&gt;
*[https://relishapp.com/rspec Rspec Documentation]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113685</id>
		<title>CSC/ECE 517 Fall 2017/E1780 OSS Project Teal Email Notification Enhancements</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113685"/>
		<updated>2017-11-20T01:34:28Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* UML Case Diagram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is for the description of changes made under E1780 OSS Project Teal Email Notification Enhancements.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== About Expertiza ==&lt;br /&gt;
&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities.&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
The following tasks were accomplished in this project:&lt;br /&gt;
:* Instructor should get an option to create a participant if (s)he does not already exist in the system.&lt;br /&gt;
:* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
:* Deadline reminders should include a link on where to go to perform the needed function.&lt;br /&gt;
:* Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
:* Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
:* All activity on ad responses and invitations should be reported to the other party by e-mail.&lt;br /&gt;
:* Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
:* Instructor should get a copy of all emails sent to the student.&lt;br /&gt;
&lt;br /&gt;
== UML Case Diagram ==&lt;br /&gt;
[[File:Drawing2.JPG]]&lt;br /&gt;
&lt;br /&gt;
The UML diagram shows the functionality that is being developed in the project.&lt;br /&gt;
*''' Use Case1'''&lt;br /&gt;
*Use Case Description: Create an Option to create a participant when he doesn't exist&lt;br /&gt;
*Actor: Instructor &lt;br /&gt;
*Precondition: Participant does not exist&lt;br /&gt;
*Post Condition:Gets option to create participant&lt;br /&gt;
&lt;br /&gt;
*''' Use Case2'''&lt;br /&gt;
*Use Case Description: Get an Email once a review is done with a link for the review page&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition:Reviewed team gets emails with review link. On clicking the link , it should direct to the corresponding review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case3'''&lt;br /&gt;
*Use Case Description: Get an Dead line reminder Email once a deadline to review is approaching&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition: Gets  deadline reminder in email to review a team.Email should have the link to the review page&lt;br /&gt;
&lt;br /&gt;
*''' Use Case4'''&lt;br /&gt;
*Use Case Description: Gets email notifications for reviews contradicting by a particular threshold&lt;br /&gt;
*Actor: Instructor&lt;br /&gt;
*Precondition: Team reviews are done by at least 2 reviewers&lt;br /&gt;
*Post Condition: Instructor gets email notifications for reviews contradicting by a particular threshold along with the links the contradicting reviews.&lt;br /&gt;
&lt;br /&gt;
*''' Use Case5'''&lt;br /&gt;
*Use Case Description: Email should be sent to the invitee with the team -join request when join request is sent.&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Invites another participant to join a team&lt;br /&gt;
*Post Condition: Email should be sent to the invitee with the team -join request&lt;br /&gt;
&lt;br /&gt;
*''' Use Case6'''&lt;br /&gt;
*Use Case Description: All activity Emails should be sent to student&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Activity is done in expertiza by team members.&lt;br /&gt;
*Post Condition: Student Should receive email on all activity on ad responses and invitations performed by other team members.&lt;br /&gt;
&lt;br /&gt;
== Peer Review Information ==&lt;br /&gt;
*The CodeClimate build is failed for the files which are already present, and not for the changes made&lt;br /&gt;
* For the changes to be tested use Instructor Login: username: instructor6 password: password&lt;br /&gt;
*A self explanatory video has been uploaded for the same.&lt;br /&gt;
*Design principles are not needed as we mostly modified existing work.&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
== Files changed ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Controllers&amp;lt;/b&amp;gt;====                           &lt;br /&gt;
::* invitations_controller.rb                    &lt;br /&gt;
::* profile_controller.rb                        &lt;br /&gt;
::* suggestion_controller.rb&lt;br /&gt;
::* users_controller.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Helpers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* mailer_helper.rb&lt;br /&gt;
::* login_helper.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Mailers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* delayed_mailer.rb&lt;br /&gt;
::* mailer.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Models&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* response.rb&lt;br /&gt;
::* user.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Views&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* invite_message.html.erb&lt;br /&gt;
::* new_topic_suggested_message.html.erb&lt;br /&gt;
::* notify_grade_conflict_message.html.erb&lt;br /&gt;
::* _invitation_accepted_html.html.erb&lt;br /&gt;
::* _invitation_declined_html.html.erb&lt;br /&gt;
::* _invitation_pending_html.html.erb&lt;br /&gt;
::* _new_submission_html.html.erb&lt;br /&gt;
::* _submission_deadline_test_html.html.erb&lt;br /&gt;
::* _additional_links.html.erb&lt;br /&gt;
::* add.js.erb&lt;br /&gt;
::* _prefs.html.erb&lt;br /&gt;
====&amp;lt;b&amp;gt;Spec&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* factories.rb&lt;br /&gt;
::* user_spec.rb&lt;br /&gt;
&lt;br /&gt;
== Solutions Implemented ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Providing option to instructor to create non-existent participant&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A flash message was added when the instructor adds a non-existent user as a participant.A new link to redirect the instructor to the user creation page is also added.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:Additional_add.PNG]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Link provided to redirect user to page where review is found&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A  new link was incorporated in the email to redirect the user to the corresponding review page.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:new_submission.png]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Incorporating a link for submission deadline reminder&amp;lt;/b&amp;gt;====&lt;br /&gt;
:Tests were done for already existing functionality as deadline reminders are not being sent as per the current functionality.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:submission_Deadline.png]]&lt;br /&gt;
====Enhancing the email that the instructor receives for contradicting reviews====&lt;br /&gt;
:The email that the instructor receives for contradicting reviews was enhanced by adding the previous average score of the total reviews and the score of the new review. The readability of the email was also increased by adding bullet points wherever necessary.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:conflict1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict3.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
====Sending email to the invitee to join a team====&lt;br /&gt;
:When a particular student invites another student(s) to join a team for a particular assignment, then the invitee(s) should receive an email for the same.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controller25.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:mailer_helper.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:invite_message.png]]&lt;br /&gt;
====All activities on ad responses and invitations should be reported to the other party by e-mail====&lt;br /&gt;
:Three new partials have been created to send emails to both inviter and invitee for the responses(accept, decline, pending) of invitations to join a team&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controllers26.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:inv_acc_dec.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Emailing to the instructor when a student suggest a new topic====&lt;br /&gt;
:When a new topic is suggested by a student to the instructor , an email is sent to the instructor regarding the same for his decision to approve or decline.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:sugg_controller.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:topic_sugg.png]]&lt;br /&gt;
====Instructor should receive copy of emails being sent to the student if (s)he wishes to====&lt;br /&gt;
:Instructor can choose to receive all the emails being sent to the students to understand proper functioning of the system.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq3.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq4.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq5.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq6.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq7.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq8.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq9.png]]&lt;br /&gt;
&lt;br /&gt;
== Testing Details and TestPlan ==&lt;br /&gt;
===Testing with UI(Manual Testing)===&lt;br /&gt;
====Requirement1====&lt;br /&gt;
*If someone attempts to assign a nonexistent user as a participant in an assignment by filling out the form on the Add Participants page, (s)he should be warned that the user does not exist.  This is reasonable behaviour because the username may have been mistyped, and you wouldn't want to create a new user account due to a typo.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
Adding a non-existent user as a participant in an assignment&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active Assignment .&lt;br /&gt;
*Click on Add Participants and add any non-existent user ( any email id ).&lt;br /&gt;
*Result : It gives a flash message regarding user does not exist and gives you the link to create a new user.&lt;br /&gt;
====Requirement2====&lt;br /&gt;
* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active assignment.&lt;br /&gt;
*Add an existing user as a reviewer and another user as a participant to this assignment.&lt;br /&gt;
*Login as the reviewer and submit your review. &lt;br /&gt;
*Result: The participant must have received an email on this review submission with a link to the review submitted.&lt;br /&gt;
====Requirement3====&lt;br /&gt;
*  As there are no deadline reminders implement in expertiza currently , we were asked to verify  the Rspec test cases which are already present in delayed_mailer_spec.rb for the same . We were asked to fix if any bugs were found in that. But no bugs were found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
* Run the Rspec test cases by  following a command :&lt;br /&gt;
bundle exec rspec delayed_mailer_spec.rb&lt;br /&gt;
*Result : See the attachment for the screenshot.&lt;br /&gt;
====Requirement4====&lt;br /&gt;
*Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
*Put the links in the bulleted list that is easy to read.&lt;br /&gt;
*The mail should have the previous average score as well as the new score that is being assigned.&lt;br /&gt;
*Any other kind of improvement to increase the readability of the email is welcome&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor and create three students. &lt;br /&gt;
*Hover over Manage Tab --&amp;gt; click on Assignments --&amp;gt; choose an existing active assignment--&amp;gt;Click on Add Participants section of that assignment.&lt;br /&gt;
*Out of the three users that you have created, add two as reviewers and one as participant to that assignment.&lt;br /&gt;
*Login as the participant and submit any link as your work .&lt;br /&gt;
*After the submission deadline is over, login as each of the reviewers and submit two contradicting reviews of the same assignment. ( Say, one gives all 0s , another gives all 5s).&lt;br /&gt;
*Result : This should send an email to the instructor with the below text.&lt;br /&gt;
====Requirement5====&lt;br /&gt;
*Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor --&amp;gt; click on Assignments tab --&amp;gt; Select an existing active assignment .&lt;br /&gt;
*Add one user as a participant , login as the participant and invite a student to join the team for the assignment.&lt;br /&gt;
*Result: Email has been sent to invitee.&lt;br /&gt;
====Requirement6====&lt;br /&gt;
*The student who issued the invitation should also be e-mailed when the invitee joins the team. And also when a student responds to a teammate advertisement. In general, all activity on ad responses and invitations should be reported to the other party by e-mail (unless these e-mails are turned off in a (new) profile field).&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Continue from Requirement 5. &lt;br /&gt;
*Result : Both the inviter and the invitee should get an email as per the requirement specified above.&lt;br /&gt;
====Requirement7====&lt;br /&gt;
*Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
====Requirement8====&lt;br /&gt;
*Create an option (in the instructor’s profile) to get a copy of ‘e-mails being sent to students (this is so the instructor can verify correct functioning of the system).&lt;br /&gt;
*Modified Requirement : Implemented for one such scenario, can easily be replicated for others.&lt;br /&gt;
&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an existing instructor --&amp;gt; go to profile tab.&lt;br /&gt;
*Do not tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now. &lt;br /&gt;
*Go to Manage Users --&amp;gt; Create a student.&lt;br /&gt;
*Result 1 (negative testing) : Instructor does not receive an email.&lt;br /&gt;
&lt;br /&gt;
*1. Login as the instructor and go to the Profile tab.&lt;br /&gt;
*2. Tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now and Save.&lt;br /&gt;
*3. Perform an event. Here, &amp;quot;Create any other user (may be a Student , Reader ) and Save. While creating the user , please ensure you give an email id that you can access.&lt;br /&gt;
&lt;br /&gt;
*Result2(positive testing) : Both the created user and the instructor receives the email.&lt;br /&gt;
*Note : The instructor only receives copy of all emails happening in the system, if the check box is checked. In this case, we have just implemented for one such scenario . This can easily be replicated for the others.&lt;br /&gt;
&lt;br /&gt;
===Automated Testing Scenario(RSpec)===&lt;br /&gt;
:The test cases for the complete functionality testing are covered.&lt;br /&gt;
:There were existing test cases for the delayed_mailer.rb and the functionality is checked by running those test cases.The snapshot of running the Rspec for the deadline reminder details is given below.&lt;br /&gt;
=====Related snippet&amp;lt;br&amp;gt;[[File:rspec421.png]]=====&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
#Reviewer is receiving an email after a submission is revised.&lt;br /&gt;
##The above mentioned email should also contain the Review round after which the submission has been revised.&lt;br /&gt;
##The above mentioned email must contain a link that redirects the reviewer to the link where the review is found.&lt;br /&gt;
#Reviewer does not receive the above mentioned email if the last round of review has been completed.&lt;br /&gt;
#Deadline reminder emails should be implemented in the system for both submissions and reviews.&lt;br /&gt;
##A link should be provided in that email so that the user knows where to go to perform the needed action.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/expertiza/expertiza Expertiza on GitHub]&lt;br /&gt;
*[http://expertiza.ncsu.edu/ The live Expertiza website]&lt;br /&gt;
*[https://relishapp.com/rspec Rspec Documentation]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113683</id>
		<title>CSC/ECE 517 Fall 2017/E1780 OSS Project Teal Email Notification Enhancements</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113683"/>
		<updated>2017-11-20T01:27:31Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* UML Case Diagram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is for the description of changes made under E1780 OSS Project Teal Email Notification Enhancements.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== About Expertiza ==&lt;br /&gt;
&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities.&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
The following tasks were accomplished in this project:&lt;br /&gt;
:* Instructor should get an option to create a participant if (s)he does not already exist in the system.&lt;br /&gt;
:* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
:* Deadline reminders should include a link on where to go to perform the needed function.&lt;br /&gt;
:* Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
:* Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
:* All activity on ad responses and invitations should be reported to the other party by e-mail.&lt;br /&gt;
:* Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
:* Instructor should get a copy of all emails sent to the student.&lt;br /&gt;
&lt;br /&gt;
== UML Case Diagram ==&lt;br /&gt;
[[File:Drawing2.JPG]]&lt;br /&gt;
&lt;br /&gt;
The UML diagram shows the functionality that is being developed in the project.&lt;br /&gt;
*''' Use Case1'''&lt;br /&gt;
*Use Case Description: Create an Option to create a participant when he doesn't exist&lt;br /&gt;
*Actor: Instructor &lt;br /&gt;
*Precondition: Participant does not exist&lt;br /&gt;
*Post Condition:Gets option to create participant&lt;br /&gt;
&lt;br /&gt;
*''' Use Case2'''&lt;br /&gt;
*Use Case Description: Get an Email once a review is done with a link for the review page&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition:Reviewed team gets emails with review link. On clicking the link , it should direct to the corresponding review page&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*''' Use Case3'''&lt;br /&gt;
*Use Case Description: Get an Dead line reminder Email once a deadline to review is approaching&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Reviews a team&lt;br /&gt;
*Post Condition: Gets  deadline reminder in email to review a team.Email should have the link to the review page&lt;br /&gt;
&lt;br /&gt;
== Peer Review Information ==&lt;br /&gt;
*The CodeClimate build is failed for the files which are already present, and not for the changes made&lt;br /&gt;
* For the changes to be tested use Instructor Login: username: instructor6 password: password&lt;br /&gt;
*A self explanatory video has been uploaded for the same.&lt;br /&gt;
*Design principles are not needed as we mostly modified existing work.&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
== Files changed ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Controllers&amp;lt;/b&amp;gt;====                           &lt;br /&gt;
::* invitations_controller.rb                    &lt;br /&gt;
::* profile_controller.rb                        &lt;br /&gt;
::* suggestion_controller.rb&lt;br /&gt;
::* users_controller.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Helpers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* mailer_helper.rb&lt;br /&gt;
::* login_helper.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Mailers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* delayed_mailer.rb&lt;br /&gt;
::* mailer.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Models&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* response.rb&lt;br /&gt;
::* user.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Views&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* invite_message.html.erb&lt;br /&gt;
::* new_topic_suggested_message.html.erb&lt;br /&gt;
::* notify_grade_conflict_message.html.erb&lt;br /&gt;
::* _invitation_accepted_html.html.erb&lt;br /&gt;
::* _invitation_declined_html.html.erb&lt;br /&gt;
::* _invitation_pending_html.html.erb&lt;br /&gt;
::* _new_submission_html.html.erb&lt;br /&gt;
::* _submission_deadline_test_html.html.erb&lt;br /&gt;
::* _additional_links.html.erb&lt;br /&gt;
::* add.js.erb&lt;br /&gt;
::* _prefs.html.erb&lt;br /&gt;
====&amp;lt;b&amp;gt;Spec&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* factories.rb&lt;br /&gt;
::* user_spec.rb&lt;br /&gt;
&lt;br /&gt;
== Solutions Implemented ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Providing option to instructor to create non-existent participant&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A flash message was added when the instructor adds a non-existent user as a participant.A new link to redirect the instructor to the user creation page is also added.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:Additional_add.PNG]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Link provided to redirect user to page where review is found&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A  new link was incorporated in the email to redirect the user to the corresponding review page.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:new_submission.png]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Incorporating a link for submission deadline reminder&amp;lt;/b&amp;gt;====&lt;br /&gt;
:Tests were done for already existing functionality as deadline reminders are not being sent as per the current functionality.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:submission_Deadline.png]]&lt;br /&gt;
====Enhancing the email that the instructor receives for contradicting reviews====&lt;br /&gt;
:The email that the instructor receives for contradicting reviews was enhanced by adding the previous average score of the total reviews and the score of the new review. The readability of the email was also increased by adding bullet points wherever necessary.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:conflict1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict3.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
====Sending email to the invitee to join a team====&lt;br /&gt;
:When a particular student invites another student(s) to join a team for a particular assignment, then the invitee(s) should receive an email for the same.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controller25.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:mailer_helper.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:invite_message.png]]&lt;br /&gt;
====All activities on ad responses and invitations should be reported to the other party by e-mail====&lt;br /&gt;
:Three new partials have been created to send emails to both inviter and invitee for the responses(accept, decline, pending) of invitations to join a team&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controllers26.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:inv_acc_dec.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Emailing to the instructor when a student suggest a new topic====&lt;br /&gt;
:When a new topic is suggested by a student to the instructor , an email is sent to the instructor regarding the same for his decision to approve or decline.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:sugg_controller.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:topic_sugg.png]]&lt;br /&gt;
====Instructor should receive copy of emails being sent to the student if (s)he wishes to====&lt;br /&gt;
:Instructor can choose to receive all the emails being sent to the students to understand proper functioning of the system.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq3.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq4.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq5.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq6.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq7.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq8.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq9.png]]&lt;br /&gt;
&lt;br /&gt;
== Testing Details and TestPlan ==&lt;br /&gt;
===Testing with UI(Manual Testing)===&lt;br /&gt;
====Requirement1====&lt;br /&gt;
*If someone attempts to assign a nonexistent user as a participant in an assignment by filling out the form on the Add Participants page, (s)he should be warned that the user does not exist.  This is reasonable behaviour because the username may have been mistyped, and you wouldn't want to create a new user account due to a typo.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
Adding a non-existent user as a participant in an assignment&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active Assignment .&lt;br /&gt;
*Click on Add Participants and add any non-existent user ( any email id ).&lt;br /&gt;
*Result : It gives a flash message regarding user does not exist and gives you the link to create a new user.&lt;br /&gt;
====Requirement2====&lt;br /&gt;
* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active assignment.&lt;br /&gt;
*Add an existing user as a reviewer and another user as a participant to this assignment.&lt;br /&gt;
*Login as the reviewer and submit your review. &lt;br /&gt;
*Result: The participant must have received an email on this review submission with a link to the review submitted.&lt;br /&gt;
====Requirement3====&lt;br /&gt;
*  As there are no deadline reminders implement in expertiza currently , we were asked to verify  the Rspec test cases which are already present in delayed_mailer_spec.rb for the same . We were asked to fix if any bugs were found in that. But no bugs were found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
* Run the Rspec test cases by  following a command :&lt;br /&gt;
bundle exec rspec delayed_mailer_spec.rb&lt;br /&gt;
*Result : See the attachment for the screenshot.&lt;br /&gt;
====Requirement4====&lt;br /&gt;
*Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
*Put the links in the bulleted list that is easy to read.&lt;br /&gt;
*The mail should have the previous average score as well as the new score that is being assigned.&lt;br /&gt;
*Any other kind of improvement to increase the readability of the email is welcome&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor and create three students. &lt;br /&gt;
*Hover over Manage Tab --&amp;gt; click on Assignments --&amp;gt; choose an existing active assignment--&amp;gt;Click on Add Participants section of that assignment.&lt;br /&gt;
*Out of the three users that you have created, add two as reviewers and one as participant to that assignment.&lt;br /&gt;
*Login as the participant and submit any link as your work .&lt;br /&gt;
*After the submission deadline is over, login as each of the reviewers and submit two contradicting reviews of the same assignment. ( Say, one gives all 0s , another gives all 5s).&lt;br /&gt;
*Result : This should send an email to the instructor with the below text.&lt;br /&gt;
====Requirement5====&lt;br /&gt;
*Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor --&amp;gt; click on Assignments tab --&amp;gt; Select an existing active assignment .&lt;br /&gt;
*Add one user as a participant , login as the participant and invite a student to join the team for the assignment.&lt;br /&gt;
*Result: Email has been sent to invitee.&lt;br /&gt;
====Requirement6====&lt;br /&gt;
*The student who issued the invitation should also be e-mailed when the invitee joins the team. And also when a student responds to a teammate advertisement. In general, all activity on ad responses and invitations should be reported to the other party by e-mail (unless these e-mails are turned off in a (new) profile field).&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Continue from Requirement 5. &lt;br /&gt;
*Result : Both the inviter and the invitee should get an email as per the requirement specified above.&lt;br /&gt;
====Requirement7====&lt;br /&gt;
*Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
====Requirement8====&lt;br /&gt;
*Create an option (in the instructor’s profile) to get a copy of ‘e-mails being sent to students (this is so the instructor can verify correct functioning of the system).&lt;br /&gt;
*Modified Requirement : Implemented for one such scenario, can easily be replicated for others.&lt;br /&gt;
&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an existing instructor --&amp;gt; go to profile tab.&lt;br /&gt;
*Do not tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now. &lt;br /&gt;
*Go to Manage Users --&amp;gt; Create a student.&lt;br /&gt;
*Result 1 (negative testing) : Instructor does not receive an email.&lt;br /&gt;
&lt;br /&gt;
*1. Login as the instructor and go to the Profile tab.&lt;br /&gt;
*2. Tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now and Save.&lt;br /&gt;
*3. Perform an event. Here, &amp;quot;Create any other user (may be a Student , Reader ) and Save. While creating the user , please ensure you give an email id that you can access.&lt;br /&gt;
&lt;br /&gt;
*Result2(positive testing) : Both the created user and the instructor receives the email.&lt;br /&gt;
*Note : The instructor only receives copy of all emails happening in the system, if the check box is checked. In this case, we have just implemented for one such scenario . This can easily be replicated for the others.&lt;br /&gt;
&lt;br /&gt;
===Automated Testing Scenario(RSpec)===&lt;br /&gt;
:The test cases for the complete functionality testing are covered.&lt;br /&gt;
:There were existing test cases for the delayed_mailer.rb and the functionality is checked by running those test cases.The snapshot of running the Rspec for the deadline reminder details is given below.&lt;br /&gt;
=====Related snippet&amp;lt;br&amp;gt;[[File:rspec421.png]]=====&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
#Reviewer is receiving an email after a submission is revised.&lt;br /&gt;
##The above mentioned email should also contain the Review round after which the submission has been revised.&lt;br /&gt;
##The above mentioned email must contain a link that redirects the reviewer to the link where the review is found.&lt;br /&gt;
#Reviewer does not receive the above mentioned email if the last round of review has been completed.&lt;br /&gt;
#Deadline reminder emails should be implemented in the system for both submissions and reviews.&lt;br /&gt;
##A link should be provided in that email so that the user knows where to go to perform the needed action.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/expertiza/expertiza Expertiza on GitHub]&lt;br /&gt;
*[http://expertiza.ncsu.edu/ The live Expertiza website]&lt;br /&gt;
*[https://relishapp.com/rspec Rspec Documentation]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113682</id>
		<title>CSC/ECE 517 Fall 2017/E1780 OSS Project Teal Email Notification Enhancements</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements&amp;diff=113682"/>
		<updated>2017-11-20T01:19:20Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* UML Case Diagram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is for the description of changes made under E1780 OSS Project Teal Email Notification Enhancements.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== About Expertiza ==&lt;br /&gt;
&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities.&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
The following tasks were accomplished in this project:&lt;br /&gt;
:* Instructor should get an option to create a participant if (s)he does not already exist in the system.&lt;br /&gt;
:* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
:* Deadline reminders should include a link on where to go to perform the needed function.&lt;br /&gt;
:* Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
:* Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
:* All activity on ad responses and invitations should be reported to the other party by e-mail.&lt;br /&gt;
:* Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
:* Instructor should get a copy of all emails sent to the student.&lt;br /&gt;
&lt;br /&gt;
== UML Case Diagram ==&lt;br /&gt;
[[File:Drawing2.JPG]]&lt;br /&gt;
&lt;br /&gt;
The UML diagram shows the functionality that is being developed in the project.&lt;br /&gt;
*''' Case1:'''&lt;br /&gt;
*Precondition: Participant does not exist&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Gets option to create participant&lt;br /&gt;
&lt;br /&gt;
== Peer Review Information ==&lt;br /&gt;
*The CodeClimate build is failed for the files which are already present, and not for the changes made&lt;br /&gt;
* For the changes to be tested use Instructor Login: username: instructor6 password: password&lt;br /&gt;
*A self explanatory video has been uploaded for the same.&lt;br /&gt;
*Design principles are not needed as we mostly modified existing work.&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
== Files changed ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Controllers&amp;lt;/b&amp;gt;====                           &lt;br /&gt;
::* invitations_controller.rb                    &lt;br /&gt;
::* profile_controller.rb                        &lt;br /&gt;
::* suggestion_controller.rb&lt;br /&gt;
::* users_controller.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Helpers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* mailer_helper.rb&lt;br /&gt;
::* login_helper.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Mailers&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* delayed_mailer.rb&lt;br /&gt;
::* mailer.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Models&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* response.rb&lt;br /&gt;
::* user.rb&lt;br /&gt;
====&amp;lt;b&amp;gt;Views&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* invite_message.html.erb&lt;br /&gt;
::* new_topic_suggested_message.html.erb&lt;br /&gt;
::* notify_grade_conflict_message.html.erb&lt;br /&gt;
::* _invitation_accepted_html.html.erb&lt;br /&gt;
::* _invitation_declined_html.html.erb&lt;br /&gt;
::* _invitation_pending_html.html.erb&lt;br /&gt;
::* _new_submission_html.html.erb&lt;br /&gt;
::* _submission_deadline_test_html.html.erb&lt;br /&gt;
::* _additional_links.html.erb&lt;br /&gt;
::* add.js.erb&lt;br /&gt;
::* _prefs.html.erb&lt;br /&gt;
====&amp;lt;b&amp;gt;Spec&amp;lt;/b&amp;gt;====&lt;br /&gt;
::* factories.rb&lt;br /&gt;
::* user_spec.rb&lt;br /&gt;
&lt;br /&gt;
== Solutions Implemented ==&lt;br /&gt;
====&amp;lt;b&amp;gt;Providing option to instructor to create non-existent participant&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A flash message was added when the instructor adds a non-existent user as a participant.A new link to redirect the instructor to the user creation page is also added.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:Additional_add.PNG]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Link provided to redirect user to page where review is found&amp;lt;/b&amp;gt;====&lt;br /&gt;
:A  new link was incorporated in the email to redirect the user to the corresponding review page.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:new_submission.png]]&lt;br /&gt;
====&amp;lt;b&amp;gt;Incorporating a link for submission deadline reminder&amp;lt;/b&amp;gt;====&lt;br /&gt;
:Tests were done for already existing functionality as deadline reminders are not being sent as per the current functionality.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:submission_Deadline.png]]&lt;br /&gt;
====Enhancing the email that the instructor receives for contradicting reviews====&lt;br /&gt;
:The email that the instructor receives for contradicting reviews was enhanced by adding the previous average score of the total reviews and the score of the new review. The readability of the email was also increased by adding bullet points wherever necessary.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:conflict1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:conflict3.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
====Sending email to the invitee to join a team====&lt;br /&gt;
:When a particular student invites another student(s) to join a team for a particular assignment, then the invitee(s) should receive an email for the same.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controller25.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:mailer_helper.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:invite_message.png]]&lt;br /&gt;
====All activities on ad responses and invitations should be reported to the other party by e-mail====&lt;br /&gt;
:Three new partials have been created to send emails to both inviter and invitee for the responses(accept, decline, pending) of invitations to join a team&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:invitation_controllers26.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:inv_acc_dec.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Emailing to the instructor when a student suggest a new topic====&lt;br /&gt;
:When a new topic is suggested by a student to the instructor , an email is sent to the instructor regarding the same for his decision to approve or decline.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:sugg_controller.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:topic_sugg.png]]&lt;br /&gt;
====Instructor should receive copy of emails being sent to the student if (s)he wishes to====&lt;br /&gt;
:Instructor can choose to receive all the emails being sent to the students to understand proper functioning of the system.&lt;br /&gt;
:&amp;lt;i&amp;gt;Related code snippet&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq1.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq2.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq3.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq4.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq5.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq6.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq7.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq8.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[File:lastreq9.png]]&lt;br /&gt;
&lt;br /&gt;
== Testing Details and TestPlan ==&lt;br /&gt;
===Testing with UI(Manual Testing)===&lt;br /&gt;
====Requirement1====&lt;br /&gt;
*If someone attempts to assign a nonexistent user as a participant in an assignment by filling out the form on the Add Participants page, (s)he should be warned that the user does not exist.  This is reasonable behaviour because the username may have been mistyped, and you wouldn't want to create a new user account due to a typo.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
Adding a non-existent user as a participant in an assignment&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active Assignment .&lt;br /&gt;
*Click on Add Participants and add any non-existent user ( any email id ).&lt;br /&gt;
*Result : It gives a flash message regarding user does not exist and gives you the link to create a new user.&lt;br /&gt;
====Requirement2====&lt;br /&gt;
* E-mails about reviews should direct the user to the page where the review is found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor.&lt;br /&gt;
*Click on an existing active assignment.&lt;br /&gt;
*Add an existing user as a reviewer and another user as a participant to this assignment.&lt;br /&gt;
*Login as the reviewer and submit your review. &lt;br /&gt;
*Result: The participant must have received an email on this review submission with a link to the review submitted.&lt;br /&gt;
====Requirement3====&lt;br /&gt;
*  As there are no deadline reminders implement in expertiza currently , we were asked to verify  the Rspec test cases which are already present in delayed_mailer_spec.rb for the same . We were asked to fix if any bugs were found in that. But no bugs were found.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
* Run the Rspec test cases by  following a command :&lt;br /&gt;
bundle exec rspec delayed_mailer_spec.rb&lt;br /&gt;
*Result : See the attachment for the screenshot.&lt;br /&gt;
====Requirement4====&lt;br /&gt;
*Instructor notifications of where reviews disagree by more than a threshold # of points should point the instructor to the reviews that disagree.&lt;br /&gt;
*Put the links in the bulleted list that is easy to read.&lt;br /&gt;
*The mail should have the previous average score as well as the new score that is being assigned.&lt;br /&gt;
*Any other kind of improvement to increase the readability of the email is welcome&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor and create three students. &lt;br /&gt;
*Hover over Manage Tab --&amp;gt; click on Assignments --&amp;gt; choose an existing active assignment--&amp;gt;Click on Add Participants section of that assignment.&lt;br /&gt;
*Out of the three users that you have created, add two as reviewers and one as participant to that assignment.&lt;br /&gt;
*Login as the participant and submit any link as your work .&lt;br /&gt;
*After the submission deadline is over, login as each of the reviewers and submit two contradicting reviews of the same assignment. ( Say, one gives all 0s , another gives all 5s).&lt;br /&gt;
*Result : This should send an email to the instructor with the below text.&lt;br /&gt;
====Requirement5====&lt;br /&gt;
*Send out an email to the invitee when a participant sends out an invitation to another participant to join a team.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor --&amp;gt; click on Assignments tab --&amp;gt; Select an existing active assignment .&lt;br /&gt;
*Add one user as a participant , login as the participant and invite a student to join the team for the assignment.&lt;br /&gt;
*Result: Email has been sent to invitee.&lt;br /&gt;
====Requirement6====&lt;br /&gt;
*The student who issued the invitation should also be e-mailed when the invitee joins the team. And also when a student responds to a teammate advertisement. In general, all activity on ad responses and invitations should be reported to the other party by e-mail (unless these e-mails are turned off in a (new) profile field).&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Continue from Requirement 5. &lt;br /&gt;
*Result : Both the inviter and the invitee should get an email as per the requirement specified above.&lt;br /&gt;
====Requirement7====&lt;br /&gt;
*Notify an instructor by e-mail when a student suggests a topic.&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
*Login as an instructor--&amp;gt; Create a user with Student role&lt;br /&gt;
*Login as a student--&amp;gt; Click on existing active Assignment .&lt;br /&gt;
*Click on suggest a topic handle and suggest any topic and save it&lt;br /&gt;
*Result : Instructor is notified when the topic is suggested.&lt;br /&gt;
====Requirement8====&lt;br /&gt;
*Create an option (in the instructor’s profile) to get a copy of ‘e-mails being sent to students (this is so the instructor can verify correct functioning of the system).&lt;br /&gt;
*Modified Requirement : Implemented for one such scenario, can easily be replicated for others.&lt;br /&gt;
&lt;br /&gt;
=====Testing Steps=====&lt;br /&gt;
*Login as an existing instructor --&amp;gt; go to profile tab.&lt;br /&gt;
*Do not tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now. &lt;br /&gt;
*Go to Manage Users --&amp;gt; Create a student.&lt;br /&gt;
*Result 1 (negative testing) : Instructor does not receive an email.&lt;br /&gt;
&lt;br /&gt;
*1. Login as the instructor and go to the Profile tab.&lt;br /&gt;
*2. Tick the check box mentioning &amp;quot;get copy of all emails&amp;quot;  now and Save.&lt;br /&gt;
*3. Perform an event. Here, &amp;quot;Create any other user (may be a Student , Reader ) and Save. While creating the user , please ensure you give an email id that you can access.&lt;br /&gt;
&lt;br /&gt;
*Result2(positive testing) : Both the created user and the instructor receives the email.&lt;br /&gt;
*Note : The instructor only receives copy of all emails happening in the system, if the check box is checked. In this case, we have just implemented for one such scenario . This can easily be replicated for the others.&lt;br /&gt;
&lt;br /&gt;
===Automated Testing Scenario(RSpec)===&lt;br /&gt;
:The test cases for the complete functionality testing are covered.&lt;br /&gt;
:There were existing test cases for the delayed_mailer.rb and the functionality is checked by running those test cases.The snapshot of running the Rspec for the deadline reminder details is given below.&lt;br /&gt;
=====Related snippet&amp;lt;br&amp;gt;[[File:rspec421.png]]=====&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
#Reviewer is receiving an email after a submission is revised.&lt;br /&gt;
##The above mentioned email should also contain the Review round after which the submission has been revised.&lt;br /&gt;
##The above mentioned email must contain a link that redirects the reviewer to the link where the review is found.&lt;br /&gt;
#Reviewer does not receive the above mentioned email if the last round of review has been completed.&lt;br /&gt;
#Deadline reminder emails should be implemented in the system for both submissions and reviews.&lt;br /&gt;
##A link should be provided in that email so that the user knows where to go to perform the needed action.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*The Project Demo Video is present at : https://drive.google.com/open?id=0B4GJ154MimyPVGxqOWhZYk1mWFE&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/expertiza/expertiza Expertiza on GitHub]&lt;br /&gt;
*[http://expertiza.ncsu.edu/ The live Expertiza website]&lt;br /&gt;
*[https://relishapp.com/rspec Rspec Documentation]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113644</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113644"/>
		<updated>2017-11-16T19:31:10Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Approach to solve the problem===&lt;br /&gt;
In this project, a timeline in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
. We will be using HighGraphs to generate the timeline.&lt;br /&gt;
We take the data necessary for each stage for the student from the database tables mentioned below and allow them to appear on the timeline with the time stamps.&lt;br /&gt;
The database tables we use for fetching the data are :&lt;br /&gt;
&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
By fetching the data from the tables necessary regarding the hyperlinks, due dates, review related information and using CSS , High Graphs we mark a timeline in the student Assignment page which would display all the data with a hyperlink to navigate to that page easily.&lt;br /&gt;
&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
&lt;br /&gt;
===Edge Cases===&lt;br /&gt;
&lt;br /&gt;
* When the student doesn't submit the assignment on time ,  due date passed would be shown in the timeline.&lt;br /&gt;
* If the hyperlink submitted by student doesnt get submitted properly, it would not show any link to hyperlink on timeline.&lt;br /&gt;
* If the review is not done before the deadline,review link doesn't appear on the timeline and alos shows that due date is passed on timeline. &lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113643</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113643"/>
		<updated>2017-11-16T19:30:03Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Approach to solve the problem===&lt;br /&gt;
In this project, a timeline in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
. We will be using HighGraphs to generate the timeline.&lt;br /&gt;
We take the data necessary for each stage for the student from the database tables mentioned below and allow them to appear on the timeline with the time stamps.&lt;br /&gt;
The database tables we use for fetching the data are :&lt;br /&gt;
&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
By fetching the data from the tables necessary regarding the hyperlinks, due dates, review related information and using CSS , High Graphs we mark a timeline in the student Assignment page which would display all the data with a hyperlink to navigate to that page easily.&lt;br /&gt;
&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
==Edge Cases==&lt;br /&gt;
&lt;br /&gt;
* When the student doesn't submit the assignment on time ,  due date passed would be shown in the timeline.&lt;br /&gt;
* If the hyperlink submitted by student doesnt get submitted properly, it would not show any link to hyperlink on timeline.&lt;br /&gt;
* If the review is not done before the deadline,review link doesn't appear on the timeline and alos shows that due date is passed on timeline. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113642</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113642"/>
		<updated>2017-11-16T19:19:02Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Approach to solve the problem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Approach to solve the problem===&lt;br /&gt;
In this project, a timeline in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
. We will be using HighGraphs to generate the timeline.&lt;br /&gt;
We take the data necessary for each stage for the student from the database tables mentioned below and allow them to appear on the timeline with the time stamps.&lt;br /&gt;
The database tables we use for fetching the data are :&lt;br /&gt;
&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
By fetching the data from the tables necessary regarding the hyperlinks, due dates, review related information and using CSS , High Graphs we mark a timeline in the student Assignment page which would display all the data with a hyperlink to navigate to that page easily.&lt;br /&gt;
&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113641</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113641"/>
		<updated>2017-11-16T19:18:03Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Approach to solve the problem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Approach to solve the problem===&lt;br /&gt;
In this project, a timeline in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
We take the data necessary for each stage for the student from the database tables mentioned below and allow them to appear on the timeline with the time stamps.&lt;br /&gt;
The database tables we use for fetching the data are :&lt;br /&gt;
&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
By fetching the data from the tables necessary regarding the hyperlinks, due dates, review related information and using CSS , High Graphs we mark a timeline in the student Assignment page which would display all the data with a hyperlink to navigate to that page easily.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113640</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113640"/>
		<updated>2017-11-16T19:15:49Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Design Analysis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Approach to solve the problem===&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
We take the data necessary for each stage for the student from the database tables mentioned below and allow them to appear on the timeline with the time stamps.&lt;br /&gt;
The data base tables we use for fetching the data are :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113639</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113639"/>
		<updated>2017-11-16T19:11:25Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Design Analysis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113638</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113638"/>
		<updated>2017-11-16T19:00:53Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113637</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113637"/>
		<updated>2017-11-16T19:00:39Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
=Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Design principles followed==&lt;br /&gt;
*Dry Principle - We are trying to reuse the existing functionalities in Expertiza, thus avoiding code duplication. Whenever possible, code modification based on the existing classes, controllers, or tables will be done instead of creating the new one.&lt;br /&gt;
*Polymorphism - We will use polymorphism to provide a single interface to entities of different types.&lt;br /&gt;
*MVC - The project is implemented in Ruby on Rails that uses MVC architecture. It separates an application’s data model, user interface, and control logic into three distinct components (model, view, and controller, respectively).&lt;br /&gt;
*CSS - As we are using CSS to design timeline we follow proper CSS standards to develop the project.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113636</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113636"/>
		<updated>2017-11-16T18:38:58Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
== Background of the Project==&lt;br /&gt;
&lt;br /&gt;
Through Expertiza students can currently submit their work, review others work, give author feedback , see the deadlines for an assignment. But there is no place that shows the time that a student is submitting an assignment/ work. Every time student wants to check a due date or stage deadline for an assignment, he has to go to that particular page to see it. There is a chance that student might forget to submit for that particular time. So, in order to make it easier for the student, it would be great to implement a timeline that shos deadlines, submitted works etc., with timestamps at one place.&lt;br /&gt;
 &lt;br /&gt;
=Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113624</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113624"/>
		<updated>2017-11-15T23:07:53Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a '''timeline''', which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
''This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.''&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113623</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113623"/>
		<updated>2017-11-15T23:07:16Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments. Student can view assignments, check the due dates of an assignment, submit an assignment, do peer review, suggest topics, give author feedback and many more in Expertiza.&lt;br /&gt;
&lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113622</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113622"/>
		<updated>2017-11-15T23:05:05Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza also sends automated emails to the instructor, reviewers and participants for most of the above mentioned activities. It also allows students to be active on it for completing the assignments and submitting the assignments.&lt;br /&gt;
&lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113618</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113618"/>
		<updated>2017-11-15T23:03:16Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Expertiza==&lt;br /&gt;
&lt;br /&gt;
==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113617</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113617"/>
		<updated>2017-11-15T23:02:37Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Objective */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
To Develop a Timeline to have timestamps for all the submissions made, the files uploaded, due dates etc., for the student to ahve easy access tpo them. Student should be able to navigate to that page through the link provided in timeline.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113093</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113093"/>
		<updated>2017-11-13T20:34:10Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Databases Involved==&lt;br /&gt;
*Review Mappings Table&lt;br /&gt;
*Response Table&lt;br /&gt;
*Due Dates Table&lt;br /&gt;
*Teams Table is used to get data about Files and Hyperlinks submitted&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113089</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113089"/>
		<updated>2017-11-13T20:30:23Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
Though the instructor can see the submission records of students currently as a table for each assignment, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
This project was earlier rejected as the timeline had to be scrolled to be viewed completely. So, in this project we intend to develop a timeline omitting the need to scroll and being concise.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113087</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113087"/>
		<updated>2017-11-13T20:27:45Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* TDD */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
'''student_submission_timestamps_spec.rb''' would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113086</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113086"/>
		<updated>2017-11-13T20:27:13Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* UI Testing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
student_submission_timestamps_spec.rb would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
&lt;br /&gt;
*'''Step1''' : Login to Expertiza as Student&lt;br /&gt;
*'''Step2''' : Click the Assignments Tab&lt;br /&gt;
*'''Step3''' : Select an Assignment of choice&lt;br /&gt;
*'''Step4''' : Select 'Your Work' Link  and the Timeline would be displayed&lt;br /&gt;
*'''Step5''' : Submit a hyperlink in 'Your Work'&lt;br /&gt;
*'''Step6''' : The hyperlink submitted would be refelcted in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step7''' : Click on the hyperlink displayed which would redirect to the submitted link page.&lt;br /&gt;
*'''Step8''' : Upload a File in 'Your Work'&lt;br /&gt;
*'''Step9''' : The uploaded filename would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step10''' : The displayed file could be downloaded and viewed by the student when clicked on the filename.&lt;br /&gt;
*'''Step11''' : Submit a review &lt;br /&gt;
*'''Step12''' : The submitted review link would be reflected in the Timeline along with the Timestamp and Round number&lt;br /&gt;
*'''Step13''' : Click on the review link displayed to be redirected to the submitted review link page.&lt;br /&gt;
*'''Step14''' : Submit an author feedback &lt;br /&gt;
*'''Step15''' : The submitted feedback link would be reflected in the Timeline along with the Timestamp&lt;br /&gt;
*'''Step16''' : Click on the feedback link displayed to be redirected to the submitted feedback link page.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113077</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113077"/>
		<updated>2017-11-13T20:16:53Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
*Use case id:2&lt;br /&gt;
*Use case description: View due dates only when no submissions have been made&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
*Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
*Use case id:3&lt;br /&gt;
*Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
*Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
*Use case id:4&lt;br /&gt;
*Use case description: View file name with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
*Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
*Use case id:5&lt;br /&gt;
*Use case description: View review links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
*Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
*Use case id:6&lt;br /&gt;
*Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
*Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
student_submission_timestamps_spec.rb would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
The time line added should show the deadlines and the recently made changes to the project by reviewer or the author. It should also navigate author to the page he wants through the preview link provided for each stage in timeline.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113076</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=113076"/>
		<updated>2017-11-13T20:15:34Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Use Case Diagram==&lt;br /&gt;
&lt;br /&gt;
[[File:UML_timeline1.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Viewing the timeline'''&lt;br /&gt;
*Use case id:1&lt;br /&gt;
*Use case description: View timeline in 'Your work' page of selected assignment&lt;br /&gt;
*Actor: Student&lt;br /&gt;
*Precondition: Student should be logged into Expertiza&lt;br /&gt;
*Post condition: Student can view the due dates and timestamps of the activities, if any.&lt;br /&gt;
&lt;br /&gt;
'''2. Viewing the due dates'''&lt;br /&gt;
Use case id:2&lt;br /&gt;
Use case description: View due dates only when no submissions have been made&lt;br /&gt;
Actor: Student&lt;br /&gt;
Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment&lt;br /&gt;
Post condition: Student will view only dues dates in timeline when no submissions are made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Viewing hyperlink submissions in timeline'''&lt;br /&gt;
Use case id:3&lt;br /&gt;
Use case description: View hyperlink with timestamp upon submission&lt;br /&gt;
Actor: Student&lt;br /&gt;
Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have made a hyperlink submission&lt;br /&gt;
Post condition: Student will view hyperlink of the submitted link with timestamp in timeline &lt;br /&gt;
&lt;br /&gt;
'''4. Viewing files uploaded in timeline'''&lt;br /&gt;
Use case id:4&lt;br /&gt;
Use case description: View file name with timestamp upon submission&lt;br /&gt;
Actor: Student&lt;br /&gt;
Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a file&lt;br /&gt;
Post condition: Student will view file name with timestamp in timeline and would be able to download the file upon clicking on filename.&lt;br /&gt;
&lt;br /&gt;
'''5. Viewing links to submitted reviews with round number'''&lt;br /&gt;
Use case id:5&lt;br /&gt;
Use case description: View review links with timestamp upon submission&lt;br /&gt;
Actor: Student&lt;br /&gt;
Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted a review&lt;br /&gt;
Post condition: Student will view review link with timestamp and round number in timeline and would be redirected to the review submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
'''6. Viewing links to author feedback'''&lt;br /&gt;
Use case id:6&lt;br /&gt;
Use case description: View author feedback links with timestamp upon submission&lt;br /&gt;
Actor: Student&lt;br /&gt;
Precondition: Student should be logged into Expertiza, should be in 'Your work' page of selected assignment, should have submitted an author feedback&lt;br /&gt;
Post condition: Student will view author feedback link with timestamp in timeline and would be redirected to the author feedback submission upon clicking on the link.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
student_submission_timestamps_spec.rb would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
The time line added should show the deadlines and the recently made changes to the project by reviewer or the author. It should also navigate author to the page he wants through the preview link provided for each stage in timeline.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112818</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112818"/>
		<updated>2017-11-10T16:02:55Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* TDD */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
student_submission_timestamps_spec.rb would be created and the tests are run.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
The time line added should show the deadlines and the recently made changes to the project by reviewer or the author. It should also navigate author to the page he wants through the preview link provided for each stage in timeline.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112817</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112817"/>
		<updated>2017-11-10T14:59:25Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* UI Testing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;br /&gt;
The time line added should show the deadlines and the recently made changes to the project by reviewer or the author. It should also navigate author to the page he wants through the preview link provided for each stage in timeline.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112816</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112816"/>
		<updated>2017-11-10T14:58:02Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* TDD */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
Test cases for the functioning of the timeline would be added before development and would be implemented in the project to make tests pass.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112815</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112815"/>
		<updated>2017-11-10T14:52:45Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Design Analysis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed). We will be using HighGraphs to generate the timeline.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017&amp;diff=112407</id>
		<title>CSC/ECE 517 Fall 2017</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017&amp;diff=112407"/>
		<updated>2017-11-07T21:56:36Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Design Project Documentation'''&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A2 Lightweight Badging System]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A8. Use a profiler to identify the problems / pages that take some time to load &amp;amp; fix them]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1793. Help students find teams to join]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A4 Allow calibration to be part of an assignment]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A0 Team-based reviewing]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1793. Help students find teams to join_Team1964]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1791. Track the time that students look at the other submissions - logging improvement]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1799 Improve self-review Link peer review &amp;amp; self-review to derive grades]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E17A1|CSC/ECE_517_Fall_2017/E17A1 - Let experts as well as students do reviews]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1753_OffscreenCanvas]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/M1754_Mutation_Testing]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1794. Student-generated questions added to rubric]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A6. Fix account creation over web to work reasonably]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1792 OSS Visualizations for instructors]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A4 Allow calibration to be part of an assignment_Team34]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A7_Allow_Reviewers_to_bid_on_what_to_review]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Writing Assignment 2'''&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1779. Fix teammate advertisements and requests to join a team]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1773 Investigate and Fix Expertiza Production Version Runtime Exceptions.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1774 Metareview fixes and improvements.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1788 OSS project Maroon Heatmap fixes]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1781 Topic Management]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1745_Refactor_response_controller.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1752 Refactor assignments controller]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1776_Enhance_Imports]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1756 TLD Refactor response.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1772_Refactor reputation_web_service_controller.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1753_OffscreenCanvas API]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1754_Mutation Testing on Servo]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1753 OSS project bidding tests]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1766_Test team functionality]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1767 Improve imports]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1786_OSS project Juniper Bookmark Enhancements]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1787_OSS project Bronze Score calculations]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1763 Fix Staggered-Deadline Assignments]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1757 Introduce a Student View for instructors]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1769_Refactor assignment_form.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1754_Feature_test_of_rubric_advice]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1782 OSS Project Red Assignment Directories]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1748 Add past-due assignments to task list]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1761 Test First Development Refactor assignment.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1762 Test various kinds of response-map hierarchies]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1759 ]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1749_Test First Development Refactor questionnaire_controller.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1777 Coherent specification of review requirements.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1771_Refactor_team.rb]]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A7_Allow_Reviewers_to_bid_on_what_to_review&amp;diff=112406</id>
		<title>CSC/ECE 517 Fall 2017/E17A7 Allow Reviewers to bid on what to review</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E17A7_Allow_Reviewers_to_bid_on_what_to_review&amp;diff=112406"/>
		<updated>2017-11-07T21:55:28Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: Created page with &amp;quot;==Page== New page&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Page==&lt;br /&gt;
New page&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017&amp;diff=112405</id>
		<title>CSC/ECE 517 Fall 2017</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017&amp;diff=112405"/>
		<updated>2017-11-07T21:54:37Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Design Project Documentation'''&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A2 Lightweight Badging System]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A8. Use a profiler to identify the problems / pages that take some time to load &amp;amp; fix them]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1793. Help students find teams to join]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A4 Allow calibration to be part of an assignment]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A0 Team-based reviewing]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1793. Help students find teams to join_Team1964]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1791. Track the time that students look at the other submissions - logging improvement]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1799 Improve self-review Link peer review &amp;amp; self-review to derive grades]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E17A1|CSC/ECE_517_Fall_2017/E17A1 - Let experts as well as students do reviews]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1753_OffscreenCanvas]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/M1754_Mutation_Testing]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1794. Student-generated questions added to rubric]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A6. Fix account creation over web to work reasonably]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1792 OSS Visualizations for instructors]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A4 Allow calibration to be part of an assignment_Team34]]&lt;br /&gt;
&lt;br /&gt;
'''Writing Assignment 2'''&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1779. Fix teammate advertisements and requests to join a team]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1773 Investigate and Fix Expertiza Production Version Runtime Exceptions.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1774 Metareview fixes and improvements.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1788 OSS project Maroon Heatmap fixes]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1781 Topic Management]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1745_Refactor_response_controller.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1752 Refactor assignments controller]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1776_Enhance_Imports]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1756 TLD Refactor response.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1772_Refactor reputation_web_service_controller.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1753_OffscreenCanvas API]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1754_Mutation Testing on Servo]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1753 OSS project bidding tests]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1766_Test team functionality]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1767 Improve imports]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1786_OSS project Juniper Bookmark Enhancements]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1787_OSS project Bronze Score calculations]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1763 Fix Staggered-Deadline Assignments]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1757 Introduce a Student View for instructors]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1769_Refactor assignment_form.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1754_Feature_test_of_rubric_advice]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1782 OSS Project Red Assignment Directories]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1748 Add past-due assignments to task list]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1761 Test First Development Refactor assignment.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1762 Test various kinds of response-map hierarchies]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1759 ]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1749_Test First Development Refactor questionnaire_controller.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1777 Coherent specification of review requirements.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1771_Refactor_team.rb]]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017&amp;diff=112404</id>
		<title>CSC/ECE 517 Fall 2017</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017&amp;diff=112404"/>
		<updated>2017-11-07T21:53:42Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Design Project Documentation'''&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A2 Lightweight Badging System]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A8. Use a profiler to identify the problems / pages that take some time to load &amp;amp; fix them]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1793. Help students find teams to join]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A4 Allow calibration to be part of an assignment]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A0 Team-based reviewing]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1793. Help students find teams to join_Team1964]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1791. Track the time that students look at the other submissions - logging improvement]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1799 Improve self-review Link peer review &amp;amp; self-review to derive grades]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E17A1|CSC/ECE_517_Fall_2017/E17A1 - Let experts as well as students do reviews]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1753_OffscreenCanvas]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/M1754_Mutation_Testing]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1794. Student-generated questions added to rubric]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A6. Fix account creation over web to work reasonably]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1792 OSS Visualizations for instructors]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A4 Allow calibration to be part of an assignment_Team34]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E17A7 Allow reviewers to bid on what to review]]&lt;br /&gt;
'''Writing Assignment 2'''&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1779. Fix teammate advertisements and requests to join a team]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1773 Investigate and Fix Expertiza Production Version Runtime Exceptions.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1774 Metareview fixes and improvements.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1788 OSS project Maroon Heatmap fixes]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1781 Topic Management]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1745_Refactor_response_controller.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1752 Refactor assignments controller]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1776_Enhance_Imports]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1756 TLD Refactor response.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1772_Refactor reputation_web_service_controller.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1753_OffscreenCanvas API]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/M1754_Mutation Testing on Servo]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1753 OSS project bidding tests]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1766_Test team functionality]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1767 Improve imports]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1786_OSS project Juniper Bookmark Enhancements]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1787_OSS project Bronze Score calculations]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1763 Fix Staggered-Deadline Assignments]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1757 Introduce a Student View for instructors]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1769_Refactor assignment_form.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1754_Feature_test_of_rubric_advice]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1782 OSS Project Red Assignment Directories]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1748 Add past-due assignments to task list]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1761 Test First Development Refactor assignment.rb]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1780_OSS_Project_Teal_Email_Notification_Enhancements]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1762 Test various kinds of response-map hierarchies]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1759 ]]&lt;br /&gt;
*[[CSC/ECE_517_Fall_2017/E1749_Test First Development Refactor questionnaire_controller.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1777 Coherent specification of review requirements.rb]]&lt;br /&gt;
*[[CSC/ECE 517 Fall 2017/E1771_Refactor_team.rb]]&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112076</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112076"/>
		<updated>2017-11-07T00:11:34Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112075</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112075"/>
		<updated>2017-11-07T00:11:13Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112074</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112074"/>
		<updated>2017-11-07T00:10:21Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.(Actual visualization of the page might differ from the static page displayed)&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112072</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112072"/>
		<updated>2017-11-07T00:06:54Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page_after_edit.png]]&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112053</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112053"/>
		<updated>2017-11-06T23:15:28Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statemen==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112052</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112052"/>
		<updated>2017-11-06T23:14:45Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Objective===&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
===Design Analysis===&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
===Files involved===&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Test Plan===&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112051</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112051"/>
		<updated>2017-11-06T23:14:07Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Test Plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Test Plan===&lt;br /&gt;
====TDD====&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112050</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112050"/>
		<updated>2017-11-06T23:13:44Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: /* Test Plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
===TDD===&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;br /&gt;
&lt;br /&gt;
===UI Testing===&lt;br /&gt;
The newly added functionality would be tested manually by the UI testing.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112049</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112049"/>
		<updated>2017-11-06T23:12:57Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
===TDD===&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112047</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112047"/>
		<updated>2017-11-06T23:11:50Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
==Files involved==&lt;br /&gt;
&lt;br /&gt;
*app/controllers/submission_records_controller.rb&lt;br /&gt;
*app/models/submission_record.rb&lt;br /&gt;
*app/views/student_task/list.html.erb&lt;br /&gt;
*The database tables involved for the work is review mappings table, response table, due dates table&lt;br /&gt;
*Due Dates will be taken from Due Dates table which has topic Id and assignment Id&lt;br /&gt;
*Review Mapping table will be used for the review ID&lt;br /&gt;
*Files and the Hyperlinks submitted will be taken from teams table&lt;br /&gt;
*New Reviews will be looked in from Response table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;br /&gt;
For testing the new functionality TDD approach will be followed.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112044</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112044"/>
		<updated>2017-11-06T23:02:25Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Login → Assignments → Choose a particular Assignment&lt;br /&gt;
&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline as shown below.&lt;br /&gt;
&lt;br /&gt;
==Test Plan==&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112041</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112041"/>
		<updated>2017-11-06T22:58:44Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Assignments → Choose a particular Assignment&lt;br /&gt;
[[File:Login_page.png]]&lt;br /&gt;
[[File:Student_page.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112038</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112038"/>
		<updated>2017-11-06T22:57:50Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Assignments → Choose a particular Assignment&lt;br /&gt;
[[File:Student_Task.png]]&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;br /&gt;
After the addition of the functionality, the student task list page would have the timeline&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112037</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112037"/>
		<updated>2017-11-06T22:46:34Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Assignments → Choose a particular Assignment&lt;br /&gt;
[[File:Student_Task.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112036</id>
		<title>CSC/ECE 517 Fall 2017/E1797 Timestamps for students submissions</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2017/E1797_Timestamps_for_students_submissions&amp;diff=112036"/>
		<updated>2017-11-06T22:46:06Z</updated>

		<summary type="html">&lt;p&gt;Nsompal: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Objective==&lt;br /&gt;
To develop a feature for Expertiza to visualize the timeline using student submission timestamps, thereby enabling the student to navigate to the submissions records easily.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The instructor can see the submission records of students currently as a table for each assignment. But, student can't see the timestamps of submissions and deadlines of the assignment easily. In this project student should be able to visualize the submission records as a timeline, which includes &lt;br /&gt;
*Timestamps of hyperlink submission records&lt;br /&gt;
*Timestamps of file upload record&lt;br /&gt;
*Due Dates&lt;br /&gt;
*Peer review link with round number and timestamps&lt;br /&gt;
*Author feedback to other’s review link with feedback hyperlink, timestamps&lt;br /&gt;
This project proposes a solution to include the timeline with all the hyperlinks necessary.&lt;br /&gt;
&lt;br /&gt;
==Design Analysis==&lt;br /&gt;
Currently when a student logs into Expertiza, he could see the student task list page. He could access them by following the path &lt;br /&gt;
&lt;br /&gt;
*Assignments → Choose a particular Assignment&lt;br /&gt;
[[File:Student_task.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this project a time line in the student task list page would be added to navigate student to the due dates and the necessary links easily and keep a track of them.&lt;/div&gt;</summary>
		<author><name>Nsompal</name></author>
	</entry>
</feed>