Giter VIP home page Giter VIP logo

gsims's People

Contributors

afethers avatar cassandralim avatar clairebarretto avatar coyox avatar shanifer avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

gsims's Issues

Management of Courses

3.2.4.7 – Management of Courses
Desc: Administrator manages all courses offered by the school. The system updates the course tables accordingly.
Priority: High

3.2.4.7.1 – The system shall allow administrators to create a new course in an existing department.
Steps:
The administrator selects the an option to create a new course
The administrator enters the the required information for a course (see section 6.2.2) for all course properties)
If the course with the given attributes does not already exist, the system creates a new course entry in the table with the information provided, an empty waitlist, and no sections.
The system provides a message to the administrator that the course was successfully created.
AS:
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.7.2 - The system shall provide a view that displays a course summary. The view includes the course attributes (see section 6.2.2 for all course properties), and also the number of sections, the number of students enrolled in each section, the teachers assigned to each of the course sections, and the number of students that are waitlisted for the course.
Steps:
The administrator selects the option to view course information after locating a course using the course navigation feature
The system displays the course attributes (see section 6.2.2 for all course properties), the number of students on the waitlist for the course, the number of sections, and a table of all the sections displaying the section ID, number of students enrolled, and the teacher(s) assigned to each section.

3.2.4.7.4 - The system shall allow administrators to edit the attributes of a course (see section 6.2.2 for all course properties)
Steps:
The administrator selects the option to edit course information after locating a course entry using the course navigation feature
The administrator modifies one or more of the course fields
The administrator submits the form
The system validates the fields to be in the correct format
The system updates the corresponding entry in the course table according to the submitted information
The system provides a message to the administrator confirming the information was successfully changed
AS:
If the administrator does not modify anything and tries to submit, the system alerts the administrator
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.7.5 - The system shall allow administrators to delete a course. The system should provide secondary confirmation to ensure that they would indeed like to proceed. Upon successful deletion, the course should be marked as inactive
Steps:
The administrator selects an option to delete a course after locating the course entry using the course navigation feature
The system asks for confirmation that deleting the course is desired
The administrator confirms deletion
The system marks the course as inactive
The system displays a message that the course was successfully deleted

Course Search Feature

3.2.2.7 – Course Search Feature
Desc: Administrator searches for course sections for the current school year
Priority: High

3.2.2.7.1 - The system shall be able to search for a course section by department, course name, day and times
Steps:

  1.  The administrator enters the search criteria for courses
    
  2.  The administrator submits the search
    
  3.  The system validates the search criteria to be in the correct formats
    
  4.  The system displays the query results
    

AS:
If the administrator leaves all the search criteria blank, the system fetches and displays a list of all course sections
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.2.7.2 - The system shall display in the query result for each course section entry: the course section, days, time, status

3.2.2.7.3 - The system shall allow the user to view the details of each course section entry including: the course name, section, prerequisites, days, times, teacher(s) in charge, number of enrolled students, remaining seats, room size and room location

3.2.2.7.4 - The system shall sort the course query results by course title alphabetically by default

3.2.2.7.5 – The system shall retain and display the same course query results before and after an administrator manages a selected course
Steps:

  1.  The administrator performs a search
    
  2.  The system displays the course query results
    
  3.  The administrator selects an entry to manage
    
  4.  The administrator finishes managing the entry and returns
    
  5.  The system displays the same query results
    

Registration and Enrollment

3.2.4.2 – Registration and Enrollment
Desc: Administrator registers a student into the school. If the student does not exist in the system, the administrator creates a new student. Otherwise, the administrator proceeds to enroll the student into selected course sections. The system adds the student to the school and course section tables. This process is used by in-person registrations/enrollment.
Priority: High

3.2.4.2.1 - The system shall provide a registration feature for administrators. Administrators first search for a student using first name, last name and date of birth. If the student does not exist in the system, the system gives the option to register a new student, and otherwise gives the option to enrol the existing student in course sections.
Steps:
The administrator enters the student’s first name, last name, and date of birth
The system displays a list of students who match exactly with entered first name, last name, and date of birth. For each entry, the system displays also the email address for further identification. If no results are returned or matches are not found in the result, skip to Registration Steps.
The administrator selects a student from the list and can choose to view and edit their basic information(see section 6.1.3 for all student properties)
The administrator proceeds to Enrollment Steps

Registration Steps:
The administrator enters the remaining student information (reference the student properties in 6.1.3)
The administrator can choose to proceed to Enrollment Steps or finish the registration
The administrator confirms the registration
The system checks that all entered fields are in the correct format
The system adds the student in the student table with an inactive status
The system emails the newly created student its generated login credentials
The system displays a message of successful registration

Enrollment Steps:
The administrator selects one or more departments
The system displays all courses offered for the selected departments
The administrator selects one or more courses
The system displays all course sections for the selected courses, visually differentiating those with any prerequisites as well as those that are full
The administrator selects course sections that the student wishes to enrol in
The administrator confirms that all the classes have been selected and that they wish to proceed
The system checks that for each selected course, the student has not taken the course, and the student is not registered in another course at the same time. If any of the conditions are not met, the system displays a warning and does not allow the student to enrol in a course
The system checks if a section with unmet prerequisites is selected. If yes the system notifies the administrator that the student will need to take a proficiency test on the first day of school if they wish to be enrolled in that section
If a full class is selected, the system notifies the user that the student will be placed on a waitlist for that class
The system provides a summary of the selected classes, including reminders of any proficiency tests or waitlists
For new students, administrator marks whether the student has paid or not
The administrator confirms the information is correct and that the student is to be enrolled
The system adds the student into course sections tables, waitlist tables if the course sections are full and flags the student in the corresponding course sections tables if they need to take proficiency tests for them
The system updates the status of student to be active if it is inactive previously
The system returns a message indicating the student has been successfully enrolled
AS:
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the administrator to fill them in
If a field is not formated correctly, the information is not submitted and the system provides an explanation on how to correctly format the input

