Python Project
Python Project
01 ACKNOWLEDGEMENT 04
02 INTRODUCTION 05
04 PROPOSED SYSTEM 06
07 FLOW CHART 15
08 SOURCE CODE 16
09 OUTPUT 19
10 TESTING 20
12 BIBLIOGRAPHY 24
3
PROJECT ON SCHOOL MANAGEMENT SYSTEM (SMS)
INTRODUCTION
School.
OBJECTIVES OF THE PROJECT
The objective of this project is to let the students implement the programming
knowledge that they learnt in class XI and Class XII into a real- world
situation/problem and show the students how programming skills use in developing a
good software.
Science project, requiring writing and presentation skills which exemplify scholarly
5
PROPOSED SYSTEM
Today one cannot afford to rely on the fallible human beings of be really wants to
stand against today’s merciless competition where not to wise saying “to err is
human” no longer valid, it’s outdated to rationalize your mistake. So, to keep pace
with time, to bring about the best result without malfunctioning and greater efficiency
so to replace the unending heXYZ of flies with a much sophisticated hard disk of the
computer.
One has to use the data management software. Software has been an ascent in
markets, which have helped in making the organizations work easier and efficiently.
Data management initially had to maintain a lot of ledgers and a lot of paper work
has to be done but now software product on this organization has made their work
faster and easier. Now only this software has to be loaded on the computer and work
can be done.
This prevents a lot of time and money. The work becomes fully automated and
6
SYSTEM DEVELOPMENT LIFE CYCLE (SDLC)
7
For example, initial project activities might be designated as request, requirements-
definition, and planning phases, or initiation, concept-development, and planning
phases. End users of the system under development should be involved in reviewing
the output of each phase to ensure the system is being built to deliver the needed
functionality.
INITIATION PHASE
8
Careful oversight is required to ensure projects support strategic business
objectives and resources are effectively implemented into an organization's
enterprise architecture. The initiation phase begins when an opportunity to add,
improve, or correct a system is identified and formally requested through the
presentation of a business case. The business case should, at a minimum, describe
a proposal’s purpose, identify expected benefits, and explain how the proposed
system supports one of the organization’s business strategies. The business case
should also identify alternative solutions and detail as many informational, functional,
and network requirements as possible.
functional requirements
Assess project risks
Identify and initiate risk mitigation actions, andDevelop high-level technical
architecture, process models, data models, and a concept of operations. This
phase explores potential technical solutions within the context of the business
need.
9
It may include several trade-off decisions such as the decision to use COTS
software products as opposed to developing custom software or reusing
software components, or the decision to use an incremental delivery versus a
complete, onetime deployment.
Construction of executable prototypes is encouraged to evaluate technology
to support the business process. The System Boundary Document serves as
an important reference document to support the Information Technology
Project Request (ITPR) process.
The ITPR must be approved by the State CIO before the project can move
forward.
10
PLANNING PHASE
This phase formally defines the detailed functional user requirements using
high-level requirements identified in the Initiation, System Concept, and Planning
phases. It also delineates the requirements in terms of data, system performance,
security, and maintainability requirements for the system. The requirements are
defined in this phase to alevel of detail sufficient for systems design to proceed. They
need to be measurable, testable, and relate to the business need or opportunity
In addition, this phase plays a crucial role in ensuring that the development process
11
stays aligned with the overarching goals of the project. By carefully outlining the
requirements related to data management, system performance, security measures,
and maintainability standards, the foundation is laid for a successful system design
phase. The emphasis on measurability and testability serves as a quality check to
database layouts, and system architectures. End users, designers, developers,
database managers, and network administrators should review and refine the
prototyped designs in an iterative process until they agree on an acceptable design.
Audit, security, and quality assurance personnel should be involved in the review and
approval process. During this phase, the system is designed to satisfy the functional
requirements identified in the previous phase. Since problems in the design phase
could be very expensive to solve in the later stage of the software development, a
variety of elements are considered in the design to mitigate risk. These include:
13
DEVELOPMENT PHASE
by end users
14
Testing as a deployed system with end users working together with contract
personnel
IMPLEMENTATION PHASE
This phase is initiated after the system has been tested and accepted by the
user. In this phase, the system is installed to support the intended business
functions. System performance is compared to performance objectives established
during the planning phase. Implementation includes user notification, user training,
installation of hardware, installation of software onto production computers, and
integration of the system into daily work processes. This phase continues until the
system is operating in production in accordance with the defined userrequirements.
15
SOURCE CODE
Index.py
import all_method as am
m=""
while(m not in ['n','N','NO','no']):
print(''' *************************************
WELCOME TO XYZ
SCHOOL MANAGEMENT SYSTEM
**************************************
**************************************
^^^^^^^^^^^^^
^ ^PRESS ^^
^^^^^^^^^^^^^
1.for Show all student
2.for Add new student
3.for Delete one student
4.for Search one student
5.for Update details of a student
6.for Show all Teachers
7.for Add New Teacher
8.for Delete one Teacher
9. exit
''')
17
if n==7:
am.add_teacher()
if n==8:
am.delete_teacher()
if n==9:
exit()
print("********************")
m=input("Do you want another operation Y/N:::")
all_method.py
# Database Connection start here.. XYZ khaga
import pandas as pd
import mysql.connector as sqrt
mycon=sqrt.Connect(host="localhost",
user="root",
passwd="123",
database="XYZ")
if mycon.is_connected():
print("database connected successfully ..")
else:
print("mysql connection problem")
def show_student():
query="select * from student;"
df=pd.read_sql(query,mycon)
print(df)
x=input('''Do you want to save this result as pdf
type y::::''')
if x in ['y','Y','yes']:
df.to_csv("C://Users//XYZ//Desktop//XYZ//SMS//list.csv")
print()
print("saved successfully.......list.csv")
def add_student():
s1=int(input("enter roll no ::"))
s2=input("Enter student name ::")
s3=input("Enter student father name ::")
s4=input("Enter DOB in yyyy/mm/dd ::")
s5=input("Enter gender as M or F ::")
s6=input("Enter student address ::")
18
s7=input("Enter mobile number ::")
query="insert into
student(rno,name,fname,dob,gender,address,mobile)values(%s,%s,%s,%s,%s,%s,
%s);"
param=(s1,s2,s3,s4,s5,s6,s7)
mycon.cursor().execute(query,param)
mycon.commit()
print()
print("student added successfully....with name ...",s2)
def delete_student():
print("working....")
s1=input(("Enter student roll no :::"))
sql="delete from student where student_id=%s"
params=(s1,)
p=mycon.cursor()
p.execute(sql,params)
mycon.commit()
print()
print(p.rowcount," record(s) deleted....")
def update_student():
print("working...")
m1=int(input("which student roll no please ::"))
s1=int(input("enter roll no ::"))
s2=input("Enter student name ::")
s3=input("Enter student father name ::")
s4=input("Enter DOB in yyyy/mm/dd ::")
s5=input("Enter gender as M or F ::")
s6=input("Enter student address ::")
s7=input("Enter mobile number ::")
sql="update student set rno=%s , name=%s
,fname=%s,dob=%s,gender=%s,address=%s,mobile=%s where rno=%s "
params=(s1,s2,s3,s3,s4,s5,s6,s7,m1)
p=mycon.cursor()
p.execute(sql,params)
mycon.commit()
print()
print(p.rowcount," record(s) updated ......")
def search_student():
print("working.....")
s1=int(input("Enter student roll no :::"))
query="select * from student where rno=%s;"%(s1,)
df=pd.read_sql(query,mycon)
print()
19
print(df)
x=input('''Do you want to save this result as pdf
type y::::''')
if x in ['y','Y','yes']:
df.to_csv("C://Users//XYZ//Desktop//XYZ//SMS//list.csv")
print()
print("saved successfully.......list.csv")
#teachers method started from here ....
def show_teacher():
query="select * from teacher;"
df=pd.read_sql(query,mycon)
print(df)
x=input('''Do you want to save this result as pdf
type y::::''')
if x in ['y','Y','yes']:
df.to_csv("C://Users//XYZ//Desktop//XYZ//SMS//list.csv")
print()
print("saved sucessfully.......list.csv")
def add_teacher():
s1=input("enter teacher id ::")
s2=input("Enter teacher name ::")
s3=input("Enter DOB in yyyy/mm/dd ::")
s4=input("Enter gender as M or F ::")
s5=input("Enter teacher's address ::")
s6=input("Enter subject of teacher ::")
s7=input("Enter salary:: ")
query="insert into
teacher(tid,name,dob,gender,address,subject,salary)values(%s,%s,%s,%s,%s,%s,%
s);"
param=(s1,s2,s3,s4,s5,s6,s7)
mycon.cursor().execute(query,param)
mycon.commit()
print()
print("teacher added successfully....with name ...",s2)
def delete_teacher():
s1=input(("Enter teacher id :::"))
s2=input("Enter the name of teacher:::")
sql="delete from teacher where tid=%s or name=%s"
params=(s1,s2)
p=mycon.cursor()
p.execute(sql,params)
mycon.commit()
print()
print(p.rowcount," teacher record(s) deleted....")
20
Output
Testing
to provide
Software
stakeholders
Testing with
is an
information
empirical aboutinvestigation
the quality conducted
of the product or service
under test[1] , with respect to the context in which it is intended to operate. Software
Testing also provides an objective, independent view of the software to allow the
business to appreciate and understand the risks at implementation of the software.
Test techniques include, but are not limited to, the process of executing a program or
application with the intent of finding software bugs.
It can also be stated as the process of validating and verifying that a software
program/application/product meets the business and technical requirements that
guided its design and development, so that it works as expected and can be
implemented with the same characteristics. Software Testing, depending on the
testing method employed, can be implemented at any time in the development
process, however the most test effort is employed after the requirements have been
defined and coding process has been completed.
TESTING METHODS
Software testing methods are traditionally divided into black box testing and
white box testing. These two approaches are used to describe the point of view that
a test engineer takes when designing test cases.
SPECIFICATION-BASED TESTING
22
Specification-based testing aims to test the functionality of software according to the
applicable requirements.[16] Thus, the tester inputs data into, and only sees the
output from, the test object. This level of testing usually requires thorough test cases
to be provided to the tester, who then can simply verify that for a given input, the
output value (or behaviour), either "is" or "is not" the same as the expected value
specified in the test case. Specification-based testing is necessary, but it is
insufficient to guard against certain risks
The black box tester has no "bonds" with the code, and a tester's perception
is very simple: a code must have bugs. Using the principle, "Ask and you shall
receive," black box testers find bugs where programmers don't. But, on the other
hand, black box testing has been said to be "like a walk in a dark labyrinth without a
flashlight," because the tester doesn't know how the software being tested was
actually constructed.
That's why there are situations when (1) a black box tester writes many test
cases to check something that can be tested by only one test case, and/or (2) some
parts of the back end are not tested at all. Therefore, black box testing has the
advantage of "an unaffiliated opinion," on the one hand, and the disadvantage of
"blind exploring," on the other.
White box testing, by contrast to black box testing, is when the tester has
access to the internal data structures and algorithms (and the code that implement
these)
coverage.
23
For example, the test designer can create tests to cause all statements in the
program to be executed at least once.
fault injection methods.
mutation testing methods.
static testing - White box testing includes all static testing.
White box testing methods can also be used to evaluate the completeness of
a test suite that was created with black box testing methods. This allows the software
team to examine parts of a system that are rarely tested and ensures that the most
important function points have been tested.
24
HARDWARE AND SOFTWARE REQUIREMENTS
3. MOTHERBOARD : Pletinum
4. RAM : 512MB+
SOFTWARE REQUIREMENTS:
I. Windows OS or linux
II. Python(with pandas module )
III. Mysql
IV. MySql Connector
25
BIBLIOGRAPHY
1. Informatics
By : Sumita Arora
Practices ( Python) - Class XI
2. Informatics Practices ( Python) - Class XII By : Sumita Arora
3. Website: https://www.w3resource.com
4. Wikipedia
***
27