Page 1 of 5
project-b6262f24
Introduction
The project, named "Hustlers – Automatic Timetable Scheduling System," aims to develop an AI-powered Automatic College Timetable Scheduling System. The system will generate conflict-free timetables for all departments automatically using advanced scheduling algorithms. This document outlines the system requirements for the project.
System Overview
The "Hustlers – Automatic Timetable Scheduling System" is designed to automate the creation of college timetables, ensuring they are conflict-free and optimized for all departments. The system will leverage Constraint Satisfaction Problem (CSP), Backtracking, Greedy Optimization, and Heuristic Selection to achieve this goal. It will feature a modern responsive UI built with Java Spring Boot, Bootstrap 5, and other web technologies.
Page 2 of 5
Functional Requirements as Story Points
- As an Admin, I should be able to log in securely using Spring Security.
- As an Admin, I should be able to view a dashboard displaying department cards.
- As an Admin, I should be able to manage students, sections, subjects, faculty, rooms, and labs for each department.
- As an Admin, I should be able to generate timetables for each department.
- As an Admin, I should be able to enter student strength and automatically create sections.
- As an Admin, I should be able to enter subject details including code, name, type, semester, department, credits, periods per week, and faculty information.
- As an Admin, I should be able to manage faculty details including name, ID, department, email, phone, maximum hours per week, subjects handling, and availability.
- As an Admin, I should be able to manage room details including type, capacity, and availability.
- As an Admin, I should be able to define working days and periods.
- As an Admin, I should be able to ensure the scheduling engine satisfies all constraints.
- As an Admin, I should be able to regenerate timetables without losing saved data.
- As an Admin, I should be able to display timetables in a professional table format.
- As an Admin, I should be able to generate and display automatic faculty timetables.
- As an Admin, I should be able to generate separate timetables for every section.
- As an Admin, I should be able to generate reports on faculty workload, subject distribution, room and lab utilization, department summary, and weekly statistics.
- As an Admin, I should be able to export timetables in PDF, Excel, CSV formats, and print them.
User Personas
- Admin: Responsible for managing the entire scheduling system, including data entry, timetable generation, and report generation.
Core User Flows
- Admin Login: Admin logs in -> Views dashboard -> Manages departments and data -> Generates timetable -> Views and exports reports.
- Timetable Generation: Admin enters student strength -> System creates sections -> Admin enters subject and faculty details -> System generates timetable -> Admin reviews and exports timetable.
Page 3 of 5
Visuals Colors and Theme
- primary: #1E3A8A (Deep Blue)
- primary_light: #3B82F6 (Light Blue)
- secondary: #F97316 (Orange)
- accent: #10B981 (Green)
- highlight: #F59E0B (Amber)
- bg: #F3F4F6 (Light Gray)
- surface: rgba(255, 255, 255, 0.8)
- text: #111827 (Dark Gray)
- text_muted: #6B7280 (Muted Gray)
- border: rgba(209, 213, 219, 0.2)
Signature Design Concept
The homepage will feature an interactive timetable visualization where users can drag and drop subjects, faculty, and rooms to create a custom timetable. The interface will use a dynamic grid layout that updates in real-time, providing instant feedback on conflicts and available slots. The design will incorporate smooth animations using motion/react to enhance user interaction, making the scheduling process intuitive and engaging.
Page 4 of 5
Landing Hero Motion Brief
The landing page will feature a continuous animation of a timetable being automatically generated. The animation will show subjects, faculty, and rooms dynamically filling in slots, highlighting the AI-driven scheduling process. The animation will loop every 10 seconds, demonstrating the system's efficiency in resolving conflicts and optimizing schedules. Users can interact with the animation by hovering over elements to see detailed information about each timetable entry.
Interaction Model & Motion Direction
- Intended Interaction Model: Animated
- The landing page will feature moderate scroll-triggered reveals and hover transitions, enhancing the user experience with polished animations and interactive elements.
Non-Functional Requirements
- The system must be highly responsive and accessible across different devices and screen sizes.
- Ensure data security and privacy, especially for sensitive information like faculty and student details.
- The application should be scalable to accommodate future enhancements and additional departments.
Tech Stack
- Frontend: Thymeleaf or React, Bootstrap 5, HTML, CSS, JavaScript
- Backend: Java 21, Spring Boot 3, Spring MVC, Spring Security, Spring Data JPA, Hibernate
- Database: MySQL
- Build Tool: Maven
Page 5 of 5
Assumptions and Constraints
- The system assumes a maximum of 60 students per section.
- The scheduling engine must adhere to all defined constraints to ensure conflict-free timetables.
- The application will be deployed in an environment supporting Java Spring Boot applications.
Glossary
- CSP: Constraint Satisfaction Problem
- CRUD: Create, Read, Update, Delete
- UI: User Interface
- AI: Artificial Intelligence
- MVC: Model-View-Controller
This document provides a comprehensive overview of the system requirements for the "Hustlers – Automatic Timetable Scheduling System," ensuring a robust and efficient solution for automatic timetable scheduling.
No comments yet. Be the first!