0% found this document useful (0 votes)
1K views55 pages

Health and Fitness Tracker

Uploaded by

Kavenaya
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)
1K views55 pages

Health and Fitness Tracker

Uploaded by

Kavenaya
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
You are on page 1/ 55

CENTRAL BOARD OF SECONDARY

EDUCATION AISSCE PRACTICAL

EXAMINATION (2024 - 2025)

SRI SWAMY INTERNATIONAL SCHOOL


Affiliated to CBSE, New Delhi Affln. No. 1930458
MASINAYAKANPATTY, AYOTHIYAPATTANAM,
SALEM – 636 103.

COMPUTER SCIENCE

PROJECT REPORT FOR THE YEAR 2024 -


2025

CLASS: XII
Under the Guidance of
Mrs.L.Nisha

Submitted by

1. DHANASHREE.V

2.NANDHANA.S.J

3.KIRUTHIGA.T
SRI SWAMY INTERNATIONAL SCHOOL
Affiliated to CBSE, New Delhi Affln. No. 1930458
MASINAYAKANPATTY, AYOTHIYAPATTANAM,
SALEM – 636 103.

COMPUTER SCIENCE (083)

PROJECT REPORT
ENTITLED

HEALTH AND FITNESS TRACKER


This is the Certified Bonafide Project Report work done and submitted

by _ Reg.No.____

at Sri Swamy International School Computer Laboratory in fulfillment of the

requirements for the Practical Examination and Viva Voce held on

during the year 2024 – 2025.

Teacher-In-Charge Principal

Examiners

Internal Examiner External Examiner


ACKNOWLEDGEMENT

I would like to express my profound gratitude towards many

individuals, as without their kind support it would not be possible for me

to complete this project report.

I would like to extend my sincere thanks to The School Management,

The Principal and my Computer Teacher who gave me the golden

opportunity in enhancing my hidden capabilities.

I would also like to express my gratitude towards my Parents for

their kind co-operation as they helped me a lot in completion of this

project.Finally, I thank all who helped me a lot in finalizing the project

within the limited time frame.


PROJECT REPORT ON

HEALTH AND FITNESS TRACKER


TABLE OF CONTENTS
PAGE
SNO DESCRIPTION
NO
01 INTRODUCTION

02 OBJECTIVES

03 SOFTWARE SPECIFICATIONS

04 EXISTING SYSTEM

05 PROPOSED SYSTEM

06 FRONT END

07 BACK END

08 SOURCE CODE

09 OUTPUT

10 TESTING

11 FUTURE ENHANCEMENT

12 CONCLUSION

13 BIBLIOGRAPHY
INTRODUCTION
INTRODUCTION

The health and fitness tracking industry has witnessed


strong popularity with the advancement of wearable devices
and mobile applications. A well-structured database tailored
to the specific needs of this domain is crucial for managing
user data, tracking fitness activities, and providing
personalized insights.Our goal is to design a relational
database for a health and fitness tracking application that
enables users to monitor their exercise routines, nutritional
intake, and overall wellness progress. The database will
support features such as user profiles, activity tracking, food
logging, goal setting, and social interactions among users.
OBJECTIVES
OBJECTIVES

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 effectively when
developing small to medium sized projects.
3. Write effective procedural code to solve small to medium sized
problems.
4. Students will demonstrate a breadth of knowledge in computer
science, as exemplified in the areas of systems, theory and
software development.
5. Students will demonstrate their ability to conduct a research
with Computer Science project which require writing and
presentation skills which exemplify scholarly style in computer
science.
SOFTWARE
SPECIFICATION
SOFTWARE REQUIREMENTS

I. Windows OS

II. Python

III. Mysql
EXISTING SYSTEM
EXISTING SYSTEM
The existing system is not totally automated. Though the system is
computerized to a particular extent, it has to do a lot of manual
work.
The different processes involved are:

To maintain:
• Calorie Tracking
• User-Friendly Interface
• Workout Modes
• Heart beat tracking

