-
Notifications
You must be signed in to change notification settings - Fork 0
Requirements Document
Please click on the following link to navigate to the Requirements PDF:
https://github.com/McGill-ECSE321-Winter2019/ecse321-group-project-12/blob/master/Requirements.pdf
Five Main Functional requirements (along with individual use case detailing):
Use case: Login to MyCo-Op (Ishraq Hossain 260720764) REQ1: MyCo-Op shall allow the Employer to login to the system in less than 2 seconds.
Associated user story: As an Employer I want to be able to login to MyCo-Op to interact with the relevant functions of the system.
Ø Acceptance criteria:
- The employer cannot login to MyCo-Op without credentials supplied by the co-op administrator.
- The employer cannot input the wrong password more than 5 times.
Use Case Specification:
Identifier: Email, Password,.
Actors: Employer, Co-op Administrator, MyCo-Op
Intention: The intention of the Employer is to login to MyCo-Op to use the system.
Precondition: Employer has received new credentials from co-op administrator; Employer has existing credentials from past co-op opportunities;
Main Scenario:
- Employer writes his email as an input
- Employer writes the correct password associated with the email account
- Employer clicks “Login” button.
- MyCo-Op checks the database to cross reference with an existing email and password
- MyCo-Op validates the employers credentials
- MyCo-Op redirects employer to the Employer home page.
Alternatives: 2a. Employer writes either wrong email and a wrong password as an input for the first time
2a.2 MyCo-Op checks the database to cross reference with an existing email and password
2a.3 MyCo presents an error message to Employer saying “This email is not associated with any account” if the email doesn’t match any email on the database
2a.1 MyCo-Op stores the email for reference and presents an error message to Employer saying “password. Try Again” if the password is incorrect
2b. Employer writes either wrong email and a wrong password as an input for the second time
2b.2 MyCo-Op checks the database to cross reference with an existing email and password
2b.3 MyCo presents an error message to Employer saying “This email is not associated with any account” if the email doesn’t match any email on the database
2b.1 MyCo-Op stores the email for reference and presents an error message to Employer saying “password. Try Again” if the password is incorrect
2c. Employer writes either wrong email and a wrong password as an input for the third time
2c.2 MyCo-Op checks the database to cross reference with an existing email and password
2c.3 MyCo presents an error message to Employer saying “This email is not associated with any account” if the email doesn’t match any email on the database
2c.1 MyCo-Op stores the email for reference and presents an error message to Employer saying “password. Try Again” if the password is incorrect
2d. Employer writes either wrong email and a wrong password as an input for the fourth time
2d.2 MyCo-Op checks the database to cross reference with an existing email and password 2d.3 MyCo presents an error message to Employer saying “This email is not associated with any account” if the email doesn’t match any email on the database
2d.1 MyCo-Op stores the email for reference and presents an error message to Employer saying “password. Try Again” if the password is incorrect
2e. Employer writes either wrong email and a wrong password as an input for the fifth time
2e.1 MyCo-Op checks the database to cross reference with an existing email and password
2e.2 MyCo-Op presents an error message to Employer saying “This email is not associated with any account”
2e.2 MyCo-Op suspends the account if the email exists.
2e.3 MyCo-Op presents an error message to Employer saying “Account Suspended. Please Contact Co-op Administrator”
2e.4 MyCo-Op presents a link to email the Co-Op Administrator.
PostCondition: MyCo-Op allows the employer to login given the input credentials match the credentials in the database
Use case: Uploading documents and posting to MyCo-Op (Gorkem Yalcinoz 260710053) REQ2: MyCo-Op shall allow the Employer to upload more than one job description, job appli-cation form and post them in less than 3 minutes. Associated user story: As an Employer I want to be able to upload more than one document and post them so that I save time looking for students rather than struggling with uploading. Ø Acceptance criteria:
- The employer cannot perform uploading documents and posting to MyCo-Op without logging in.
- The document should not exceed 50 MB.
- The Employer should check the box to indicate that he scanned the file for viruses.
- The document name cannot exceed 100 characters.
- The title of the post cannot exceed 200 characters.
- The description of the post cannot exceed 8000 characters. Use Case Specification: Identifier: Upload documents & Post to MyCo-Op Actors: Employer, MyCo-Op Intention: The intention of the Employer is to upload documents and then post it to MyCo-Op Precondition: Employer has access to MyCo-Op; Employer has an account in the system; Employer is already logged in. Main Scenario:
- Employer clicks upload button
- Employer selects the file he wants to upload from the pop-up window.
- Employer checks the box “I have scanned the file for viruses.”
- Employer clicks “Submit” button.
- MyCo-Op validates input and updates the database then presents a confirmation message to Employer.
- Employer selects the uploaded file and clicks “Post” button.
- MyCo-Op redirects employer to “New Post” page. 8 Employer writes a title in the “Title” field.
- Employer writes a description in the “Description” field.
- Employer clicks “Submit” button.
- MyCo-Op validates input and updates the database and presents a message indicating that the post is successful. Alternatives: 2a. Employer selects a file that exceeds 50 MB. 2a.1 MyCo-Op presents an error message to Employer, use case continues at step 1. 2b.1 Employer selects a file that has a name longer than 100 characters. MyCo-Op presents an error message to Employer, use case continues at step 1. 3a Employer does not check “I have scanned the file for viruses.” Box. 3a.1 MyCo-Op does not let the Employer to click submit button, use case continues at step 3.8a. Employer writes a title longer than 200 characters, MyCo-Op does not let the Employer to write more than 100 characters, thus the characters are deleted starting from 101st character. Use case continues at step 9. 9a. Employer writes a description longer than 8000 characters. MyCo-Op does not let the Employer to write more than 8000 characters, thus the characters are deleted starting from the 8001st character. Use case continues at step 10. PostCondition: MyCo-Op updates Employer’s files in the database, MyCo-Op updates Employer
Use case: Downloading a proof of co-op and tax credit forms. (Sameen Mahtab 260737048) REQ3: MyCo-Op shall allow an Employer to download a proof oh co-op placement and tax credit forms anytime after the internships in 10 seconds. Associated user story: As an Employer i want to be able to upload more than one document and post them so that i save time looking for students rather than struggling with uploading. Acceptance criteria:
- Employer has to be logged in to MyCoOp Use case specification: Identifier:Download Proof of co-op form and tax credit form Actors:Employer, MyCo-Op Intention: The intention of the Employer is to download a copy of the proof of co-op and tax credit forms. Precondition:
- The Employer has an account in the system
- The Employer is logged-in to the system
- The forms exist in the database Main Scenario:
- The employer logs into the system;
- The employer selects ‘’Downloads’’;
- The employer selects the desired files to be downloaded;
- The employer chooses between ‘’Download all’’ or “Download selected”;
- The files download into the Employers’ device; Alternatives: 4a) If the employer does not select any file and clicks on “Download selected”, the Employer will receive the error message “No files selected!”. 5a) If there is no space in the Employers’ device, Employer will receive the notification “Insufficient space in disc!”. Use case: Evaluating student in an internship (Mahin Hossain 260728842 ) REQ4: MyCo-Op shall allow Employer to submit an evaluation form no more seven days late than the last day of internship. Associated user story: As an Employer I want to be able to send an evaluation form of interns to McGill so that McGill encourage the usage of MyCo-Op for only excellent students.
Ø Acceptance criteria:
-
The employer cannot submit the evaluation form without logging in to the MyCo-op.
-
The document should not exceed 10MB.
-
The employer has to submit the evaluation form within seven days after the last day of internship.
Use Case Specification: Identifier: Upload Student Evaluation Form to MyCo-op Actors: Employer, MyCo-Op Intention: The intention of the Employer is to upload the student’s evaluation form. Precondition: Employer has access to MyCo-Op ; Employer has an account in the system; Employer is already logged in.
Main Scenario:
-
Employer clicks the Student Evaluations in the home page.
-
MyCo-op redirects employer to a page with a list of Co-ops and their work term dates.
-
Employer checks the list of students who have already finished their internship.
-
Employer selects “Evaluation” tab for each student recently completed with their work term.
-
Employer selects “upload” button and selects the evaluation file.
-
Employer clicks the submit button.
-
MyCo-Op validates the input and then presents a confirmation message.
Alternatives: 3a. Employer realizes that the deadline for submitting the evaluation form for an intern has passed.So now the employer sends a message to the academic program manager on MyCo-op regarding the missed deadline and sends the Evaluation form including the student’s details.
5a. Employers selects a file that exceeds 10MB.
5a.1 MyCo-op presents an error message to the employer and use case continues at step 4.
PostCondition: MyCo-Op validates the submission of student evaluation forms and shows a confirmation message.
Use case: Saving student documents (Mostafa Abdelwahab 260551876) REQ5: MyCo-Op shall allow the Employer to create an archive in less than 2 minutes of CV, and unofficial transcript of students who worked or are currently working for a co-op term with me. Associated user story: As an Employer I want to be able to save McGill students’ documents who worked or are currently working for a co-op term with me so that I can consider hiring them later.
Ø Acceptance criteria:
- The employer cannot archive documents on MyCo-Op without being logged in.
- The employer can only archive documents of students who worked or are currently working with him/her for a co-op term.
- The employer cannot archive or access the CV or a transcript of a student who did not opt-in to allow the sharing of the CV.
- The employer cannot archive or access the transcript of a student who did not opt-in to allow the sharing of the transcript. Use Case Specification: Identifier: Save students’ documents on MyCo-Op Actors: Employer, MyCo-Op Intention: The intention of the Employer is to save his/her McGill interns’ CV and transcripts on MyCo-Op. Precondition: Employer has access to MyCo-Op; Employer has an account in the system; Employer is already logged in.
Main Scenario:
-
Employer clicks “Archive Students Documents” button.
-
Employer chooses between “Save CVs” and “Save CVs and transcripts button”
-
MyCo-Op retrieves the pdfs from the database
-
MyCo-Op sends Employer back to his/her homepage.
-
Employer clicks “View Interns’ archived files”
-
MyCo-Op redirects Employer to a page containing a table with 2 columns: one column for the CV and one column transcript. Each cell contains a link to an online and downloadable pdf.
-
Employer is able to access this table whenever logged in.
-
Employer can update the list at any time by clicking “Archive Students Documents” button again.
Alternatives: 6a. If none of the Employer’s previous or current interns have opted-in for sharing the CV. The Employer will have an empty table with an Error message “Empty Folder: None of your interns have opted to make their files shareable”
7a. At any time after the archive, if an opting-in student decides to opt-out, the Student’s CV (and Transcript) will disappear from the Employer’s table.
Non Main Functional Requirements:
Use case: Register to MyCo-Op
REQ6: MyCo-Op shall allow the Employer to register to the system in less than 5 minutes. (self note: if it is employer’s first time he gets the credentials from admin ) Associated user story: As an Employer I want to be able to register MyCo-Op so that I can find talented students to employ them to my company.
Use case: Accessing student documents
REQ7: MyCo-Op shall allow the Employer to access Student’s cv, cover letter, and unofficial transcript in less than 10 seconds. Associated user story: As an Employer I want to be able to access to student documents so that I can assess the students before employing them.
Use case: Sending messages to other users
REQ8: MyCo-Op shall allow Employer to notify the Student by sending him a message in less than 5 seconds. Associated user story: As an Employer I want to be able to send messages to students so that I can inform a student that I am interested in hiring him.
Use case: Informing McGill about student’s attendance to an internship
REQ9: MyCo-Op shall allow Employer to inform the co-op academic program manager about the attendance of the intern. Associated user story: As an Employer I want to be able to inform McGill about an intern’s attendance so that McGill can make an evaluation of the students.
Use case: Indicating a job offer made to a student after graduation
REQ10: MyCo-Op shall allow the Employer to indicate that he offered a job to a student which has already completed an internship at Employer’s company. Associated user story: As an Employer I want to be able to indicate that I offered a job to a former intern so that I can make other students want to work for my company.
Use case: Notifying and inviting employers to events
REQ11: MyCO-Op shall allow the Employer to be notified and to be invited to events. Associated user story: As an Employer I want to be able to be invited to events
Non Functional Requirements:
AVAILABILITY
REQ12:MyCo-Op shall meet 99% uptime so that the users can depend on the system during “normal operating times”. Associated user story: As an employer, I want to be assured that the system is available for my utilization most of the time.
SECURITY
REQ13 :MyCo-Op shall protect sensitive and valuable data and only allow access to authorized personnel. Associated user story: As an employer, I want my and my employees’ privacy to be protected and our data to be secure.
EFFICIENCY
REQ14 :MyCo-Op shall maintain a level of efficiency when handling throughput, capacity and response time. Associated user story: As an employer I want the system to efficiently handle my tasks.
RELIABILITY
REQ15:MyCo-Op shall perform specified functions without failure consistently. The system defect rate shall be limited to 1 in 1000 hours of operation. Associated user story: As an employer I want to be able to rely upon the system to handle my tasks when required.