Skip to content

uLearnify Project Requirements

Executive Summary

Many learning difficulties are still not well-understood by vast majority of teachers and school boards. This leads to special needs children often recieving a lack of attention and services in traditional schooling systems.

uLearnify is an Online Remedial Literacy Tutorial Program that will allow teachers to create assessments, enter students answers, and track other aspects of their performace such as behavioural indicators. Teachers can then associate test answers and other indicators with skills.

This tool will allow for properly graphing literacy learning patterns for further research. This will lead to a better understanding of learning difficulties which in turn will help teachers develop a better understanding of how to cater towards special needs children.


Project Glossary

  • Test - A set of questions defined by a teacher.
  • Assessments - An instance of a test containing the answers of a student.
  • Answer - A specific answer of a student for question in an assessment.
  • Skill - A skill defined by a teacher, usually associated with certain answers on assesments.
  • Behavioural Indicator - Aspects outside of assessments defined by teachers that can be linked to skills.

User Stories

US 1.01 - Teacher Login

As a Teacher, I want to authenticate with my desired email and password, so that I can get access to the app's functionalities.

Acceptance Tests

  1. Teacher is redirected to dashboard when entering correct username and password
  2. Teacher can not sign in with correct email and incorrect password
  3. Teacher can not sign in with incorrect email
  4. Teacher cannot sign in with an incorrect password.
  5. Teacher can not access uLearnify functionalities without signing in

Story Points: 3

US 1.02 - Sign-up

As a Teacher, I want to signup with my desired email and password when I recieve a signup invitation, so that I can get access to the app's functionalities.

Acceptance Tests

  1. When the teacher clicks on the signup link in the invitation email. They are redirected to the signup page.
  2. When the teacher is on the signup page, they can sign up with their desired email address and password.
  3. When the teacher completes their signup, logging in with the corresponding email and password is successful.

Story Points: 2

US 1.03 - Direct Login After Signup

As a Teacher, I want to be redirected to the home page when i complete my signup so that i dont have to login right after i sign up.

Acceptance Tests

  1. When a teacher successfully completes their signup, they are redirected to the home page.
  2. When a teacher successfully completes their signup and refresh the page, they dont have to login again.

Story Points: 1

US 1.04 - Google Sign-in

As a Teacher, I want to be able to sign in using google so that i dont have to type in my username and password.

Acceptance Tests

  1. When a teacher is at the login page, they can use google to sign in successfully.

Story Points: 2

US 1.05 - Admin Login

As an Admin, I want to be able to sign in using my email and password so that I can get access to the app's functionalities.

Acceptance Tests

  1. Admin is redirected to dashboard when entering correct username and password
  2. Admin can not sign in with correct email and incorrect password
  3. Admin can not sign in with incorrect email
  4. Admin cannot sign in with an incorrect password.
  5. Admin can not access uLearnify functionalities without signing in

Story Points: 2

US 2.01 - Invitation Emails

As an admin, I want I want to send an invite email for teachers so that they can sign up.

Acceptance Tests

  1. Admins are able to send invite emails.
  2. Teachers are able to receive invite emails and sign up properly.

Story Points: 3

US 2.02 - Admin Teacher View

As an admin I want to be able to view all teachers and their students so that I can manage who is using the website.

Acceptance Tests

  1. Admins can see all the teachers and their students.

Story Points: 2

US 2.03 - Admin Test View

As an admin I want to be able to view all tests so that I monitor their contents.

Acceptance Tests

  1. Admins have access to all tests.

Story Points: 2

US 3.01 - View Student Profile

As a Teacher, I want to be able to see a student profile that includes their name and behavioral indicators so that I can access their information.

Acceptance Tests

  1. Teachers can view a list of students.
  2. Teachers can select a student profile.
  3. Teachers can view the name and behavioral indicators of a student.

Story Points: 2

US 3.02 - View Past Assessments

As a teacher, I want to be able to see a list of past students' assessments when I'm on their profile, so that I can monitor their performance.

Acceptance Tests

  1. Teacher can view a list of students.
  2. Teachers can select a student profile.
  3. Teachers can view a list of past assessments which includes some basic information about the assessments.