Nowadays, people are very busy and they don’t find much time to
monitor their fitness and health so we use digital intelligence to
monitor the health.
PROPOSED SYSTEM
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. Software has been an ascent in atomization to
various organisations. 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 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 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.
FRONT – END
FRONT – END
Python
Python is a popular programming language. It was created by
Guido van Rossum, and released in 1991.

It is used for:
 web development (server-side),
 software development,
 mathematics,
 system scripting.

What can Python do?


 Python can be used on a server to create web applications.
 Python can be used alongside software to create workflows.
 Python can connect to database systems. It can also read and
modify files.
 Python can be used to handle big data and perform complex
mathematics.
 Python can be used for rapid prototyping, or for production-
ready software development.

Why Python?
 Python works on different platforms (Windows, Mac, Linux,
Raspberry Pi, etc).
 Python has a simple syntax similar to the English language.
 Python has syntax that allows developers to write programs with
fewer lines than some other programming languages.
 Python runs on an interpreter system, meaning that code can be
executed as soon as it is written. This means that prototyping
can be very quick.
 Python can be treated in a procedural way, an object-oriented
way or a functional way.

Good to know
 The most recent major version of Python is Python 3, which we
shall be using in this tutorial. However, Python 2, although not
being updated with anything other than security updates, is still
quite popular.
 In this tutorial Python will be written in a text editor. It is
possible to write Python in an Integrated Development
Environment, such as Thonny, Pycharm, Netbeans or Eclipse
which are particularly useful when managing larger collections
of Python files.

Python Syntax compared to other programming languages


 Python was designed for readability, and has some similarities to
the English language with influence from mathematics.
 Python uses new lines to complete a command, as opposed to
other programming languages which often use semicolons or
parentheses.
 Python relies on indentation, using whitespace, to define scope;
such as the scope of loops, functions and classes. Other
programming languages often use curly-brackets for this
purpose.
Advantages of Python

1. Easy to Read, Learn and Write


Python is a high-level programming language that has
English-like syntax. This makes it easier to read and understand
the code.
Python is really easy to pick up and learn, that is why a lot of
people recommend Python to beginners. You need less lines of
code to perform the same task as compared to other major
languages like C/C++ and Java

2. Improved Productivity
Python is a very productive language. Due to the simplicity of
Python, developers can focus on solving the problem. They don’t
need to spend too much time in understanding
the syntax or behavior of the programming language. You write
less code and get more things done.

3. Interpreted Language
Python is an interpreted language which means that Python
directly executes the code line by line. In case of any error, it
stops further execution and reports back the error which has
occurred. Python shows only one error even if the program has
multiple errors. This makes debugging easier.

4. Dynamically Typed
Python doesn’t know the type of variable until we run the
code. It automatically assigns the data type during execution.
The programmer doesn’t need to worry about declaring variables
and their data types.

5. Free and Open-Source


Python comes under the OSI approved open-source license.
This makes it free to use and distribute. You can download the
source code, modify it and even distribute your version of
Python. This is useful for organizations that want to modify
some specific behavior and use their version for development.

6. Vast Libraries Support


The standard library of Python is huge, you can find almost
all the functions needed for your task. So, you don’t have to
depend on external libraries. But even if you do, a Python
package manager (pip) makes things easier to import other great
packages from the Python package index (PyPi).
Disadvantages of Python

1. Slow Speed

We discussed above that Python is an interpreted language and


dynamically-typed language. The line by line execution of code often leads to
slow execution. The dynamic nature of Python is also responsible for the slow
speed of Python because it has to do the extra work while executing code. So,
Python is not used for purposes where speed is an important aspect of the
project.

2. Not Memory Efficient

To provide simplicity to the developer, Python has to do a little tradeoff.


The Python programming language uses a large amount of memory. This can
be a disadvantage while building applications when we prefer memory
optimization.

3. Weak in Mobile Computing

Python is generally used in server-side programming. We don’t get to


see Python on the client-side or mobile applications because of the following
reasons. Python is not memory efficient and it has slow processing power as
compared to other languages.

