Calorie Counter Information System Development
for Weight Loss Program based on Android
Nenny Anggraeni
1
, Nashrul Hakiem
1
, Gerry Widya Ganesha
1
1
Department of Informatics, FST, UIN Syarif Hidayatullah Jakarta, 15412, Indonesia
Keywords: D
iet, calorie, RAD, Java, SQLite, Mobile, Android
Abstract: Diet is a control of eating habit for someone to achieve the objectives of the diet itself, either to lose weight
or to gain weight. The number of calories from the food we eat every day, determine whether a diet that we
do may lose body weight or increase body weight. But not everyone can control their daily calorie
consumption, because of that, many people have problems of overweight or obesity. Therefore, a mobile
application that can calculate a person's daily caloric intake, can help someone to achieve their diet goal.
The research purpose is to make a mobile calorie counter application based on Android operating system.
The application is developed using a Rapid Application Development (RAD) methodology, the Java
programming language has been used to develop the system, while SQLite has been used for database
development. This application can run offline without an Internet connection. This application has five main
features, namely the body mass index calculator, total daily energy expenditure counter, the body fat
calculator, daily calorie intake counter and foods calorie list. Therefore, user can get a variety of information
about diets and calories, so it can help them to achieve their weight loss goal.
1 INTRODUCTION
In the modern society, many people who work in an
office environment prone to suffer an obesity (Kania,
2014), due their working habit of sitting in front of
computer all day.
According to Dr. Ita Muharram Sari SPS as a
consultant of the meetdoctor.com, office work
patterns that require workers to sit for hours,
becoming one of the factors of their lack of physical
activities. The difficulty of controlling their diet and
lack exercise has an impact on the many people.
Because of bad diet and lack of exercise, many
people suffer from overweight and obesity.
Lack of knowledge about a healthy diet is also
the cause of overweight. Whereas all the necessary
resources can now be accessed easily. Developments
in information technology should help solve this
problem. With the rise of communication devices
usage, every people now can access all kind of
information.
Now lot of people already owned a mobile device.
According to eMarketer in 2014, mobile phone users
in Indonesia reached 38.3 million users. Cell phone
or mobile phone is now progressing very rapidly (H,
2012). Initially, a mobile phone may only be used to
make a voice calls or send and receive short
messages. But everything is change after discovery of
smartphones. Therefore, development of an
application to help people learn a healthy diet,
exercise and a way to help them losing weight can be
done.
2 RELATED WORK
There are many similar works which research on
mobile health information systems for example (Rao
& Krishna, 2015), they proposed a design of mobile
health for android applications. In (Hariadi,
Khotimah, & Wiyono, 2015) and (Doukas, Pliakas,
& Maglogiannis, 2010) also proposed a nutrition
information systems mobile based.
2.1 Body Mass Index (BMI)
The number of calories from the food we eat every
day are determine whether a diet that we do can lose
weight or increase weight. Basically, to achieve a
weight loss then one must adjust the diet and daily
2540
Anggraeni, N., Hakiem, N. and Ganesha, G.
Calorie Counter Information System Development for Weight Loss Program based on Android.
DOI: 10.5220/0009946025402547
In Proceedings of the 1st International Conference on Recent Innovations (ICRI 2018), pages 2540-2547
ISBN: 978-989-758-458-9
Copyright
c
2020 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
routine, so that the calories used by the body is more
than the calories absorbed by the body. When the
calories taken into the body is greater than the
calories used by the body to eat excess calories will
be stored by the body in the form of fat reserves,
which will have an effect on a person's weight gain.
The first thing to be done to determine that a person
has a healthy weight or not is to calculate the body
mass index (BMI). BMI is the ratio of weight divided
by the square of one's height, which can be calculated
as (Budianto, 2010):
(1)
Generally, the result will be of little value for
skinny people and has greater value for obese
people. Classification of value can be seen in the
following table:
Table 1: BMI Table
BMI Clasification
< 14,9 Severly Underwight
15 - 18,4 Underweight
18,5-22,9 Normal
23 - 27,5 Overweight
27,6 - 40 Obese
>40 Severly Obese
2.2 Basal Metabolic Rate (BMR)
After calculating the BMI, then we know the
condition of our body. Next stage is to calculate the
daily calorie intake of our body by using the BMR.
BMR is the amount of energy or calories needed by
the body in a state of rest. So at the moment we do
not indulge the body also requires a certain amount
of energy or calories to use to keep our body function
properly. The number of calories or energy is only
able to run the organ - a vital organ in our body. The
higher the person's body muscle mass, the higher the
energy or calories your body needs to keep it in a
stable condition.
There are several formulas for calculate these
BMR. This time it uses the Mifflin-St Jeor equation.
This equation can be seen in the formula 2 (Budianto,
2010).
(2)
BMR calculations are different for each person
depending on their physical activity. Therefore to
get the more precise calculation, the results of BMR
calculation using the table above should be
multiplied by a factor of activities in accordance
with daily activities - day, i.e:
1.2 for people who are inactive (little or no
exercise at all)
1.375 for people with mild activity (light work
or exercise 1-3 times a week)
1.55 for people with moderate activity (work
is being or sports 3-5 times a week)
1.725 for active people (heavy work or
exercise 6-7 times a week)
1.9 for people who are extra active (very hard
work or jobs that require heavy physical
labor)
2.3 RAD Method
System development method that being used is RAD
(Rapid Application Development) (Kenneth E.
Kendall & Kendall, 2007), This model was made by
James Martin to make the system faster without
compromising quality (Pressman & Maxim, 2014).
3 SYSTEM DEVELOPMENT
3.1 Requirements Planning Phase
3.1.1 Selecting Gather Information About
Diet
The purpose of gathering information about diet are
as reference information about what is needed in the
process of weight loss. What should be known about
the user's body calories needs and calories from
foods and beverages consumed. So that the authors
can present information in accordance with user
needs to support weight loss program (Kumalasari,
2008)(Samudra, 2013). The authors conducted a
search of information by spreading the questionnaire,
seeking information from the Internet, the authors
also do direct observation by executing the process
of weight loss.
3.1.2 Questionnaire
At this stage the researchers made a survey
questionnaire. The questionnaire contains 14
Calorie Counter Information System Development for Weight Loss Program based on Android
2541
questions relating to the behavior of respondents in
the diet. Of the 38 respondents was only 11 people
(29%) who know the needs of daily calories, and
only 9 (24%) who know how to calculate daily
caloric needs of the body. Number of food calories
are important for regulating a person's weight, but
based on the questionnaire only 8 people or 21% of
the total respondents know the calories of food they
eats. From the results of the questionnaire author can
know the needs of the application features.
3.1.3 Identification of Application’s
Features
The next stage is to identify what features are needed
inside the application. Based on the collection of
information through observation and questionnaires,
the authors conclude that the features that are
required are as follows:
Features of the user to store the required
information, such as weight, height, and age.
Features to calculate body mass index (BMI)
Features to calculate daily caloric needs of
the body.
Features to calculate the amount of body fat.
Information on calorie foods and beverages.
Features to display information about the
number of calories that have been consumed
by the user.
Record or log of food and drinks that have
been consumed.
3.1.4 Requirements Identification Prototype
System Requirements
The application is able to
provideinformation about the daily caloric
needs of the user easily.
The application is able to provide
information about the foods’s and
beverage’s calories that user consumed
based on database of food and drinks
provided.
The application is able to provide
information about calorie of foods or drinks
based databases provided
.
3.2 Workshop Design Phase
3.2.1 Use Case Diagram
At this stage is the application design process, while
the use case of the application design is:
Figure 1: Use Case Diagram
3.2.2 User Interface Design
Interface of Main Menu Page
Figure 2: Interface of Main menu page
ICRI 2018 - International Conference Recent Innovation
2542
Interface of My Profile Page
Figure 3: Interface of My Profile
Interface of BMI Page
Figure 4: Interface of count BMI page
Interface of Count TDEE Page
Figure 5: Interface of count TDEE page
Interface of Count Body Fat Page
Figure 6: Interface of count Body Fat page
Interface of Daily Intake Page
Figure 7: Interface of Kalori Harian page
Interface of Food Bank Page
Figure 8: Interface of Food Bank page
Calorie Counter Information System Development for Weight Loss Program based on Android
2543
Interface of Help Page
Figure 9: Interface of Help page
Interface About Page
Figure 10: Interface of About Page
3.2.3 Construction Phase
At this stage, the coding of the design of the system
have been performed. The Java programming
language has been used to develop and XML has been
used to display the layout. The authors use SQLite as
a database, it is because SQLite is available by default
on android, and can be used easily by simply import
them as a library in the android development tool
(ADT) (H, 2012). Applications used as ADT is
Eclipse Juno with support of Software Development
Kit (SDK).
3.3 Implementation Phase
Before the application is implemented directly on the
android device, the application must be free of bugs.
The bug could occur because of an error when the
application coding, logic errors, or also can be caused
by devices that do not support.
In this phase there are some steps done, namely:
Write Java source code, at this stage the tools that
being used is the application development
software for Android, the Android Development
Tools (ADT) in the form of Juno Eclipse and the
Android Software Development Kit (SDK).
Packaging process data by using the facilities
provided by SDK and Eclipse.
Running the application on android device, to
perform testing on an android device directly,
and make repairs when needed.
3.3.1 Software Implementation
The software used in building this application is as
follows:
Windows 7 64 bit Operating System
Eclipse Juno
Android SDK (Software development kit)
Bluestack application
3.3.2 Hardware Implementation
The hardware used in the development of this
application is as follows :
Intel core i3 2,3 Ghz
RAM 4GB
Hardisk 750GB
VGA 2GB
3.3.3 Interface Implementation
Splashscreen Interface
Figure 11: Splashscreen Interface
ICRI 2018 - International Conference Recent Innovation
2544
Interface splash screen is the initial interface when
the application was first run.
Main Menu Page Interface
Figure 12: Main Menu Page Interface
Main menu page is the main page of this application.
On this page the user can choose to run the features -
features that are available. When the user first run the
application, it is recommended to fill the profile first
in the page My Profile.
My Profile Page Interface
Figure 13: My Profile Page Interface
On this page the user will fill out the identity through
the form provided. Users will be asked to fill out your
name, age, weight, height, and gender. This data will
be used by applications to run some of its features.
Count BMI Page Interface
Figure 14: Count BMI Page Interface
Page Count BMI serves as a feature to count body
mass index. If the user has filled out the profile, then
the system will automatically fill in the required form.
After that, the user needs to press the count button,
and the application will be counting user’s BMI and
displays the results in the column provided. When the
user presses the save button, the system will store the
results of BMI in the shared preferences
.
Count TDEE Page Interface
Page Count TDEE serves as a feature to count daily
caloric needs of the user. If the user has filled out the
profile, then the system will automatically fill in the
age, height, and weight fields. After that the user
needs to fill in the gender and activity level. After
that, if the user presses the count button, the
application will be counting user’s TDEE and
displays the results in the column provided. When the
user presses the save button, the system will store the
result in the shared preferences.
Figure 15: Count TDEE Page Interface
Calorie Counter Information System Development for Weight Loss Program based on Android
2545
Count Body Fat Page Interface
Figure 16: Count Body Fat Page Interface
Page Count Body Fat serves as a feature to count
user's body fat percentage. If the user has filled out
the profile, then the system will automatically fill in
the fields of weight. If the user is a woman, then the
user needs to fill in the waist circumference, hip
circumference, and arm circumference. After that the
user needs to press the count button, and the
application will be counting user’s Body Fat and
displays the results in the column provided. When the
user presses the save button, the system will store the
Body Fat results in the shared preferences.
Daily Calorie Page Interface
On this page the user can count the body's calorie
consumption. If the user has calculated TDEE and
stores the result in shared preferences, the system will
display the results on screen. The system also displays
the user’s daily calorie ration.
Figure 17: Daily Calorie Page Interface
To use this feature, the user can just choose foods
available on the spinner. By choosing a food or
beverage on the spinner, the system will provide
information on calories from these foods. When the
"ADD" button is pressed, system will calculate
calories from food or drink that user has select. After
that the system will reduce the user’s daily calorie
ration based on the number of calories that the user
consumes, and the remaining calorie ration will be
displayed. The system will keep records of food or
drink that user consumes, and user can see it on Log
page.
Figure 18: Log Page Interface
Food Bank Page Interface
This page displays a list of foods and beverages,
as well as the number of calories to the user. List of
food taken from the SQLite database.
Figure 19: Interface Halaman Food Bank
Help Page Interface
Figure 20: Help Page Interface
ICRI 2018 - International Conference Recent Innovation
2546
This page displays information about the. Users may
not know the how to use this application, therefore the
Help page provided to the user to help them
understand, and can assist the user in using the
application.
About Page Interface
Figure 21: About Page Interface
This page provides information about the application
and the author.
4 CONCLUSION
4.1 Conclusion
Based on the research and design of this, it can be
concluded:
This application is designed to help users to
determine the condition of the body, as well as
the number of calories needed to tell users how
much calories from food eaten.
The application is designed using eclipse
program, and runs on smartphones that use the
Android operating system.
4.2 Future Works
Applications built certainly still have many
shortcomings, therefore there are some things that
might be developed for these applications to be better
and more useful, namely:
Applications can be developed so that it has an
online update system. System update function to
add food database and data on the number of
calories contained.
Applications are still running on the Android
operating system only. For future development
may be made on other operating systems (e.g.
IOS).
Added a menu that gives information about the
types of diet that exist, and how to run it.
REFERENCES
Budianto, A. K. (2010). Dasar-Dasar Ilmu Gizi. UMM
Press.
Doukas, C., Pliakas, T., & Maglogiannis, I. (2010). Mobile
healthcare information management utilizing Cloud
Computing and Android OS. In 2010 Annual
International Conference of the IEEE Engineering in
Medicine and Biology (pp. 1037–1040).
http://doi.org/10.1109/IEMBS.2010.5628061
H, N. S. (2012). Pemrograman Aplikasi Mobile
Smartphone dan Tablet PC Berbasis Android. Bandung:
Informatika.
Hariadi, R. R., Khotimah, W. N., & Wiyono, E. A. (2015).
Design and implementation of food nutrition information
system using SURF and FatSecret API. In 2015
International Conference on Advanced Mechatronics,
Intelligent Manufacture, and Industrial Automation
(ICAMIMIA) (pp. 181–183).
http://doi.org/10.1109/ICAMIMIA.2015.7508027
Kania, D. (2014). Pekerja Kantoran Rentan Kena Obesitas.
Retrieved October 15, 2016, from
http://lifestyle.okezone.com/read/2014/11/11/481/10640
20/pekerja-kantoran-rentan-kena-obesitas
Kenneth E. Kendall, & Kendall, J. E. (2007). Systems
Analysis and Design (7th Edition) (7th ed.). Prentice
Hall.
Kumalasari, V. (2008). Penerapan What-If Analysis Pada
Sistem Penunjang Keputusan Dalam Menentukan Menu
Diet. Universitas Indonesia.
Pressman, R., & Maxim, B. (2014). Software Engineering:
A Practitioner’s Approach. McGraw-Hill (8th ed.).
McGraw-Hill.
Rao, V. S., & Krishna, T. M. (2015). A Design of Mobile
Health for Android Applications. American Journal of
Engineering Research, (JUNE 2014), 20–29.
Samudra, E. (2013). Aplikasi Pola Diet Sehat Berbasis
Android. Universitas Komputer Indonesia.
Calorie Counter Information System Development for Weight Loss Program based on Android
2547