Story Points: 2

US 3.03 - View Upcoming Assessments

As a teacher, I want to be able to see a list of upcoming students' assessments when I'm on their profile, so that I can plan my schedule.

Acceptance Tests

  1. Teachers can see a list of students' upcoming assessments on their profile.
  2. Each upcoming Assessment has the date for which it is scheduled.

Story Points: 2

US 3.04 - Assessments Search

As a teacher, I want to be able to search for assessments, by name, that have been taken by a student. So that I can find their assessments faster.

Acceptance Tests

  1. Teachers have access to a search bar, which provides a ranking of assessments based on the similarity in name.

Story Points: 3

US 3.05 - Student Behavioural Indicators

As a teacher, I want to add and keep track of behavioral indicators of students so that I can monitor learning aspects outside of assessments.

Acceptance Tests

  1. Teacher can add new behavioral indicators.
  2. Teacher can update behavioral indicators for individual students.

Story Points: 2

US 4.01 - Creating Tests

As a teacher, I want to be able to define a test, so that I can adminster assessments to students.

Acceptance Tests

  1. Teachers can create a test, defining questons which may be either long answer or multiple choice.
  2. Teacher can click a button to save the test created test.

Story Points: 5

US 4.02 - Editing Tests Before Administration

As a teacher I want to be able to edit a test before I've administered any assessments using that test so that I can make ammendments to the questions.

Acceptance Tests

  1. Teachers can edit the test, as long as it has not been used for any assessments.

Story Points: 5

US 4.03 - List of Tests View

As an teacher I want I want to be able to see a list of tests so that i can select appropriate tests for different students.

Acceptance Tests

  1. Teacher can click in sidebar to go to tests page.
  2. Teacher can view a scrollable list of all the tests they have created.
  3. Teacher can view the test name, test type, and number of questions in the test.

Story Points: 2

US 5.01 - View Assessments

As a Teacher, I want to be able to see all the information associated with an assessment.

Acceptance Tests

  1. Teachers can see the ID of the assessment
  2. Teachers can see the date of the assessment
  3. Teachers can see the name of the test
  4. Teachers can see the name of the student who took the associated test
  5. Teachers can see the test questions
  6. Teachers can see the test answers 7 Teachers can see the skills associated with each test answer

Story Points: 3

US 5.02 - Modify Assessments

As a Teacher, I want to be able to modify assessments, so that I can edit student answers.

Acceptance Tests

  1. Teachers can modify answers of any assessment
  2. Teachers can modify skills associated with any answer

Story Points: 3

US 6.01 - Add and Remove Skills

As a teacher, I want to be able to add and remove skills from a base set of skills so that I can track specific skills.

Acceptance Tests

  1. Teacher is provided with a base set of skills
  2. Teacher can add new skills
  3. Teacher can remove skills

Story Points: 5

US 6.02 - Associate Skills with Answers

As a teacher, I want to be able to associate test answers with skills so that I can keep track of what skills each test answer is related to.

Acceptance Tests

  1. Teacher can add related skills to test answers
  2. Teacher can remove related skills from test answers

Story Points: 3

US 7.01 - Sidebar

As a teacher, I want to have a sidebar with links to Students, Tests, Assessments, Settings, Skills and Logout so that I can quickly access the app’s functionality.

Acceptance Tests

  1. Teacher can see a sidebar with Students, Assessments, Tests, Skills, Settings and Logout
  2. Teacher can click Students to see a list of students
  3. Teacher can click Assessments to see a list of assessments
  4. Teacher can click Settings to see a settings page
  5. Teacher can click Logout to logout.

Story Points: 2

US 7.02 - Calendar

As a teacher, I want to see a calendar so that I can see the dates of future assessments.

Acceptance Tests

  1. Teacher can see a calendar
  2. Teacher can click a date to see assessments scheduled on that date
  3. Teacher can click on an assessment to view more details

Story Points: 5

US 7.03 - Student List

As a teacher, I want to see a list of my students so that I can see each student’s skills, behaviour indicators and other information.

Acceptance Tests

  1. Teacher can see a list of their students
  2. Teacher can select a student
  3. With a selected student, teacher can see general information about the student
  4. With a selected student, teacher can see a list of the student’s skills
  5. With a selected student, teacher can see a list of the student’s behaviour indicators

Story Points: 3

US 8.01 - Schedule Assessments

As a Teacher, I want to be able to set the date on assessments so that I can schedule an assessment for the future.

Acceptance Tests

  1. When a teacher creates an assessment, they can assign a date.

Story Points: 1

US 8.02 - View Scheduled Assessments

As a teacher I want to be able to see assessments scheduled for any specific day, so that I can plan my time.

Acceptance Tests

  1. When the teacher clicks a day on the calendar, they can see the scheduled assessments.

Story Points: 2

US 9.01 - Student or Parent Emails

As a Teacher, I want to be able to send emails to students or their parents for upcoming assessments, assessment results, etc so they can be kept informed of their progress.

Acceptance Tests

  1. A teacher can view a list of students with buttons which initiate the email flow.
  2. A teacher can click any of the buttons and be redirected to an email app with the destination address set to the email of the associated student.

Story Points: 8

US 9.02 - Teacher Emails

As a Teacher, I want to be able to send emails to other teachers.

Acceptance Tests

  1. A teacher can view a list of teachers with buttons which initiate the email flow.
  2. A teacher can click any of the buttons and be redirected to an email app with the destination address set to the email of the associated teacher.

Story Points: 2

US 9.03 - Admin Emails

As an Admin, I want to be able to send emails to specific teachers.

Acceptance Tests

  1. An Admin can view a list of Admins with buttons which initiate the email flow.
  2. An Admin can click any of the buttons and be redirected to an email app with the destination address set to the email of the associated teacher.

Story Points: 2


MoSCoW

Must Have

  • US 1.01 - Teacher Login
  • US 1.05 - Admin Login
  • US 3.01 - View Student Profile
  • US 3.02 - View Past Assessments
  • US 4.01 - Creating Tests
  • US 5.01 - View Assessments
  • US 5.02 - Modify Assessments
  • US 6.01 - Add and Remove Skills
  • US 6.02 - Associate Skills with Answers
  • US 7.01 - Sidebar
  • US 9.01 - Student or Parent Emails

Should Have

  • US 1.02 - Sign-Up
  • US 2.01 - Invitation Emails
  • US 2.02 - Admin Teacher View
  • US 2.03 - Admin Test View
  • US 3.03 - View Upcoming Assessments
  • US 3.05 - Student Behavioural Indicators
  • US 4.03 - List of Tests View
  • US 7.03 - Student List
  • US 8.01 - Schedule Assessments
  • US 9.02 - Teacher Emails

Could Have

  • US 1.03 - Direct Login After Signup
  • US 3.04 - Assessments Search
  • US 4.02 - Editing Tests Before Administration
  • US 5.04 - Search Assessments
  • US 7.02 - Calendar
  • US 8.02 - View Scheduled Assessments
  • US 9.03 - Admin Emails

Would Like But Won't Get

  • US 1.04 - Google Sign-in

Similar Products

  • Edbase
    • Exam creation tool
      • Question and exam authoring
      • Assigning exams to students for them to take
      • Student grades and total results are presented
    • We can use GUI for test creation for inspiration
    • Although it's assignment system has students directly accessing the tests, we can take inspiration in how it assigns students assessments
  • SchoolInsight
    • Web-based student management software
      • Management of student demographics and storing student information
      • Scheduling functionality, both simple and advanced class scheduling
      • Lunch meal-card system, and discipline tracking
    • We can take inspiration in how it displays and organizes student records
    • This software has scheduling functionality, which we can take inspiration from in our own project

Open-Source Products

  • OpenAdmin
    • Open source, web-based school administration program
      • Student demographics and attendance handling
      • Online gradebook and report card generation
      • Special needs site for tailoring to individual students
    • How it handles storing student and teacher information with its database could be beneficial to examine
    • We can take inspiration from its special-needs functionality, which allows extra customization to add aspects such as objectives for individual students.

Technical Resources

Source Code

Backend: Node.js + PostgreSQL + Sequelize ORM

Deployment: Cybera RAC

Frontend: React