Skip to content
YV-8Public

About

Unitutor proyect

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

UniTutor

Description Unitutor

Problem statement

Modern academic platforms require efficient systems to handle user registration, information management, and scheduling. Our team identified key challenges in existing solutions:

- Over-reliance on teachers for student scheduling

- Inflexible mentor/student role management

- Lack of self-service capabilities for users

Evaluated solutions

Option 1: teacher-managed system

Approach: - Students can be mentors, but teachers must:

- Register all users

- Assign schedules/subjects manually

Drawbacks:

❌ High organizational complexity

❌ No student autonomy in schedule selection

❌ Time-consuming for teachers

Option 2: hybrid student/mentor access

Approach:

  • Students access the platform to:
    • Register as regular students OR mentors
    • Mentors self-manage mentorship schedules
    • All students self-enroll in subjects/mentorships

Drawbacks:

❌ Role confusion (mentor vs student)

❌ Potential scheduling conflicts

❌ No unified calendar view

Then the option that the group choose

Option 3: Self-service student portal

Approach:

  • Students autonomously:
    • Register for classes
    • View integrated calendar
    • Manage profiles
  • All data syncs with a centralized database

Why we chose this:

Project overview

The group choose thisi for these reasons: -Efficiency: Reduces administrative workload -User Empowerment: Students control their schedule -Scalability: Handles growing user bases seamlessly -Data Integrity: Single source of truth in the database

Unitutor is an academic self-service platform that:

  • Empowers students to manage their own course registration

  • Reduces administrative workload on staff

  • Automates classroom/student assignment processes

Key benefits

  1. 24/7 Accessibility: users can manage schedules anytime

  2. Error reduction: minimizes manual data entry mistakes

  3. Resource optimization: frees teachers for pedagogical tasks

  4. Customization: adapts to individual learning paths

  5. Student autonomy: view assigned subjects

  6. Administrative efficiency: Eliminates manual student-classroom matching

  7. Teacher focus: enables concentration on teaching

Implementation requirements

Component Description
Database PostgreSQL/MongoDB for user/course tracking
Frontend React/Vue with calendar integration
Authentication Role-based access control (JWT/OAuth)
API Endpoints For registration, scheduling, and data sync

"The best systems don't just solve problems – they empower users." (Team Consensus)

Description

The Unitutor project is a project for the benefit of students. It's a project that not only helps them but also helps the administration, so they don't have to choose which student will go to which classroom and with which student. Teachers also don't need to enter their subject for students to register. Now, students register for their assigned classes. This has many benefits, some of which are:

  • Students can register and see their assigned subjects.
  • Students who repeat subjects can register themselves for the subjects they need to retake.
  • The administration has more time to develop other areas without worrying about registering students.

Technologies and tools

Category Technology/Tool Purpose
Primary Language Java Backend system development
Development Environment IntelliJ IDEA IDE for coding and debugging
Database MySQL Persistent data storage
DB Connection JDBC Interface for database operations
Version Control Git/GitHub Collaborative source code management

Database structure

The database's structure is based on knowledge. For someone to understand it, the context is that some students want to register in the platform and must register on the platform. Afterward, they can choose between these options:

Requires student

The system requires student registration before accessing these options:

  1. Course registration
  2. Schedule viewing
  3. Academic history tracking

Prerequisites:

To make it easy for you to get started with this proyect, you need: [] 1.Workbrench MYSQL sever 3306 [] 2.Java 17 [] 3.Gradle 7+ [] 4.Gitlab

Installation Guide

1. Cloning the Repository

git clone https://github.com/your-repo/unitutor.git
cd unitutor

2. Preparar base de datos:

mysql -u root -p
CREATE DATABASE Unitutor;

3. Code for the project

Use the intellij or vs code or java for enter the code of the program put the:

-src/main/java/org/example

Here you have all code: - DataBase.java -displaySchedule.java -InscriptionManager.java -Login -Main.java -PersonalInformation.java

The file DataBase.java you can see:

public class DataBase {
    private static DataBase instance;
    private Connection com;

    public DataBase() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            this.com = DriverManager.getConnection(
                "jdbc:mysql://localhost:3307/Unitutor?useSSL=false",
                "root",
                "root123");
        } catch (Exception error) {
            System.out.println("Error: " + error);
        }
    }
    
    public static synchronized DataBase getInstance() {
        if (instance == null) {
            instance = new DataBase();
        }
        return instance;
    }
    
    public Connection getConnection() {
        return com;
    }
}

The explanation is basic: the code implements a connection to MySQL that has only a single global instance of the connection. It uses the Singleton pattern with synchronization for security in multithreaded environments, loading the MySQL JDBC driver and using the specified parameters (username and password) in the connection, where each user must change theirs respectively.

The steps to follow: [] -change user [] -password

Now you can start the program if you've opne the workbrench MYSQL, so this project can be to open in VSCode, intellij and other apps with terminal.If you need help to install the apps here leave some link:

Workbrench MYSQL:
https://dev.mysql.com/doc/workbench/en/wb-installing-windows.html

VSCode:
https://code.visualstudio.com/

Intellij IDEA:
https://support.academicsoftware.eu/hc/es/articles/360006978997-C%C3%B3mo-instalar-IntelliJ-IDEA-Community-Edition

Usage

This app can be used for academic purposes at various levels, including primary, secondary, university, and even graduate or master's degrees. Since it's only for student use, it's easier to use for your own use.

Support

If you have problems with any step or need help, you can use this email:

unitutor.jala@gmail.com

Roadmap

Authors and acknowledgment

The authors are: - Sergio Vajjellos - Monica Escobar - Erwin Sandoval - Samuel Quispe - Rosa Poma

This group worked in order to demonstrate their software development skills, which means it is a non-profit job.

Project status

Currently the project is in a finalized state, however, it is not ruled out that in the future the group may want to update the project or improve it.

About

Unitutor proyect

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages