CSC/ECE 517 Spring 2022 - E2246: Email your authors/reviewers, with complete tests

From Expertiza_Wiki
Revision as of 21:33, 4 April 2022 by Sdamulu (talk | contribs)
Jump to navigation Jump to search

Introduction

Expertiza Background

Expertiza is a web application where students can submit and peer-review learning objects (articles, codes, websites, etc). Instructors add and grade the assignments submitted by students to Expertiza. Students can be assigned in teams based on their selection of the topics. It has functionalities such as peer reviews in which students can provide feedback on other's work which helps peer in better developing the project. It is supported by the National Science Foundation.

Problem Statement

This project adds a new feature which will enable a reviewer to send an Email to authors from inside Expertiza or for the author to email all those reviewing them. Often when reviewing another team’s submissions, a reviewer might notice that their deployment link is broken or there is some other issue. Currently, there is no way to email the authors. This features is proposed to solve this issue.

Scope of the Feature

- The feature allows authors to send a common Email to all the reviewers to report any issues or updates to their project to be reviewed.
- It can allow a reviewer to send an email to a particular author if the reviewer wants to convey any issues found with that particular project.
- Reviewers will be anonymous to authors.

Proposed Changes

As depicted below, Authors will be given a link on their main Assignment page “Send Email to Reviewers” which will take them to a new page where they are given a text box for typing and sending an email to all their reviewers.





Reviewers will be given a similar text box link on their “Other’s Work” page next to each review that they are doing.





Flowchart

The flow for authors to email reviewers regarding the work they have reviewed is as below:


The flow for reviewers to email authors whose work they have reviewed:



Testing

Since this is a new Feature, Rspec test cases will be added for all the new methods introduced in the MailHelper class method.


Manual Testing

Design Pattern

A design pattern is a general repeatable solution to a commonly occurring problem in software design. It is a description or template for how to solve a problem that can be used in many different situations.

We will be implementing the decorator design pattern in our code. The decorator pattern is used to add/extend existing functionality without modifying the existing code. Our code is also going to follow the open-closed principle.

Team Members

Ashritha Bommagani (abommag@ncsu.edu)

Abhishek (aaupadhy@ncsu.edu)

Harini Bharata (hbharat@ncsu.edu)

Sri Pallavi Damuluri (sdamulu@ncsu.edu)