Low Level Design FoodRecommendatio v0.3(Changed)
Low Level Design FoodRecommendatio v0.3(Changed)
i DESIGN (LLD)
Reviews:
Versio Date Reviewer Comments
n
0.2 29 – June Karan Document Content , Version Control and Unit Test Cases to
- Singh be added
2024 Karki
Approval Status:
Version Review Reviewed By Approved By Comments
Date
LOW LEVEL
iii DESIGN (LLD)
Contents
1. Introduction 1
1.1. What is Low-Level design document? 1
1.2. Scope 1
2. Architecture 2
3. Architecture Description 6
3.1. Admin 6
3.2. Login 6
3.3. Add Teacher Error! Bookmark not defined.
3.4. Manage Teacher 6
3.5. Approve Registration Error! Bookmark not defined.
3.6. Teacher Error! Bookmark not defined.
3.7. Teacher Login Error! Bookmark not defined.
3.10. Schedule Appointment Error! Bookmark not defined.
3.11. View All Appointments Error! Bookmark not defined.
3.12. View Messages Error! Bookmark not defined.
3.13. Student Error! Bookmark not defined.
3.14. Search Teacher Error! Bookmark not defined.
3.15. Book Appointment Error! Bookmark not defined.
3.16. Send Messages Error! Bookmark not defined.
3.17. Login/Resgistration Error! Bookmark not defined.
4. Unit Test Cases 6
LOW LEVEL
1
DESIGN (LLD)
1. Introduction
1.2. Scope
Low-level design (LLD) is a component-level design process that follows a step-by-
step refinement process. This process can be used for designing data structures, required software
architecture, source code and ultimately, performance algorithms. Overall, the data organization
may be defined during requirement analysis and then refined during data design work
2 LOW LEVEL
DESIGN (LLD)
2. Architecture
LOGIN
Manage Approve
ADMIN Add Teacher
Teacher Registration
View
Message
Registration/
Login
3 LOW LEVEL
DESIGN (LLD)
3. Architecture Description
1 Admin
1.1 Login
User Management Service: Admins can add new teachers by providing necessary details such
as name, email, subjects taught, and availability.
Database Interaction: The new teacher's information is stored in the user table of the database
with the role set as "teacher".
User Management Interface: Admins can view, update, or delete teacher profiles.
CRUD Operations: Implemented via RESTful APIs for creating, reading, updating, and
deleting teacher information.
Search and Filter: Allows admins to search and filter teacher profiles based on various criteria.
Registration Workflow: New teacher registrations or updates are subject to admin approval.
Notification Service: Sends email/SMS notifications to teachers upon approval or rejection.
Approval Interface: Admin interface to review and approve/reject pending registrations.
2. Teacher Module
3. Student Module
3.1 Registration/Login
Search Interface: Students can search for teachers based on subjects, availability, and other
criteria.
Search Service: Interacts with the database to fetch and display relevant teacher profiles.
Booking Interface: Students can view available time slots and book appointments.
Appointment Service: Manages booking requests, updates the schedule, and sends
confirmation notifications.
Conflict Management: Ensures no double booking of the same time slot.
Messaging Interface: Students can send messages to teachers regarding appointments or other
queries.
Messaging Service: Handles sending, receiving, and storing messages.
3 LOW LEVEL
DESIGN (LLD)
Unit testing ensures that individual components of the system function correctly. Below are detailed
unit test cases for various components of the Student-Teacher Appointment Booking System.
1. Admin Module
1.1 Login
2. Teacher Module
3. Student Module
3.1 Registration/Login
These unit test cases ensure that each component of the Student-Teacher Appointment Booking System
functions correctly and meets the expected requirements.