-
Notifications
You must be signed in to change notification settings - Fork 1
Deliverable 1: Requirements, Domain Model, Database Design
- The system shall allow students to report the acceptance of a co-op position by filling out an acceptance form including (F1):
- Job posting ID from my future or job description
- Employer
- Location
- Start and end dates of employment
- Academic term
- Whether they need a work permit or not
- The system shall allow students to upload the employer contracts in PDF form (F2)
- The system shall allow students to add co-op courses corresponding to their work term on Co-Operator (F3)
- The system shall allow students to submit a report on the tasks and workload for their internship (F4)
- The system shall allow students to view the deadline of the internship reports as well as the submission dates (F5)
- The system shall allow students to complete a co-op internship report when finishing their co-op term (F6)
- The system shall identify students as late students (Please refer to the glossary list) if they do not submit their documents on time (F7)
- The system shall send students notifications two days before the deadline to submit their documents (F8)
- The system shall be available for 99% of the year (NF1)
- The system shall be able to be run on an Android and Chrome browser (NF2)
- The system shall have less than 0.5% of events causing failure (NF3)
- The system shall be able to restart within 1 hour after a failure (NF4)
- The system shall have less than 0.75% probability of data corruption when a failure occurs (NF5)
- The system shall have the event response time of less than 1000 ms (NF6)
Detailed Specification for five most important use cases:
1. Submit Report
-
Scenario: The student is trying to submit their reports
-
Main Success Scenario:
- Student navigates to Home Page (Please refer to the glossary list)
- Student clicks on the co-op course for which they would like to submit a document
- The system jumps to the "Assignment/Tasks" page
- Student clicks on "Assignments/Tasks"
- The system jumps to a page with a list of assignments
- Student clicks on the particular assignment/task he would like to submit
- The system opens the submission window
- Student clicks on “Add a file”
- The system shows the options of where to upload the documents from
- Student selects whether they want to upload their documents from their local machine or OneDrive o Student clicks on “Upload”
- Student selects the document they would like to submit
- Student clicks “Add”
- Student clicks “Submit”
- The system closes the submission window
- Student receives a confirmation of submission via email
-
Alternative Scenarios:
- viii.a Student wants to change the way of uploading their documents
- Student clicks on “Back"
- The system jumps back to the window with the options of where to upload the documents from
- Student is prompted to select their preferred way for uploading the document
- Student follows through with steps ix to xv
- viii.b Student wants to stop the submission process
- Student clicks on “Cancel”
- The system returns to the assignment/task page
- xi.a Student selects the wrong type of document
- Student is prompted to add the correct type of document
- Student adds a document
- Student follows through with steps xii to xv
- xi.b Student wants to stop the submission process
- Student clicks on “Cancel”
- The system returns to the assignment/task page
- xv.a Student wants to update their submission
- Student follows through with steps i to ix
- The system shows a warning message about overwriting the previous submission
- Student clicks on “Ok” or “Cancel” for the warning message on overwriting the old submission
- Student clicks “Submit”
- Student receives a confirmation of submission via email
- viii.a Student wants to change the way of uploading their documents
2. Download Documents
-
Scenario: The student is trying to download documents
-
Main Success Scenario:
- Student navigates to Home Page (Please refer to the glossary list)
- Student clicks on the co-op course for which they would like to download a document
- The system jumps to the "Assignment/Tasks" page
- Student clicks on “Assignments/Tasks”
- The system jumps to a page with a list of assignments
- Student clicks on the corresponding “Attachments” of a specific assignment/task
- The system starts downloading the document(s)
- Student is able to see the document(s) in their download folder
-
Alternative Scenarios:
- iv.a Student can navigate to the submission page of a specific assignment/task to download the corresponding document(s)
- Student clicks on the particular assignment/task
- The system jumps to the submission page of that particular assignment/task
- Student clicks on the corresponding “Attachments” of a specific assignment/task
- The system starts downloading the document(s)
- Student is able to see the document(s) in their download folder
- vii.a If the download of a specific document is not successful
- Student repeats step iv
- iv.a Student can navigate to the submission page of a specific assignment/task to download the corresponding document(s)
3. Report Acceptance
-
Scenario: The student is trying to report the acceptance of co-op position.
-
Main Success Scenario:
- Student navigates to Home Page (Please refer to the glossary list)
- Student clicks on the “Report Acceptance”
- The system jumps to the “Report Acceptance” page
- Student selects the corresponding co-op term
- Student clicks “Next”
- The system jumps to the “Agreement” page
- Student selects agree for the information security agreement
- Student clicks “Next”
- The system jumps to the actual form page
- Student fills out the form including a job posting id from myFuture or a job description, employer, location as well as start and end dates of employment, the academic semester, indication if they need a work permit, etc
- Student click “Next” to view the completed form
- The system jumps to the completed form page
- Student clicks “Submit”
- The system displays a warning message about the submission
- Student clicks “Ok” for the warning message before submission
- Student receives a confirmation of submission via email
-
Alternative Scenarios:
- vi.a Student wants to cancel the process
- Student clicks “Cancel”
- ix.a Student wants to cancel the reporting process
- Student clicks “Cancel”
- x.a Student makes mistakes or forgets to fill something
- The system displays the corresponding error message(s)
- Student reads the error message
- Student corrects the corresponding mistake
- Student follows through with steps ix to x
- x.b Student wants to finish the form later
- Student clicks “Save”
- The system jumps back to the “Report Acceptance” page
- Student repeats through with steps i to x
- x.c Student wants to cancel the process
- Student clicks “Cancel”
- The system displays the warning message about canceling the submission
- Student clicks “Ok” for the warning message
- xii.a Student finds a mistake while reviewing the form
- Student clicks “Edit” on the corresponding section
- The system jumps back to the corresponding section page
- Student corrects the mistake
- Student clicks “Save”
- The system jumps to the reviewing page
- Student follows through with steps xiii to xvi
- vi.a Student wants to cancel the process
4. Track Progress
-
Scenario: The student is trying to track their co-op progress
-
Main Success Scenario:
- Student navigates to Home Page (Please refer to the glossary list)
- Student clicks “Track Progress” to see the progress of their entire co-op program
- The system jumps to the "Track Progress" page
- Student clicks on a specific co-op term to check the steps they have already completed
- The system jumps to the corresponding co-op term page
- Student can click on the specific task they have already completed to view the document(s) they have submitted
-
Alternative Scenarios:
- ii.a Student can check their current co-op term progress
- Student clicks on the current co-op course
- The system jumps to the current co-op course page
- Student clicks on the “Milestone” to check the tasks they have already completed
- The system jumps to the "Milestone" page where there is list of tasks
- Student can click on the specific task they have already completed to view the document(s) they have submitted
- ii.a Student can check their current co-op term progress
5. View Reports
- Scenario: The student is trying to view the submitted reports online.
-
Main Success Scenario: Student can view the report submission of a current co-op term through “Assignment/Task”
- Student navigates to Home Page (Please refer to the glossary list)
- Student clicks on the current co-op course
- Student clicks “Assignment/Task”
- The system jumps to the "Assignment/Tasks" page
- Student clicks on the submission of a specific Task
- The system jumps to submission page of that specific task
- Student clicks “View”
-
Alternative Scenarios:
- ii.a Student can view the report submission of different co-op terms through “Track Progress”
- Student clicks “Track Progress”
- The system jumps to the "Track Progress" page
- Student clicks on a specific co-op term
- The system jumps to the corresponding co-op term page
- Student clicks on the specific task
- The system jumps to the corresponding submission page of that task
- Student clicks “View”
- iii.a Student can view the report submission of current co-op term through “Milestone”
- Student clicks on the “Milestone”
- The system jumps to the "Milestone"page
- Student can click on the specific task they have already completed
- The system jumps to the corresponding submission page of that task
- Student clicks “View”
- ii.a Student can view the report submission of different co-op terms through “Track Progress”
Key decisions made while creating the domain model: We decided that it would be a better idea to make a separate class for enrollments called "StudentEnrollment" to store files for each student. If we had linked the student to the CoopCourseOffering class, we would have as many documents as students which makes no sense if a student submits multiple documents. The class "Document" is an association to CoopCourseOffering for templates and instructions documents offered by the course for reports. The domain model project folder can be found here: Root/Backend/UML Class Diagram.
- Late students: Student who fail to register the corresponding co-op course or submit the required documents on time.
- Home Page: The page which student can view the general information about the Co-op Program and main features such as Report Acceptance, Track Progress etc. This page also has the links to external services such as Minerva, MyCourses, MyFuture.