Calorie Tracking: A Mobile Application for Tracking Eating Patterns and Intake

- A balanced regular calorie intake along with a good eating rules is an important factor to fullfill a healthy lifestyle and diet. Both are the main keys to preventing non-communicable diseases (NCDs) which are the largest contributors to world deaths. The effects produced through dietary regulation and calorie intake ideally will affect to the long term, so that consistency and adequate supporting media are needed. Judging from the time scale, action is needed since in, Early action is needed, especially for students who are in the transition period to maturity and independence. Technological developments in the digital era can be used to produce problem solutions ranging from fundamental aspects. Students themselves are familiar with the concept of the calorie tracker application (Craker) even though the majority have never used it. The purpose of this paper is to design the Craker application as a form of solution to regulate diet and calorie intake by applying the theory of human and computer interaction. The result of making this application is to monitor the number of calories consumed by knowing the number of calories in and out so that it is balanced according to the recommendations given based on the user’s profile, for the calorie tracker application we can divide it into three types of calorie tracker applications: web, mobile, and physical.


I. INTRODUCTION
Diet is a habit of food consumption carried out by a person in his daily eating activities and aims to meet the need for food including attitudes, heredity, beliefs, and eating habits (Baequny et al., 2015).A poor diet is a trigger for obesity.Obesity is related to diet, especially when eating foods that are high in calories and low in Fiber (Kurniawati et al., 2016).The West Java Health Office in 2016 examined 1,644,079 people and obtained data identified as obesity as many as 138,965 people (8.45%).According to data from the Ministry of Health of the Republic of Indonesia in 2018, it is known that people who are obese in adults over 15 years have increased.It is known that in 2007, 2013 and 2018 there were 18.8%, 26.6% and 31% of people were obese.Some phenomena currently experienced by people are they do not know the number of calories in a food, the number of people who have difficulty in finding food with the number of calories that suit their needs and the number of people who find it difficult to control their diet and control the number of calories consumed every day.Based on the results of a survey that has been conducted to 63 respondents, many respondents have difficulty in this problem.
Diet includes regular habits, types of foods, nutritional status, and amounts of food.The calorie intake in question specifically discusses the number of calories or energy received through food and drinks as well as the number of calories expended.The majority of the most audience consumes more foods high in sugar, salt, fat, and energy and consumes less of vegetables, fruit, and fibrous foods.This is due to increased processed food production, urbanization, and changes in lifestyle.In the long run, with a poor diet interspersed with lack of attention to calorie intake, there can be cases of malnutrition and various noncommunicable diseases (NCDs).
Globally, the Word Health Organization promoted diet, physical activity, and health strategies that have been in place since May 2004 at the 57th meeting of the World Health Assembly (WHA).With the main challenges of NCDs, according to WHO, the two main risk factors are diet and physical activity.Table I shows the percentage of deaths caused by non-communicable diseases.It can be seen that NCDs contribute more than 50% year on year as the cause of global death.After more than a decade, the development of the industry continues to increase to a percentage compared to previous decades where food technology still has not developed much.The effect will be more significant if presented with data on the age of death by NCDs which is quite high among the ages of 30-70 years (Budreviciute et al., 2020).By considering human survival for future generations, solutions are needed to prevent and minimize these problems from an earlier age.For the younger generation, it is necessary to pay attention to diet and calorie intake to ensure that food intake is in accordance with the daily calorie needs that must be consumed so that there are no excess calories that enter the body, with this can affect a better future.With the rapid development of technology and used globally, the technology can be utilized well and produce solutions needed in regulating diet and calorie needs (Kumar et al., 2016).
A mobile application is a type of software application developed to run on mobile devices such as smart phones in hopes that it can be easily carried, held, and used by hand.Android is an operating system on mobile devices that is open and based on the Linux operating system.Android can be used by anyone who wants to use it on a device.Android provides an open platform for developers to create their own applications that will be used for a variety of software (Gadient et al., 2020;Mos & Chowdhury, 2020).
A calorie is a unit used to express the amount of energy.In general, calories are used to indicate the amount of energy contained in food.Calories can be obtained from the intake of nutrients that contain nutrients, such as carbohydrates, fats, proteins, and alcohol (Boyle & Long, 2010).The Harris-Benedict method emerged from a study by James Arthur Harris and Francis Gano Benedict, published in 1919 by the Carnegie Institution of Washington.James Arthur Harris and Francis Gano Benedict are worldrenowned nutritionists, whose formulas are renowned for the completeness of the results they can achieve.Harris-Benedict is a method used to estimate an individual's Basal Metabolic Rate (BMR) and daily kilocalorie requirements.BMR is the minimum rate of energy expenditure per unit time by humans at rest.Precise measurement requires a strict set of criteria to be met.This criterion includes being in a disturbed physical and psychological state, in a neutral environment.If the BMR value is multiplied by the amount corresponding to the individual's activity level.The amount that the resulting is the recommended intake of kilocalories each day to maintain body weight.BMR affects the body's calorie burn rate and determines whether an individual will maintain, gain, or lose weight.The process in calculating calories using the Harris Benedict method is: AMB (Basal Matabolism Number) is the minimum energy requirement required by the body.In addition, it is stated how to determine the needs of carbohydrates, proteins, and fats according to WHO are: 60-75% of total energy needs or residual energy needs come from protein and fat.If the energy requirement in a day is 2450 kcal, then the energy derived from carbohydrates should be 1470-1838 kcal or 368-460 grams of carbohydrates.10-15% of total energy requirement.If the energy requirement in a day is 2450 kcal, the energy derived from protein should be 245-368 kcal or 61-92 grams of protein.10-25% of total energy needs.If the energy requirement in a day is 2450 kcal, the energy derived from fat should be 245-613 kcal or 27-68 grams.
The formula for calculating the needs of carbohydrates, proteins, and fats for adults: In developing mobile applications, the design method used is the waterfall method, which is one of the methods of the Software Development Life Cycle (SDLC).The Software Development Life Cycle (SDLC) itself is a standard process carried out when creating an application, starting from design, manufacturing and testing processes to determine the quality of the software.According to Pressman (Pressman, 2005), the Waterfall model (Figure 1) is a classic model whose development is sequential and has a systematic and sequential nature, the process follows the flow of analysis, design, code, testing and maintenance, where the shape is like a waterfall that continuously falls downwards.In its development, the waterfall method has several stages, namely:

Woman
Requirements Analysis: In this phase, all software product requirements will be collected and documented in the software requirements specification document.
System Design: In this phase, the structure of the entire software will be designed based on the previous phase, namely requirements analysis.
Implementation: In this phase, software development will begin.The development will be divided into small programs called units.These units will be tested depending on functionality and integration in the next phase.
Testing: In this phase, all units are developed in that phase implementation will be integrated.Once all the units have been integrated, they will then be tested in this phase to check whether they are fit for purpose.Software bugs will be reported, fixed, and retested.
Deployment: When the requirements and nonfunctional requirements have been tested and validated, the software will be deployed so that it can be used by users.
Maintenance: If some problems occur during use by the user, they will be resolved in this phase.And there can be additions or improvements to the software if the user is not satisfied with the results.UML diagrams function to show the structure of the objects contained in the system, as well as the relationships between these objects.Behavioral diagrams are a type of UML diagram that shows the behavior or interactions between objects in the system (Dennis et al., 2015).
Use case diagram is a behavioral diagram that is useful for describing the interactions that occur between various actors and the system to achieve a goal (Pressman, 2005).Use case diagrams use case components to describe functionality or interactions in the system.The system itself is depicted in a use case diagram as a box, where the use case components are located.There is also an actor component that describes the user who uses the system.These two components can be connected with an association line component to indicate the relationship that occurs (Koç et al., 2021).
The purpose of this writing is to build a calorie counter application to find out familiarity in setting eating patterns and calorie intake and knowing the relevance of the Craker application as a medium for regulating diet and calorie intake.

II. METHODS
The research method is a description of the research stages carried out to obtain and collect data based on certain functions and objectives.The research approach used is mix method research with interactive data analysis techniques and the waterfall method.The type of data that will be analysed in the research is divided into two, namely quantitative and qualitative data.Interactive data analysis techniques are used in data collection which consists of three processes or flows, namely data reduction, data presentation, and drawing up conclusions.
The following are the research methods (Figure 2) that will be used in this research: Identify Needs: In this initial stage, needs identification is carried out, the aim is to thoroughly understand the needs of the application to be created.Identification of needs is also carried out to collect information regarding calorie calculations based on food consumed and calories to be burned based on recommendations provided by the application.
System Design: At this stage, the author focuses on designing the interface or appearance of the application, developing data structures in algorithms.The results that will be obtained from the System Design stage are Software Requirements documents that will be used as a benchmark when coding for application creation.

Implementation (System Testing):
At this implementation stage, a program has been created by writing programming language code.Writing the code follows the results of the documents obtained in the previous stage (Jia & Le, 2020).
Testing: At this testing stage, the system will be tested to find out how appropriate the application being created is and find out whether there are any errors or faults in the system.If an error occurs in the system, repairs will be carried out until all errors can be resolved appropriately.
Maintenance: This stage is the final stage in the Waterfall method.At this stage, the application is installed and tested.Maintenance or what can be called upkeep is a stage to ensure whether the application that has been created runs smoothly or not before being used by the user.Maintenance is the stage of repairing if there are gaps in security and improving application performance (Senarath, 2021).

System Implementation:
In this stage, the system design stage has been created and well described.The previous process was executed by creating program pieces to produce an application that can be run and used optimally.In this research, the application being built will run on the Android operating system.

Analysis and Planning
The process of analysing and designing the application is very necessary to facilitate the application development process, where previously if there was a design and description of eating it would be easier to do and better picture what this application would operate like Analysis and design of applications by using UML diagrams which is a standard language for modelling applications built with object-oriented methodologies.The system overview is depicted with a Use Case Diagram.

System Analyse
The system design to be created requires several input data needs, output data needs and interface needs.The purpose of the needs analysis is to determine the specification of the functions, capabilities, and facilities of the program.Needs analysis is also useful as a basis for evaluation after the program has been prepared.

System Design
System design is described using Use Case Diagrams, which are intended to form an explanation of the main functions and behaviours of the application in outline with the hope that the processes that occur in it can be easily understood.following is a description of these functions as shown in Figure 3 below:

III. RESULT AND DISCUSSION
The results of data collection through surveys and literature studies provide an overview of the needs of a Craker application both in outline and more specific aspects.Of the 35 samples, 13 had used similar applications and provided ratings of these applications.Table II below shows the statistical data of the assessment results.From Table II above, the average of the overall responses received is on a scale of 3-5 which can be interpreted as satisfactory feedback on the concept of the Craker application itself from previous users.However, considering the existence of 22 other samples who have no experience with similar applications, therefore a mature concept is also needed so that the application can be built according to the fundamentals and able to meet the needs of all users.The most prominent key components to be able to improve are the look and personalization.The features that are expected to exist in the Craker application include: • Daily diet recommendations • More complete calorie data of groceries • Search for food according to the calories needed.
• Healthy food recipe recommendations • Information on healthy lifestyle procedures • Scan food calories through the device's camera.
The application created has the name Cracker which comes from the word Calorie Tracker put together.When entering the application, users will be directed to a Splash Screen that shows the option to register (Sign Up) or log in (Log In).

System Implementation 3.1.1 Sign Up Menu Display
For Users who select the Sign-Up menu, the user will be directed to the Sign-Up page.On the Sign-Up page, users are asked to enter some personal information, namely first name, last name, email, date of birth, password, and others can use the option for social media accounts owned by the user, shown in Figure 4.

Log-in Menu Display
This page is a page for logging into the application.To login, the user needs to enter an email and password.The system will validate whether the email and password have been registered.If not already registered, the page will display a warning that the email and password are invalid.If already registered, users can log into the application using their account and be redirected to the account page.Users can create an account by pressing the Sign Up button if they do not have an account.Later, the user will be redirected to the Sign Up page, shown in Figure 5.

Menu Goals Display
In the Goals menu display, users can see a graph that compares the number of calories, protein, carbohydrates, and fat that have been consumed with the targets that users have set for both a week and a month.Then, users can set calorie targets for breakfast, lunch, dinner, snacks, travel steps, and water that they should consume by pressing the '+' button.Then, there are more details related to the calories that have been consumed on this day with the abundance of fat, carbohydrates, and protein.The dashboard is also divided into five, namely Notes, Calculator, FoodCalc, BMI, and Workout, shown in Figure 6.

