Aswin Cs Proj FR
Aswin Cs Proj FR
HOSPITAL
Management System
COMPUTER SCIENCE
Avani.SS
Name: Aswin 2023-2024
Batch: 2024-2025
Polymers in Aerospace | 1
This is certified to be the bonafide Computer Science project
of Mr ASWIN S, Roll Number ________________________,
Admission Number 2175, Class XII, Division A, of this school
during the academic year 2024-25, as prescribed by the
Central Board of Secondary Education.
Date: Teacher-In-Charge
( Computer Science Department )
Examiner Principal
TABLE OF CONTENTS
Sl.N DESCRIPTION
01 ACKNOWLEDGEMENT
02 INTRODUCTION
04 PROPOSED SYSTEM
07 TESTING
09 SOURCE CODE
10 OUTPUT
11 CONCLUSION
12 BIBLIOGRAPHY
I am grateful to Almighty for giving me the strength to
successfully conduct my experiment and for sustaining
my efforts which many a time did oscillate.
Introduction
The Scope of the project takes care of the details of each and every department. These
details gives the doctor, staffs, specialists and patient details including their salary,
Attendance, doctor’s appointments and the billing system. The details of Doctor and
staff help the hospital to maintain the record of every person. Their attendance details
help them to know about their attentive presence while salary is calculated. The billing
system provides an efficient way for calculating bill details of the patients.
The objective of this project is to let the students apply the programming knowledge
into a real-world situation/problem and expose the students to how programming skills
helps in developing a good software.
PROPOSED SYSTEM
The wise saying “To err is human” is no longer valid, it’s out-dated to rationalize your
mistake. One cannot afford to rely on fallible human beings if one really wants to
withstand today’s merciless competition. So, to keep pace with time, to bring about the
best result without malfunctioning and for greater efficiency we can replace the heaps of
files with a more sophisticated hard disk of the computer .
One has to use the data management software. Software has been an asset in automation
of various organisations. Many software products available now in markets, have helped
in making the organization’s work easier and efficient. Data management initially had to
maintain a lot of ledgers and a lot of paperwork. But now, software has helped this
organization make their work faster and easier. Now, only this software has to be loaded
on the computer and the work can be done.
This prevents a loss of time and money. Work becomes fully automated and any
information regarding the organization can be obtained by clicking the button. Moreover,
now it’s an age of computers and automating such an organization gives it a better look.
PLANNING ANALYSIS DESIGN
IMPLEMENTATION
SUPPORT
construction,testing
& software
(consisted of three iterations on
differernt hardware platforms)
The systems development life cycle is a project management technique that divides
complex projects into smaller, more easily managed segments or phases. Segmenting
projects allows managers to verify the successful completion of project phases before
allocating resources to subsequent phases.
Software development projects typically include initiation, planning, design,
development, testing, implementation, and maintenance phases. However, the phases
may be divided differently depending on the organization involved.
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.
PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE
INITIATION PHASE
The Initiation Phase begins when a business sponsor identifies a need or an opportunity.
The purpose of the Initiation Phase is to:
The System Concept Development Phase begins after a business need or opportunity is
validated by the Agency/Organization Program Leadership and the
Agency/Organization CIO.
The purpose of the System Concept Development Phase is to:
The SDLC can be an obstacle to development if it's not implemented with care. For
example, if the requirements of customers and other stakeholders aren't considered, the
system's requirements may not be understood from the start.
PICTORIAL REPRESENTATION OF SDLC:
PLANNING PHASE
The planning phase is the most critical step in completing development, acquisition, and
maintenance projects. Careful planning, particularly in the early stages of a project, is
necessary to coordinate activities and manage project risks effectively. The depth and
formality of project plans should be commensurate with the characteristics and risks of
a given project. Project plans refine the information gathered during the initiation phase
by further identifying the specific activities and resources required to complete a
project.
A critical part of a project manager’s job is to coordinate discussions between user,
audit, security, design, development, and network personnel to identify and document as
many functional, security, and network requirements as possible. During this phase, a
plan is developed that documents the approach to be used and includes a discussion of
methods, tools, tasks, resources, project schedules, and user input. Personnel
assignments, costs, project schedule, and target dates are established.
A Project Management Plan is created with components related to acquisition planning,
configuration management planning, quality assurance planning, concept of operations,
system security, verification and validation, and systems engineering management
planning.
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 a level of detail sufficient for systems design to proceed. They need to be measurable,
testable, and relate to the business need or opportunity identified in the Initiation Phase.
The requirements that will be used to determine acceptance of the system are captured
in the Test and Evaluation Master Plan.
The purposes of this phase are to:
• Further define and refine the functional and data requirements and document
them in the Requirements Document,
• Complete business process reengineering of the functions to be supported (i.e.,
verify what information drives the business process, what information is
generated, who generates it, where does the information go, and who processes
it),
• Develop detailed data and process models (system inputs, outputs, and the
process.
• Develop the test and evaluation requirements that will be used to determine
DESIGN PHASE
The design phase involves converting the informational, functional, and network
requirements identified during the initiation and planning phases into unified design
specifications that developers use to script programs during the development phase.
Program designs are constructed in various ways. Using a top-down approach, designers
first identify and link major program components and interfaces, then expand design
layouts as they identify and link smaller subsystems and connections. Using a bottom-
up approach, designers first identify and link minor program components and interfaces,
then expand design layouts as they identify and link larger systems and connections.
Contemporary design techniques often use prototyping tools that build mock-up designs
of items such as application screens, 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:
• Identifying potential risks and defining mitigating design features.
• Performing a security risk assessment.
• Developing a conversion plan to migrate current data to the new system.
• Determining the operating environment.
• Defining major subsystems and their inputs and outputs.
• Allocating processes to resources.
• Preparing detailed logic specifications for each software module. The result is a
draft System Design Document which captures the preliminary design for the
system.
• Everything requiring user input or approval is documented and reviewed by the
user. Once these documents have been approved by the Agency CIO and
Business Sponsor, the final System Design Document is created to serve as the
Critical/Detailed Design for the system.
• This document receives a rigorous review by Agency technical and functional
representatives to ensure that it satisfies the business requirements. Concurrent
with the development of the system design, the Agency Project Manager begins
development of the Implementation Plan, Operations and Maintenance Manual,
and the Training Plan.
DEVELOPMENT PHASE
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 user requirements.
OPERATIONS AND MAINTENANCE PHASE
The system operation is on-going. The system is monitored for continued performance
in accordance with user requirements and needed system modifications are
incorporated. Operations continue as long as the system can be effectively adapted to
respond to the organization’s needs. When modifications or changes are identified, the
system may re-enter the planning phase.
The purpose of this phase is to:
• Operate, maintain, and enhance the system.
• Certify that the system can process sensitive information.
• Conduct periodic assessments of the system to ensure the functional
requirements continue to be satisfied.
• Determine when the system needs to be modernized, replaced, or retired.
TESTING
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.
Black box testing treats the software as a "black box," without any knowledge of
internal implementation. Black box testing methods include: equivalence partitioning,
boundary value analysis, all-pairs testing, fuzz testing, model-based testing, traceability
matrix, exploratory testing and specification-based testing.
SPECIFICATION-BASED TESTING
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
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)
The following types of white box testing exist:
• Api testing - Testing of the application using Public and Private APIs.
• Code coverage - creating tests to satisfy some criteria of code coverage.
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.
Two common forms of code coverage are:
• Function Coverage: Which reports on functions executed and
• Statement Coverage: Which reports on the number of lines executed to
complete the test.
They both return coverage metric, measured as a percentage.
HARDWARE REQUIREMENTS :
SOFTWARE REQUIREMENTS:
I. Windows OS
II. Python
III. MySQL
SOURCE CODE
while(True):
print("""
================================
WELCOME TO MYHOSPITAL
================================
""")
import mysql.connector
mysql=mysql.connector.connect(host="localhost",user="root",password="Leon@123")
mycursor=mysql.cursor()
mycursor.execute("use my_hospitals")
while(True):
print("""
1. SIGN IN (LOGIN)
2. SIGN UP (REGISTER)
""")
if r==2:
print("""
=======================================
=======================================
""")
mysql.commit()
print("""
=======================================
!!!!!!!!REGISTERED SUCCESSFULLY!!!!!!!!
=======================================
""")
elif r==1:
print("""
==================================
==================================
""")
row=mycursor.fetchall()
for i in row:
a=list(i)
if a[0]==str(ps):
while(True):
print("""
1.ADMINISTRATION
3.SIGN OUT
""")
if a==1:
print("""
1. SHOW DETAILS
4. EXIT
""")
if b==1:
print("""
1. DOCTOR DETAILS
2. NURSE DETAILS
3. OTHER WORKERS
""")
if c==1:
row=mycursor.fetchall()
for i in row:
b=0
v=list(i)
k=["NAME","SPECIALISATION","AGE","ADDRESS","CONTACT","FEES","MONTHLY_SALARY
"]
d=dict(zip(k,v))
print(d)
elif c==2:
row=mycursor.fetchall()
for i in row:
v=list(i)
k=["NAME","SPECIALISATION","AGE","ADDRESS","CONTACT","MONTHLY_SALARY"]
d=dict(zip(k,v))
print(d)
elif c==3:
row=mycursor.fetchall()
for i in row:
v=list(i)
k=["NAME","SPECIALISATION","AGE","ADDRESS","CONTACT","MONTHLY_SALARY"]
d=dict(zip(k,v))
print(d)
elif b==2:
print("""
1. DOCTOR DETAILS
2. NURSE DETAILS
3. OTHER WORKERS
""")
if c==1:
spe=input("ENTER SPECIALISATION:")
age=input("ENTER AGE:")
add=input("ENTER ADDRESS:")
cont=input("ENTER CONTACT NO.:")
fees=input("ENTER FEES:")
ms=input("ENTER MONTHLY_SALARY:")
mysql.commit()
print("SUCCESSFULLY ADDED")
elif c==2:
age=input("ENTER AGE:")
add=input("ENTER ADDRESS:")
ms=int(input("ENTER MONTHLY_SALARY:"))
mysql.commit()
print("SUCCESSFULLY ADDED")
elif c==3:
age=input("ENTER AGE:")
add=input("ENTER ADDRESS:")
ms=input("ENTER MONTHLY_SALARY:")
mysql.commit()
print("SUCCESSFULLY ADDED")
elif b==3:
print("""
1. DOCTOR DETAILS
2. NURSE DETAILS
3. OTHER WORKERS
""")
if c==1:
name=input("ENTER DOCTOR'S NAME:")
row=mycursor.fetchall()
print(row)
if p=="y":
mysql.commit()
print("SUCCESSFULLY DELETED!!")
else:
print("NOT DELETED")
elif c==2:
row=mycursor.fetchall()
print(row)
if p=="y":
mycursor.execute("delete from nurse_details where
name='"+name+"'")
mysql.commit()
print("SUCCESSFULLY DELETED!!")
else:
print("NOT DELETED")
elif c==3:
row=mycursor.fetchall()
print(row)
if p=="y":
mysql.commit()
print("SUCCESSFULLY DELETED!!")
else:
print("NOT DELETED")
elif b==4:
break
elif a==2:
print("""
3. DISCHARGE PATIENT
4. EXIT
""")
if b==1:
row=mycursor.fetchall()
for i in row:
b=0
v=list(i)
k=["NAME","SEX","AGE","ADDRESS","CONTACT"]
d=dict(zip(k,v))
print(d)
elif b==2:
puid=str(input("ENTER patientid : "))
address=str(input("ADDRESS: "))
mysql.commit()
for i in mycursor:
v=list(i)
k=['puid','NAME','AGE','ADDRESS','CONTACT']
print(dict(zip(k,v)))
print("""
====================================
!!!!!!!REGISTERED SUCCESSFULLY!!!!!!
====================================
""")
elif b==3:
row=mycursor.fetchall()
print(row)
if bill=="y":
mysql.commit()
elif b==4:
break
elif a==3:
break
else:
break
mysql.close()
OUTPUT
CONCLUSION
We are very delighted and relieved with the successful completion of our
project. We have made a small attempt at developing a computer-based solution
for Hospital Management System. This project helped us immensely in
understanding the basic principles behind the operations involved within
Python-MySQL project environment. This has also enabled us to learn deeply in
Python Pandas, Matplotlib and PiPy Community.
***