CSC/ECE 517 Spring 2017/oss E1712
Introduction
This project is part of an educational web application called Expertiza. Expertiza is an open source project managed by the faculty and students of NCSU.
Expertiza offers a platform for assignments and allows learning through peer reviews.
Description of project:
The project involves refactoring of "join_team_requests_controller.rb" and "invitations_controller.rb". The complexity of the methods is reduced and redundant code is removed. Comments are added to make the controllers easier to understand.
Invitations controller handles the functions required to send invitations out to potential teammates for a project.
JoinTeamRequests controller deals with the actions to be performed after a student comes across an advertisement to join a project team.
Tasks Identified
InvitationController
- Rename to invitations_controller.rb, in accordance with current naming convention.
- The ABC size for create method is too high and needs to be refactored along with removal of other nested if's in some methods
- Use find_by instead of find_by_name and find_by_user_id_and_assignment_id.
- Add comments explaining what each method does, and comments on how important variables are used
JoinTeamRequestsController
- Add comments on why some important variables are used.
- The ABC size for create method is too high and other 'nested-if's are refactored.
- Duplicacy in code is to be removed.
- Fix UI to maintain consistency in displaying information about team members.
Feature tests for theses controllers have to be updated.
Unit Test Scenarios
Decline: Assert the change of status to 'D' in the database
Cancel
Create function
Running project remotely
VCL is used to host the project remotely. The login credentials as an instructor are "instructor6" with password "password".