Skip to main content

Introduction

The objective of this project is to design a tutoring mobile application developed using Flutter and Firebase, which allows tutors and students to schedule and manage their tutoring sessions. The application will provide a user-friendly interface for both tutors and students, allowing them to create profiles, search for available tutors or students, and manage their tutoring sessions.

note

This project was ultimately designed and developed as a student project for CMPT 395, a 4th year Introductory course on Software Engineering, taught by Dr. Mahmoud El-Saadany at MacEwan University. The primary purpose of this project is to gain experience with software engineering principles, practices, and tools, including requirements gathering, design, implementation, testing, and deployment.

Background

As the population increases, the cost of public education has risen significantly, creating substantial financial pressure. Government funding, feeling this pressure, has become increasingly reluctant to allocate more resources. This has led to a lower quality of education that often lacks the personalized, individualized attention many students need. Many families—especially those in the middle and lower classes—view this as a serious problem, considering quality education to be the only path to higher socio-economic status.

This situation appears to have spurred an increased demand for private tutoring, as families seek complementary solutions to enhance public education and maximize their children’s learning opportunities without replacing the existing system. Offering a high-quality tutoring service is no small feat, as numerous challenges impose restrictions on an already demanding task for both tutors and students. One of the most significant barriers is designing a schedule that accommodates the needs of both parties. Poor scheduling practices not only lead to high tutor turnover rates but also leave students frustrated. Additionally, other challenges further complicate the process.

Over the years, many approaches have been developed to address these issues, and we have analyzed the strengths and weaknesses of each in order to propose a robust solution.

Analysis of Existing Solutions

Tutor applications, services, and websites have been a longstanding feature of the educational landscape, providing convenient ways for students to access academic support. Notable examples include Chegg, Course Hero, Skooli, and Varsity Tutors. While these platforms differ in specific features, pricing models, and subjects offered, most follow a similar structure: they connect learners with tutors, often through subscription services or pay-per-session formats, with options for both live, video-based tutoring and text-based on-demand assistance.

  1. Chegg

    • Operates on a paid subscription model.
    • Allows students to purchase or rent textbooks.
    • Offers Chegg Study, a service where subject-matter experts provide step-by-step solutions for textbook problems.
    • Provides on-demand and scheduled tutoring services in select subjects (e.g., UI/UX Design, Data Analytics, Web Development, Data Science, Cybersecurity).
    • Integrates an online calendar for booking sessions, as well as homework support.
  2. Course Hero

    • Uses a paid subscription model, with limited free resources and more comprehensive paid plans.
    • Focuses on course-specific materials and resources.
    • Expert tutors available 24/7 to answer questions and provide feedback. (Limited information if available over video or just text-based feedback.)
    • AI companion used for solutions, support for assignments, and explaining concepts.
  3. Skooli

    • Emphasizes a one-on-one learning experience in a virtual “classroom” setting that can be accessed from any device.
    • Uses a pay-as-you-go model, charging hourly or by the minute.
    • Primarily offers video call tutoring, with limited ongoing feedback once a session concludes.

Overall, these established services share common attributes: a paid component (either subscription or pay-as-you-go), virtual scheduling tools that enable real-time or pre-arranged meetings, and a broad range of academic subjects. One area the services lack is the level of relationship between tutor and student. There is not a high level of tutor engagement, with most services using AI to provide solutions or one-time live tutors. This shows that the market prioritizes convenient and easy-to-use study methods and scheduling.