Management of courses

3.2.5.3 – Management of courses
Desc: Teacher manages all courses they teach. The system updates the course database accordingly.
Priority: High

3.2.5.3.1 - The system shall provide an option to input attendance for themselves

3.2.5.3.2 - The system shall provide an option to input student’s attendance

3.2.5.3.3 - The system shall enforce consistent use of attendance terminology

3.2.5.3.4 - The system shall provide an option for teachers to input assignment marks

Teacher notification system

3.2.5.2 – Teacher notification system
Desc: Teachers can select the types of notifications they would like to receive. The system notifies the teachers when any changes are made.
Priority: High

3.2.5.2.1 - The system shall provide notification options that teachers can subscribe to:
Notifications for students who have poor performance (missed X assignments in a row)
Notifications for students who have poor attendance (missed X classes in a row)
A self-reminder to input attendance if they have forgotten to do so for X number of days
Steps:
The teacher navigates to a notification interface where they can save the notifications that should appear on their dashboard
If applicable, the dashboard displays the number of students who have poor attendance and/or performance
If applicable, the dashboard should remind the teacher to input attendance

3.2.5.2.2 - The teacher can click on a notification on their dashboard to view all the students who have poor attendance and/or performance in a table

3.2.5.2.2 - The teacher can select all, or a subset, of students listed in the table to send a notification to.
Steps:
The teacher checks off all student he/she wishes to notify
The system generates a list of all the emails of the selected students
The system opens up the built-in email interface
The teacher provides an email body to send to all students
The system sends an email to all the selected students with the provided email body.

Modify login and password information

3.2.2.3 – Modify login and password information
Desc: User modifies login and password info. The system updates the login table.
Priority: High

3.2.2.3.1 - The system shall provide a feature to modify login and password information
Steps:
The user clicks on the option to modify login and password information in their dashboard
The user enters either their new username, new password(entered twice) or both
The user submits the new credentials
The system validates the new username to ensure that only letters and numbers are used
The system validates the new password to ensure that the password contains at least one number, and one capital letter, and is longer than 6 characters
The system updates the login table for the user with the new login
The system display a message that indicates a successful update of login credentials
AS:
If the user enters the new credentials in an incorrect format, the system alerts the user and does not update the credentials.

Create grading period

The system must allow administrators to create a new school year/term.
The system must allow administrators to advance students to the next school year/term.

Management of Course Sections

3.2.4.7 – Management of Course Sections
Desc: Administrator manages all sections of courses offered by the school. The system updates the section tables accordingly.
Priority: High

3.2.4.7.1 – The system shall allow administrators to create a new section in an existing course.
Steps:
The administrator selects the option to create a course section
The administrator enters the following required information for a section (see section 6.2.3 for all section properties)
The system validates the entered information to be in the correct format
The system creates a new section entry in the table with the information provided.
The system provides a message to the administrator that the section was successfully created.
AS:
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.8.2 - The system shall provide a view to display a section summary. The view includes the above attributes, the teacher(s) for the section, the number of students enrolled in the section, and a list of the students enrolled.
Steps:
The administrator selects the option to view section information after locating a course section using the course section search feature
The system displays the course section attributes (see section 6.2.3 for all section properties), the number of students on the waitlist for the course, the number of sections, and a table of all the sections displaying the section ID, number of students enrolled, and the teacher(s) assigned to each section.

3.2.4.7.4 - The system shall allow administrators to edit the above attributes of a course
Steps:
The administrator selects the option to edit course information after locating a course entry using either course navigation feature or the course search feature(if available)
The administrator modifies one or more of the course section fields
The administrator submits the form
The system validates the entered information to be in the correct format
The system updates the course entry in the table according to the submitted information
The system provides a message to the administrator confirming the information was successfully changed
AS:
If the administrator does not modify anything and tries to submit, the system alerts the administrator
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.7.5 - The system shall allow administrators to delete a course. The system should provide secondary confirmation to ensure that they would indeed like to proceed. Upon successful deletion, the course should be marked as inactive.
Steps:
The administrator selects an option to delete a course after locating the course entry using the search feature
The system asks for confirmation that deleting the course is desired
The administrator confirms deletion
The system marks the course as inactive
The system displays a message that the course was successfully deleted

Import attendance template

3.2.5.7 – Import attendance template
Desc: Teacher imports attendance by uploading the attendance CSV. The system imports the students and teacher attendance.
Priority: High

3.2.5.7.1 - The system shall provide a feature to upload the attendance CSV. Reference 3.1.1.18 for interface requirements.
Steps:
The teacher selects an option to upload the file
The teacher selects the file to upload
The teacher confirms the file upload
The system checks that the file is in .csv format
The system checks that file uses the attendance template
The system checks that file data is not corrupt
The system imports the attendance to the corresponding table in the database
The system displays a message that indicates a successful file upload
AS:
If any of the system checks in step 4-6 fails, the system displays a message with the corresponding error and also indicates a failed file upload

Access course information by Course Navigation Feature

3.2.2.4 – Access course information by Course Navigation Feature
Desc: User accesses and views information about any course and course sections for the current school year by the Course Navigation Feature
Priority: High

3.2.2.4.1 - The system shall give all users the ability to view all course information

3.2.2.4.2 - The system shall give all provide a course navigation feature
Steps:
The system displays a list of all the departments available (display for each entry: department name)
The administrator selects a department
The system displays a list of all courses for the selected department (display for each entry: course name)
The administrator selects a course
The system displays the course’s description, the prerequisites and a list of all the course sections for the selected course (display for each entry: the course section, days, time, status)
The administrator selects the course section
The system displays the information for the course section, including: the course name, section, prerequisites, days, times, teacher(s) in charge, number of enrolled students, remaining seats, room size and room location

3.2.2.4.3 - The system shall be able to navigate back and forth between departments and course sections

3.2.2.4.4 - The system shall provide a fetch-all option for course sections
Steps:
The administrator selects a fetch-all option for courses
The system displays a list of results of all course sections offered by the school

3.2.2.4.5 - The system shall sort all list entries by name alphabetically by default

Search for Students

3.2.4.13 – Search for Students
Desc: Administrator searches for students
Priority: High

3.2.4.13.1 – The system shall be able to search for students by their first and/or last names, id, gender, status and other options including searching for students who are missing an X number of assignments, failing X number of classes, whose average is between X and Y and who have paid or not paid.
Steps:
The administrator enters the search criteria for students
The administrator submits the search
The system validates the search criteria to be in the correct formats
The system displays the query results
AS:
If the administrator leaves all the search criteria blank, the system fetches and displays all student entries
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.13.2 – The system shall be able to fetch all students
Steps:
The administrator selects a fetch-all option for students
The system displays the query results of all students

3.2.4.13.3 – The system shall display in the query results for each student entry: their first name, last name, id, status and email address

3.2.4.14.3 - The system shall allow the user to view the details of each student entry (see section 6.1.3 for all student properties)

3.2.4.13.4 – The system shall sort the user query results by name alphabetically by default

3.2.4.13.5 – The system shall retain and display the same user query results before and after an administrator manages a selected student
Steps:
The administrator performs a search
The system displays the user query results
The administrator selects an entry to manage
The administrator finishes managing the entry and returns
The system displays the same query results

Administrator notification system

3.2.4.5 – Administrator notification system
Desc: Administrators can select the types of notifications they would like to receive. The system notifies the administrator when any changes are made.
Priority: High

3.2.4.5.1 - The system shall provide notification options that administrators can subscribe to:
Notification of pending students waiting for registration approval from online registration(IRR)
Notifications of students that need to take placement exams
Notifications for teachers who have yet to input attendance for X weeks
Steps:
The administrator navigates to a notification interface where they can save the notifications that should appear on their dashboard.
If applicable, the dashboard displays the number of students who are waiting registration approval and/or the number of students who need to take placement exams.
If applicable, the dashboard displays the number of teachers that need to be reminded to do their attendance.

3.2.4.5.2 - The administrator can click on a notification on their dashboard to view all the students or teachers that need to be notified.

Email teachers

3.2.6.2 - Email teachers
Desc: Student emails teachers in charge of the courses they are enrolled in
Priority: Low

3.2.6.2.1 - The system shall provide an interface for basic email functions

3.2.6.2.2 - The system shall provide an option to select their course teacher as recipients

3.2.6.2.3 - The system shall allow a student to email the teachers in charge of the courses they are enrolled in

Email with filter option

3.2.5.8 – Email with filter option
Desc: Teacher sends email to recipients that fit a specific criteria
Priority: Medium

3.2.5.8.1 - The system shall provide an option to filter email recipients based on:
Students that have poor attendance in their class (3 missed days in a row)
Students that have missing assignments

3.2.5.8.2 - The system shall allow teachers to email all teachers, administrators and students who are enrolled in the courses they teach

Management of other administrators

3.2.3.2 – Management of other administrators
Desc: Superusers should be able to manage other administrator entities.
Priority: High

3.2.3.2.1: The system shall allow superusers to configure information about administrators(see section 6.1.2 for all administrator properties)

3.2.3.2.2: The system shall allow superusers to create new administrators and email the newly created administrator its generated login information (including randomly generated password)
Steps:
The superuser selects an option that allows them to create new administrators
The superuser enters the required information for a new administrator (see section 6.1.2 for all administrator properties)
The superuser confirms the creation of a new administrator
The system validates that all required fields are filled in
The system validates that the email address is in the correct format ‘@.*’ e.g. [email protected]
The system sends an email to the address of the newly created administrator containing their login information (i.e. their username and password)
The system confirms to the superuser that the email message was successfully sent
AS:
If the user attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.3.2.3: The system shall allow superusers to edit existing administrators.
Steps:
The superuser selects an option to edit an administrator after locating the administrator entry using the browse-administrator feature(3.2.3.2)
The superuser edits some or all of the administrator properties (see section 6.1.2 for all administrator properties)
The superuser confirms submission of the changes
The system validates that all required fields are filled in
The system validates that the email address is in the correct format ‘@.*’ e.g. [email protected]
The system updates the administrator entry in the administrator table
The system displays a message that indicates the successful edit
AS:
If the user attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

View course performance

3.2.6.1 - View course performance
Desc: Student views their grades and attendance for all courses they are enrolled in
Priority: Low

3.2.6.1.1 - The system shall display all the enrolled courses in a table view

3.2.6.1.2 - The system shall provide an option to view the grades for each course

3.2.6.1.3 - The system shall provide an option to view the attendance for each course

3.2.6.1.4 - The system shall provide an option to view the report card

Dashboard

3.2.5.1 – Dashboard
Desc: Teacher sees the dashboard after they login
Priority: High

