0% found this document useful (0 votes)
101 views40 pages

SMS Og

The document outlines a Student Management System (SMS) designed to manage academic and administrative tasks in educational institutions, including features like attendance tracking, grading, and communication. It discusses the pros and cons of using an SMS, such as improved efficiency and data security, alongside challenges like initial costs and integration issues. Additionally, it covers the system's scope, objectives, testing and integration processes, and includes sample source code for implementation.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
101 views40 pages

SMS Og

The document outlines a Student Management System (SMS) designed to manage academic and administrative tasks in educational institutions, including features like attendance tracking, grading, and communication. It discusses the pros and cons of using an SMS, such as improved efficiency and data security, alongside challenges like initial costs and integration issues. Additionally, it covers the system's scope, objectives, testing and integration processes, and includes sample source code for implementation.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

INDEX

1. INTRODUCTION

2. PROS AND CONS

3. SCOPE AND OBJECTIVE

4. TESTING AND INTEGRATION

5. SOFTWARE AND HARDWARE

6. SOURCE CODE

7. SAMPLE OUTPUT

8. BIBLIOGRAPHY

9. CONCLUSION
INTRODUCTION:

 A Student Management System (SMS) is a


software application designed to manage and
streamline various academic and administrative
tasks related to student information.

 It helps educational institutions information. It


helps educational institutions efficiently handle
data Such as student enrollment, attendance,
grades, assignments, schedules, and
communication with parents or guardians.

 Modern systems often include features like online


for students and teachers, real-time notifications,
performance analytics, and integration with other
educational tools.
 Whether used in schools, colleges, or universities,
a Student Management System plays a crucial role
in universities , a Student Management System
plays a crucial role in ensuring organized,
transparent, and effective academic management
PROS:
EFFICIENCY AND PRODUCTIVITY:
 SMS automates administrative tasks like
attendance tracking, grading, and report
generation, saving time and resources.

IMPROVED COMMUNICATION:
 SMS facilitates seamless communication between
teachers, students, and parents through
notifications, alerts, and announcements.

Centralized Data:
 SMS provides a single, centralized database for all
student information, eliminating the need for
scattered records.
ENHANCED STUDENT EXPERIENCE:
 Enhanced Student Experience: Features like
personalized learning paths, online resources, and
access to student data empower students to take
Ownership of their learning.

DATA SECURITY AND ACCURACY:


 SMS ensures the secure storage and management
of sensitive student information, reducing the risk
of data breaches and errors.

Cost-Effective:
 SMS can reduce costs associated with paper based
record-keeping and manual processes.

Accessibility:
 SMS can be accessed remotely from any device,
providing students, parents, and teachers with
Convenient access to information.
DATA ANALYTICS AND REPORTING:
 SMS provides tools for analyzing student
performance and generating reports, enabling
data-driven decision-making.
CONS:
INITIAL COSTS:
 Implementing an SMS can require significant
upfront investment in software, hardware, and
training.

INTEGRATION CHALLENGES:
 Integrating an SMS with existing systems can be
complex and time consuming.

DATA SECURITY CONCENS:


 While SMS offers enhanced data security, there are
still potential risks associated with data breaches
and unauthorized access.

MAINTANENCE AND UPDATES:


 SMS requires ongoing maintenance and updates to
ensure optimal performance and security.
TRAINING AND SUPPORT:
 Users may require training to effectively use the
SMS, and technical support may be needed to
resolve issues.

COMPLEXITY:
 Some SMS can be Complex to navigate and
manage, requiring users to learn new software and
processes.

RELIANCE AND TECHNOLOGY;


 SMS relies on technology, and disruptions to
internet access or system failures can hinder
operations.
SCOPE AND OBJECTIVE:

OBJECTIVE:
 The main objective of the Student Management
System is to streamline and automate student-
related data management in educational
institutions.

 It aims to improve administrative efficiency by


handling tasks Such ~ student registration
institutions , attendance, grading, performance
tracking, and communication between
stakeholders (students, teachers, and
administrators).
SCOPE:
1. STUDENT INFORMATION MANAGEMENT:
o Store and manage student personal, academic,
and contact information.

