Skip to content

Contribution Document (Rubric)

Francesca Marini edited this page Dec 26, 2021 · 1 revision

Application Features

Here is a list of the rubric items for this project with information on individual contributions (this can also be seen / reflected in the Project Kanban Board).

Only the requirements that were fulfilled are included here.

Demo Sections

Basic Checks

  1. Can register and login successfully (Francesca/Sardar)
  2. Account lockout if too many unsuccessful login attempts (Francesca/Sardar)
  3. Profile view has at least username, when they registered, and avatar/profile pic (Francesca/Sardar)
  4. Users should be able to change password and deactivate account (Francesca/Sardar)
  5. Users should be able to create public and private groups (Francesca/Sardar)
  6. Group admins should be able to promote and demote other admins, except the creator (Francesca/Sardar)
  7. Users can request to join a public group and get notified whether or not they were accepted (Francesca/Sardar)
  8. Users in a private group can invite other users to join their group, and admins need to approve them before they can join (Francesca/Sardar)
  9. Users should be able to leave a group (Francesca/Sardar)
  10. Users should be able to filter public groups by tag (Francesca/Sardar)
  11. Users should be able to make posts with audio, video, or image attachments within groups they’re in, and see all posts in a group (Francesca/Sardar)
  12. Users should be able to flag posts and admins should be able to go through and delete flagged posts (Francesca/Sardar)
  13. Users should be able to delete their own posts (Francesca/Sardar)
  14. Users should be able to see a list of public groups (Francesca/Sardar)
  15. Can comment on a post and see other comments (Francesca/Sardar)
  16. Can edit or delete a comment (Francesca/Sardar)
  17. Can hide other user’s posts (Francesca/Sardar)
  18. Can send asynchronous text message (Francesca/Sardar)
  19. Can send asynchronous audio message - audio plays within the app (Francesca/Sardar)
  20. Can send asynchronous picture message - picture displays within the app (Francesca/Sardar)
  21. Can send asynchronous video message - video displays within the app (Francesca/Sardar)

Intermediate Checks

  1. Several ways of sorting groups (Francesca/Sardar)
  2. Has group suggestion feature (Francesca/Sardar)
  3. Has analytics for posts (Francesca/Sardar)
  4. Has analytics for groups (Francesca/Sardar)
  5. Fully responsive (Francesca/Sardar)

Functional Testing

  1. Tests for login (Jiyu)
  2. Tests for registration (Jiyu)

Project Management Checks

  1. Has failed no more than 3 sprints (All)
  2. Has API documented on Swagger (Shu/Jiyu)

Wiki/Documentation Checks

  1. Has wireframes (All)
  2. Has one prototype (All)
  3. React component description (Francesca)
  4. Has ER diagram (Francesca)
  5. ER diagram has accompanying Relational schema or NoSQL schema (Francesca)
  6. Has description of CRUD operation functions (controller functions) (Francesca)

Security Checks

  1. Description of access control (Francesca/Sardar)
  2. Description of input validation (Francesca/Sardar)
  3. Description of account lockout policy (Francesca/Sardar)
  4. Description of user tokens/cookies (Francesca/Sardar)
  5. Using .env files (no secure information like API keys on Github) (All)

Travis Testing

  1. Unit tests (backend) code coverage is at least 60% (Shu)
  2. Integration tests (controller/database) code coverage is at least 60% (Shu)
  3. API tests (routes) code coverage is at least 60% (Shu)
  4. If the sum of any combination of code coverages is at least 200% you automatically pass this section (Shu)
Clone this wiki locally