3.2.5.1.1 - The system shall provide a quick summary of the courses the teachers teach including average attendance and upcoming course times in the dashboard after they login
Steps:
The user logs in as a teacher.
The system displays a panel containing a list of the courses they are teaching this term, and the average attendance for each term.
The system displays a panel containing a schedule of times they are teaching each course for in a given period of time.
AS:
If the teacher is not currently teaching any courses, the panels are not populated with their information.
If a course section does not currently have an assigned time, it will not be shown in the schedule.
If there is no attendance data for a course, the average attendance figure instead displays “N/A”.

Open Online Registration and Course Enrollment

3.2.4.15 – Open Online Registration and Course Enrollment
Desc: Administrator opens online registration and course enrollment for returning students. Registration page goes live and the course enrollment feature for returning students activates on the users’ dashboards.
Priority: Medium

3.2.4.15.1 - The system shall provide an option for opening registration, which enables the registration page and the course enrollment feature on users’ dashboards
Steps:
The administrator toggles online registration status from “closed” to open”
The online registration status becomes “open”
The system makes the online registration page accessible
The system begins accepting registrations from users over the internet
The system makes the course enrollment feature for returning students accessible

Delete attendance records

The attendance table will get large very quickly.
The system should allow superusers to clear the attendance table after a school year has ended

Forgot password

3.2.2.2 – Forgot password
Desc: User resets their password. The system updates the login table.
Priority: High

3.2.2.2.1 - The system shall provide a feature to reset password
Steps:
The user clicks on the option to reset password on the login page
The user submits their email address
The system displays a message that indicates that the link has been sent to reset their password
The system emails the user a link to reset their password
The user follows the link to reset their password
The user types in their new password
The user re-types their new password
The user submits the new password
The system validates that the two new passwords are exact matches
The system validates the new password to contain at least one number, and one capital letter, and is longer than 6 characters
The system validates that the email address is in the correct format ‘@.*’ e.g. [email protected]
The system updates the login credentials for the user in the login table
The system displays a message that indicates that the password has been updated
AS:
If the email address is not in the correct format, the system alerts the user and does not send the link.
If the new password failed in the validation, the system alerts the user and does not update the credentials.

Generate Reports/Statistics

3.2.4.12 – Generate Reports/Statistics
Desc: Administrator requests reports/statistics of data intelligence. The system generates the reports and presents them to the administrator.
Priority: Low

3.2.4.12.2 - The system shall be able to generate reports on the following:
attendance trends on course and school levels
students overall academic performances(average percentage)
students demographic

3.2.4.12.6 - The system shall provide date/school-year options to generate reports on. The default shall be the current school year

3.2.4.12.1 - The system shall provide a feature for generating reports and statistics
Steps:
The administrator selects the type of report they want to generate
The administrator selects the school year for the report
The administrator confirms to generate a report
The system displays the report
AS:
If the administrator does not select the type of report to generate, they will not be able to generate a report and the system will alert the user
If the administrator does the select the export destination, they will not be able to export and the system will alert the user

3.2.4.10.1 - The system shall be able to export the report cards as either a CSV or PDF file (PDF by default)
Steps:
Repeat Step 1-4 above
The administrator selects the export type
The administrator selects the export destination
The administrator confirms the export
The system exports the report to the destination
The system displays a message that indicates a successful report card export
AS:
If the administrator does the select the export destination, they will not be able to export the report card and the system will alert the user

Data import

3.2.4.10 – Data import
Desc: Administrator selects data to upload; the system imports the data into the system

3.2.4.10.1 - The system shall provide a feature for CSV uploads
Priority: High

3.2.4.10.2 - The system shall provide an option to upload the student registration CSV to create students
Priority: High
Steps:
The administrator selects an option to upload the file
The administrator selects the file to upload
The administrator confirms the file upload
The system checks that the file is in .csv format
The system checks that file uses the student registration template
The system checks that file data is not corrupt
The system imports the student information to the student table. If the student exists in the table, ignore the entry and move on. Otherwise, create a new student with the information and an inactive status
The system displays a message that indicates a successful file upload
AS:
If any of the system checks in step 4-6 fails, the system displays a message with the corresponding error and also indicates a failed file upload

3.2.4.10.3 - The system shall provide an option to upload the course section CSV to create courses sections
Priority: Low
Steps:
The administrator selects an option to upload the file
The administrator selects the file to upload
The administrator confirms the file upload
The system checks that the file is in .csv format
The system checks that file uses the course section template
The system checks that file data is not corrupt
The system imports the course information to the course section table. If the course section exists in the table, ignore the entry and move on. Otherwise, create a new course section with the information
The system displays a message that indicates a successful file upload
AS:
If any of the system checks in step 4-6 fails, the system displays a message with the corresponding error and also indicates a failed file upload

3.2.4.10.4 - The system shall provide an option to upload the teacher CSV either to create teachers
Priority: Low
Steps:
The administrator selects an option to upload the file
The administrator selects the file to upload
The administrator confirms the file upload
The system checks that the file is in .csv format
The system checks that file uses the teacher template
The system checks that file data is not corrupt
The system imports the course information to the teacher table. If the teacher exists in the table, ignore the entry and move on. Otherwise, create a new teacher with the information
The system displays a message that indicates a successful file upload
AS:
If any of the system checks in step 4-6 fails, the system displays a message with the corresponding error and also indicates a failed file upload

Course enrollment for returning students

3.2.2.5 – Course enrollment for returning students
Desc: User enrolls in courses for other students or themselves. The student enrolling should already be registered. The system processes the request.
Priority: High

