0% found this document useful (0 votes)
83 views19 pages

Student Management Software Project

The document is a student project report on developing a software for managing student records in a school. It includes the source code for building functions to add, modify, delete and search student records stored in a CSV file. It also documents the output, system requirements, and bibliography for the project. The student thanks their teacher and principal for guidance and completes the project on time.

Uploaded by

gahlotkavya09
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
83 views19 pages

Student Management Software Project

The document is a student project report on developing a software for managing student records in a school. It includes the source code for building functions to add, modify, delete and search student records stored in a CSV file. It also documents the output, system requirements, and bibliography for the project. The student thanks their teacher and principal for guidance and completes the project on time.

Uploaded by

gahlotkavya09
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Nav Bharti Sr Sec School

Name - Kavya Gahlot


Class - XII-A
Rollno-
IP project FILE
(065)
For the academic year 2023-24
Signature of teacher signature of extenal
examiner
_______________ ______________

Page | 1
CERTIFICATE

This is to certify that Kavya Gahlot


student of class XII A, bearing roll no.
has successfully completed her project on
software “student management “under the
guidance of [Link] Aswal during the
academic year 2023-24

Teacher's signature _____________

External invigilator signature___________

Page | 2
ACKNOWLEDGEMENT

I would like to express my special thanks of


gratitude to my informatic practises teacher
Ms. Ritu Aswal as well as our principal maam
[Link] Bhartiya who gave me the golden
opportunity to do this wonderful project on the
topic library management.
Secondly, I would also like to thank my
parents and friends who helped me a lot in fi-
nalizing this project within the limited time
frame.
Lastly, I like to thank all my supporters who
have motivated me to fulfill their project before
the timeline.

Page | 3
Index
Sno particulars Remarks

1. Source code

2. Output
screen

3. System
requirement

4. requirement

5. Biblio-
graphy

Introduction
Page | 4
This project is all about a software for School. It helps
the Teachers to manage
students details. It adds a student, updates an existing
student's details and on course
display details of student and store data in csv file that
can later be accessed using spreadsheet applications like
Ms Excel.

Objectives of this project


The objective of this project is to let the students apply
the programming knowledge into a real- world
situation/problem and exposed the students how
programming skills helps in developing a good
software.
1. Write programs utilizing modern software tools.
2. Apply object-oriented programming principles effect-
ively when developing medium sized projects

Source code:
import os

Page | 5
import csv
def addrecord():
print("Add a new Record")
print("================")
f=open('[Link]','a',newline='\
r\n')
s=[Link](f)
rollno=int(input('Enter rollno='))
name=input('Enter name=')
marks=float(input('Enter marks='))
rec=[rollno,name,marks]
[Link](rec)
[Link]()
print("Record Saved")
input("Press any key to continue..")

def modifyrecord():
print("Modify a Record")
print("================")
f=open('[Link]','r',newline='\
r\n')
f1=open('[Link]','w',newline='\r\
n')
f1=open('[Link]','a',newline='\r\
n')
r=input('Enter rollno you want to
modify')
s=[Link](f)
s1=[Link](f1)
for rec in s:
if rec[0]==r:
print("Rollno=",rec[0])
print("Name=",rec[1])
print("Marks=",rec[2])
Page | 6
choice=input("Do you want to
modify this record(y/n)")
if choice=='y' or
choice=='Y':
rollno=int(input('Enter
New rollno='))
name=input('Enter new
name=')
marks=float(input('Enter
new marks='))
rec=[rollno,name,marks]
[Link](rec)
print("Record Modified")
else:
[Link](rec)
else:
[Link](rec)
[Link]()
[Link]()
[Link]("[Link]")
[Link]("[Link]","[Link]")
input("Press any key to continue..")

def deleterecord():
f=open('[Link]','r',newline='\
r\n')
f1=open('[Link]','w',newline='\r\
n')
f1=open('[Link]','a',newline='\r\
n')
r=input('Enter rollno you want to de-
lete')
s=[Link](f)

Page | 7
s1=[Link](f1)
for rec in s:
if rec[0]==r:
print("Rollno=",rec[0])
print("Name=",rec[1])
print("Marks=",rec[2])
choice=input("Do you want to
delete this record(y/n)")
if choice=='y' or
choice=='Y':
pass
print("Record Deleted")
else:
[Link](rec)
else:
[Link](rec)
[Link]()
[Link]()
[Link]("[Link]")
[Link]("[Link]","[Link]")
input("Press any key to continue..")

def search():
print("Search a Record")
print("===================")
f=open('[Link]','r',newline='\
r\n') #Remove new line character from
output
r=input('Enter rollno you want to
search')
s=[Link](f)
for rec in s:
if rec[0]==r:

Page | 8
print("Rollno=",rec[0])
print("Name=",rec[1])
print("Marks=",rec[2])
[Link]()
input("Press any key to continue..")
def viewall():
print("List of All Records")
print("===================")
f=open('[Link]','r',newline='\
r\n') #Remove new line character from
output
s=[Link](f)
i=1
for rec in s:
print(rec[0],end="\t\t")
print(rec[1],end="\t\t")
print(rec[2])
i+=1
[Link]()
input("Press any key to continue..")

def mainmenu():
choice=0
while choice!=6:
print("\n")
print("Main Menu")
print("==========")
print("1. Add a new Record")
print("2. Modify Existing Re-
cord")
print("3. Delete Existing Re-
cord")
print("4. Search a Record")
print("5. List all Records")
Page | 9
print("[Link]")
choice=int(input('Enter your
choice'))
if choice==1:
addrecord()
elif choice==2:
modifyrecord()
elif choice==3:
deleterecord()
elif choice==4:
search()
elif choice==5:
viewall()
elif choice==6:
print("Software Terminated")
break
mainmenu()

Output of code:

Page | 10
Working of program:

Page | 11
Page | 12
Page | 13
Excel data table :

Page | 14
Excel table:

Page | 15
Page | 16
Page | 17
System requirement of project

 Recommended system requirement


 Processor:intel core i3 processor 4300M at
2.60 GHz
 Disk space: 2 to 4 Gb
 Operating system: windows
10,MACOS,UBUNTU
 Python version: 3.4.8 or higher

Page | 18
Bibliography
 Youtube
[Link]
v=nrdUTeAhepM
 [Link]
 [Link]

Page | 19

Common questions

Powered by AI

The project exemplifies modern software practices by utilizing CSV files for database operations, implementing modular programming through functions such as add, modify, delete, and search. It also applies object-oriented programming principles and integrates user input validation. These aspects reflect standard methodologies like ensuring data persistence, maintainability, and usability, crucial for scalable software systems.

The main objectives of the student management software project are to allow students to apply programming knowledge to real-world situations and to demonstrate how programming skills facilitate the development of robust software. This includes writing programs using modern software tools and applying object-oriented programming principles effectively in medium-sized projects.

The project enables students to apply object-oriented programming principles by organizing tasks into distinct functions representing different operations (e.g., addrecord, modifyrecord). Although not explicitly defined as classes, the modular approach reflects encapsulation and task-specific behavior. The separation of functions simulates methods within a class, promoting reuse and readability, which are core object-oriented principles.

The software handles the deletion of a record by reading the existing 'students.csv' file, then writing to a temporary file excluding the record to be deleted if the user confirms the action by responding 'y' or 'Y'. The original 'students.csv' file is then removed, and the temporary file is renamed. This ensures that a backup is created during the process, and user confirmation is required before deletion to prevent accidental data loss.

The core system requirements for deploying the project include an Intel Core i3 processor running at 2.60 GHz, 2 to 4 GB of disk space, and an operating system such as Windows 10, MacOS, or Ubuntu, with Python version 3.4.8 or higher. These requirements ensure that the system runs efficiently, has enough processing power and memory for performing the software's operations, and supports the version of Python needed for executing the scripts.

The inclusion of a main menu is essential as it provides a structured and intuitive interface for users to interact with the software. It enhances the user experience by offering a straightforward way to navigate through different options such as adding, modifying, deleting, searching records, or listing all records, thereby simplifying workflow and improving accessibility.

The use of CSV files enhances the system's functionalities by allowing data to be stored in a simple, structured, and easily accessible format. CSV files can be opened using spreadsheet applications like MS Excel, enabling straightforward data manipulation, analysis, and sharing. This approach facilitates adding, modifying, deleting, and searching records in a user-friendly manner while maintaining data integrity.

The project emphasizes concepts such as data manipulation through CSV files, object-oriented programming, and the implementation of user-input functions for CRUD operations. These concepts contribute to the development by enabling efficient data storage and retrieval, systematic code organization, and user interaction processes crucial for dynamic data management applications.

The process involves reading the records from the 'students.csv' file and writing them into a temporary file. If the specified roll number matches the user's input, the record is modified based on new inputs from the user. The unchanged records are written back without modification. Once all changes are done, the original file is replaced by the temporary file, confirming the updates.

Conducting such software projects in academic settings benefits students by offering practical experience in applying theoretical knowledge, enhancing problem-solving skills, and understanding real-world applications of programming. It exposes students to software development processes, teamwork, project management, and the use of modern tools, preparing them for technology-centric careers.

You might also like