=Paper=
{{Paper
|id=Vol-2917/paper44
|storemode=property
|title=Information System for Monitoring Personal Health Status Based on Big Data Analysis
|pdfUrl=https://ceur-ws.org/Vol-2917/paper44.pdf
|volume=Vol-2917
|authors=Bohdan Oheruk,Roman Peleshchak
|dblpUrl=https://dblp.org/rec/conf/momlet/OherukP21
}}
==Information System for Monitoring Personal Health Status Based on Big Data Analysis==
Information System for Monitoring Personal Health Status Based on Big Data Analysis Bohdan Oheruk and Roman Peleshchak Lviv Polytechnic National University, S. Bandera Street, 12, Lviv, 79013, Ukraine Abstract This paper describes and develops an information system for health monitoring, which is implemented as an application for Android. During the development of this system, an analysis of the problem was carried out, which showed that now this problem is more relevant than ever because humanity has taken a big step away from industrial society where people have led an active life because in the digital age where most people stop moving and increasingly sit in the office and lead a sedentary lifestyle. As part of this work, a systematic analysis of the project was conducted in which the basic architecture of the application for a smartphone based on client-server architecture was developed. UML diagrams of classes, use cases, sequence diagrams, components, and activity diagrams were created, allowing us to investigate the designed system in section and describe the procedure more detail before development. A goal tree was also built, which answered the question of what type of system is being developed. The plan was decomposed from which more detailed aspects of it became clear. The analysis became clear on organising the Internet through a global network for further use and integration into the system. A graphical interface has also been developed for the user to interact with the system via the Internet to access and monitor user health data from anywhere globally. The system is based on parameters set by the user, such as height, weight, the purpose of the system, age, number of calories that the user wants to consume, number of calories that the user wants to burn, etc. Similar systems from global manufacturers were also analysed. It became clear that many well-known companies were developing their solutions in this direction, as health monitoring and control is an essential aspect of human life. Keywords 1 Training program, information system, quality criterion, client-server, user data, client-server architecture, health monitoring system, healthy lifestyle, training plan 1. Introduction For a long time, people have been thinking about their physical health and maintaining and improving it in proper condition. And even in those ancient times, people realised that the way to a healthy lifestyle lies through exposing their body to constant physical exertion. After the onset of technological progress, intellectual labour gradually came to replace physical work, which in one way or another supported the physical condition of a person, which not only does not contribute to the physical development of a person but also brings with it many new physical diseases that previously did not arise due to physical labour. Now many people perform sedentary work and do not monitor their health properly. Often this is due to diseases of the musculoskeletal mechanism or joint inflammation. That is why health care systems are now more relevant than ever [1-9]. After analysing the market, it became clear that not so many healthcare systems provide “all in one”: a nutrition program, a physical training system, online trainers, and a sleep schedule [1-9]. And there MoMLeT+DS 2021: 3rd International Workshop on Modern Machine Learning Technologies and Data Science, June 5, 2021, Lviv-Shatsk, Ukraine EMAIL: djei0967@gmail.com (B. Oheruk); rpeleshchak@ukr.net (R. Peleshchak) ORCID: 0000-0002-1889-0713 (B. Oheruk); 0000-0002-0536-3252 (R. Peleshchak) ©️ 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop Proceedings (CEUR-WS.org) are no systems that combine tracking nutrition, the amount of water consumed and training programs in one place, so it was decided to develop such a system. It needs to focus and consider exactly similar applications that provide various kinds of content, fitness and health. for example, Adidas Training by Runtastic, Fitbit Coach. They are worth considering because they give a person free access to many training methods, in the form of photos, videos, and audio, and the ability to interact with other people via the Internet in the form of text messages, comments, posts, and posts and video calls. This extensive access to such information looks like an incredible opportunity. Many people exercise and monitor their health to lose weight, or vice versa, gain it. Everyone knows that playing sports is one of the components of a healthy lifestyle. Many people have heard that playing sports improves sex life, reduces cancer risk, improves skin condition, etc. To not be unfounded, we will tell you about the most beneficial and positive changes that sports bring to our lives. First, sports reduce the risk of insanity and dementia. Studies conducted over the years have clearly shown that by regularly exercising, a person improves the state of their brain, maintains the mind and consciousness in the right shape. Second, physical activity improves cognitive function in older adults and thus reduces the risk of developing cognitive impairment. In particular, dance classes that require good memory and concentration are beneficial for people at risk of Alzheimer’s disease. Third, preventing muscle loss with age, it becomes increasingly difficult for a person to build significant mass, and at the same time, our muscles begin to break down faster and faster over the years. Therefore, to not feel like a “weak grandfather” in old age, a person needs to exercise regularly. Exercise not only prevents the destruction of muscles but also allows them to build up. Ultimately, it improves your metabolism, gives you more strength and endurance. Fourth, reducing the risk of developing osteoporosis no matter what kind of sports you do, in any case, it has a healing effect on the bones. Sports strengthen the bones, which helps to avoid osteoporosis in older age and prevent fractures during falls. Any sport contributes to this, but the most useful ones are weightlifting, jogging, hiking, mountaineering, step aerobics, dancing, and tennis. Reducing anxiety and stress if you are in a bad mood, you are subject to frequent stress, then you just need to exercise regularly. The fact is that during exercise, endorphins and neurotransmitters are actively released, which help to get rid of depression. In addition, an increase in body temperature allows you to calm your nerves. Increased work and mental performance exercise are essential for improving your overall quality of life and performance. It is a physical activity that allows you to increase self-confidence, increase overall tone and productivity. A study conducted by the American College of Sports Medicine found that 65% of respondents reported improvements in all areas of life after they started exercising regularly. Regular physical training significantly reduces the risk of diseases in all age categories. Reducing the risk of stroke and the severity of the stroke, no one is 100% immune from a stroke. However, playing sports can significantly reduce the risk of stroke. But even if it did occur, its severity will not be so intense compared to those who do not engage in active physical training before the stroke. Any sport is good in its way, but before you choose it, you need to know the opinion of experts. Therefore, a trip to the doctor is mandatory. First, it is necessary to clarify the presence of chronic diseases and injuries. After that, if you are a novice amateur, it is better to find a trainer, at least for the first time, and he will select exercises that do not contradict your state of health. The system will consist of two parts. The first part is the server part, where all user information will be stored and processed. And the second part is a mobile application, where the processed data will be displayed in a user-friendly form. The “food” menu will provide information about the food consumed, as well as the protein, fat and carbohydrates in it. The “water” menu will provide information about the amount of water consumed. The “training” menu will provide access to trainers and their classes that can be performed. This menu will also give you access to a chat with the coach whose classes the user paid for. The “sleep” menu will provide information about the quality of your sleep. In this menu, you can adjust the number of hours for a comfortable sleep, and in the future, the application will determine the exact number of hours you need. “Rush!” is a menu that will display a custom score based on the remaining four menus (food, water, exercise, and sleep). The score shows how well the user performs tasks from the rest of the menu. 2. Related works 2.1. General description of the problem The fact that exercise brings many benefits, especially for health, has been known for thousands of years. Doctors’ traditional focus on disease prevention and health maintenance requires them to treat patients with as few side effects and reactions as possible. However, recently the focus has shifted to acute diseases and treatment of patients according to their complaints. In any case, diet and exercise were almost always part of the regimen that doctors emphasised. Even ancient doctors recognised the importance of these two aspects in helping with treatment. This understanding suggests that maintaining health for preventive purposes may be a more appropriate medical approach than treating patients on the verge of illness. We can say that most modern diseases can be prevented. Almost half of the deaths in Ukraine can be attributed to behavioural causes [10-14]. The leading causes of early death in the country are smoking and diseases associated with physical inactivity, which in turn causes obesity. Doctors should consider going back to prescribing lifestyle changes, dietary changes, etc., before prescribing medications. Prescribing exercise can significantly improve patients’ health. Training is relatively inexpensive but largely effective for many-body systems. Practice can and should be considered a medicine, and doctors should be encouraged to start prescribing physical activity as a prescription that they can recommend to their patients. As more and more people realise that exercise benefits usually outweigh the risks, with possible injuries during training, everyone should perform at least a minimal amount of activity. Doctors should consider it their duty to change patients’ lifestyle in such a way that it leads to benefits and health, which is now confirmed by science. Figure 1: Percentage of Ukrainians who do sports Only 50% of Ukrainians do sports and describe themselves as sports lovers. Every year, billions of hryvnias are brought by various sports leagues in Ukraine, such as the National Football and National Basketball Association. Collegiate sports are also a business worth millions of hryvnias. As revenue increases, so make the investment these leagues make in the best players. Because of the financial impact of these different sports, the priority for companies is to maintain their player’s health. Thus, optimising results, improving the availability of the best players, and reducing the risk of injury has become the leading sports science and sports medicine areas if they are tied to high-performance teams. Sports science research can help find evidence-based approaches that will allow athletes and active people to perform optimal exercises. There is a constant gap between modern athletics practices and the latest scientific evidence, combined with an era of anti-intellectualism and fake news, as well as a growing distrust of facts and science. Articles that are not peer-reviewed, such as so-called “predatory” journals and conferences, can contribute to the erosion of good science that can be used to benefit athletes, active people and, indeed, all patients who are trying to do more exercise. Coaches and athletes need to listen more carefully and often to sports scientists whose findings can be supported and disseminated by sports medicine doctors. For example, broad support for using unproven supplements in sports or wearing certain bracelets or ankles to improve athletic ability supposedly are just a few of the pseudoscientific practices that coaches and athletes should discuss further with scientists and doctors. Conversely, those involved in the science of sports medicine and healthcare should improve their ability to promote terms and ideas that may not be easily understood by those involved in sports. Knowledge transfer is critical, and sports communities worldwide need to interact more directly with sports scientists and healthcare professionals. We now have the opportunity to use social media, application software, and other forms of technology to achieve this goal. We use these evolving tools to keep sports doctors and athletes active by using exercise as prevention rather than coming to it when it’s too late to treat. The idea that “exercise is medicine” should become second nature in primary care and sports medicine. 2.2. Health benefits of sports One of the best reasons to exercise for children and adults alike is the incredible health benefits. However, since experts recommend 150 minutes of moderate exercise a week, it can be challenging to find the time and motivation to fit it into a busy schedule. First, sports usually involve vigorous exercise, meaning you only need to exercise for 75 minutes a week to keep yourself in good shape [10-14]. Second, it makes it easier to achieve a good level of physical development. Second, everyone can find a physical activity they enjoy, whether volleyball, cycling, kayaking, or rock climbing. The wide selection of sports available means that you can find a form of exercise that is enjoyable. Again, this makes the exercise fun and not stressful, increasing your chances of finding motivation. If you achieve the right level of exercise, the health benefits are undeniable. These include: Reduces the risk of diabetes by 50%; Reduces the risk of heart disease by 35%; Reduces the risk of colon cancer by 50%; Reduces the risk of breast cancer by 20%; 30% lower risk of falling as an adult; 30% lower risk of death. These statistics only correspond to a small number of exercises. One sports game a week would be enough to earn these awards. At the same time, you will reduce your body fat percentage and increase muscle mass. You’ll sleep better, have more energy throughout the day, have a higher sex drive, and have an increased appetite. It is almost impossible to list all the health benefits. Beyond these obvious health benefits, the importance of sports lies in how they encourage healthy behaviour. To perform well and win games, you’ll smoke less, drink less, eat better, and sleep more. Having such competitive motivation means that you live healthier in all areas of your life. Exercising is very important for maintaining a healthy weight and preventing cardiovascular problems. However, for many, there is nothing scarier than going to the gym. Sports, on the other hand, feel like a burden. It’s cool, social, exciting, and fulfilling. As a result, achieving all of the above health benefits becomes instantly more achievable. The physical significance of sports is well known, but you may not know how it affects your mental health. Engaging in physical activity has an incredibly beneficial effect on your happiness. This desire for happiness comes from several sources, both neurological and psychological. When it comes to physical changes in the brain, Sports release dopamine and serotonin. As a result, the risk of depression is reduced by up to 30%! These so-called happiness chemicals are essential for a stable and positive mood. Any form of exercise encourages their production, but sports seem to make it more effective, especially when you score a goal or win a game. Since exercise is often done outdoors, you will also get more vitamin D. It has been proven to improve mood and reduce symptoms of depression. Taking vitamin D tablets can be used to treat depression, but getting it directly from the sun is a more natural and effective method. It’s not just depression that decreases when you try to exercise. By relieving tension and increasing your mental energy, you’ll probably find that your anxiety levels are also declining. Part of this comes from the feeling of being in the zone, that almost meditative state where you are thoroughly grounded in the present and focused on the task at hand. Even conditions like ADHD can be improved with sports. Even though they are essentially physical, a lot of mental concentration is required to participate. Sports players are constantly making decisions, communicating with others, and watching at a fast pace. It improves focus and memory retention. If you take ADHD medications carefully, then exercising can have about the same effect. Plus, sports are incredible for your self-esteem. Every day when you have a game, you give your life a purpose. The goal is clear: score more points than the other team. When you win, this sense of achievement builds confidence. After losing, you will learn about sustainability. It is a competitive sport that has excellent psychological benefits for your well-being. 2.3. Overview of ready-made solutions As you can see from the information above, the benefits of playing sports are extraordinary. It would be strange if large companies did not pay attention to the market which according to the analytical network “businessinsider.com” more than 100 billion in global volume, as more and more people become obsessed with their health, there are more and more solutions for sports using modern gadgets. With the Apple Watch Series 6, Apple has introduced Apple Fitness+, a new Apple service designed to help Apple Watch owners stay fit through a series of specially designed workouts in various categories [15]. Figure 2: Fitness+ app interface Apple Fitness+ is an Apple Watch-focused Home Workout app that guides you through various workouts, complementing Apple Watch’s fitness-focused features. With Fitness+, Apple provides workout routines that you can watch and repeat with your trainer, just like in the gym, and Apple Watch performs the necessary tracking to make sure you’ve reached your goal and fitness goals. Fitness + content can be viewed through the Fitness app on iPhone, iPad, and Apple TV. On the iPhone, the fitness app used to be an Activity app, and it’s a new addition that will appear on Apple TV and iPad when the service launches. Fitness + routines are designed for you, just like home workouts, mostly with minimal equipment. Figure 3: View workouts in the Apple Fitness+ By following Fitness + routines, the Apple Watch will track your movement, workout duration, calories burned, heart rate, and more just like other workouts. Workout statistics are available for viewing on the Apple Watch, but the information is also displayed directly on the iPhone, iPad, or pleApple TV in real-time, so you can keep a closer eye on how your workout is going, and the calories you burn look down on your wrist. A small window in the upper-right corner of the fitness + interface will display statistics synced with your Apple Watch. For example, when you enter stages such as closing the Activity ring, an animation will appear on the screen to motivate you. You can also see comparisons with other people who have previously done burn workouts to give you an extra boost, and you’ll see a countdown timer, so you know how much time is left during a tough interval. Google Fit is a fitness app that shows Google’s overall approach to mobile app development where simplicity and minimalistic design are key. It is an application that is also a social network where it offers users to read articles related to fitness and a fitness tracker to track the state of physical training. Instead Google Fit focuses on simplicity and does a few basic things very well. Figure 4: Google Fit app interface Figure 5: User profile interface Fitness apps can be impressive or frustrating - some are overloaded with features and require training, while others have an intuitive design but don’t have many features. Google Fit falls into the latter category. Regardless of the user, Google Fit is the best simple fitness app. Once the user tells Google Fit a bit of themselves (gender, date of birth, weight, and height), you’ll see a Quick Step-by-step overview of the app’s two main activity metrics: minutes of movement and points (more on that later). After that, you will be taken to the main screen of the app. There are three main sections of the Google Fit app: Home, Magazine, and profile. A brief description of each of them can be found below: Home: the Home screen displays an overview of your current day’s activity and health indicators, including minutes of movement and points, steps taken, calories burned, distance travelled, heart rate and weight data. Journal: a journal can also be called a schedule or plan. It’s a simple, scrollable list of all your recorded activities, whether it’s a short walk or a long swim. Profile: a profile page is a place where you can adjust your driving minutes and points, as well as your personal information. If you are scrolling through your history and want to get more detailed information about your activity statistics for that day, click on the day, and you will find all your recorded actions. From there, you can click on an individual activity to see more intricate details such as distance, steps, calories, and pace metrics. Adidas Training is a workout planner. However, Adidas Training and Running from Runtastic has one significant advantage over most home training programs: if it offers a decent set of free features. As you might expect, the Adidas brand is widely promoted worldwide, but it’s not just a marketing tool. There are plenty of ready-made workouts to choose from, and if you don’t see anything appealing, you can create your own by selecting body parts and setting the duration-a thoughtful feature that can save you a lot of time. You are trained using video and audio. There’s little stopping you from being motivated here, just telling you what to do and for how long. It’s also handy when you first try the exercise to keep your phone at eye level so you can check your movements according to the video, but once you figure it out, you can only do it with voice instructions. Training in the Adidas Training program is ideal for: Fat burning; Strength training; Care for the physical condition of the body; Work on primary stability. Figure 6: Adidas Training by Runtastic Figure 7: View of the Fitbit Coach app This app is quite popular. It provides a catalogue of training kits both at home and at home. But, first, let’s describe the pros and cons of training. Pros: Availability of exercises for training at home; Availability of exercises for training in the gym; Section of activities for different muscle groups; Ability to choose the type of load (light, medium, complex). Cons: There is no way to build your own set; There is no way to describe detailed progress; There is no way to track your calorie count; There is no way to track the amount of water you drink. Fitbit Coach is an application where you can choose your coach. Your personal trainer is a specialist who guides you through video workouts. There are two to choose from: Lea Rus and Adrian Richardson. Not only are they certified fitness trainers and experienced wellness experts, but each of them brings their unique energy to every Fitbit Coach workout. In this app, you can take a test for your level of physical fitness. This physical assessment takes about 10 minutes. After each exercise, you are asked to rate its difficulty and how well you did it. Fitbit Coach adapts future workouts based on this. Programs are a thematic group of training sessions based on your level of physical fitness and abilities. Currently, there are three: “Weight Loss”, “Strength training” and “Daily training”. The program’s progress is saved, so you can pick up where you left off. You can also change the program at any time. Workouts: these dynamic bodyweight workout videos increase or decrease difficulty based on your feedback. Fitbit research shows that 85 per cent of people who use these workout videos for at least five sessions experience an increase in strength. Audio training consists of expert-designed running and walking workouts with audio cues designed to help you safely improve your endurance, speed, and fitness. Choose one of the outdoor or treadmill activities and choose the difficulty, duration, trainer, and music. Your workouts will be automatically recorded in the Fitbit app. Since audio exercises are designed to be listened to, they are only available in the Fitbit Coach app. This app is also quite popular. It provides a catalogue of home training kits from experienced trainers. First, let’s describe the pros and cons of training. Pros: Availability of exercises for training at home; Section of exercises for different muscle groups; Ability to choose the type of load (light, medium, complex). Cons: There is no way to build your own set; Only two trainers; There is no way to describe detailed progress; There is no way to track your calorie count; There is no way to track the amount of water you drink. This chapter analysed the current attitude of doctors to physical health. It highlighted the importance of constant sports, reviewed ready-made solutions similar to those proposed by me, and considered their functionality and main functions and disadvantages. The most popular apps for Android and iPhone, such as Google Fit and Apple Fitness+, were reviewed. 3. Materials and methods 3.1. System analysis of the research object The primary purpose of this information system is to monitor and maintain the state of physical health at the proper level by analysing the data entered by the user about their diet, Sports, sleep and regular training under the supervision of a trainer. As a comprehensive description of the system under study, the general recommendation is to describe the general goal of the system functioning and apply the goal tree methodology to specify the general purpose of the system’s existence and conduct a hierarchy analysis method to determine the type of future system, for further use of this solution in the design of the system architecture. An essential aspect of the goal tree is logical thinking, which is related to constraint theory. It can be described as a tool to outline all the components needed to achieve your goals, depending on Success Factors’ tasks. A prerequisite is that the members of the goal tree must be linked by logical relationships [16]. The top of the goal tree contains a goal that must match the following formula: “what to change”, “how to change”, and “in what sequence”. At the next level, success factors should be outlined. They are essential factors that are essential for achieving and achieving the primary goal. Under each critical success factor, there is a variable number of necessary conditions. Since the goal tree is built on the required logic, all the essential needs must be met to achieve the goal. In other words, if one of the necessary conditions is not met, the plan cannot be completed. One of the challenges you can face is “measuring the effectiveness” of the most critical success factors. It is a complex and continuous process that determines the level of achievement of the goal. All the data obtained during this process is crucial when making decisions about what measures to use and what strategies and tactics to apply. Key Performance Indicators’ efficiency concerning system type metrics is measured based on (HV) and (HF). These key indicators should be specific and measured in the future. Identifying the right critical factors and Key Performance Indicators is the foundation of any software product. However, these key performance indicators are particular to each situation and each software product, but they must be carefully selected. The primary purpose of functioning is to create an information system to help users develop the habit of planning their smartphone usage immediately before using it. Main aspects of the overall goal: Topic analysis; Projecting the system architecture; Creating a health monitoring system. The goal tree in Figure 8 has three levels: the general goal, key aspects of success, sub-aspects, and the necessary conditions that determine the quality of the system’s functioning. It is necessary to consider each aspect in more detail. Research and analysis of all designed software aspects consist of a thorough search for existing solutions and their analysis. It is also necessary to investigate the availability of scientific research on the benefits of constant sports and the importance of maintaining proper nutrition from reliable sources, such as research by well-known universities and scientists who have reviewed their articles and published them in prominent journals. Adequate analysis of problems and existing solutions forms the right way of thinking to solve further architectural and functional issues. Figure 8: Goal tree The necessary conditions for determining the aspect of “problem analysis” are the analysis of medical, scientific papers on a healthy lifestyle, the importance of playing sports every day, the importance of proper nutrition, the importance of maintaining water balance, and healthy eating sleep. One of the essential criteria of the first aspect is relevance and completeness. Relevance is an important criterion, as unique and relevant applications that help lead a healthy lifestyle are necessary due to the tendency of people to a sedentary life. Completeness is also an essential aspect because it complements the problem’s scope and is an excellent criterion for market analysis. An equally important aspect is architecture design, UML diagram development, and work planning. During this process, the system is decomposed into independent modules and modules, which allows you to design the system more efficiently since fewer details will be ignored, which will reduce the time for implementing and testing this software product. It will also simplify further maintenance and expansion of the system by laying down these parts at the design stage. One of the sub-aspects of this aspect, as mentioned above, is the decomposition of tasks and creating a conceptual model. The criteria for this aspect are flexibility and quality. The last element is implementing the system, divided into three parts: choosing effective ways to obtain data on the physical state of health, implementing the system, and analysing and testing the developed system. The criteria of the latter aspect are reliability and convenience. There are the following types of systems: Information and search services; Information and reference services; Information managers; Intelligent systems; Decision-making systems. There are the following types of alternatives for the system under development: Information and search system (A1); Information and reference system (A2); Decision-making system (A3); Information and search system (А4). A scale of the relative importance of priorities was used to determine the expert assessment. This scale is shown in Table 1. Table 1 The scale of the relative importance of priorities Value Quality characteristics 1 Equivalent elements 2 Non-essential priority 3 Weak priority 4 Moderate priority 5 Significant priority 6 Essential priority 7 Strong priority 8 Very strong priority 9 Absolute priority Next, it`s needed to determine which quality criteria are more prioritised than others. To do this, it will be convenient to create a table of the ratio of quality criteria to priorities since it will clearly understand the importance of a particular quality criterion. You can also easily use this data to compare the requirements matrix [16]. Table 2 Table of the ratio of quality criteria to priorities Quality criterion Priority Relevance (K1) 7 (strong priority) Completeness of the study (K2) 2 (non-essential priority) Quality(K3) 5 (significant priority) Flexibility (K4) 4 (moderate priority) Easy to use(K5) 8 (extreme priority) Reliability (K6) 6 (weak priority) The next step is to build a matrix of pairwise comparisons of criteria. And the calculation of eigenvalues from now on HF and eigenvectors after this HV. Finally, the expert assessment is made using a relative scale of priority importance from 1 to 9(according to the scale of paired comparisons of T. Saati). To calculate eigenvalues (HF), use the formula below: 𝑛 (1) HF = √∏𝑛𝑗=1 𝑎𝑖𝑗 . To calculate eigenvectors (HV) - the Formula 2: 𝑤 HV = ∑𝑛 𝑖 . (2) 𝑖=1 𝑤𝑖 Table 3 Matrix of pairwise comparisons К1 К2 К3 К4 К5 К6 HF HV К1 1 7/2 7/5 7/4 7/8 7/6 1,43 0.21 К2 2/7 1 2/5 1/2 1/4 1/3 0,41 0.06 К3 5/7 5/2 1 5/4 5/8 5/6 1,02 0.15 К4 4/7 2 4/5 1 1/2 2/3 0,82 0.12 К5 8/7 4 8/5 2 1 4/3 1,64 0.25 К6 6/7 3 6/5 3/2 3/4 1 1,23 0.18 The next step is to construct pairwise comparisons of alternatives for each criterion and relative to the primary goal. Table 4 Matrix of pairwise comparisons of alternatives for the usability criterions relevance А1 А2 А3 А4 HF HV А1 1 1/2 2/5 3/4 0,72 0.17 А2 2 1 1/2 1/4 0,79 0.19 А3 5/2 2 1 1/3 1,08 0.26 А4 4/3 4 3 1 1,51 0.36 completeness of the study А1 А2 А3 А4 HF HV А1 1 1/3 1/4 1/2 0,58 0.14 А2 3 1 4/3 5/3 1,28 0,31 А3 4 3/4 1 1/3 1 0.24 А4 2 3/5 3 1 1,23 0.3 quality А1 А2 А3 А4 HF HV А1 1 1/5 1/3 1/3 0,53 0.12 А2 5 1 3 4/6 1,46 0.35 А3 3 1/3 1 1/2 0,9 0.21 А4 3 2/3 2 1 1,26 0.3 flexibility А1 А2 А3 А4 HF HV А1 1 2 1/3 1/4 0,74 0.16 А2 1/2 1 1/3 1/4 0,58 0.14 А3 3 3 1 1/3 1,2 0.27 А4 4 4 3 1 1,91 0.43 ease of use А1 А2 А3 А4 HF HV А1 1 1/4 1/2 1/3 0,59 0.14 А2 4 1 1/2 1/3 0,93 0.22 А3 2 2 1 4 1,59 0.37 А4 3 3 1/4 1 1,15 0.27 reliability А1 А2 А3 А4 HF HV А1 1 1/3 1/2 1/4 0,59 0.14 А2 3 1 1/3 1/4 0,79 0.18 А3 2 3 1 2 1,51 0.35 А4 4 4 1/2 1 1,41 0.33 main goal А1 А2 А3 А4 HF HV А1 1 1/5 1/2 1/3 0,57 0.13 А2 5 1 1/4 1/4 0,82 0.11 А3 2 4 1 1/3 1,18 0.26 А4 4 4 3 1 1,91 0.43 The final step is to build a matrix of alternative comparisons. Its result determines what type of Information system is needed for implementation. Table 5 Alternative comparison matrix К1 К2 К3 К4 К5 К6 Generalised criterions 0.21 0.06 0.15 0.12 0.25 0.18 priorities А1 0.17 0.14 0.12 0.16 0.14 0.14 0.14 А2 0.19 0.31 0.35 0.14 0.22 0.18 0.23 А3 0.26 0.24 0.21 0.27 0.37 0.35 0.28 A4 0.36 0.3 0.3 0.43 0.27 0.33 0.33 After completing all calculations in the hierarchies, the following results were obtained: 1. Information and search system (A1)-0.14. 2. Information and reference system (A2)-0.23. 3. Decision-making system (A3) - 0.28. 4. Intelligent information and search system (A4)-0.33. From the table described above, it follows that this system is an intelligent information and search system. The quality criterion for assessing the quality of functioning of an Information System (IS) designed to obtain information about the physical state of human health is the basis for deciding on the compliance of a particular information system with the requirements of an automatic control system. Achieving compliance is the goal of designing an information system, and the choice of criteria determines the strategies for quality assessment. The information system has several system properties. The system’s technical characteristics for monitoring the physical state of health are characterised by speed, accuracy, and reliability. Therefore, the quantitative assessment of each of these properties can be carried out in a specific group of indicators, the choice of which is subjective and therefore not always rational. The first step in setting and achieving project goals is determining what things in your project are essential. Goal management theory says that everything in projects should take priority. Now there are a lot of options for achieving the goal. You can develop an IoT device that would monitor your health status, such as heartbeat, body fat, blood pressure, oxygen in the blood, and physical activity, by tracking the number of steps. However, the disadvantages of this approach outweigh the pros. Among the penalties can be identified the following factors, users do not like to be tracked since no one knows where this data will end up. Since this data is directly related to the user’s health, the risk that this data can be sold increases since now many companies could offer their services to users interested in sports and a healthy lifestyle. It is precisely because of this type of data that they can be very interested in. The next disadvantage of this approach is that not all users want to pay for a special device that will track their health status. Because of this, the number of potential users will drop sharply. However, this approach also has advantages, namely that the user will not need to spend their time and enter data independently. Such a system will not forget to constantly monitor the user and update the data alone, unlike a user who will regularly enter data about their health status. Therefore, the best way to solve this problem was to choose the method of entering data by the user himself, since this method has many disadvantages. In comparison with other methods of solving this problem, this method has more advantages than disadvantages. It is also helpful to develop an action plan to make it easier to achieve the goal because having the project goals in front of you helps a lot. A project plan that clearly describes what functions the system should perform, and a UML diagram that shows the system’s performance in a cross-section helps a lot about development in one case or another. In the system, the user plays a vital role in monitoring the state of health [17-24]. When designing a system, there is always a question of defining the system’s boundaries for in personal monitoring the state of health [25-31]. It is known that no system can do all the work, which is why it is necessary to clearly distinguish between the boundaries of the system and the boundaries of the user so that in software development, there are no questions about what data the system still processes, and what data the user will deal with himself. So for the health monitoring system [32-36], there is a difficulty in determining the boundaries because the designs can only report, for example, problems with excess weight and provide a tool for solving this problem in the form of training programs, a meal plan, healthy sleep, etc. The user is forced to decide whether to follow the recommendations and whether the indicators as results of the content monitoring system based big data analysis [37-53] are acceptable for him. Of course, all indicators that the system monitors and the data that it processes must be agreed with the user of this system. In other words, the user must be fully informed about the limits of functioning that do not go beyond the assistant. In other words, the system only provides an interface that reminds the user about training, nutrition, etc. and monitors the training process. This system is easily divided into subsystems according to the criterion of tasks set formed from the goal tree. About dividing the system into subsystems, you should perform decomposition so that the subsystems were easily scalable in the future and had a minimum number of dependencies on each other. This result can only be achieved by using a goal tree and UML diagrams because these methods allow you to view the system in the most detail. Decomposition of the system follows from the very essence of the system: A subsystem that monitors training sessions; A subsystem that performs power monitoring; A subsystem that monitors the water balance; A subsystem that monitors sleep; Notification and reminder system; Settings element. Figure 9: General view of the system architecture Based on the review made above, the system should make recommendations based on the user’s data and monitor health based on the user’s data. Based on this, you need to divide the system as mobile application [54-63] into five subsystems (Figure 9), select two types of users in this system, such as the user himself and the coach, and select the server part as a separate part. The client-server architecture was chosen as the system architecture. The client-server model, or client-server architecture, is a distributed system of modules that divides tasks between servers and clients that are either on the same system or exchange data over a computer network over the Internet. The client relies on sending a request to another application to access the service provided by the server. The server runs one or more programs that share resources and distribute work between clients [1-9]. The client-server relationship interacts in a request-response messaging pattern and must follow a standard communication protocol that formally defines the rules, language, and dialogue patterns to use. Client-server communication usually corresponds to a set of TCP/IP protocols. The TCP protocol maintains a connection until the client and server complete messaging. The TCP protocol determines the best way to distribute application data into packets that networks can deliver, transmit, and receive packages from the web and manages flow control and retransmission of dropped or malformed packets. IP is a no-connection protocol in which each box travelling over the Internet is an independent data unit that is not associated with other data units. Client requests are organised and prioritised in a scheduling system that helps servers cope when receiving requests from many different clients in a short period. The client-server approach allows any general-purpose computer to expand its capabilities by using the shared resources of other hosts. Popular client-server applications include email, the World Wide Web, and network printing. There are many advantages of the client-server architecture model: A single server that puts all the necessary data in one place provides easy data protection, user authorisation, and authentication management. Resources such as network segments, servers, and computers can be added to the client-server network without significant interruptions. Data access can be efficient without requiring clients and the server to be nearby. All nodes in the client-server system are independent, requesting data only from the server, making it easier to update, replace, and move nodes. Data transmitted using client-server protocols is platform-independent. A class diagram is a static diagram. It represents a static view of the program. The class diagram is used to visualise, describe, and document various aspects of the system and build executable code for a software application. You can even generate basic code sets from properly constructed class diagrams. The class diagram describes the attributes and operations of the class, as well as the constraints imposed on the system. Class diagrams are widely used in object-oriented modelling systems, as they are the only UML diagrams that can be directly mapped to object-oriented languages. The class diagram shows a set of classes, interfaces, associations, collaborations, and constraints. It is also known as a block diagram. The purpose of the class diagram is to model the static appearance of the program. Class diagrams are the only diagrams that can be directly mapped to object-oriented languages and thus widely used during construction. UML diagrams, such as an activity diagram, sequence diagram, can only give the program sequence flow, but the class diagram is slightly different. It is the most popular UML diagram in the programming community. The purpose of the class diagram can be summarised as [54-63]: Analyse and design a static application view; Describe the system’s responsibilities; The basis for component diagrams and deployment; Forward and reverse engineering. The User class is the main class that displays the user in the system, and the system interacts with user data through this class. This class is converted to JSON typing and passed from the application to the server and back. This class has the UserData class as a data member that stores all user data. The ServerManager class is the main class that processes all user requests and interacts with the database, and it also sends data over the network. Request/Response classes are classes that act as containers when sending data over the web. They know how to properly wrap and deploy user data on both the client and server sides. The HTTPClient class is a client-side class that is responsible for sending data to the server. This class stores information about the address, port, and features of sending data to the server. The RushApp class is the main class of an Android app. Fragment interface descendants classes control the display of data in an application, the markup of graphic elements, and data controllers. Figure 10: UML Class Diagram The basis of the system is a mobile application since, in the modern world, the “smartphone” accompanies a person throughout the day and until sleep itself. Through the smartphone, we constantly interact with various systems. Therefore, using a smartphone as a system in which the user can track their health status by pre-configured parameters of their physical condition, such as height, weight, body fat percentage, amount of water consumed, amount of Physical Training, number of hours of sleep and diet was an obvious solution. Based on these parameters that the user will enter daily, the system will analyse and output a public health report. This way, the configured system will work independently, requiring only data entry from the user. The user will have the following functions: Filling in basic physical parameters such as height, weight, level of physical activity, etc.; Make an appointment for classes with a trainer; Heart rate tracking; Subscribe to create a training plan; Subscribe to ration preparation; Track your workout progress; Sleep tracking; Track the amount of water you drink. Personal physical data is filled in only after the user has authenticated as data. The user enters their height, weight, level of physical fitness, etc. Making an appointment for classes with a trainer is a function that is available to both the user and the trainer. The user signs up for classes with a trainer and, when the time comes for the lesson, goes to some pre-agreed video chat where the user can study under the direct supervision of the trainer. The user will also have the opportunity “to order” from the trainer to prepare the diet individually. The user receives a ready-made diet for the week at the output, which will be displayed in the “Nutrition” section. Where products and dishes will be described in detail their quantity cooking method and the amount of protein, fat, and carbohydrates contained in the products, the trainer, in turn, will be able to create a workout, invite users to it, create a training program, make a diet and drink. Additionally, the trainer will have the same features in the system as the user. So a user with the coaching status will have the following functions: Create a workout and invite users to it; Create a training plan and track your progress; Create a diet and drink; Create a training course. The trainer will be able to create a workout and invite users to it. When an activity is created, you can find details about the action in its description, such as its difficulty(for beginners, amateurs, and professionals) and a link to the video chat where the lesson will be held. The training plan is drawn up only after the user requests it. After drawing up a training plan and confirming it, the user pays for the training plan, and this training is displayed to the user in the “training” section. Drawing up a nutrition plan is the same as drawing up a training plan. The user requests the trainer and asks to make a meal plan. The trainer, after drawing up the program, corrects it for review to the user. After that, the trainer’s services are made, and the user receives his diet in the “nutrition” menu in the mobile application. As you can see from the UML usage diagram (Figure 11), the proposed architecture has enough disadvantages and advantages. Figure 11: UML diagram of user interaction with filling in data in the database Among the advantages, you can list the following: Client-server architecture; Data differentiation; Among the disadvantages are: Complex system expansion; The severity of introducing new authentication methods. A sequence diagram is most suitable for displaying interactions in a system. After all, it is a type of interaction diagram because it describes how - and in what order - a group of objects works together. These diagrams are convenient to use in the future to quickly explain the interaction in the system, for example, to a new employee or colleague, or in the case of updating the code, it will be much easier to understand how a particular module should have been used. Sequence diagrams are sometimes referred to as event diagrams or event scenarios [54-63]. The basis for constructing a sequence diagram is to represent entities involved in interaction processes without specifying their architectural connections with other entities. To describe the process of notifying the trainer when the user overexerts himself during online training, it was decided to use a sequence diagram because it perfectly describes the action that occurs in time(Figure 12). Figure 12: Basic lifeline of the “client” actor in a system using a sensor As you can see, the sequence diagram showed the lifecycle of the “client” actor, which plays a significant role in the operation of this system since it is the basis for most processes. This line is shown in (Figure 13). This figure shows most of the actions that the user can perform in time. To begin with, the user logs in to the system. After confirming the server, the user has the opportunity to perform actions inside the system. It has the chance to enter data on the state of physical health, enter data on nutrition, training, liquids consumed, and can send a request for Statistics generation. Component diagrams are used to ensure a consistent transition from the representation level to actual system modules and program code. The graphical elements of this diagram are components, dependencies, and interfaces [54-63]. For the user’s health monitoring system, the physical representation of the system is structured, after which the model is supplemented with an interface and a database (Fig. 14). “Model-View-Controller” was used as a template for designing the system. MVC is an application design model consisting of three interconnected parts. These include the model (data), view (user interface), and controller (processes that process data as it is entered). The MVC model or “template” is commonly used to develop modern user interfaces. In addition, it offers essential components for developing applications for desktop or mobile devices, as well as web applications. The three parts of MVC are interconnected (Figure 14). The view displays the model for the user. The controller accepts the data entered by the user and updates the model, and view it accordingly. Although MVC is not required for application development, many programming languages and IDEs support the MVC architecture, making it an ideal choice for mobile application development. Figure 13: Basic life line of the “client” actor in the system It works well with Object-Oriented Programming, as various models, views, and controllers can be treated as objects and reused in the application. Each aspect of MVC is described below: The model is the data used by the program. It can be a database, a file, or a simple object, such as an icon or character in a video game. A view is a means of displaying objects in a program. Examples include displaying a window or buttons or text in a window. It has everything that the user can see. Controller – updates the view. It accepts input and performs appropriate updates and validation. For example, the controller can update the model by changing the attributes of the training module. It will change the appearance of the workout menu according to the new verified data. Figure 14: Component diagram Initially, the system is in a menu selection state. The user can go to the submenu of training, nutrition, sleep, water balance, and statistics from this point. The user can view data from these submenus, update it, or log out of the program. If the user has edited the data, this data will be sent to the server for processing. after sending it, it will be possible to exit the program. Figure 15: State transition diagram An activity diagram is a flowchart that represents the transition from one activity to another. The activity can be described as the operation of the system. The primary purpose of activity diagrams is to capture the dynamic behaviour of the system. It is also called an object-oriented flowchart. This UML diagram focuses on the execution and flow of system behaviour, not implementation. Activity diagrams consist of actions that include actions that are applied to behavioural modelling technology. Figure 16: Activity diagram It is a behaviour that is divided into one or more actions. An activity is a network of nodes connected by EDGES. There can be action nodes, control nodes, or object nodes. Action nodes represent some action. Control nodes represent the control flow of activity. Object nodes are used to describe objects used within an activity. Edges are used to show the path or execution flow. The activity starts at the initial node and ends at the final node. 3.2. Problem statement and justification The purpose of the development is to help monitor the user’s health status after analysing existing solutions for tracking the user’s health status. The system’s main task will be to maintain the user’s health in the desired state. This support will be performed based on the user’s wishes and the parameters they will enter at the beginning of using the system. Indeed, many smartphone extensions on the market offer health monitoring solutions, such as those discussed in the first section. Almost all extensions on the market provide a point-to-point solution to the problem. For example, some applications can track and help not forget about the body’s water balance. Some extensions offer their users a nutrition tracking system. The same extensions exist to track training and track the quality of sleep. However, there are quite a few extensions that could provide comprehensive assistance in monitoring all these aspects that significantly affect human health. We also took into account the specifics of the application described above because a minimal number of them provide experience in using the platform, which is why it was decided to develop a platform where trainers can develop their training programs, nutrition and water balance for users and receive rewards from them for this. Users will subscribe to trainers who have a good rating or a new and exciting training program that the user liked, and the service will charge a small percentage of this subscription. This decision seems evident since many services work in this way. This system is designed for people of all age categories interested in tracking and monitoring their health and lifestyle. The system will remind the user about their sleep time, the number of calories they should consume today, their water balance, and a reminder of their fluid intake time to maintain it at the proper level and their workouts. This system can be used anywhere. And even more, this system should be used anywhere. Although each module of this system can be said to be aimed at different groups of people, such as the training module is aimed at people who mostly stay at home or do not have time to go to the gym and still want to maintain their body in proper athletic condition, and vice versa, the nutrition and water balance module is aimed at all types of people, regardless of what they do, since now people always carry a smartphone with them and that is why it has become very easy to track nutrition and water balance, the user will need to enter data every time after eating a meal or liquid or after a reminder, and the system will do everything else for the user. The problem of controlling one’s health is ancient, and the quality of its solution previously mainly depended on the person. However, now most of the issues people transfer from their responsibility to computer systems. The same thing happens with health care and control. It is since the computer system does not make mistakes and does not sleep. Now the scientific society is already fully engaged in the introduction of the latest technologies in this area. After all, now this problem is most acute. Because currently, people are working less and less physically and are moving more and more to sedentary work due to the technology boom. And with sedentary work, more and more people lead a sedentary lifestyle, which is why the introduction of this system will only benefit users and allow trainers to earn money even in such difficult times as the pandemic, when gyms are closed and people self-isolate in their homes. In this chapter, the application architecture was analysed and described, a systematic analysis of the object was carried out, and specific aspects of the system functionality were specified, a goal tree was built, and a general goal was formulated, decomposition criteria were defined, the boundaries of the system functioning were outlined and UML diagrams were created following the requirements that will be used in the next chapter. 3.3. Methods and tools for solving the problem 4. Selection and justification of methods for solving the problem Monitoring the state of physical health has always been one of the most critical points for a healthy life. Now, more and more developments aim to solve this problem, but unfortunately, the problem is too extensive for one application to solve. Still, when using it, it will help you monitor your health and physical condition more carefully. Smart bracelets have long learned to measure the heart rate and the level of oxygen in the blood. Now even smart bracelets and applications have known to detect the early risk of a heart attack. A bracelet based on a constant reading of the heartbeat using algorithms based on artificial intelligence detects abnormalities in the heart and advises you to see a doctor. This kind of health monitoring system has already saved more than one life. Now there are also active joint developments of medical and technical universities designed to manufacture special devices that can monitor health and prevent such deadly diseases as a heart attack. Since the sensor will be able to detect a heart problem at a very early stage, this, in turn, will allow doctors to immediately start interventions that can prevent repeated and possibly fatal hospitalisation and avoid heart failure. That is why the ability to provide heart rate data to qualified individuals only improves your health [1-9]. Based on heart rate data, the trainer can correctly select and adjust training programs depending on the specific client. Another advantage of using the app for health monitoring is that you do not need to visit gyms, as you can choose training programs that cover almost all muscle groups and keep the body in good shape at home. During periods of a pandemic, it is essential to be able to stay at home and maintain a healthy lifestyle since there is a very high risk of infection, especially in places such as a gym or gym, where it is challenging for people to maintain sterility and quarantine conditions, due to the proximity of open areas of the body to exercise machines that other people, and possibly infected can later use. Based on the above considerations, the idea of a system appeared that would allow people to work out with qualified trainers and nutritionists without leaving home, who would be able to track the training process online using a heart rate sensor and an application on a smartphone. However, despite all this, the user will enter the basic data that the application will require for regular operation independently since it is not yet possible to measure the number of calories consumed by the user in offline mode and track the amount of liquid consumed, or count the number of exercises performed by the user. It seems that smart devices learn to recognise basic exercises, and even these exercises are so few that they can be ignored, although there are smarter devices based on artificial intelligence that can distinguish a lot of exercises, but such devices are now very expensive and require a lot of computing power that smartphones can not provide now, and performing such calculations on the server is very resource-expensive. The system under development for monitoring the state of health allows you to monitor and view physical fitness. For this purpose, the user will have a very convenient tool called statistics, in which the user can view their condition and status. But the main idea of the statistics page is that the user will receive a rating. The rating is formed by each of the items that the app controls, namely, nutrition - at the beginning of using the app, the user will have to set a goal for themselves in how exactly they want to monitor their diet. The choice will consist of three points: Weight loss is when the app automatically calculates the required number of calories and protein, fat and carbohydrates based on the user’s data and the number of workouts. Weight maintenance - in this mode, the app calculates the required number of calories and the amount of protein, fat, and carbohydrates necessary to maintain body weight at the current user- friendly level. It is also worth noting that this mode will be selected automatically after the user has set a goal in weight loss or weight gain. Weight gain - to gain body weight, the app will have a mode that will help you achieve the desired body weight. And in the future, the user will be able to independently track them based on these parameters, that is, the number of calories per day, and add dishes that he ate today. The application will independently calculate the number of calories consumed by the user through the database. You can also order a nutrition program from a trainer or dietitian and follow it in the app. Training - depending on the selected goal, the user will also receive the recommended number of calories to burn per day. The training section will help you do this. Here, as well as in the nutrition section, you will be able to order training from a trainer, who, depending on the user’s goal, will create a training program for him displayed in the training section. Water balance is also an introductory section for daily health, as many people do not even realise how much water they should drink per day, and the app will help them with this because it will put forward its recommendation for the amount of water per day based on the user’s database. Sleep is a critical section because, without good sleep, healthy existence is impossible. During sleep, there are essential processes both in the head and in the human body. A person removes toxins during sleep, restarts memory and much more that is still unknown to scientists. Statistics is a section that summarises and shows the user their progress in all the areas listed above, namely nutrition, training, water balance and sleep. All these sections will have their own goals. In the nutrition section, this is the number of calories that the user should consume per day. In the training section, these are the exercises that the user has planned to perform. The number of sets and repetitions of these exercises in the water balance section is the amount of water that the user has planned to drink, and in the Sleep section, this is the number of hours that the user has planned to sleep. All these sections are united by the statistics section, which in the centre will have a number called the “Rush” indicator as a percentage where 0% will mean that the user did not follow any recommendations or will only mean that the user just woke up and 100% means that the user has completed everything that he planned, this section is considered the most important because it helps to keep the user in an exciting state. After all, when the user sees in front of him a motivating figure that has not reached its maximum, it motivates the user to perform all tasks. In Table 6 you can see the percentage settings that will make up the statistics section. Table 6 Percentages of sections that make up the statistics section Health monitoring section Percentage (%) Nutriotion 20 Workouts 20 Water balance 20 Sleep 20 Of course, these percentages are essential, and the user can change them to their needs. For example, if it is more critical for him to eat right, he can replace the “Nutrition” section with 30 or 40%, thus increasing the importance of this value in the statistics section. 5. Selection and justification of means of solving the problem Choosing the right mobile technology package is vital to make a mobile app development project valuable and successful. The technology stack not only gives life to your project but also makes it maintainable, scalable, and compliant with your functional requirements [64-72]. A suitable mobile accumulation can lead to lower costs and less time spent developing mobile apps. Now we are considering the most popular approaches to mobile application development and advanced technology stacks. Then it can be used in implementation [54-63]. Developing your applications means using platform-specific programming languages, software development kits, development environments, and other tools provided by operating system vendors. As a result, creating your apps for multiple platforms requires using separate mobile app development technologies for each. Popular apps like Lyft and Pokemon use a native approach. Since the app is also planned for iOS in the future, it is worth noting the stack of technologies used in the future. To create your iOS app, consider the following technology stack programming languages: Objective-C; Swift. To create an iOS app, you can choose Objective-C or Swift. Objective-C is a subset of the C programming language and provides object-oriented capabilities and a dynamic runtime environment. It is best to use Swift because it is more functional, provides code that is less error-prone due to built-in support for manipulating text strings and data and contains dynamic libraries that are directly loaded into memory, reducing the initial size of the application and ultimately improving application performance. IOS developers use Swift and recently created their library of watermarks for overlaying videos and images. This library can be quickly and efficiently integrated and installed, allowing you to place watermarks on videos and pictures. The iOS SDK includes an application programming interface (API) that links software applications and the platform on which they run. APIs can be created in various ways and have useful programming libraries and other tools. The iPhone SDK provides tools for Apple’s touch interface and its iOS operating system, which is used to run Apple’s iPhone and other Apple mobile devices such as the iPad. To create an application on Android, it was decided to choose the following technology stack, which will significantly simplify development through the newly created JetBrains Kotlin programming language. Developing an Android mobile app can use Java or Kotlin. Java is a reputable programming language with powerful open-source tools and libraries to help developers. However, Kotlin has become a more stable and reliable development option for Android Studio. Java has certain limitations that prevent the development of the Android API. Kotlin is inherently light, clean, and much less verbose. In other words, Kotlin was explicitly designed to improve existing Java models by offering solutions to API design flaws. Here for the development of the Android app, was preferred Kotlin mobile. Android Studio provides code editing, debugging, productivity tools, a flexible build system, and an instant build/deployment system. It allows you to focus on creating applications and does not distract from any shortcomings that could take up time since everything is effortless to set up. After setting up, all the necessary modules will be loaded automatically. With Android Developer Tools (ADT), you get full support for Android app development. In addition to providing dedicated coding support for Android, ADT allows developers to use various on-device debugging tools, a graphical user interface designer, emulators, and support for fully automated test scripts. To write apps with the latest features, developers must download and install each SDK version for a specific phone. The Android SDK components can be downloaded separately. Third-party add-ons are also available for download. Both Apple and Google provide app developers with their development tools, interface elements, and SDKs. However, before choosing to develop your apps, let’s look at the pros and cons of this approach. Admittedly, Google managed to lag behind Apple in entering the mobile market, which led to some consequences, namely acceleration when the first version of Android was released. It is not surprising that Google sought to finish the main user functions first, and taking care of the convenience of developers was the second priority. Therefore, along with the first version of Android, Google did not provide developers with any standard recommendations for development, design and UX. It led to every developer or every company being forced to write as they wanted and could [64-65]. Of course, we must admit that Google has done a great job of popularising the Android system among developers. But at the same time, the initial problems were not entirely resolved. What are these problems? When it comes to design, it’s clear that completely different app styles will confuse the Android system user, and navigation can be difficult. But what’s wrong with the lack of standards in the code itself? After all, as mentioned above, the user can in no way know how good the application code is, and this does not affect its use. The problem is that not all developers know Design Patterns well and can develop a good application architecture. If you don’t follow clear principles in architecture, you will very soon get horrible code. Code that cannot be supported. There will be a lot of complex logic in the code, it will not be placed in strictly defined classes, and it will not be clear how this or that part of your application works. It follows that when you add new functionality, you need to either take a long and challenging time to understand the written code, redo it and do it correctly or perform the task somehow, that is, figuratively speaking, with the help of supports of the old code and the fear of breaking something. Since not all developers understand the need for refactoring and can convince management of this need, and not every manager agrees to postpone releasing a new version and incur additional costs due to refactoring, they often choose. It often leads to terrible consequences. It degenerates into massive programs consisting of three activity files. Of course, each of these types of activity consisted of thousands or even tens of thousands of lines, which made them completely impossible to read. Moreover, each new feature implemented with crutches causes additional errors and crashes. You can’t test it. This problem flows smoothly from the first one. You won’t be able to write unit tests if the entire program is one large module. Moreover, due to the peculiarities of writing tests for Android applications in the JVM, with many dependencies on Android classes in the tested classes, you can not write examinations. And lack of tests: It gives you much less confidence that your code is working correctly. You won’t quickly check if the added changes don’t disrupt the rest of your app. This situation lasted quite a long time. Android apps continued to be written in different styles with entirely different approaches to design and architecture. Someone took the design from the iOS system and the design patterns from web development (in particular, attempts to use MVC in Android owe their existence to web developers who switched to Android). And it’s hard to say why there were no attempts to fix this situation, Android is a very young system, and at the time of its release, all the design patterns and architectural patterns were already widely known. In general, everything continued as usual until 2014, when two significant events occurred at once. The first one is well known to everyone - this is the Material Design Concept presentation at Google I/O. This concept can be treated. Differently, some consider it a failure. Others say that in this way, Google restricts the freedom of developers to choose a design. But the fact that the emergence of this concept has significantly improved the situation on average is indisputable. Implementation of client-server interaction. It would seem that the problem here is to perform requests to the server using various tools, process the result, and show it to the user. Yes and no. There are many factors involved. First, you need to handle errors correctly, which can be very different: from the lack of internet and incorrect parameters in the request to the server that does not respond and errors in the response. Secondly, your program may have more than one request, but many, and you may need to combine these requests in a complex way: run them in parallel and use the result of the previous request to execute the next one. Third, and this is the most unpleasant thing - requests can take a considerable time, and the user is often not the most patient and calm person - they can lock the device (and then you will lose the current data inactivity), or they can completely close the program, and then you can get data desynchronization. And all this needs to be solved somehow. Along with the server language, a technology was chosen to specify and unify the API for the server and client called Swagger. This technology also allows you to debug the written API code in the GUI(Fig. 17), you can also generate client code. Figure 17: Swagger Editor View Swagger allows you to describe the API structure so that machines can read them. The API’s ability to define its structure is the root of all the awesomeness in Swagger. After reading the API structure, Swagger can automatically create beautiful and interactive API documentation. You can also automatically generate client libraries for APIs in many languages and explore other features, such as automated testing. Swagger does this by asking your API to return YAML or JSON, which contains a detailed description of your entire API. This file is essentially a list of your API resources that conforms to the OpenAPI specification. The specification asks you to include information such as: Operations that the API supports; Parameters that the API returns; Permissions that the API requires; Terms and Conditions, contact information, and license to use the API. You can write a Swagger specification for your API manually, or it can be automatically generated from annotations in the source code. Check out swagger.io/open-source-integrations for a list of tools that allow you to generate Swagger from code. In this chapter, the stack of technologies with which it will be possible to develop a system for monitoring the user’s health status was considered, the reasons why the choice fell on these technologies were also analysed and justified, a comparative analysis was carried out with other technologies, and technologies for other platforms that are currently just being planned for development were also laid. 6. Experiments, results and discussion The principle of operation of the system is to create a graphical interface based on XML files that describe the visual attributes of their position on the screen, define the layout of elements and their logic for placing, minimising and scaling graphic elements. Kotlin initiates requests from the client-side, and JavaScript is responsible for accessing the database and sending data from the server-side. Access to all files involved in the work is carried out within the local network, as the service is still under development. Let’s look at the system’s operation in stages. To start working in the system, the user needs to register. They will go to this submenu immediately after logging in to the application. To register, the user must enter their data in particular: user name in the system - this name will be used to show to other users this is the so-called nickname of the user in the system under which it will be known to other users in the future, you will need to come up with a password to log in to the system, this password can be changed later, or restored if the user forgets it, in the future, you need to enter the user’s email address that will be used for important notifications, such as renewal of subscription so warning renewal of subscription if a user has a trainer’s charter, they will receive information about each new user who subscribes to a training program from that trainer, or if another user wants to pay for a nutrition program, and then you need to enter a phone number. Android Studio was used to develop the graphical interface (Fig. 18). It is effortless to create a design for Android applications. This design method also makes it very easy to turn the developed interface into ready-to-use code. Figure 18: Design development in Android Studio Also used the very convenient functionality of Android Studio, which is called a smartphone emulator (Fig. 19) on Android, where it is very convenient to develop applications as it allows you to emulate any smartphone, with any level of the Android API, and any extension that may be available. The Pixel 3A emulator was used to do this work. Figure 19: Emulator for Android development Figure 20: The database schema The health monitoring of information system database consists of 11 tables: users, user_trainings, training, user_info, water_item, meals, nutrition_plans, exercise, dreams, ingredients, user_nutrions. Now we need to consider each of the tables in more detail [66-72]. Users table – created to save the user’s primary data. The user’s table consists of 7 fields: id – an integer type with a maximum number of characters – 11, this field allows you to assign a unique number to each user of the system, which will be possible to identify their data in the table, and this field is also the primary key that allows you to identify the user uniquely. Therefore it cannot be repeated. name – a field of the varchar type that is the user name that they specified during registration. It is used to send emails to their email address to personalise the mailing of emails. surname – a field of the varchar type that is the user’s last name that they specified during registration, it will also be used mainly for sending personalised emails. email – a text-type field is created to store the user’s email address and login for logging in to the system. password – a text-type field that exists to save the user’s password, which is used for logging in to the system. created_at – a date field that stores the time when the user registered. phone_number – is a text-type field that stores the user’s phone number for two-factor authorisation in the future. The user_info table is designed to separate user data from the user itself. The user_info table consists of 10 fields: id – field of integer type with a maximum number of characters – 11. This field allows you to assign each user data of the system a unique number, which will be possible to identify his data in the table. Also, this field is the primary key, which allows you to specify user data uniquely. Therefore it can not be repeated. age – an integer field that displays the user’s age. weight – a non-integer float field that displays the user’s weight. height – a non-integer float field that displays the user’s size. water_target – a non-integer float field that indicates the water that the user wants to drink each day. calories_target – a non-integer float field that shows the number of calories that the user wants to consume each day. fats_target – a non-integer float field that displays the amount of fat that the user wants to finish each day. proteins_target – a non-integer float field that displays the amount of protein that the user wants to consume each day. carbohydrates_target – a non-integer float field that shows the number of carbohydrates that the user wants to consume daily. calories_to_burn_target – a non-integer float field that displays the number of calories the user wants to burn each day. The user_trainings table is designed to create a many-to-many relationship between the user’s table and the training table. The user_trainings table consists of 2 fields: training_id – an int field that points to the id of the training table. user_id – an int field that indicates the id of the user’s table. The training table is designed to save custom workouts that they subscribe to. This table has a link to the exercises table, meaning it lists individual exercises for the user. The training table consists of 3 fields: id – an integer field that allows you to assign a unique number that will be used to identify training sessions in the table. This field is also the primary key that will enable you to identify training sessions uniquely, so they cannot be repeated. name – a field of the varchar type that displays the name of the training session that the user subscribed to. type – a field of the varchar type that indicates the type of training that the user has subscribed to. The water_item table is designed to store all data about the user’s water balance, i.e. every time the user enters data about the liquid consumed, they are entered in this table. The water_item table consists of 4 fields: id – an integer field that allows you to assign a unique number that will be used to identify water balance data in the table, and this field is also the primary key. data – a field of the data type that stores the calendar date when the user drank the liquid. time – a time-type field that stores the time when the user drank the liquid. amount – a float-type field that stores the amount of liquid consumed. The meals table is designed to save all data about meals by the user, i.e. every time the user enters data about meals, they are entered in this table. The meals table consists of 2 fields: id – an integer field that allows you to assign a unique number that will be used to identify food intake data in the table, and this field is also the primary key. name – a field of the varchar type that stores the name of the meal. The nutrition_plans table was created as a container for the user’s diet ingredients. The nutrition_plans table consists of 2 fields: id – an integer field that allows you to assign a unique number that will be used to identify data about the meal plan in the table, and this field is also the primary key. name – a field of the varchar type that stores the name of the diet. The exercise table is created as a container for the user’s diet ingredients. The exercise table consists of 3 fields: id – an integer field that allows you to assign a unique number that will be used to identify exercise data in the table, and this field is also the primary key. name – a field of the varchar type that stores the exercise name. calories – a float-type field that stores the number of calories that exercise burns. The dreams table is designed to save all data about meals by the user, i.e. every time the user enters data about meals, they are entered in this table. The dreams table consists of 4 fields. id – a field of integer type that allows you to assign a unique number that will be used to identify data about the user’s sleep in the table, and this field is also the primary key. time – a time-type field that saves your sleep time. start_sleep is a timestamp-type that stores the time and date when sleep starts. end_sleep is a timestamp-type that stores the end time and date of rest. The ingredients table is designed to store all data about ingredients, meaning that each meal consists of these ingredients. The ingredients table consists of 7 fields: id – a field of integer type that allows you to assign a unique number, which will identify data about the ingredients of dishes in the table, and this field is also the primary key. type – a type field that stores the ingredient type. name is a varchar type field that stores the name of the ingredient. calories – this is type float that is the number of calories in an element. fats are float type that is the amount of fat in an ingredient. proteins are float type that is the amount of protein in an element. carbohydrates are float type field that is the number of carbohydrates in an ingredient. The user_nutrions table is designed to create a many-to-many relationship between the user’s table and nutrion_plans. The user_nutrions table consists of 2 fields: nutrion_id – an int field that points to the ID of the nutrion_plans table. user_id – an int field that indicates the id of the user’s table. When a user registers, they get permission to perform various actions in the system depending on their user role. To register, the user must provide their registration data, such as a username, password that the user will be able to restore, email that will be used to send notifications, and send newsletters. When registering, you must enter the phone number that will be used for two-factor authorisation. Figure 21: Registration form Figure 22: Food menu Figure 23: Water Balance menu The “Food” menu allows you to calculate calories consumed automatically and shows how many calories you need per day. All calories consumed are displayed in the list at the bottom, and this is also divided into graphical elements, which show the current progress depending on the calories consumed and also show the progress of the amount of protein, fat, and carbohydrates consumed relative to the daily norm for a particular person, also in the list shows the time when the user entered this data in the system. Water Balance menu (“Water”) this menu is quite simple from a visual perspective. It consists of an indicator of the amount of water consumed relative to the daily norm and a list that displays the amount of water consumed and when the user entered this data into the system. The statistics menu (”Rush“) is straightforward. The main element in it is the so-called “Rush point” - this is a number that displays general statistics on completed user tasks. It is an excellent motivator that motivates the user to get as many numbers as possible at the end of the day. Because the number 100 means that the user has completed all the planned goals for the day. Figure 24: Statistics menu Figure 25: Training menu Figure 26: Sleep menu The training menu (”Sport”) displays the completion of the user’s workout and the main element of which is a list that displays what exercise was done, at what time the user completed this exercise, and how many calories were burned during the workout, also at the bottom there are two buttons one of which allows you to add a workout, that is, enter the completed workout, and count calories, and the other allows you to read the pulse from a pre-connected fitness bracelet. The “Sleep” menu displays the number of hours spent by the user in sleep, and consists of a list that contains: the number of hours spent in sleep, and the date when this data was entered by the user. As a result of the work, you can see a well-functioning system for monitoring human health, which monitors the number of calories consumed by the user, heart rate, water balance, amount of physical activity, diet and sleep. A server-side for this application has also been developed, as described in Section 2. There is too little data, and testing on real users is also not enough to give any qualitative assessment of the system. One thing is for sure - this is a very promising direction for software development, the health care market is constantly growing. There are more and more software products that are similar to the product described above. This chapter showed the practical implementation of the Health Monitoring Information System Project. a primary user interface was developed, and a database with all tables and fields was fully described. 7. Conclusions In this paper, an information system for monitoring the state of health was described and developed, which is implemented as an Android application. During the development of this system, an analysis of the problem was carried out, which showed that now this problem is more relevant than ever since humanity has made a big step away from an industrial society where people led an active lifestyle through since this was associated with their way of working, in the digital age where most people stop moving and sit more and more in the office and lead a sedentary lifestyle. As part of this work, a systematic analysis of the project was carried out in which the central architecture of the smartphone application based on the client-server architecture was developed. UML diagrams of classes, use cases, sequence diagrams, components, and activity diagrams were created that allowed us to study the projected system in a cross-section and describe the procedure in more detail before development. A goal tree was also built that answered the question of what type of system is being developed. A decomposition of the system was carried out, from which more detailed aspects of it became clear. The analysis became clear on how to organise through the global Internet for further use and integration into the system. A graphical interface was also developed for user interaction with the system via the Internet for accessing and tracking user health data from anywhere in the world. The system is based on parameters that the user sets: height, weight, the purpose of using the system, age, the number of calories that the user wants to consume, the number of calories that the user wants to burn, etc. We also analysed the similar systems available on the market from global manufacturers. After that, it became clear that many famous companies began to develop their solutions in this direction since monitoring and monitoring health is an essential aspect of human life. 8. References [1] N. Axak, N. Serdiuk, M. Ushakov, M. Korablyov, Development of System for Monitoring and Forecasting of Employee Health on the Enterprise, volume Vol-2604 of CEUR workshop proceedings, 2020, pp. 979-992. [2] M. Odrekhivskyy, V. Pasichnyk, N. Kunanets, A. Rzheuskyi, G. Korz, D. Tabachyshyn, The Use of Modern Information Technology in Medical and Health Institutions of Truskavets Resort, volume Vol-2631 of CEUR Workshop Proceedings, 2020, pp. 184-197. [3] A. Névéol, et al., Clinical Information Extraction at the CLEF eHealth Evaluation lab 2016, volume 1609 of CEUR Workshop Proceedings, 2016, pp. 28-42. [4] A. Névéol, et al., CLEF eHealth evaluation lab 2015 task 1b: Clinical named entity recognition, volume 1391 of CEUR Workshop Proceedings, 2015. [5] C. Pertin, C. Deccache, R. Gagnayre, T. Hamon, User profile detection in health online for a, volume 247 of Studies in Health Technology and Informatics, 2018, pp. 730-734. [6] V. Claveau, T. Hamon, S. Le Maguer, N. Grabar, Health consumer-oriented information retrieval, volume 210,of Studies in Health Technology and Informatics, 2015, pp. 80-84. [7] C. Deccache, et al., Helping patients to learn: Characteristics and types of users and uses of independent online forums on health problems and chronic conditions, volume 11(1) of Education Therapeutique du Patient, 2019, 10208. [8] V. Claveau, T. Hamon, N. Grabar, S. Le Maguer, RePaLi participation to CLEF eHealth IR challenge 2014: Leveraging term variation, volume 1180 of CEUR Workshop Proceedings, 2014, pp. 176-188. [9] A. Gaudinat, N. Grabar, C. Boyer, Machine learning approach for automatic quality criteria detection of health web pages, volume 129 of Studies in Health Technology and Informatics, 2007, pp. 705-709. [10] O. V. Zavalnyuk, Fenomen sportu: vid filosofsʹkoyi teoriyi do suchasnykh praktyk. Kyyiv : NPU im. M.P. Drahomanova, 2017. [11] S. I. Stepanyuk, et al., Istoriya fizychnoyi kulʹtury. Kherson : Vyshemyrsʹkyy V. S., 2016. [12] Y. S. Koziy, Orhanizovanyy sportyvnyy rukh v ukrayinsʹkiy diaspori SSHA i Kanady. Lviv, 2000. [13] O. V. Rymar, Sport nepovnospravnykh: istoriya ta suchasnist. Lviv, 2001. [14] S. I. Stepanyuk, O. M. Vatseba, Student·sʹkyy sportyvnyy rukh: istoriya ta suchasnistʹ.Lviv, 2003. [15] Apple Fintess+. URL: https://www.apple.com/apple-fitness-plus/. [16] T. Saaty, K. Cairns, Analytical Planning. Organization of systems. Moscow: Radio i svyaz, 1991. [17] S. Fedushko, Adequacy of Personal Medical Profiles Data in Medical Information Decision- Making Support System, volume Vol-2544 of CEUR Workshop Proceedings, 2020. [18] N. Melnykova, M. Buchyn, S. Albota, S. Fedushko, S. Kashuba, The Special Ways for Processing Personalized Data During Voting in Elections, volume 1080 of Advances in Intelligent Systems and Computing, 2020, pp. 781-791. [19] N. Shakhovska, S. Fedushko, ml. M. Greguš, N. Melnykova, I. Shvorob, Yu. Syerov, Big Data analysis in development of personalized medical system, in: The 10th International Conference on Emerging Ubiquitous Systems and Pervasive Networks (EUSPN), 160, 2019, pp. 229-234. [20] Y. Syerov, N. Shakhovska, S. Fedushko, Method of the Data Adequacy Determination of Personal Medical Profiles, volume 902 of Advances in Artificial Systems for Medicine and Education II, 2019, pp. 333-343. [21] I. Korobiichuk, S. Fedushko, A. Juś, Y. Syerov, Methods of Determining Information Support of Web Community User Personal Data Verification System, volume 550 of Advances in Intelligent Systems and Computing, Springer International Publishing, 2017, pp. 144-150. [22] N. Melnykova, O. Markiv, Semantic approach to personalization of medical data, in: Computer Sciences and Information Technologies, CSIT, 2016, pp. 59-61. [23] N. Melnykova, N. Shakhovska, T. Sviridova, The personalized approach in a medical decentralized diagnostic and treatment, in: 14th International Conference The Experience of Designing and Application of CAD Systems in Microelectronics, CADSM, 2017, pp. 295-297. [24] N. Melnykova, et al., Data-driven analytics for personalized medical decision making, volume 8(8) of Mathematics, 2020, 1211. [25] N. Melnykova, N. Shakhovska, M. Gregušml, V. Melnykov, Using big data for formalization the patient's personalized data, volume 155 of Procedia Computer Science, 2019, pp. 624-629. [26] N. Melnykova, et al., The Applying Processing Intelligence Methods for Classify Persons in Identify Personalized Medication Decisions, in: 10th International Conference on Advanced Computer Information Technologies, ACIT, 2020, pp. 422-425. [27] V. Lytvyn, P. Pukach, І. Bobyk, V. Vysotska, The method of formation of the status of personality understanding based on the content analysis, volume 5/2(83) of Eastern-European Journal of Enterprise Technologies, 2016, pp. 4-12. DOI: 10.15587/1729-4061.2016.77174 [28] V. Lytvyn, V. Vysotska, V. Shatskykh, I. Kohut, O. Petruchenko, L. Dzyubyk, V. Bobrivetc, V. Panasyuk, S. Sachenko, M. Komar, Design of a recommendation system based on Collaborative Filtering and machine learning considering personal needs of the user, volume 4(2-100) of Eastern- European Journal of Enterprise Technologies, 2019, pp. 6-28. DOI: 10.15587/1729- 4061.2019.175507 [29] T. Batiuk, V. Vysotska, V. Lytvyn, Intelligent system for socialization by personal interests on the basis of SEO technologies and methods of machine learning, volume Vol-2604 of CEUR workshop proceedings, 2020, pp. 1237-1250. [30] K. Bazilevych, M. Mazorchuk, Y. Parfeniuk, V. Dobriak, I. Meniailov, D. Chumachenko, Stochastic Modelling Of Cash Flow For Personal Insurance Fund Using The Cloud Data Storage, volume 17(3) of International Journal of Computing, 2018, pp. 153-162. [31] N.G. Grabar, T.B. Sokolovskaya, The information culture and the development of personal information requirements, volume 41(2) of Scientific and Technical Information Processing, 2014, pp. 73-80. [32] L. Chyrun, I. Kis, V. Vysotska, L. Chyrun, Content monitoring method for cut formation of person psychological state in social scoring, in: Proceedings of the International Conference on Computer Sciences and Information Technologies, CSIT, 2018, pp. 106-112. DOI: 10.1109/STC- CSIT.2018.8526624 [33] L. Chyrun, Y. Burov, B. Rusyn, L. Pohreliuk, O. Oleshek, A. Gozhyj, І. Bobyk, Web resource changes monitoring system development, volume 2386 of CEUR Workshop Proceedings, 2019, pp. 255-273. [34] A. Gozhyj, L. Chyrun, A. Kowalska-Styczen, O. Lozynska, Uniform Method of Operative Content Management in Web Systems, volume Vol-2136 of CEUR Workshop Proceedings, 2018, pp. 62- 77. [35] L. Chyrun, A. Gozhyj, I. Yevseyeva, D. Dosyn, V. Tyhonov, M. Zakharchuk, Web Content Monitoring System Development, volume Vol-2362 of CEUR Workshop Proceedings, 2019, pp. 126-142. [36] Y. Vyklyuk, N.,Kunanets, V. Pasichnyk, O. Husak, O. Kunanets, Y. Kryvenchuk, An Information System Prototype for Monitoring and Modeling the Spread of Viral Infections, volume Vol-2631 of CEUR Workshop Proceedings, 2020, pp. 351-366. [37] V. Lytvyn, V. Vysotska, A. Rzheuskyi, Technology for the psychological portraits formation of social networks users for the IT specialists recruitment based on big five, NLP and big data analysis, volume Vol-2392 of CEUR Workshop Proceedings, 2019, pp. 147-171. [38] O. Veres, P. Ilchuk, O. Kots, L. Bondarenko, Big Data Analysis for Structuring FX Market Volatility due to Financial Crises and Exchange Rate Overshooting, volume Vol-2870 of CEUR Workshop Proceedings, 2021, pp. 1488-1499. [39] O. Duda, N. Kunanets, O. Matsiuk, V. Pasichnyk, N. Veretennikova, A. Fedonuyk, V. Yunchyk, Selection of Effective Methods of Big Data Analytical Processing in Information Systems of Smart Cities, volume Vol-2631 of CEUR Workshop Proceedings, 2020, pp. 68-78. [40] N. Sharonova, I. Kyrychenko, G. Tereshchenko, Application of Big Data Methods in E-Learning Systems, volume Vol-2870 of CEUR Workshop Proceedings, 2021, pp. 1302-1311. [41] A. Berko, V. Alieksieiev, A Method to Solve Uncertainty Problem for Big Data Sources, in: International Conference on Data Stream Mining and Processing, DSMP, 2018, pp. 32-37. [42] A. Berko, V. Alieksieiev, V. Lytvyn, Knowledge-based Big Data Cleanup Method, volume Vol- 2386 of CEUR Workshop Proceedings, 2019, pp. 96-106. [43] N. Shakhovska, O. Vovk, R. Hasko, Y. Kryvenchuk, The method of big data processing for distance educational system, volume 689 of Advances in Intelligent Systems and Computing, 2018, pp. 461-473. [44] N. Shakhovska, The method of big data processing, in: Proceedings of the 12th International Scientific and Technical Conference on Computer Sciences and Information Technologies, CSIT, 2017, pp. 122-126. [45] N. Shakhovska, O. Veres, Y. Bolubash, L. Bychkovska-Lipinska, Data space architecture for Big Data managering, in: Proceedings of the International Conference on Computer Sciences and Information Technologies, CSIT, 2015, pp. 184-187. [46] N.B. Shakhovska, Y.J. Bolubash, O.M. Veres, Big data federated repository model, in: Proceedings of 13th International Conference: The Experience of Designing and Application of CAD Systems in Microelectronics, CADSM, 2015, pp. 382-384. [47] N. Shakhovska, O. Duda, O. Matsiuk, Y. Bolyubash, R. Vovnyanka, Analysis of the Activity of Territorial Communities Using Information Technology of Big Data Based on the Entity- Characteristic Mode, volume 871 of Advances in Intelligent Systems and Computing, 2019, pp. 155-170. [48] N. Shakhovska, N. Boyko, Y. Zasoba, E. Benova, Big data processing technologies in distributed information systems, volume 160 of Procedia Computer Science, 2019, pp. 561-566. [49] N. Shakhovska, O. Vovk, Y. Kryvenchuk, Uncertainty reduction in Big data catalogue for information product quality evaluation, volume 1(2-91) of Eastern-European Journal of Enterprise Technologies, 2018, pp. 12-20. [50] N. Shakhovska, The method of big data processing, in: Proceedings of the 12th International Scientific and Technical Conference on Computer Sciences and Information Technologies, CSIT, 2017, pp. 122-126. [51] C. Wang, N. Shakhovska, A. Sachenko, M. Komar, A new approach for missing data imputation in big data interface, volume 49(4) of Information Technology and Control, 2020, pp. 541-555. [52] N. Shakhovska, et al., Architecture of the platform for big data preprocessing and processing in medical sector, volume 2647 of CEUR Workshop Proceedings, 2020, pp. 98-110. [53] N. Shakhovska, Antibids - Antibiotics big data system, volume 2544 of CEUR Workshop Proceedings, 2019. [54] B. Rusyn, L. Pohreliuk, A. Rzheuskyi, R. Kubik, Y. Ryshkovets, L. Chyrun, S. Chyrun, A. Vysotskyi, V. B. Fernandes, The Mobile Application Development Based on Online Music Library for Socializing in the World of Bard Songs and Scouts’ Bonfires, volume 1080 of Advances in Intelligent Systems and Computing IV, Springer, 2020, pp. 734-756. DOI: 10.1007/978-3-030- 33695-0_49 [55] A. Rzheuskyi, A. Gozhyj, A. Stefanchuk, O. Oborska, L. Chyrun, O. Lozynska, K. Mykich, T. Basyuk, Development of Mobile Application for Choreographic Productions Creation and Visualization, volume Vol-2386 of CEUR Workshop Proceedings, 2019, pp. 340-358. [56] O. Yanholenko, O. Cherednichenko, O. Yakovleva, D. Arkatov, A model for estimating the security level of mobile applications: A fuzzy logic approach, volume 2623 of CEUR Workshop Proceedings, 2020, pp. 252-266. [57] M. Davydov, O. Lozynska, Information system for translation into Ukrainian sign language on mobile devices, in: International Scientific and Technical Conference on Computer Sciences and Information Technologies, CSIT, 2017, pp. 48-51. [58] M. Baharon, M. Abdollah, N. Abu, Z. Abidin, A. Idris, Secure Video Transcoding In Mobile Cloud Computing, volume 17(4) of International Journal of Computing, 2018, pp. 208-218. [59] C. Maximiano, V.B. Fernandes, Mobile e-Learning: Support services case study, in:ICEIS – Proceedings of the 12th International Conference on Enterprise Information Systems, 2010, 4 SAIC, pp. 106-113. [60] T. Teslyuk, V. Teslyuk, H. Lypak, N. Kunanets, N. Veretennikova, A Mobile Museum Guide Application, volume Vol-2631 of CEUR Workshop Proceedings, 2020, pp. 314-326. [61] O. Artemenko, V. Pasichnyk, N. Kunanets, K. Shunevych, Using sentiment text analysis of user reviews in social media for e-tourism mobile recommender systems, volume Vol-2604 of CEUR workshop proceedings, 2020, pp. 259-271. [62] N. Shakhovska, S. Fedushko, ml. M. Greguš, I. Shvorob, Yu. Syerova, Development of Mobile System for Medical Recommendations, in: The 15th International Conference on Mobile Systems and Pervasive Computing (MobiSPC), 155, 2019, pp. 43-50. [63] E. Vasilevskis, I. Dubyak, T. Basyuk, V. Pasichnyk, A. Rzheuskyi, Mobile application for preliminary diagnosis of diseases, volume Vol-2255 of CEUR Workshop Proceedings, 2018, pp. 275-286. [64] Visual Studio Code. URL: https://code.visualstudio.com/. [65] Android. URL: https://developer.android.com/studio. [66] V. Lytvyn, A. Hryhorovych, V. Hryhorovych, L. Chyrun, V. Vysotska, M. Bublyk. Medical Content Processing in Intelligent System of District Therapist, volume Vol-2753 of CEUR Workshop Proceedings, 2020, pp. 415-429. [67] V. Vysotska, V. Lytvyn, Y. Burov, A. Gozhyj, S. Makara, The consolidated information web- resource about pharmacy networks in city, volume Vol-2255 of CEUR Workshop Proceedings, 2018, pp. 239-255. [68] S. Makara, L. Chyrun, Y. Burov, Z. Rybchak, I. Peleshchak, R. Peleshchak, R. Holoshchuk, S. Kubinska, A. Dmytriv, An Intelligent System for Generating End-User Symptom Recommendations Based on Machine Learning Technology, volume Vol-2604 of CEUR workshop proceedings, 2020, pp. 844-883. [69] S. Fedushko, M. ml. Gregus, T. Ustyianovych Medical card data imputation and patient psychological and behavioral profile construction, in: The 9th International Conference on Current and Future Trends of Information and Communication Technologies in Healthcare (ICTH), 160, 2019, pp. 354-361. [70] N. Shakhovska, I. Zhelizniak, The associative rules constructing on the example of patient's physical characteristics, volume 2300 of CEUR Workshop Proceedings, 2018, pp. 157-160. [71] N. Shakhovska, et al., The sequential associative rules analysis of patient's physical characteristics, volume 2255 of CEUR Workshop Proceedings, 2018, pp. 82-92. [72] T. Hamon, R. Gagnayre, Improving knowledge of patient skills thanks to automatic analysis of online discussions, volume 92(2) of Patient Education and Counseling, 2013, pp. 197-204.