3.2.2.5.1 - The system shall provide a course enrollment feature
Steps:
The user selects one or more departments
The system displays all courses offered for the selected departments
The user selects one or more courses
The system displays all course sections for the selected courses, visually differentiating those with any prerequisites as well as those that are full
The user selects course sections they wish to enrol in
The user confirms that all the classes have been selected and that they wish to proceed
The system checks that for each selected course, the student has not taken the course, and the student is not registered in another course at the same time. If any of the conditions are not met, the system displays a warning and does not allow the student to enrol in a course
The system checks if a section with unmet prerequisites is selected. If yes the system notifies the user that the student will need to take a proficiency test on the first day of school if they wish to be enrolled in that section
If a full class is selected, the system notifies the user that the student will be placed on a waitlist for that class
The system provides a summary of the selected classes, including reminders of any proficiency tests or waitlists
The user confirms the information is correct and that the student is to be enrolled
The system adds the student into course sections tables, waitlist tables if the course sections are full and flags the student in the corresponding course sections tables if they need to take proficiency tests for them
The system updates the status of student to be active if it is inactive previously
The system returns a message indicating the student has been successfully enrolled
AS:
If the user does not select at least one course at the time they submit the form, the system shall alert the student and the system shall not allow the user to submit the form

Log into the system

3.2.2.1 – Log in to the system
Desc: User logs in to the system. The system redirects to the user’s dashboard.
Priority: High

3.2.2.1.1 - The system shall provide a login feature
Steps:
The user reaches a login page
The user enters their username and password
The user selects their user class (superuser, administrator, teacher, or parent)
The user clicks on the login button
The system validates the login credentials
The system redirects the user to their dashboard based on their user type
The system updates the login timestamp in the login table
AS:
If the user clicks on the login button without filling in both their username and password, the system highlights the missing field and alerts them.
If the login credentials failed to validate, the system alerts the user and provide the ‘Forgot password’ option below

Search results

3.2.2.6 – Search results
Desc: Query results in a table view
Priority: High

3.2.2.6.1 - The system shall return the search results in a table view
Steps:
The user types in or selects pre-made criteria and submits their search terms
The database is queried with the search
A table of the values meeting the search criteria is displayed
AS:
If the query returns no results, the table will remain blank
If the search terms are blank/invalid and cannot be queried, no results are returned and the user is notified that their search could not be performed

3.2.2.6.2 - The system shall allow users to click and access each search result entry in order to view their details

3.2.2.6.3 - The system shall provide the ability to sort in ascending or descending order

3.2.2.6.4 - The system shall provide options to select the user type to search for

3.2.2.6.5 - The system shall display a maximum of 20 results

3.2.2.6.6 - The system shall display results more than 20 on the next page

Email users

3.2.4.5.2 - The administrator can select all, or a subset, of students or teachers listed in the table to send a notification to.
Steps:
The teacher checks off all students or teachers he/she wishes to notify
The system generates a list of all the emails of the selected students or teachers
The system opens up the built-in email interface
The teacher provides an email body to send to all students or teachers.
The system sends an email to all the selected students or teachers with the provided email body.

3.2.4.6 – Email users
Desc: Administrator can send emails. Administrator can also select any user within their campus as recipients
Priority: Medium

3.2.4.6.1 - The system shall provide a basic email feature where the administrator is allowed to either type the email of a recipient or select recipients from a list of users within their campus

Assign administrator privileges to teachers

3.2.3.3 – Assign administrator privileges to teachers
Desc: Superuser gives administrator privileges to teachers. The system gives administrative access.
Priority: High

3.2.3.3.1 - The system shall provide a feature for issuing administrative access to teachers
Steps:
The superuser selects one or more teachers to give administrative access to
The superuser submits the selection
The superuser confirms the selection
The system shall update the user type to administrator
The system returns a message that indicates a successful operation
AS:
If the superuser does not select at least one teacher at the time they submit the form, the system shall alert the superuser and the system shall not allow the superuser to submit the form

Suggest course for teachers

3.2.4.17 – Suggest course for teachers
Desc: Suggest course(s) for a teacher given their previously taught courses/skills. This helps in assisting administrators in assigning teachers to a course.
Priority: Low

3.2.4.17.1 - The system shall integrate this feature with the assign-teacher functionality

3.2.4.17.2 - The system shall suggest course(s) given a teacher’s name and id.
Steps:
The user submits the teacher’s name and ID to the system
The system searches the database for that teacher
The system then returns the list of courses and levels of courses taught by the teacher
AS:
If the teacher has no records of previously taught courses, the system notifies the user that there is nothing to suggest.

3.2.4.17.3 - The system shall suggest teachers given a course name and level.
Steps:
The user submits the course name and a level of the course
The system searches the database for the teachers that have taught the given course and level.
The system returns the list of teachers.
AS:
If there are no teachers that have taught a given course and level, the system notifies the user that there is nothing to suggest.

3.2.4.17.4 - The system shall display the course or teacher suggestions. Results returned from section 3.2.4.17.2 or section 3.2.4.17.3 are displayed in a tabular format.

Online Registration and Enrollment

3.2.1.1 – Online Registration and Enrollment
Desc: A student registers to enter the school and enrolls in courses. The system processes the registration request.
Priority: Medium

3.2.1.1.1 - The system shall allow online registration only after in-person registration has been opened/allowed.

3.2.1.1.3 - The system shall require the user to fill out the required information for registration (see section 6.1.3 for all student properties)

3.2.1.1.2 - The system shall provide a feature for a user to register for the school and to enroll in courses
Steps:
The user selects a registration option in the login page
The user fills in all the required fields(see section 6.1.3 for all student properties)
The user proceeds to enrolment and selects one or more interested departments
The system displays all courses offered for the selected departments, visually distinguishing ones that are full from those that are not
The user selects one or more courses
The system displays all course sections for the selected courses, visually differentiating those with any prerequisites as well as those that are full
The administrator selects course sections that the student wishes to enrol in
The system checks if the sections selected have overlapping times. If true, alert the user
If a full class is selected, the system notifies the user that the they will be placed on a waitlist for that class as it is full
The user confirms that all the classes have been selected and that they wish to proceed
The system provides a summary of the selected classes
The user confirms the information is correct
The user submits the form
The system checks the fields for correct formats
The system checks that no required fields are left empty
The system adds the student to the student table with a pending status
The system enrolls the student to the course or wait-list tables if the class is full with a pending status
The system shall forward the registration request to the incoming registration request pool shared by all administrators
The system shall present a confirmation screen to the user with the submitted information and the date and time of submission
AS:
If the user does not select their interested departments, the system shall not display any further course information and the system shall not allow the user to submit the form
If the user attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

Browse all administrators

3.2.3.6 – Browse all administrators

3.2.3.6.1: The system shall provide an option to browse all administrators
Steps:
The superuser selects an option to browse all administrators
The system displays a list of all administrator entries, with each entry showing the administrator’s first name, last name and email address.

3.2.3.6.2: The system shall allow superusers to access and view the details of each administrator entry

Search for Teachers

3.2.4.14 – Search for Teachers
Desc: Administrator searches for teachers
Priority: High

3.2.4.14.1 – The system shall be able to search for teachers by their first and/or last names or id
Steps:
The administrator enters the search criteria for teachers
The administrator submits the search
The system validates the search criteria to be in the correct formats
The system displays the query results
AS:
If the administrator leaves all the search criteria blank, the system fetches and displays all teacher entries
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.14.2 – The system shall be able to fetch all teachers
Steps:
The administrator selects a fetch-all option for teachers
The system displays the query results of all teachers

3.2.4.14.3 – The system shall display in the query result for each teacher entry: their first name, last name, id, email address

3.2.4.14.4 - The system shall allow the user to view the details of each teacher entry (see section 6.1.4 for all teacher properties)

3.2.4.14.5 – The system shall sort the user query results by name alphabetically by default

3.2.4.14.6 – The system shall retain and display the same user query results before and after an administrator manages a selected teacher
Steps:
The administrator performs a search
The system displays the user query results
The administrator selects an entry to manage
The administrator finishes managing the entry and returns
The system displays the same query results

Full access of information within a dataset

3.2.4.1 – Full access of information within a dataset
Desc: Administrator accesses and views specific datasets and information
Priority: High

3.2.4.1.1 - The system shall give full access of all information within a dataset to administrators.

Export attendance template

3.2.5.6 – Export attendance template
Desc: Teacher downloads the attendance template. The system exports the attendance template
Priority: High

3.2.5.6.1 - The system shall provide an attendance template(CSV) for teachers to download, with the columns:
Student’s first name
Student’s last name
Student id
Date
Teacher’s first name
Teacher’s last name

3.2.5.6.2 - The system shall provide a feature to download the attendance template­ for teachers to input attendance
Steps:
The teacher selects an option to download the attendance template
The teacher selects the download destination
The administrator confirms the template download
The system exports the template to the specified destination
The system displays a message that indicates a successful file download
AS:
If the teacher does not select the download destination, they will not be able to confirm the data export

Close online registration and course enrollment

3.2.4.16 – Close online registration and course enrollment
Desc: Administrator closes online registration and course enrollment for returning students. Registration page goes dead and the course enrollment feature for returning students deactivates on the users’ dashboards.
Priority: Medium

3.2.4.16.1 - The system shall provide an option for closing registration. A message should let users know the school is not accepting new registrations at this time.
Steps:
The administrator toggles online registration status from “open” to “closed”.
The online registration status becomes “closed”
The system makes the online registration page unaccessible. The system displays a message that indicates online registration is not open
The system does not accept registrations from over the internet
The system makes the course enrollment feature for returning students unaccessible

Management of Students

3.2.4.3 – Management of Students
Desc: Administrators should be able to manage student entities
Priority: High

3.2.4.3.1 - The system shall allow administrators to access all information about the students(see section 6.1.3 for all student properties)
Steps:
The administrator searches for one or more students
The administrator select a student for viewing
The system displays all information about the student
3.2.4.3.2 - The system shall allow administrators to edit information of students (see section 6.1.3 for all student properties)
Steps:
The administrator searches for one or more students
The administrator selects an option to edit a student
The administrator modifies one or more fields
The administrator submits the form
The system validates that the email address fields are in the correct format ‘@.*’ e.g. [email protected]
The system validates that phone number fields are in the correct format ‘( )’ e.g. 1234567890
The system returns a message that indicates a successful operation
AS:
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the administrator to fill them in
If a field is not formated correctly, the information is not submitted and the system provides an explanation on how to correctly format the input
If the student has been updated by another user between the time they started editing and clicked submit, the student information is refreshed and the admin is asked to re-confirm the update.

3.2.4.3.3 - The system shall allow administrators to approve a student for a course after they have passed their proficiency test, or drop the student from the course if they fail their test
Steps:
The administrator searches for one or more students
The administrator selects an option to edit a student
The administrator selects an option to approve or drop the student for courses that are in need of a test
The administrator confirms the approval or drop
The operation is performed and the system displays a message that indicate a successful approval or drop
AS:
If the administrator does not select any a course to approve or drop, the system shall alert the administrator

3.2.4.3.4 - The system shall allow administrators to delete a student. The system should provide secondary confirmation to ensure that they would indeed like to proceed. Upon successful deletion, the student should be marked as inactive.
Steps:
The administrator searches for one or more students
The administrator selects an option to delete a student
The system asks for confirmation that deleting the student is desired.
The administrator confirms deletion.
The system marks the student as inactive.
The system displays a message that the student was successfully deleted.

Generate report cards

3.2.4.10 – Generate report cards
Desc: Administrator requests report card generation. The system generates the report cards.
Priority: High

3.2.4.10.1 - The system shall be able to generate a student’s report card
Steps:
The administrator searches for one or more students to generate report cards on
The administrator selects a student for viewing
The administrator selects an option to generate a student’s report card for viewing
The system displays the report card

3.2.4.10.1 - The system shall be able to export the report cards as either a CSV or PDF file (PDF by default)
Repeat Step 1-4 above
The administrator selects the export type
The administrator selects the export destination
The administrator confirms the export
The system exports the report card to the destination
The system displays a message that indicates a successful report card export
AS:
If the administrator does the select the export destination, they will not be able to export the report card and the system will alert the user

Management of Students and Teachers within a Course

3.2.4.8 – Management of Students and Teachers within a Course
Desc: Administrator manages the students enrolled in a course. The system updates the course tables accordingly.
Priority: High

3.2.4.8.1 - The system shall allow administrators to manually add a student to a course section. The system shall check that the student has not taken the course, and the student is not registered in another course at the same time. If any of the conditions are not met, a warning should be displayed. Otherwise, the student should be added to the course section table.
Steps:
The administrator enters a course enrollment page and inputs the student first name, last name and date of birth in order to find the student
The administrator chooses from a list of queried students to select the one to add to a course
The administrator selects the student’s chosen departments from a given list
The system provides the student’s current completed courses in these departments and also provide a list of courses the student can take with their completed prerequisites
The administrator checks off any courses from the list of courses the student can take that the student is interested in enrolling in
The system checks the student timetable to ensure there are no scheduling conflicts.
If there are scheduling conflicts or the student is not eligible to take the course, the system will display a warning. Otherwise the system adds the student to the table and display a confirmation to the administrator

3.2.4.8.2 - The system shall allow administrators to delete a student from a course. The system should provide secondary confirmation to ensure that they would indeed like to proceed. Upon successful deletion, the student is removed from the course table.
Steps:
The administrator enters a course withdrawal page and inputs the student first name, last name and birthday in order to find the student
The administrator chooses from a list of queried students to select the one to remove from a course
The system provides a list of the student’s currently enrolled courses
The administrator chooses a course to remove the student from
The system displays a warning and requires confirmation from the administrator to continue
The administrator confirms the withdrawal from the class
The system removes the student from the course table and displays a confirmation to the administrator
AS:
If the administrator tries to confirm without choosing a course, the system alerts the administrator

3.2.4.8.3 - The system shall allow an administrator to assign a teacher to a course section. The system should verify that the teacher is not already assigned to the course. If successful, the system shall add the teacher to the course in the course table. The teacher should automatically be assigned administrative access to the course.
Steps:
The administrator enters the courseID and sectionID
The system returns the course information and a list of current teachers teaching the course
The administrator chooses an option to add a teacher to the course.
The administrator inputs the teacher name and/or userID
The system returns a list of teachers that match the previous query
The administrator chooses the teacher from the given list and confirms adding the teacher to the course
If the teacher is already assigned the current section or if the section conflicts with the teacher’s timetable the system issues a warning
Otherwise the system adds the teacher to the course table and displays a confirmation to the administrator.

Email users

3.2.3.4 – Email users
Desc: Superuser sends email to any user in the system.
Priority: Medium

3.2.3.4.1 - The system shall provide an interface for basic email functions
AS:
If the email server cannot be contacted, an error message is displayed explaining the error

3.2.3.4.2 - The system shall provide an option to select users of the system as recipients

3.2.3.4.3 - The system shall provide a select-all option to send out mass emails

Management of Incoming Registration Requests (IRR)

3.2.4.11 – Management of Incoming Registration Requests (IRR)
Desc: Administrator manages incoming registration requests from the online registration system.
Priority: Medium

3.2.4.11.1 - The system shall share one IRR pool synced across all administrators

3.2.4.11.2 - The system shall allow administrators to reject a registration request
Steps:
The administrator verifies that the student meets all enrollment conditions and the student does not already exist
The student fails the verification and the administrator rejects the registration request
The administrator is asked to confirm that they want to reject the request
When confirmed, the system dismisses the request and remove the student from the IRR pool
The system marks the student as inactive in the student table
The system emails the rejected student about the unsuccessful registration

3.2.4.11.3 - The system shall allow administrators to accept a registration request
Steps:
The administrator verifies that the student meets all enrollment conditions and the student does not already exist
The student is verified and the administrator accepts the registration request
The system dismisses the request
The system remove the student from the IRR pool
The system marks the student as active
The system automatically enrolls the student in all of its selected courses
The system emails the student about the successful registration.

Cost of Registration

The system may assist administrators in determining the cost of registration, based on the number of siblings enrolled in the school.

Management of Teachers

3.2.4.4 – Management of Teachers
Desc: Administrators should be able to manage teacher entities
Priority: High

3.2.4.4.1 - The system shall allow administrators to configure the following information for teachers.
Steps:
The administrator selects an option to edit a teacher after locating the teacher entry using the search feature
The administrator modifies one or more teacher fields (see section 6.1.4 for the properties)
The administrator submits the form
The system validates that the email address is in the correct format ‘@.*’ e.g. [email protected]
The system validates that the phone number is in the correct format ‘( )’ e.g. 1234567890
The system returns a message that indicates a successful operation
AS:
If the administrator attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the administrator to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input