4. Database Access

Programming in Python is easy and stress-free. But when we are


interacting with the database, it lacks behind. The Python’s database access
layer is primitive and underdeveloped in comparison to the popular
technologies like JDBC and ODBC. Huge enterprises need smooth interaction
of complex legacy data and Python is thus rarely used in enterprises.

5. Runtime Errors
As we know Python is a dynamically typed language so the data type of
a variable can change anytime. A variable containing integer number may
hold a string in the future, which can lead to Runtime Errors.Therefore
Python programmers need to perform thorough testing of the applications.
Python standard library

The Python Standard Library contains the exact syntax,


semantics, and tokens of Python. It contains built-in modulesthat provide
access to basic system functionality like I/O and some other core
modules. Most of the Python Libraries are written in the C programming
language. The Python standard library consists of more than 200 core
modules. All these work together to make Python a high-level
programming language. Python Standard Library plays a very important
role. Without it, the programmers can’t have access to the functionalities
of Python. But other than this, there are several other libraries in Python
that make a programmer’s life easier.
Let’s have a look at some of the commonly used libraries:

1. TensorFlow:
This library was developed by Google in collaboration
with the Brain Team. It is an open-source library used for high-
level computations. It is also used in machine learning and deep
learning algorithms. It contains a large number of tensor
operations. Researchers also use this Python library to solve
complex computations in Mathematics and Physics.

2. Matplotlib:
This library is responsible for plotting numerical data.
And that’s why it is used in data analysis. It is also an open-
source library and plots high-defined figures like pie charts,
histograms, scatterplots, graphs, etc
.
3. Numpy:
The name “Numpy” stands for “Numerical Python”. It is
the commonly used library. It is a popular machine learning
library that supports large matrices and multi-dimensional data.
It consists of in-built mathematical functions for easy
computations. Even libraries like TensorFlow use Numpy
internally to perform several operations on tensors. Array
Interface is one of the key features of this library.

4. SciPy:
The name “SciPy” stands for “Scientific Python”. It is an
open-source library used for high-level scientific computations.
This library is built over an extension of Numpy. It works with
Numpy to handle complex computations. While Numpy allows
sorting and indexing of array data, the numerical data code is
stored in SciPy. It is also widely used by application developers
and engineers.

5. PyBrain:
The name “PyBrain” stands for Python Based Reinforcement
Learning, Artificial Intelligence, and Neural Networks library. It is an
open-source library built for beginners in the field of Machine Learning.
It provides fast and easy-to-use algorithms for machine learning tasks. It
is so flexible and easily understandable and that’s why is really helpful
for developers that are new in research fill
BACK – END
BACK – END

MySQL is a relational database management system based on


the Structured Query Language, which is the popular language for
accessing and managing the records in the database. MySQL is
open-source and free software under the GNU license. It is
supported by Oracle Company. The project of MySQL was
started in 1979 when MySQL's inventor Michael
Widenius developed an in-house database tool
called UNIREG for managing databases. After that, UNIREG has
been rewritten in several different languages and extended to
handle big databases

MySQL database that provides for how to manage database and to


manipulate data with the help of various SQL queries. These
queries are: insert records, update records, delete records, select
records, create tables, drop tables, etc.

What is Database?
A database is an application that stores the organized collection
of records. It can be accessed and manage by the user very easily.
It allows us to organize data into tables, rows, columns, and
indexes to find the relevant information very quickly. Each
database contains distinct API for performing database operations
such as creating, managing, accessing, and searching the data it
stores. Today, many databases available like MySQL,
Sybase, Oracle, MongoDB, PostgreSQL, SQL Server, etc.