o Maintain enrollment and registration records.

2. COURSES AND SUBJECT MANAGEMENT:


o Assign courses/ subjects to students and
teachers.

o Manage schedules and timetables.

3. ATTENDENCE TRCKING:
o Record and monitor student attendance.

o Generate reports for absenteeism and


punctuality.
4. GRADE AND EXAMINATION :
o Input and calculate student marks.

o Generate report cards and performance


analytics.

5. FEE MANAGEMENT:
o Track fee payment history and generate
invoices.

o Send fee due alerts and receipts.

6. COMMUNICATION TOOLS:
o Facilitate announcements and notifications to
students and parents.

o Enable internal messaging between teachers and


students.
7. USER AND PERMISSION:
o Admin, teacher, student, and parent access with
defined permissions.

8. REPORTING AND ANALYTICS:


o Generate various reports for administrative and
academic purposes.

9. SECURITY AND DATA PRIVACY:


o Secure login and access Control.

o Ensure compliance with data protection


regulations
TESTING AND INTEGRATIKON:

TESTING:
 Testing is a crucial phase of the software
development life cycle (SDLC) where the
software is evaluated to ensure that it
functions as expected.

The goal of testing is to identify defects,


ensure quality, and verify that the software
meets the requirements set out in the planning
and design stages. There are several types of
testing that are performed during this phase
TYPES OF TESTlNG:
1. Unit Testing:
 Focuses on individual components or units of
the software to ensure each one works as
intended. It is typically conducted by
developers.

2. Integration Testing:
This type of testing checks how different
modules or components work together as a
system. It ensures that combined parts of the
system work in harmony and without errors.

3. System Testing:
Involves testing the entire system as a whole
to ensure that it meets the overall
requirements. It checks the system's behavior
under real-world scenarios.
4. Acceptance Testing:
Conducted by end-users or clients to verify
that the software meets their expectations and
is ready for deployment. It can include alpha
and beta testing.

5. Regression Testing:
Ensures that changes made to the codebase
(such as bug fixes or feature updates) do not
introduce new issues.
INTEGRATION:
Integration refers to combining different
modules or components of a software system
into a cohesive whole. In this phase, various
individual units developed and tested during
the earlier stages are integrated to form a
complete, functional system.

TYPES OF INTEGRATION:
1. Top-Down or Bottom-Up Integration:

The system can be integrated using a top-


down approach (starting with higher-level
modules) or a bottom-up approach (starting
with lower-level modules), depending on the
project.
2. Incremental Integration:
Instead of integrating all modules at once,
components are integrated one by one, and
each integration is tested to ensure smooth
functionality. This reduces risks and allows for
identifying and resolving issues early on.

3. Continuous Integration (CI):


In modern development practices, (Cl)
involves automatically integrating and testing
code changes frequently throughout the
development process.

It helps ensure that the software remains in a


working state as new code is introduced.
Benefits of Testing and Integration:
o Early detection of defects

o Ensures compatibility between components

o Improves software reliability and performance

o Reduces the risk of major issues after


deployment

o Enhances the overall quality of


the final product
SOURCE CODE:

import mysql.connector

conn = mysql.connector.connect(
host="localhost",
user="root",
password="rithik1357", # Put your MySQL password
if any
database="smsnew"
)

cursor = conn.cursor()

print("----- STUDENT MANAGEMENT SYSTEM -----")


print("1. Admin Login")
print("2. Student Login")
login_type = input("Choose login type (1 or 2): ")

if login_type == "1":
username = input("Enter Admin Username: ")
password = input("Enter Admin Password: ")
cursor.execute("SELECT * FROM admin WHERE
username=%s AND password=%s", (username,
password))
admin_data = cursor.fetchone()

if admin_data:
print("\n✅ Admin Login Successful!")

while True:
print("\n--- ADMIN MENU ---")
print("1. Add Student")
print("2. View Students")
print("3. Add Course")
print("4. View Courses")
print("5. Add Marks")
print("6. View Marks")
print("7. Mark Attendance")
print("8. View Attendance")
print("9. View Feedback")
print("0. Exit")

choice = input("Enter your choice: ")


if choice == '1':
name = input("Enter student name: ")
email = input("Enter email: ")
dob = input("Enter DOB (YYYY-MM-DD): ")
uname = input("Set username: ")
pword = input("Set password: ")
cursor.execute("INSERT INTO students (name,
email, dob, username, password) VALUES (%s, %s, %s,
%s, %s)", (name, email, dob, uname, pword))
conn.commit()
print("✅ Student Added.")

elif choice == '2':


cursor.execute("SELECT * FROM students")
for row in cursor.fetchall():
print(row)

elif choice == '3':


cname = input("Enter course name: ")
desc = input("Enter description: ")
cursor.execute("INSERT INTO courses
(course_name, description) VALUES (%s, %s)", (cname,
desc))
conn.commit()
print("✅ Course Added.")

elif choice == '4':


cursor.execute("SELECT * FROM courses")
for row in cursor.fetchall():
print(row)

elif choice == '5':


sid = input("Enter Student ID: ")
cid = input("Enter Course ID: ")
marks = input("Enter Marks: ")
cursor.execute("INSERT INTO marks
(student_id, course_id, marks) VALUES (%s, %s, %s)",
(sid, cid, marks))
conn.commit()
print("✅ Marks Added.")
elif choice == '6':
cursor.execute("SELECT * FROM marks")
for row in cursor.fetchall():
print(row)

elif choice == '7':


sid = input("Enter Student ID: ")
date = input("Enter Date (YYYY-MM-DD): ")
status = input("Enter Status (Present/Absent):
")
cursor.execute("INSERT INTO attendance
(student_id, date, status) VALUES (%s, %s, %s)", (sid,
date, status))
conn.commit()
print("✅ Attendance Marked.")

elif choice == '8':


cursor.execute("SELECT * FROM attendance")
for row in cursor.fetchall():
print(row)
elif choice == '9':
cursor.execute("SELECT * FROM feedback")
for row in cursor.fetchall():
print(row)

elif choice == '0':


print("✅ Exiting...")
break
else:
print("✅ Invalid choice.")

else:
print("✅ Invalid Admin Credentials.")

elif login_type == "2":


username = input("Enter Student Username: ")
password = input("Enter Student Password: ")
cursor.execute("SELECT * FROM students WHERE
username=%s AND password=%s", (username,
password))
user_data = cursor.fetchone()
if user_data:
print("\n✅ Student Login Successful!")
student_id = user_data[0]

while True:
print("\n--- STUDENT MENU ---")
print("1. View My Marks")
print("2. View My Attendance")
print("3. Give Feedback")
print("0. Exit")

choice = input("Enter your choice: ")

if choice == '1':
cursor.execute("SELECT * FROM marks
WHERE student_id = %s", (student_id,))
for row in cursor.fetchall():
print(row)

elif choice == '2':


cursor.execute("SELECT * FROM attendance
WHERE student_id = %s", (student_id,))
for row in cursor.fetchall():
print(row)

elif choice == '3':


feedback = input("Enter your feedback: ")
cursor.execute("INSERT INTO feedback
(student_id, feedback_text) VALUES (%s, %s)",
(student_id, feedback))
conn.commit()
print("✅ Feedback submitted.")

elif choice == '0':


print("✅ Logging out...")
break

else:
print("✅ Invalid choice.")
else:
print("✅ Invalid Student Credentials.")

cursor.close()
conn.close()
Database And table creation
(mysql)
SAMPLE OUTPUT (Python (IDLE))
Bibliography:
https://tuiopay.com/blog/what-is-a-student-management-
system/

https://pyseek.com/2022/03/student-management-system-
in-python-with-mysql/

CLASS 12 NCERT AND SUMITA ARORA

https://www.slidesshare.net/

https://www.wikipedia.org/

You might also like