3.2.4.4.1 - The system shall allow administrators to create a new teacher. The system should email the newly created teacher its generated login information.
Steps:
The administrator selects an option that allows them to create new teachers.
The administrator enters the required information for a new teacher (see section 6.1.4 for all student properties)
The administrator confirms the creation of a new teacher.
The system validates that all required fields are filled in.
The system validates that the email address is in the correct format ‘@.*’ e.g. [email protected]
The system sends an email to the address of the newly created teacher containing their login information (i.e. their username and password).
The system confirms to the administrator that the email message was successfully sent.
AS:
If the user attempts to submit the form with one or more mandatory fields blank, the system highlights the blank fields and alerts the user to fill them in
If a field is not formated correctly, the system provides an explanation on how to correctly format the input
If the email server cannot be contacted or the message fails to be sent, then the admin user is notified with instructions on how to retrieve and send the information to the teacher.

3.2.4.4.1 - The system shall allow administrators to delete a teacher. The system should provide secondary confirmation to ensure that they would indeed like to proceed. Upon successful deletion, the teacher should be marked as inactive
Steps:
The administrator selects an option to delete a teacher after locating the teacher entry using the search feature.
The system asks for confirmation that deleting the teacher is desired.
The administrator confirms deletion.
The system marks the teacher as inactive.
The system displays a message that the teacher was successfully deleted.

Access of student information

3.2.5.1 – Access of information
Desc: Teacher has access to students that are enrolled in the courses they teach
Priority: High

3.2.5.1.1 - The system shall provide teachers access to information(names, ids, attendance and assignment marks) of students that are enrolled in the courses they teach
Steps:
The teacher selects a course displayed in the dashboard
The system displays all the students enrolled in the course (first name, last name, id, dob)
The teacher selects a student to view their details
The system displays the student’s attendance and assignment marks

Trial period students

The system may allow administrators to keep track of students that are on their 3-week trial period

The system may alert administrators when their trial period has ended.

Data export

3.2.4.9 – Data export
Desc: Administrator selects data to download; the system exports the data in the specified file format

3.2.4.9.1 - The system shall provide a data export feature to export different types of data including students, classes and report cards
Priority: High
Steps:
The administrator selects an option to export data
The administrator selects the data to export
The system displays export file type options(CSV or PDF or both) depending on the data type
The administrator selects the export file type
The administrator selects the export destination by locating the destination folder
The administrator confirms the data export
The system exports the data to the export destination with the chosen file type
The system displays a message that indicates a successful data export
AS:
If the administrator does not select either one of: the data to export, the export file type or the destination, they will not be able to confirm the data export

3.2.4.9.2 - The system shall provide an option to download the available CSV templates
Priority: High
Steps:
The teacher selects an option to download the template
The teacher selects the download destination
The administrator confirms the template download
The system exports the template to the specified destination
The system displays a message that indicates a successful template download
AS:
If the teacher does not select a download destination, they will not be able to confirm the download

3.2.4.9.4 - The system shall provide a student registration template with the columns for all required fields(see section 6.1.3 for all student properties)
Priority: High

3.2.4.9.5 - The system shall provide a teacher template with the columns for all required fields(see section 6.1.4 for all teacher properties)
Priority: Low

3.2.4.9.6 - The system shall provide a course section template with the columns for all required fields to create course sections(see section 6.2.3 for all section properties)
Priority: Low

Management of documents

3.2.5.4 - Management of documents
Desc: Teacher manages the documents in the courses they teach. The system updates the course database accordingly.
Priority: High

3.2.5.4.1 - The system shall provide an interface to upload, edit, download, view and delete documents
Steps:
The system provides a list of course assignments with options to upload, edit, download, view, and delete documents
If the teacher chooses to upload or edit a document, the system checks to make sure it is in proper format and does not exceed the memory cap. Then saves the document or link into the database.
If the teacher chooses to download, view, or delete a document, the system requests confirmation from the teacher and then accesses the database.

3.2.5.4.2 - The system shall display all documents for a course in a table view

3.2.5.4.3 - The system shall provide the option to upload document from the local machine, or attach a link to a document hosted elsewhere (ie. Google Docs). The document is added to the course table.
Steps:
The user selects a document on their local machine
The document is accessed by the system and uploaded to google docs (or other external service)
A link to the document is added along with the other document meta-information to the database
AS:
If the upload is cancelled or otherwise incomplete, the link to the document is not created and the document information is not added to the database

3.2.5.4.4 - The system shall allow teachers to modify the description for the document

3.2.5.4.5 - The system shall provide option to download a document to the local machine

3.2.5.4.6 - The system shall allow documents to open inline without having to be downloaded.

Full access of datasets

3.2.3.1 – Full access of datasets
Desc: Superuser accesses and views all datasets and information
Priority: High

3.2.3.1.1 The system shall give full access of all information and datasets to superusers

Purge Inactive Records

3.2.3.5 – Deletion of Inactive Records
Desc: Superusers should be able to delete inactive data in the database. This does not give superusers the ability to delete any active records in the database. The system deletes the specified data from the database.
Priority: Med

3.2.3.5.1: The system shall provide an option to filter data that has been inactive for X amount of years

3.2.3.5.1: The system shall list a maximum of 50 entries per page. Any overflowing entries can be listed in subsequent pages

3.2.3.5.1: The system shall provide a feature for superusers to delete inactive data in the database
Steps:
The superuser selects the type of inactive data to delete, including the following:
School
School
Department
Course
Course section
Assignment/Document
User
Administrator
Teacher
Student
The administrator can choose to filter records with an inactive span of X years. If the administrator chooses not to filter, the system displays a list of all the inactive records in the system
The administrator selects an option to delete all the listed records permanently
The system warns the administrator that the action is irreversible
The administrator confirms the deletion
The system deletes the records, their metadata and any associating data permanently
AS:
If the superuser does not select the type of inactive data to delete, the system shall not display any list of records and shall not provide the option to delete

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.