What is MySQL?
MySQL is currently the most popular database management
system software used for managing the relational database. It is
open-source database software, which is supported by Oracle
Company. It is fast, scalable, and easy to use database
management system in comparison with Microsoft SQL Server
and Oracle Database. It is commonly used in conjunction
with PHP scripts for creating powerful and dynamic server-side or
web-based enterprise applications.
It is developed, marketed, and supported by MySQL AB, a
Swedish company, and written in C programming
language and C++ programming language. The official
pronunciation of MySQL is not the My Sequel; it is My Ess Que
Ell. However, you can pronounce it in your way. Many small and
big companies use MySQL. MySQL supports many Operating
Systems like Windows, Linux, MacOS, etc. with C, C++, and Java
languages.
MySQL is a Relational Database Management System (RDBMS)
software that provides many things, which are as follows:

 It allows us to implement database operations on tables, rows,


columns, and indexes.
 It defines the database relationship in the form of tables
(collection of rows and columns), also known as relations.
 It provides the Referential Integrity between rows or columns
of various tables
 It allows us to updates the table indexes automatically.
 It uses many SQL queries and combines useful information
from multiple tables for the end-users.

How MySQL Works?


MySQL follows the working of Client-Server Architecture. This
model is designed for the end-users called clients to access the
resources from a central computer known as a server using
network services. Here, the clients make requests through a
graphical user interface (GUI), and the server will give the desired
output as soon as the instructions are matched. The process of
MySQL environment is the same as the client-server model.

The core of the MySQL database is the MySQL Server. This


server is available as a separate program and responsible for
handling all the database instructions, statements, or commands.
The working of MySQL database with MySQL Server are as
follows:
1.MySQL creates a database that allows you to build many tables
to store and manipulate data and defining the relationship between
each table.
2.Clients make requests through the GUI screen or command
prompt by using specific SQL expressions on MySQL.
3.Finally, the server application will respond with the requested
expressions and produce the desired result on the client-side.
A client can use any MySQL GUI. But, it is making sure that your
GUI should be lighter and user-friendly to make your data
management activities faster and easier. Some of the most widely
used MySQL GUIs are MySQL Workbench, SequelPro,
DBVisualizer, and the Navicat DB Admin Tool. Some GUIs are
commercial, while some are free with limited functionality, and
some are only compatible with MacOS. Thus, you can choose the
GUI according to your needs.

Reasons for popularity


MySQL is becoming so popular because of these following
reasons
 MySQL is an open-source database, so you don't have to pay a
single penny to use it.
 MySQL is a very powerful program that can handle a large set of
functionality of the most expensive and powerful database
packages.
 MySQL is customizable because it is an open-source database,
and the open-source GPL license facilitates programmers to
modify the SQL software according to their own specific
environment.
 MySQL is quicker than other databases, so it can work well even
with the large data set.
 MySQL supports many operating systems with many languages
like PHP, PERL, C, C++, JAVA, etc.
 MySQL uses a standard form of the well-known SQL data
language.
o MySQL is very friendly with PHP, the most popular language
for web development.
o MySQL supports large databases, up to 50 million rows or more
in a table. The default file size limit for a table is 4GB, but you can
increase this (if your operating system can handle it) to a
theoretical limit of 8 million terabytes (TB).
SOURCE CODE
SOURCE CODE

*Database Schema:*

Create a MySQL database


with the following tables:

```
CREATE DATABASE
fitness_tracker;

USE fitness_tracker;

CREATE TABLE users (


Id INT PRIMARY KEY
AUTO_INCREMENT,
Username
VARCHAR(50) NOT
NULL,
Password
VARCHAR(255) NOT
NULL,
Email VARCHAR(100)
NOT NULL
);
CREATE TABLE
activities (
Id INT PRIMARY KEY
AUTO_INCREMENT,
User_id INT NOT NULL,
Activity_date DATE
NOT NULL,
Activity_type
VARCHAR(50) NOT
NULL,
Duration INT NOT
NULL,
Calories_burned INT
NOT NULL,
FOREIGN KEY (user_id)
REFERENCES users(id)
);

CREATE TABLE sleep (


Id INT PRIMARY KEY
AUTO_INCREMENT,
User_id INT NOT NULL,
Sleep_date DATE NOT
NULL,
Sleep_duration INT NOT
NULL,
FOREIGN KEY (user_id)
REFERENCES users(id)
);

CREATE TABLE nutrition


(
Id INT PRIMARY KEY
AUTO_INCREMENT,
User_id INT NOT NULL,
Nutrition_date DATE
NOT NULL,
Calories_consumed INT
NOT NULL,
Protein INT NOT NULL,
Carbohydrates INT NOT
NULL,
Fat INT NOT NULL,
FOREIGN KEY (user_id)
REFERENCES users(id)
);
OUTPUT
RCTRTOïœoìaëDœmæŁíOR[RSÁDEñSŒ¥áO0R[RSBYDES
ÆÛ¥p AEIOÆTO T%4O0R[RSRúOL

1í% Œï0RO0R[RŒ%DE%O0DT

E| :?ASSW0RDf0f0
AEIOÆTO T%4O0R[RSRúOL
1 O: i : t a t m|:m t|aiIi
RCTRTOïœoìaëDœmæŁíOR[RSÁDEñSŒ¥áO0R[RSBYDESÆÛ¥p
AEIOMTO TM#O0R[RSRïOL

1í% Œï0RO0R[RŒ%DEAO0DT

AOODTRSTDOOCBTJSTO

C AEIOMTO

TM#O0R[RSRïOL
enter t\e sectio8 /Oü Wantto zccess:....(1,2,3OfÄ)..........2
älLLl\G PR0CEDJRE:|reip\t in \ps......Ä\D.......COSt in rvpees]
('Up', 'fORs')
('2fp', 'TfRs')
('Jf¢', '1OORs')
('4fp', '12fRs')
('Up', '1fORs')
('1Ofp', '2TfRs')
('2Ofp', 'f2fRs')
('JOfp', 'TTfRs')
('4Ofp', '1O2fRs')
('fOfpÜ12TfRs')
('1OOfpÜ2f2ORs')
('1fOfpüJTTORs')
('2OOfpÜfO2ORs')
('2fOfpÜ62TORs')
('JOOfpÜTf2ORs')
('Jfofp' '8TTORs')
('4OOf¢'’ '1OO2ORs')
('4fofp'’ '112TORs')
('fOOfp 12f2ORs')

WELCOMETO 0ATMA\C0JRIERSER¥ICE:
1. COvrier Oräer ana cvstomer äetzils
2.äiIIinpyrOceävre
J.COvrier service äO/S
4.e›it
enter t\e sectio8 ÿOü Wantto zccess:....(1,2,3Of4)........:
TESTING
TESTING

Software Testing is an empirical investigation conducted to


provide stakeholders with information about the quality of the product
or service under test , 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.
BLACK BOX TESTING
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

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

ADVANTAGES AND DISADVANTAGES

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)

CODE COMPLETENESS EVALUATION

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.
FUTURE ENHANCEMENT
FUTURE ENHANCEMENT

For your health and fitness tracker project, consider integrating


with wearable devices for real-time data, offering personalized
recommendations through machine learning, and adding social
features to enhance motivation. Gamification elements like badges
and challenges can make the experience more engaging, while
features for mental health tracking and nutrition logging can provide a
holistic approach to wellness. Additionally, implementing advanced
analytics, AI chatbot support, and exploring augmented reality
workouts can further enrich the user experience. Lastly, prioritize data
privacy and security to build trust with your users.
CONCLUSION
CONCLUSION

Designing a relational database tailored for health and fitness


tracking applications requires careful consideration of entities,
relationships, and data integrity. By following best practices in
normalization, indexing, and efficient querying, you can ensure a
robust and scalable solution to meet the dynamic needs of users in this
thriving industry..
BIBLIOGRAPHY
BIBLIOGRAPHY

1. COMPUTER SCIENCE WITH PYTHON CLASS XII – BY


PREETHI ARORA
2. COMPUTER SCIENCE WITH PYTHON CLASS XII – BY
SUMITHA ARORA
3. A PROJECT REPORT ON HEALTH AND FITNESS TRACKER
4. WWW.W3RESOURCE.COM/

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy