Source Code and Output
Source Code and Output
Thank you,
Prabhanshu Saxena
1
CERTIFICATE
This is to certify that Prabhanshu Saxena,
student of class XII-B has successfully
completed the research on the Old Age
Home Management System under the
guidance of Dr. Deepak Sharma during the
session 2024- 2025 in partial fulfillment of
Computer Science Practical Conducted by
Central Board of Secondary
Education(CBSE)
2
About Python
Python is a widely used general-purpose, high level programming language.It
was created by Guido van Rossum in 1991 and further developed by the
Python Software Foundation. It was designed with an emphasis on code
readability, and its syntax allows programmers to express their concepts in
fewer lines of code. Python is a programming language that lets you work
quickly and integrate systems more efficiently. There are two major Python
versions: Python 2 and Python 3. Both are quite different.
Advantages
• Presence of third-party modules
• Extensive support libraries (NumPy for numerical calculations, Pandas for
data analytics etc.)
• Open source and community development
• Versatile, Easy to read, learn and write
• User-friendly data structures
• High-level language
• Dynamically typed language (No need to mention data type based on the
value assigned, it takes data type)
• Object-oriented language
3
• Ideal for prototypes – provide more functionality with less coding
• Highly Efficient (Python’s clean object-oriented design provides enhanced
process control, and the language is equipped with excellent text processing
and integration capabilities, as well as its own unit testing framework, which
makes it more efficient.)
• Interpreted Language
• Portable across Operating systems
Applications
1. GUI based desktop applications
2. Graphic design, Image processing applications, Games, and Scientific/
Computational Applications
3. Enterprise and Business applications
4. Database Access
5. Language Development
6. Prototyping
7. Software Development
Importance in Industry
Most of the companies are now looking for candidates who know about
Python Programming. Those having the knowledge of python may have more
chances of impressing the interviewing panel. So, experts suggest that
beginners should start learning python and excel in it.
4
Structured Query Language (SQL)
Structured Query Language is a standard Database language which is used to
create, maintain and retrieve the relational database. Following are some
interesting facts about SQL.
SQL is case insensitive. But it is a recommended practice to use keywords (like
SELECT, UPDATE, CREATE, etc.) in capital letters and use user defined things (liked
table name, column name, etc.) in small letters.
We can write comments in SQL using “–” (double hyphen) at the beginning of any
line.
SQL is the programming language for relational databases (explained below) like
MySQL, Oracle, Sybase, SQL Server, Postgre, etc. Other nonrelational databases
(also called NoSQL) databases like MongoDB, DynamoDB, etc. do not use SQL.
Although there is an ISO standard for SQL, most of the implementations slightly
vary in syntax. So we may encounter queries that work in SQL Server but do
not work in MySQL.
5
These are some important terminologies that are used in terms of
relation.
Attribute: Attributes are the properties that define a relation.
e.g.; ROLL_NO, NAME etc.
Tuple: Each row in the relation is known as tuple. The above relation
contains 4 tuples, one of which is shown as:
1 RAM DELHI 9455123451 18
6
So first we will consider the Data Query Language. A generic query to
retrieve from a relational database is:
SELECT [DISTINCT] Attribute_List FROM
R1,R2….RM [WHERE condition]
[GROUP BY (Attributes)[HAVING condition]]
[ORDER BY(Attributes)[DESC]];
ROLL_NO NAME
1 RAM
2 RAMESH
3 SUJIT
3 SUJIT
7
CASE 3: If we want to retrieve all attributes of students, we can write * in place of
writing all attributes as:
SELECT * FROM STUDENT
WHERE ROLL_NO>2;
ROLL_NO NAME ADDRESS PHONE AGE
CASE 4: If we want to represent the relation in ascending order by AGE, we can use
ORDER BY clause as:
SELECT * FROM STUDENT ORDER BY AGE;
ROLL_NO NAME ADDRESS PHONE AGE
1 RAM DELHI 9455123451 18
2 RAMESH GURGAON 9652431543 18
3 SUJIT ROHTAK 9156253131 20
Note: ORDER BY AGE is equivalent to ORDER BY AGE ASC. If we want to retrieve the
results in descending order of AGE, we can use ORDER BY AGE DESC.
CASE 5: If we want to retrieve distinct values of an attribute or group of attribute,
DISTINCT is used as in:
SELECT DISTINCT ADDRESS FROM STUDENT;
ADDRESS
DELHI
GURGAON
ROHTAK
If DISTINCT is not used, DELHI will be repeated twice in result set. Before
understanding GROUP BY and HAVING, we need to understand aggregations
functions in SQL.
8
AGGRATION FUNCTIONS: Aggregation functions are used to perform mathematical
operations on data values of a relation. Some of the common aggregation functions
used in SQL are:
COUNT: Count function is used to count the number of rows in a relation. e.g.;
SELECT COUNT (PHONE) FROM STUDENT;
COUNT(PHONE)
4
SUM: SUM function is used to add the values of an attribute in a relation. e.g.;
SELECT SUM (AGE) FROM STUDENT;
SUM(AGE)
74
In the same way, MIN, MAX and AVG can be used. As we have seen above, all
aggregation functions return only 1 row.
AVERAGE: It gives the average values of the tuples. It is also defined as sum divided
by count values.
Syntax: AVG(attributename)
OR
Syntax: SUM(attributename)/COUNT(attributename)
The above mentioned syntax also retrieves the average value of tupples.
MAXIMUM: It extracts the maximum value among the set of tupples.
Syntax: MAX(attributename)
MINIMUM: It extracts the minimum value amongst the set of all the tupples.
Syntax: MIN(attributename)
GROUP BY: Group by is used to group the tuples of a relation based on an attribute
group of attribute. It is always combined with aggregation function which is
computed on group. e.g.;
SELECT ADDRESS, SUM(AGE) FROM STUDENT
or
9
GROUP BY (ADDRESS);
In this query, SUM(AGE) will be computed but not for entire table but for each
address. i.e.; sum of AGE for address DELHI (18+18=36) and similarly for other addre
as well. The output is:
ADDRESS SUM(AGE)
DELHI 36
GURGAON 18
ROHTAK 20
If we try to execute the query given below, it will result in error because although w
have computed SUM(AGE) for each address, there are more than 1 ROLL_NO for ea
address we have grouped. So it can’t be displayed in result set. We need to use
aggregate functions on columns after SELECT statement to make sense of the
resulting set whenever we are using GROUP BY.
SELECT ROLL_NO, ADDRESS, SUM(AGE) FROM STUDENT
GROUP BY (ADDRESS);
NOTE: An attribute which is not a part of GROUP BY clause can’t be used for
selection. Any attribute which is part of GROUP BY CLAUSE can be used for selection
but it is not mandatory. But we could use attributes which are not a part of the
GROUP BY clause in an aggregrate function.
10
OBJECTIVE
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.
11
SYNOPSIS
PROJECT
Develop a comprehensive Python-based application to streamline the
management of old age homes. Those who want to donate to the
cause and provide the residents of the said old age homes can view
the essentials that are needed at that time in the place
effectively.User can also view important details such as mean age and
number of residents too.
OVERVIEW
Key features of the system include:
1.Smooth Management:
This program will let the staff smoothly manage the old age home.It will help in keeping
track of records.Securely store and manage resident details like name, age, contact
information, emergency contacts, medical history, dietary restrictions, and preferences.
2.User friendly:
It can help those people who dont have enough time to visit their parents or take care of
their needs .They can readily get updates about their parents health status .
3.Divide:
The program is made for two types of users .Those who are from the management and
those from general public.Both can use varyting types of features according to their use.
4.Charity:
Those who want to donate for the elderly and take care of their needs indirectly can
donat e accroding to their capabilities .They can even volunteer for work .
12
CONCLUSION AND FUTURE ENHANCEMENTS
13
levels.
• Explore voice-activated assistants (e.g., Google Assistant, Amazon Alexa) for resi-
dents to control smart devices hands-free.
6.Healthcare System Integration :
• Establish secure connections with healthcare providers' systems to facilitate elec-
tronic health record (EHR) sharing, streamlining medication management, and en-
abling remote consultations.
7.Predictive Health Risk Assessment:
• Develop machine learning models that analyze resident data (e.g., vitals,
medication records) to predict potential health risks and enable preventive
measures.
8.Personalized Care Recommendations:
• Utilize AI algorithms to suggest customized care plans based on individual needs
and preferences, optimizing interventions and promoting resident well-being.
8.Automated Scheduling and Resource Optimization:
• Train AI models to predict staffing requirements based on resident needs and
activity levels, enabling dynamic scheduling and efficient resource allocation.
9.Resident Consent and Transparency:
• Ensure residents understand how their data will be collected, used, and stored,
and obtain informed consent for data-driven initiatives.
• Provide clear and transparent explanations of AI-based decision making.
10.Addressing Bias and Fairness:
• Train AI models on diverse datasets to mitigate bias and ensure fair decision mak-
ing that benefits all residents.
11.Human Oversight and Accountability:
• Maintain human oversight in AI-assisted systems, prioritizing resident well-being
over algorithmic predictions.
• Establish clear accountability measures for decisions made by or influenced by AI
systems.
12.Accessibility:
• Design the system to be accessible for residents with disabilities, incorporating
features like screen readers, voice commands, and large font options.
• Consider integrating assistive technologies like voice-activated controls or smart
home devices with accessibility features.
14
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 heaps 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 atomization various organizations. Many software products
working are now 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 workhas 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 any information regarding the organization can be
obtained by clicking the button. Moreover, now it’s an age of computers
of and automating such an organization gives the better look.
15
System Development of Life Cycle (SDLC)
16
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:
17
SYSTEM CONCEPT DEVELOPMENT PHASE
18
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.
19
A Project Management Plan is created with components related to acquisition
planning, configuration management planning, quality assurance planning,
conceptof operations, system security, verification and validation, and systems
engineering management planning.
• Further define and refine the functional and data requirements and document 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
acceptable system performance.
20
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 identifyand 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:
1. Identifying potential risks and defining mitigating design features.
2. Performing a security risk assessment.
3. Developing a conversion plan to migrate current data to the new system.
4. Determining the operating environment.
5. Defining major subsystems and their inputs and outputs.
6. Allocating processes to resources.
7. 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.
21
8. Preparing detailed logic specifications for each software module. The result
is a draft System Design Document which captures the preliminary design
for the system.
9. 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
The development phase involve converting design specifications into executable
programs. Effective development standards include requirements thatprogrammers
and other project participants discuss design specifications before programming
begins. The procedures help ensure programmers clearly understand program
designs and functional requirements. Programmers use various techniques to
develop computer programs. The large transaction-orientedprograms associated
with financial institutions have traditionally been developed using procedural
programming techniques. Procedural programming involves the line-by-line scripting
of logical instructions that are combined to form a program. Effective completion of
the previous stages is a key factor in the success of the Development phase. The
Development phase consists of:
• Translating the detailed requirements and design into system components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
22
INTEGRATION AND TEST PHASE
Subsystem integration, system, security, and user acceptance testing is conducted
during the integration and test phase. The user, with those responsible for quality
assurance, validates that the functional requirements, as defined in the functional
requirements document, are satisfied by the developed or modified system. OIT
Security staff assess the system security and issue a security certification and
accreditation prior toinstallation/implementation.
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.
23
OPERATIONS AND MAINTENANCE PHASE
The system operation is ongoing. 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 reenter 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.
24
REQUIREMENTS
HARDWARE SPECIFICATION (minimum requirements):
CPU : AMD A6-7310 APU
RAM : 4 GB
Hard Disk : 20 KB
Monitor : Generic PnP Monitor
Keyboard : Standard PS/2 Keyboard
Motherboard : AMD
Speed : 2.00 GHZ
25