Dashboard Display
On the Dashboard menu, there is information related to many calories that have been consumed on that day, including calories burned during exercise, many steps taken, and a lot of water consumed every day, shown in Figure 7.

Progress Menu Display
In the Progress menu display, users can see the calories that have been consumed and the burning done based on the activities carried out, shown in Figure 8.

Display of The Setting Menu
The food settings menu displays a variety of food recipes based on the nutritional category of the food.For example, if the user chooses Breakfast, the user will be directed to a page containing breakfast food recommendations that have titles and calorie content, shown in Figure 9.

Menu Profile Display
On the Profile menu, which contains user-related information that they entered when they registered.This includes name, email, height, weight, gender, and age.In Profile, there is an option to Edit Profile where users can change the data they have entered if they wish.Finally, there's a Log Out button to return to the Splash Screen, shown in Figure 10.

System Function Menu
The Craker application testing process uses the concept of black-box testing.For black-box testing, application developers conduct testing by trying to run several scenarios on the application.
Black-box testing is a testing method that is carried out by viewing the software you want to test as a black box with inputs and outputs, so that testers do not need to know how the system works or internal components that include on the system when having testing process (Graham et al., 2008).Black box testing focuses on the functional needs of the software.The error categories in black box testing are (Munthe et al., 2020;Rani et al., 2022)

Five Measurable Human Factors
To evaluate a user interface, we can use five measurable human factors (Hunt & McManus, 2013).
Here are five measurable human factors according to Schneiderman:

Time to Learn
Based on Figure 11 respondents' responses to the Time to Learn point question are as follows: 46% chose a scale of 5 meaning the majority of respondents did not take a long time to use the app for the first time.

Speed of Performance
Based on Figure 12 respondents' responses to the Speed of Performance point question are as follows: 57% chose a scale of 5 with these results, it can be concluded that respondents can easily and quickly complete the process or work done on the application.

Rate of Errors by User
Based on Figure 13 respondents' responses to the Point Rate of Errors by User question are as follows: 40% chose a scale of 5 with these results, it can be concluded that there are many respondents who use minimal applications in making mistakes.

Retention Over Time
Based on Figure 14, respondents' responses to the point Retention Over Time question are as follows: 40% chose a scale of 5 with these results, it can be concluded that there are many respondents who use applications with minimal conditions in making mistakes.

Subjective Satisfaction
Based on Figure 15, respondents' responses to the point Retention Over Time question are as follows: 50% chose a scale of 5 with these results, it can be concluded that respondents are satisfied in using the application.

Application User interview results
Users say that they want to use the Cracker Application Again.The system in the Cracker application is not complicated, making it easier for users to use.The Cracker application has a system that tends to be simple, so no explanation is needed when using the Cracker application.The Cracker application is running as it should and can make it easier for users to monitor calories in and reduce calories.

IV. CONCLUSION
Based on the results of making an Android-based Cracker application obtained the following conclusions: • This application can be an interactive medium in digging further information about healthy lifestyles with the application of Android Studio technology.
• This application uses Android operating system devices that are currently growing rapidly and are widely used because of advanced technology and can be used in helping the field of Health.• This application helps android users to be more motivated in maintaining diet, tracking calories, and monitoring health conditions every day.• This application helps users monitor the number of calories consumed by knowing the number of calories that enter and will be spent to be balanced according to the recommendations given based on the profile of the user.• Most respondents expressed satisfaction when using the Cracker Application based on the results of filling out the survey.However, there will still be some feedback for future development, such as improving interactivity, complementing features, presenting more complete information, providing more contrasting colours, and providing access to more features without the need to log in.

Figure 3 .
Figure 3. Use Case Diagram of a Craker

Figure 4 .
Figure 4. Sign Up Menu

Figure 5 .
Figure 5. Log in Menu

Figure 11 .
Figure 11.Time To Learn

Figure 12 .
Figure 12.Speed of Performance

Figure 13 .
Figure 13.Errors by User

Table II .
User ratings of similar applications

Table III .
Crack Application User Test Results