Final Year Report File
Final Year Report File
SUBMITTED BY :-
Name :- Ridham Thakur
SUBMITTED TO :-
DR. BRIJESH BAKARIYA
I hereby declare that the Industrial Training Report entitled “School Management
System” is an authentic record of my own work as requirements of 6-months Industrial
Training during the period from January 2025 to July 2025 for the award of degree of
B.Tech. CSE, I. K. Gujral Punjab Technical University Campus, Hoshiarpur,
under the guidance of Dr. Brijesh Bakariya
Date:
Certified that the above statement made by the student is correct to the best of our
knowledge and belief.
Signatures
Examined by:
1. 2. 3. 4.
Head of Department
(Signature and Seal)
Acknowledgment
Through this acknowledgement, I express our sincere gratitude to all those people who
have been associated with this project and have helped me with it and made it a
worthwhile experience. Firstly, I would like to thank Director Dr. Yadwinder Singh
Brar, I.K.G.PTU Campus, Hoshiarpur and Dr. Brijesh Bakariya, Head of
Department, CSE at I.K.G.PTU Campus, Hoshiarpur for their kind support.
Secondly, I extend my thanks to Mr.Komalpreet Singh Brar for his immense support
as my project guide, as well as the faculty member of Pisoft Informatics Pvt. Ltd.,
for their valuable assistance in completing the project. The atmosphere provided by
them fostered knowledge acquisition and enthusiasm. Their assistance in resolving
doubts contributed to the project's success within a limited time.
I would also like to thank everyone who has knowingly and unknowingly helped me
throughout my work. Last but not least, a word of thanks for the authors of all those
books and papers which I have consulted during my project work as well as for
preparing the report.
LOCATION:-MOHALI
MY PROFILE:-TRAINEE
About Organization :-
Pisoft Informatics Pvt. Ltd. is located at Plot No. C-86, Second Floor, Phase 7, Industrial
Area, Mohali, Punjab, India. It is a growing IT company known for delivering
comprehensive digital solutions across various sectors. The company’s flagship product,
“PisoftERP,” is a web-based ERP solution offered on a Software-as-a-Service (SaaS)
model, designed to help businesses manage multiple departments efficiently. In addition
to ERP systems, Pisoft provides custom software development, mobile app development,
web design, and digital marketing services. With over 350 projects delivered and a team
of more than 50 professionals, the company has established a strong presence in the
Northern Indian IT market.
Pisoft stands out for its commitment to user-friendly, scalable, and mobile-compatible
software solutions. Their flexible pricing models and customizable features make them a
suitable partner for businesses of various sizes. Clients benefit from dedicated support
and intuitive system design, ensuring smooth deployment and long-term reliability. The
company’s solid client satisfaction and employee experience are reflected in its positive
reviews and a 4.1/5 rating on AmbitionBox, underlining its credibility and quality
service.
TABLE OF CONTENTS
CHAPTER 1: INTRODUCTION
1.2 Objective 2
1.7 Disadvantages 7
38-39
CHAPTER 7: WORKING SCREENSHOTS
CHAPTER 8: CONCLUSION
8.1 Conclusion 40
CHAPTER 9: REFERENCE 43
LIST OF FIGURES
6. Admin Dashboard 39
CHAPTER 1: INTRODUCTION
The School Management System is a web-based application developed using the Django
framework, designed to streamline and automate academic administrative tasks. This
system provides a centralized platform for managing student information, academic
records, attendance, grades, and communication between students, teachers, and
administrators. By leveraging Django's powerful model-view-template (MVT)
architecture, the application ensures data security, scalability, and ease of development.
The primary objective of this project is to reduce the manual workload and improve the
efficiency of educational institutions by providing a user-friendly interface for managing
day-to-day academic operations. Key features include student registration, class
scheduling, attendance tracking, examination result entry, and role-based access control
for students, teachers, and admins. The use of Django’s built-in admin panel also
simplifies data handling and backend operations for administrators.
This project not only enhances the academic management process but also provides
students and teachers with timely access to relevant information. Built with Python and
Django, the system integrates a PostgreSQL or SQLite database for data storage and uses
HTML, CSS, and JavaScript for the frontend. The Student Management System
demonstrates the practical application of full-stack web development and serves as a
robust solution for modern educational environments.
1
1.2 Objectives
The main objective of the School Management System using Django is to automate and
streamline various academic and administrative tasks within an educational institution.
The system is designed to manage student records efficiently and securely, minimizing
the need for manual data entry and reducing the risk of errors. It offers role-based access
control, allowing administrators, teachers, and students to interact with the system
according to their specific roles and responsibilities.
Another key goal is to simplify routine operations such as attendance tracking, exam
result entry, and grade management. By centralizing these processes, the system enhances
transparency and accuracy, while also saving time for faculty and staff. Additionally, it
fosters improved communication among students, teachers, and administrators through
features like announcements and internal messaging.
The application aims to provide a user-friendly, scalable, and responsive web interface
that can adapt to the evolving needs of educational institutions. It also supports real-time
reporting and analytics, helping in data-driven decision-making. Overall, the system is
built to enhance institutional efficiency, reduce paperwork, and support a more organized
and productive academic environment.
The **existing system** for school management in many educational institutions often
relies heavily on manual processes, spreadsheets, and paper-based record-keeping. These
traditional methods are time-consuming, error-prone, and inefficient, especially when
managing large volumes of student data, attendance records, grades, and course
schedules. Typically, teachers and administrators maintain student records in isolated
systems or physical files, leading to data redundancy, lack of integration, and difficulty in
tracking the progress of students over time.
2
In some institutions, basic software tools like Excel or separate standalone systems are
used for managing student records and grades. However, these tools lack the seamless
integration of various functions such as attendance management, grade tracking, and
communication. As a result, there is often a disconnect between the different aspects of
student data management, requiring manual intervention to synchronize information.
The proposed system for the School Management System (SMS) is a fully integrated,
web-based solution designed to automate and streamline all aspects of student data
management. Built using Django, the system will offer a modern, scalable, and secure
platform that integrates essential functions like student registration, attendance tracking,
grade management, course scheduling, and communication in a single, centralized
system. The proposed system aims to eliminate the inefficiencies and errors associated
with manual processes and provide a more effective solution for educational institutions.
3
One of the key features of the proposed system is centralized student information
management, where all student details, including personal information, enrollment data,
and academic performance, are stored in a secure database. Administrators and teachers
can easily add, update, and manage student profiles in real-time, ensuring that data is
accurate and up-to-date. Additionally, the system will allow for role-based access control,
ensuring that different users, such as admins, teachers, and students, can access only the
information relevant to their roles. This helps maintain privacy and ensures the right level
of control over sensitive data.
For attendance management, the system will automate the process by allowing teachers to
mark student attendance online, eliminating the need for paper registers. Attendance
reports can be generated automatically, and the system will provide insights into student
attendance trends. Similarly, exam results and grades will be inputted into the system,
making it easy to generate academic reports, track performance, and identify students
who may need additional support. The real-time reporting capabilities of the proposed
system will enable administrators and teachers to make data-driven decisions, such as
identifying underperforming students or tracking trends in attendance.
Another key feature of the proposed system is communication and announcements. The
system will include an internal messaging feature that allows students and teachers to
communicate directly within the platform, reducing reliance on external tools like email.
Additionally, a centralized notice board will be available for posting important
announcements, such as exam schedules, school events, or other critical updates. This
ensures that all relevant parties are kept informed in a timely manner.
The system will also feature a dashboard for both teachers and administrators, providing
quick access to important data like class schedules, student performance, attendance, and
announcements. By automating administrative tasks and providing easy access to real-
4
time information, the proposed system will significantly reduce the time spent on manual
processes and improve overall efficiency.
Overall, the proposed School Management System will provide a seamless and
comprehensive solution for managing student data, improving communication, and
enabling data-driven decision-making, making it an essential tool for modern educational
institutions.
The scope of the School Management System (SMS) project outlines the
functionalities, boundaries, and objectives of the system to be developed. This project
will cover the automation of various academic and administrative tasks within an
educational institution, aimed at enhancing efficiency, accuracy, and communication. The
scope is defined in terms of the features to be implemented, the users who will interact
with the system, and the technological requirements needed to develop and deploy the
system.
5
o Secure authentication and authorization for each role.
o Secure handling of sensitive student data with encrypted storage and user
authentication.
1.6 Advantages
The system automates several manual tasks such as attendance tracking, grading, and
course management. This reduces administrative workload and minimizes human errors,
allowing staff to focus on more critical tasks.
All student-related data, including personal details, attendance records, academic history,
and grades, are stored in a single, centralized database. This makes it easier to access and
manage information, ensuring data consistency and accuracy across the institution.
6
Teachers, administrators, and students can access real-time information about class
schedules, attendance, grades, and announcements. This helps in making timely
decisions, identifying trends, and addressing student needs promptly.
4. Enhanced Communication
The internal messaging system and notice board features facilitate better communication
between students, teachers, and administrators. Important announcements, exam
schedules, and event notifications can be shared instantly, improving the flow of
information across the institution.
Automated attendance tracking and grading systems reduce the chances of errors
compared to manual methods. Teachers can easily record attendance and grades, while
the system generates reports automatically, ensuring accuracy and saving time.
1.7 Disadvantages
Like any software, the system may encounter bugs, downtime, or performance
issues, especially during the initial phases of deployment. Continuous
maintenance, updates, and bug fixes will be required, and this can be time-
consuming and require technical expertise.
7
CHAPTER 2: TOOLS & TECHNOLOGY
• Web-Technology: - Django
• Web Server: - Django development server (for local use), Gunicorn + Nginx (for
deployment)
• Windows: - 11
• Operating System
8
2.3 Introduction to Python
Python is a popular programming language known for its simplicity, readability, and
versatility. It was created by Guido van Rossum and first released in 1991. Python
emphasizes code readability with its clean syntax and uses indentation to define code
blocks, making it an excellent choice for beginners and experienced programmers alike.
Python is a high-level language, meaning that it abstracts away many low-level details,
making it easier to write and understand code. It supports multiple programming
paradigms, including procedural, object-oriented, and functional programming.
1. Readability: Python uses a clear and expressive syntax, making it easy to read and
understand code. It enforces the use of whitespace indentation, which enhances code
readability.
2. Extensive Standard Library: Python comes with a vast standard library that
provides a wide range of modules and functions for various tasks. It simplifies many
common programming tasks, such as file handling, networking, and data processing.
4. Large and Active Community: Python has a large and supportive community of
developers. This community contributes to the development of libraries, frameworks, and
tools that extend Python's capabilities, making it suitable for various applications.
9
To get started with Python, you need to install the Python interpreter on your computer.
The official Python website (python.org) provides the necessary installation files and
documentation.
INSTALLATION OF PYTHON
To install Python on your computer, you can follow these general steps:
Step 1: Determine your operating system Python is available for Windows, macOS, and
Linux. Make sure you know which operating system you are using before proceeding.
Step 2: Visit the official Python website Go to the official Python website at python.org.
On the homepage, you'll find the "Downloads" section.
Step 3: Choose the Python version Python has multiple versions available, but it's
generally recommended to use the latest stable release. At the time of my knowledge
cutoff (September 2021), Python 3 was the most recent stable version. However, you
should check the website to see if a newer version has been released.
Step 4: Select the installer Once you've chosen the Python version, scroll down to the list
of available installers. You'll find different installers for various operating systems. Click
on the appropriate installer for your operating system.
For Windows:
You will see options for 32-bit and 64-bit installers. Choose the one that matches your
system architecture. Most modern systems use 64-bit.
For macOS:
You will find macOS installers for different versions. Choose the one suitable for your
macOS version.
Step 5: Run the installer Once the installer has finished downloading, locate the file and
run it by double-clicking on it.
10
For Windows:
In the installer, make sure to select the option "Add Python to PATH" before
proceeding with the installation. This allows you to use Python from the command line.
Choose the installation directory or use the default one.
For macOS:
The installer package will open. Follow the instructions provided by the installer to
complete the installation.
Step 6: Verify the installation After the installation is complete, open a command prompt
(Terminal on macOS and Linux) and type "python --version" (without quotes). This
command will display the installed Python version. If the version is shown, it means
Python is successfully installed.
Congratulations! You have installed Python on your computer. You can now start writing
Python code using a text editor or an integrated development environment (IDE) and run
it using the Python interpreter.
Django is a high-level web framework written in Python that follows the Model-
ViewController (MVC) architectural pattern. It was developed to make web development
faster, easier, and more efficient. Django provides a robust set of tools and features that
enable developers to build complex web applications with minimal effort.
11
complexities of database management and provides a simple yet flexible way to define
database models and perform database operations.
2. URL Routing and View Handling: Django provides a built-in URL routing
mechanism that maps URLs to views. Views are Python functions or classes that handle
HTTP requests and return HTTP responses. This approach makes it easy to organize and
maintain the application's URL structure.
3. Template Engine: Django includes a template engine that enables the separation of
HTML markup from Python code. Templates are used to define the structure and layout of
web pages, making it easier to create dynamic and reusable web content.
4. Form Handling and Validation: Django simplifies form handling by providing a form
API that allows developers to define and validate forms using Python classes. It automates
many common form-related tasks, such as rendering form fields, handling form
submission, and performing data validation.
6. Admin Interface: Django comes with a built-in administrative interface known as the
Django Admin. It provides a user-friendly interface for managing the website's backend,
including CRUD operations (Create, Read, Update, Delete) on database models. The
Django Admin can be customized and extended to suit specific project requirements.
12
8. Scalability and Reusability: Django's design philosophy promotes modularity and
reusability. It allows developers to build reusable components, known as apps, which can
be shared across different projects. This modular approach facilitates code organization,
maintenance, and scalability.
To get started with Django, you'll need to have Python installed on your computer. You
can then install Django using Python's package manager, pip. Once installed, you can
create a new Django project and start building web applications using Django's powerful
features and tools.
Overall, Django empowers developers to focus on building the core functionality of web
applications while providing a solid foundation for secure and scalable development.
Django is a versatile web framework with a wide range of applications. Here are some
common uses of Django:
Web Application Development: Django is primarily used for building web applications
of all sizes. Whether it's a simple blog, a social networking site, an e-commerce platform,
or a complex enterprise application, Django provides the necessary tools and structure to
develop robust and scalable web applications.
Content Management Systems (CMS): Django can be used to create custom content
management systems. With Django's built-in admin interface and powerful ORM,
developers can quickly build CMS solutions to manage and publish content, including
articles, images, videos, and more.
API Development: Django has excellent support for creating APIs (Application
Programming Interfaces) that allow different software applications to communicate with
each other. Django's built-in serialization and authentication capabilities, combined with
popular packages like Django REST Framework, make it a popular choice for building
RESTful APIs.
13
Data Analysis and Reporting: Django can be utilized to build applications that process
and analyze data, generate reports, and provide data visualization. By combining Django
with data processing libraries like Pandas and visualization libraries like Matplotlib or
Plotly, developers can create powerful data-driven applications.
Real-time Applications: Django can be integrated with technologies like WebSockets and
asynchronous task queues to build real-time applications, such as chat applications,
collaboration tools, or live dashboards. Frameworks like Django Channels provide the
necessary functionality to handle real-time communication.
These are just a few examples of the common uses of Django. Its versatility and extensive
ecosystem of packages and extensions make it suitable for a wide range of web
development projects.
HTML (Hypertext Markup Language) is the standard markup language for creating web
pages and web applications. It provides the structure and content of a web page by using
a set of predefined tags or elements. HTML elements define the various components of a
web page, such as headings, paragraphs, images, links, tables, forms, and more.
Tags and Elements: HTML uses tags to define elements within a web page. Tags are
enclosed in angle brackets (< >) and usually come in pairs: an opening tag and a closing
tag. The content of the element is placed between the opening and closing tags.
14
Example:
<p>This is a paragraph.</p>
In the above example, <p>is the opening tag, and </p> is the closing tag. The text "This
is a paragraph." is the content of the paragraph element.
Nesting: HTML elements can be nested inside other elements. This allows for the
creation of hierarchical structures within a web page.
Example:
<div>
<h1>Welcome to My Website</h1>
<div>
In the above example, the <h1> and <p> elements are nested inside the <div> element.
Example:
In the above example, the <a> (anchor) element has an href attribute that specifies the
URL the link points to.
Example:
<!DOCTYPE html>
15
<html>
<head>
</head>
<body>
</body>
</html>
Semantic Markup: HTML provides a set of semantic elements that describe the
meaning andstructure of the content. These elements convey the purpose of the content to
both browsers and search engines, aiding in accessibility and search engine optimization.
HTML is a foundational technology for web development, and it is often combined with
CSS (Cascading Style Sheets) and JavaScript to create interactive and visually appealing
web pages and applications. CSS is used to define the presentation and layout of the
HTML elements, while JavaScript adds interactivity and dynamic behavior to the web
page.
By learning HTML, you can create the basic structure and content of web pages, laying
the foundation for creating rich and engaging web experiences.
16
2.6 Introduction to CSS
CSS (Cascading Style Sheets) is a stylesheet language used to describe the presentation
and visual appearance of a web page or web application. It allows web developers to
define styles, layouts, and design elements for HTML documents.
Selectors: CSS selectors are used to target HTML elements and apply styles to them.
Selectors can target elements based on their tag name, class, ID, attributes, and more.
Selectors define the scope of the styles that will be applied.
Example:
h1 {
color: blue;
In the above example, the h1 selector targets all <h1> elements and sets their color to blue.
Properties and Values: CSS properties define the specific visual characteristics of an
HTML element, such as color, font size, margin, padding, and more. Properties are paired
with values, which determine the specific appearance or behavior for each property.
Example:
h1 {
font-size: 24px;
margin-bottom: 10px;
Cascading and Specificity: CSS follows the principle of cascading, which means that
multiple styles can be applied to an element, and they can interact and override each
17
other. The order of style rules, along with the concept of specificity, determines which
styles take precedence.
Style Sheets and Rule Sets: CSS styles are typically organized into style sheets. A
stylesheet contains one or more rule sets, where each rule set consists of a selector and
one or more property-value pairs.
Example:
h1, h2 {
color: blue;
font-size: 20px;
In the above example, the style sheet contains a rule set with the selectors h1 and h2.
Both elements will have their text color set to blue and font size set to 20 pixels.
Inline, Internal, and External CSS: CSS can be applied to HTML documents in
different ways. Inline styles are applied directly within HTML tags using the style
attribute. Internal styles are placed within the <style> tags within the HTML document's
<head> section.
External stylesheets are separate files with a .css extension and are linked to the HTML
document using the <link> tag.
Responsive Design: CSS plays a crucial role in creating responsive web designs that
adapt to different screen sizes and devices. Media queries, a CSS feature, allow
developers to apply different styles based on the characteristics of the device, such as
screen width or orientation.
Example:
18
body {
background-color: lightblue;
In the above example, the background color of the body element will be light blue when
the screen width is less than or equal to 600 pixels.
CSS is a powerful tool that enables web developers to control the visual presentation of
HTML documents. By mastering CSS, you can create visually appealing and user-
friendly web pages, apply consistent styles across a website, and make it responsive to
various devices and screen sizes.
Functions: JavaScript functions are reusable blocks of code that can be invoked to
perform a specific task. They can take parameters (input values) and return values.
Functions in JavaScript can be defined using the function keyword or using arrow
functions (() => {}).
Event Handling: JavaScript can handle various events triggered by user interactions,
such as mouse clicks, keyboard input, form submissions, and more.
APIs and AJAX: JavaScript can interact with external APIs (Application Programming
Interfaces) to retrieve data and perform actions on remote servers. AJAX (Asynchronous
JavaScript and XML) allows JavaScript to make asynchronous HTTP requests to the
server without reloading the entire web page, enabling dynamic content updates.
20
technologies like Node.js, allowing developers to use the same language on both the
client and server sides.
SQL (Structured Query Language) is a programming language used for managing and
manipulating relational databases. It provides a standardized way to communicate with
databases, perform data operations, and retrieve information. SQL is widely used in
database management systems (DBMS) such as MySQL, PostgreSQL, Oracle, SQL
Server, and SQLite.
Data Definition Language (DDL): SQL includes DDL statements that define the
structure of a database. DDL statements are used to create, modify, and delete database
objects such as tables, indexes, and constraints.
id INT,
name VARCHAR(100),
age INT,
salary DECIMAL(10, 2)
);
Querying Data with SELECT: The SELECT statement is used to retrieve data from one
or more tables. It allows you to specify which columns to retrieve, apply filtering
conditions, join multiple tables, aggregate data, and sort the results.
SELECT id, name, salary FROM employees WHERE age > 25 ORDER BY salary
DESC;
Joins: SQL allows you to combine data from multiple tables using JOIN operations.
Joins help establish relationships between tables based on matching columns and enable
you to retrieve related data.
FROM employees
Data Constraints: SQL provides various constraints to enforce data integrity rules.
Constraints define rules and restrictions on the values that can be inserted or modified in
tables. Common constraints include primary key, foreign key, unique, not null, and check
constraints.
22
CREATE TABLE employees (
department_id INT,
);
FROM employees
GROUP BY department_id;
SQL is a powerful language for managing and querying relational databases. It provides a
flexible and efficient way to store, retrieve, and manipulate data. Understanding SQL is
essential for anyone working with databases or involved in back-end development and
data analysis tasks.
23
CHAPTER 3: FEASIBILITY STUDY
Feasibility study tried to determine whether a given solution would work or not. Its main
objective is not to solve the problem, but to acquire its scope. It focuses on following:
24
Web API Development:-If the School Management System is intended to support a
mobile app or external integrations, Django can be extended using the Django REST
Framework (DRF). DRF enables easy development of RESTful APIs with built-in
support for authentication, serialization, and viewsets.
Cost Savings and Efficiency:-Automating tasks like attendance, grade entry, fee
tracking, and reporting can lead to significant time and cost savings for educational
institutions, reducing dependence on manual data entry and paper records.
Operational feasibility assesses whether the School Management System can function
effectively in a real educational environment and be accepted by its intended users.
The system is flexible enough to adapt to the operational needs of small to large
educational institutions.
Staff Training and Support:-The system requires minimal training thanks to its intuitive
interface. Short training sessions or user guides can be provided for different user roles.
Continuous support can be offered via email, chat, or helpdesk systems to resolve any
issues.
Integration with Existing Systems:-The system can be integrated with existing school
systems like:
Financial/accounting systems
Learning Management Systems (LMS)
Library databases
Email or SMS services APIs can be used for seamless data exchange and
automation.
27
CHAPTER 4: PROJECT WORK
4.1 WORK
5. Views and Templates:-Create views to handle user requests and business logic:
Develop class-based or function-based views
Design templates using Django’s template language for HTML rendering
Map URLs to views using Django’s URL routing system
Create pages for:
Student registration
Teacher dashboards
Attendance tracking
7. Forms and Validation:-Build Django forms to capture and validate input from users:
Student and teacher registration forms
Attendance
Utilize Django's Form and ModelForm classes to simplify form creation and server-side
validation.
9. Business Logic and Functionality:-Implement the core features and business logic
of the system:
Student and teacher registration
Attendance tracking and automated attendance reports
29
Fee collection and invoice generation
Communication system (e.g., announcements or parent messages)
30
Key Backend Technologies Involved:
Django Framework: Django serves as the core backend framework. It follows the
Model-View-Template (MVT) architectural pattern and comes with built-in tools for:
URL routing
Database migrations
Session and authentication management
Admin panel creation Django allows rapid development and enforces best
practices, making it ideal for managing complex school operations.
RESTful APIs: To support mobile apps, portals for parents, or third-party integrations,
Django can be extended using Django REST Framework (DRF) to:
Task Scheduling: Using tools like Celery, recurring tasks such as:
In a School Management System built using Django, frontend technologies are used to
create an engaging and functional user interface. These technologies determine how users
interact with the system—whether they're students, teachers, administrators, or parents.
HTML (Hypertext Markup Language): HTML is used to structure the web pages in
the system, including:
32
Student registration forms
Class timetables
Attendance dashboards
Exam results pages
Django’s template engine uses .html files for rendering content dynamically.
CSS (Cascading Style Sheets): CSS is used for styling HTML content:
Validate forms on the client-side (e.g., student ID format, date of birth fields)
Add interactivity (e.g., collapsible menus, popups for announcements)
Frontend Frameworks:
Templating Languages:
Django’s default template engine allows embedding Python logic within HTML.
Features include:
A Data Flow Diagram (DFD) is a graphical representation that depicts the flow of data
within a system. It illustrates how information moves from external entities into the
system, how it is processed, and where it is stored. DFDs are essential in system
analysis to visualize how data interacts between the various components and modules of
a software system.
System Components:
User Interface: Web interface (forms, dashboards) for each user role.
Views: Django views handle HTTP requests and responses.
Controllers (Business Logic): Process requests and coordinate with models.
Models: Represent school entities such as students, teachers etc.
Database: Stores all persistent school data (student records, attendance, fees).
34
DFD Diagram (Text Representation):
+ +
| User Interface |
| (Students, Teachers, |
| Admins, Parents) |
+ + +
|
+ +
| Views |
| (Receive requests, |
| route responses) |
+ + +
|
+ +
| Controllers |
| (Business Logic: |
| Fees, etc.) |
+ + +
|
+ +
| Models |
| (Student, |
| Attendance, etc.) |
+ + +
|
+ +
| Database |
| (PostgreSQL / MySQL|
| via Django ORM) |
+ +
35
CHAPTER 6: WORKING
36
❋ Frontend Working
Technology Used: React with TypeScript, Tailwind CSS, Mantine UI
Key Features:
o User Authentication: Role-based login system (Student, Teacher, Admin)
o Responsive UI: Designed using Tailwind CSS and Mantine UI for a
modern and adaptable layout
o Student Portal: View timetable, assignments, grades, attendance, and
notifications
o Admin Panel: Create/manage users and send announcements
o Real-Time Updates: Immediate feedback on submitted forms or system
changes
❋ Backend Working
Technology Used: Django (Python), Django REST Framework,
PostgreSQL/MySQL
Core Modules:
o User Management: Handles registration, login, and role-based access
control
o Attendance System: Daily attendance tracking for each class
o Secure APIs: RESTful endpoints for all frontend interactions, with JWT or
session-based authentication
o Database: Relational DB stores structured records (users, attendance,)
37
CHAPTER 7: WORKING SCREENSHOTS
HOME PAGE:-
Fig.2.2.1.Home page
Fig.2.2.2.Home page
38
STUDENT SIGN UP/LOGIN PAGE:-
ADMIN DASHBOARD:-
Fig.6.Admin Dashboard
39
CHAPTER 8: CONCLUSION
8.1 Conclusion
Overall, the system achieves its goal of digitizing traditional school operations, increasing
transparency, reducing paperwork, and improving overall efficiency in school
management. With future enhancements, the platform can be further extended to include
features such as parent access, fee management, and advanced analytics for academic
performance tracking.
8.2 Applications
40
1. Student Information Management
Maintain student records including personal details, academic history, attendance,
and behavior.
3. Academic Scheduling
Automate the creation of timetables and class schedules.
4. Attendance Tracking
Digital attendance for students and staff with daily or subject-wise tracking.
The School Management System has strong potential for further development and
integration of advanced features to enhance its functionality, scalability, and usability.
Automate fee collection, track pending dues, and generate digital receipts.
3. Mobile Application
Develop Android and iOS apps for students, teachers, and administrators.
Integrate data analytics to track student performance trends, teacher efficiency, and
attendance patterns.
5. Cloud Deployment
Host the application on cloud platforms (e.g., AWS, Azure, Google Cloud) for
better scalability, security, and uptime.
42
CHAPTER 9
9.1 REFRENCE
43