| Name | Registration Number |
|---|---|
| Kato Adrian Mugerwa | 24/U/25909/PS |
| Tino Zoe Ramona | 24/U/11508/PS |
| Akankunda Rita | 24/U/03072/PS |
| Nakawunde Cana | 24/U/08407/PS |
| Ayesiga Calvin Rodney | 24/U/04101/PS |
| Nabasirye Nicole | 23/U/0946 |
Link to deployed Project: "https://aits-group-c.netlify.app/"
** Overview The Academic Issue Tracking System (AITS) is a comprehensive web-based platform developed to efficiently manage academic record-related issues. This system allows students to log concerns such as missing marks, appeals, and corrections, while providing administrators and lecturers with tools to track, assign, and resolve these issues in a transparent manner.
** Features Student: Log issues, view status, receive notifications.
Lecturer: View assigned issues, update resolutions.
Academic Registrar: Manage and assign issues, resolve directly.
Core Functionality Issue submission with categorization (missing marks, appeals, corrections) Role-based dashboards with personalized views Issue assignment and tracking workflow Real-time status updates and notifications
Technical Stack Backend Framework: Django API: Django REST Framework Database: PostgreSQL
Frontend Framework: React State Management: Redux Notifications: React Toastify
-
Navigate to the Project Directory:
cd aits_project -
Backend Dependencies:
- Create a Virtual Environment: Create a new virtual environment in the project directory. This step ensures that all dependencies are isolated for the project:
python -m venv venv
- Activate the Virtual Environment:(make sure you're in the backend folder first)
On Windows:
venv\Scripts\activate
- Install Dependencies: Once the virtual environment is activated, they will install the required dependencies using the requirements.txt file:
pip install -r requirements.txt
-
Frontend Dependencies:
- Navigate to the
frontendfolder:cd ../frontend - Install Node.js dependencies:
npm install
- Navigate to the
-
Navigate to the Backend Directory:
cd ../backend -
Run the Backend Server:
python manage.py runserver
- The backend will be available at
http://127.0.0.1:8000/.
- The backend will be available at
-
Create a Superuser (If Needed):
- If you don't have a superuser and need one, create one to access the Django admin panel:
python manage.py createsuperuser
- If you don't have a superuser and need one, create one to access the Django admin panel:
-
Navigate to the Frontend Directory:
cd ../frontend -
Run the Frontend Server:
npm run dev
- The frontend will be available at
http://localhost:5173/.
- The frontend will be available at
-
Signup:
- Go to
http://localhost:5173/signupto create a new account.
- Go to
-
Login:
- Go to
http://localhost:5173/loginto log in to your account.
- Go to
-
Create an Issue:
- After logging in, you will be redirected to the dashboard where you can create and view issues.
-
View Your Issues:
- Your created issues will be displayed in the dashboard.
- Database: Create a PostgreSQL database and update settings.py with your credentials
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'your_db_name', 'USER': 'your_db_user', 'PASSWORD': 'your_db_password', 'HOST': 'localhost', 'PORT': '5432', } }
Then apply migrations python manage.py migrate python manage.py runserver
-
Frontend:
- Use
npm run devto start the frontend server. - Ensure the backend server is running (
python manage.py runserver) for the frontend to work properly.
- Use
User Guide Student Workflow 1.Log in with student credentials 2.Navigate to "Submit Issue" from the dashboard 3.Complete the issue form with all required details 4.Track issue status on the dashboard 5.Receive notifications when issue status changes
Academic Registrar Workflow 1.Log in with administrative credentials 2.View all submitted issues on the dashboard 3.Review issue details and assign to appropriate lecturers 4.He is notified by the lecturer after resolving the issue who later notifies the student that the issue has been resolved 5.Monitor overall system performance and issue resolution rates
Lecturer Workflow 1.Log in with lecturer credentials 2.View assigned issues on the dashboard 3.Investigate and address the academic issues 4.Update issue status and provide resolution details 5.Close resolved issues by notifying the registrar
Development Process This project follows Agile methodology with: Weekly sprints Regular stand-up meetings Frequent code reviews