Skip to content

Web application that provides a streamlined and user-friendly platform for students to register for courses offered by their institution.

Notifications You must be signed in to change notification settings

SarahAbuirmeileh/Django-RegistrationSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Course Registration System 💻

Description 📌

Welcome to the Course Registration System! This web application aims to provide students with a streamlined and user-friendly platform to register for courses offered by their institution. The system facilitates tasks such as searching for courses, viewing course details, adding courses to schedules, and managing current schedules.

Objective 🎯

The primary objective of this web application is to enhance the course registration process for students by providing an intuitive interface. The system aims to simplify course selection, scheduling, and management while ensuring efficiency and accuracy.

Functionality ⚙️

  • User Authentication: Students can create new accounts or log in with existing credentials.
  • Course Search: Students can search for courses by course code, course name, or instructor name.
  • Course Details: Detailed information about courses, including descriptions, prerequisites, schedule, and available spots, can be viewed.
  • Schedule Management: Students can add courses to their schedule, ensuring availability, meeting prerequisites, and avoiding schedule conflicts.
  • View Schedule: Students can view their current course schedule, organized by day and time.
  • Notifications: The system provides notifications and reminders for important deadlines.
  • Reports and Analytics: The system generates reports and analytics on course enrollment and popularity.
  • Prerequisite Validation: Only courses for which students have completed prerequisites are displayed.

Architecture 📐

  • Model-View-Template (MVT): The application is built using the MVT architecture pattern.
  • Model Layer: Handles database interaction and application logic.
  • View Layer: Processes user input and retrieves data from the Model layer.
  • Template Layer: Defines HTML templates for the user interface.

Database 🗃

  • The database includes tables for students, courses, course schedules, and student registrations.
  • Each entity has unique identifiers and relevant attributes.
  • The System utilizes MySQL as the underlying database management system.

    Here is the EER model: course-reg

Security 🔐

The system implements robust security measures to protect user data and prevent unauthorized access. Passwords are encrypted before storing them in the database. Secure session management prevents session hijacking. Access control is based on user roles (e.g., student or administrator).

Testing 📝💯

Thorough testing ensures the functionality and usability of the system, covering all features and scenarios.

Deployment 🌏

The system is deployed on a secure and reliable web server for optimal performance and accessibility.

Contribution 👩‍💻

We welcome contributions from the community to enhance the Course Registration System.