基于安卓的健康饮食软件的设计与开发毕业论文
2021-11-07 21:01:21
摘 要
目前,人们对自身健康日益重视。因此,人们开始通过书籍、电视、电脑的渠道,获取有关健康的知识,管理自己的日常饮食和运动。进入互联网时代,网络成为了人们获取信息的重要途径。各类旨在满足用户健康需求的APP或公众号等纷纷出现。
现在,国内有关健康的应用主要有薄荷健康和Keep等,薄荷健康等应用偏向饮食,Keep等应用偏向运动。但这些应用所涉及的有关健康的领域不够全面,如何把二者结合起来进行管理值得研究。本系统旨在能够让用户根据自己在系统中设定的目标,记录和管理日常的饮食和运动。
该应用前端采用Android Studio进行开发,后端使用IDEA进行开发。前端借助Android Studio开发工具,结合Java开发语言、SQLite以及OkHttp等相关技术,后端采用Spring Boot开发,使用Tomcat服务器、MySQL数据库等相关技术。设计并开发出符合用户需求的健康助手APP。实现用户模块、社区模块、记录模块、推荐模块等功能模块。
关键词:Android,Spring Boot,健康,饮食
Abstract
At present, people pay more and more attention to their own health. Therefore, people begin to acquire knowledge about health and manage their own diet and sports through book, TV and computer. In the age of Internet, network has become an important way for people to get information. All kinds of application or official account to meet the health needs of users have emerged.
Now, the application of health in China mainly includes Peppermint Health and Keep. Some of them prefer to diet and some prefer to exercise. However, the health implications of these applications are not comprehensive, so it is worth investigating how to combine them in management. The ambition of this system is to enable users to record and manage their daily diet and exercise according to their own goals.
The app uses Android studio as development platform for the client and IDEA as the server. The client uses Android Studio development tools, java development language, SQLite and OkHttp related technologies. The server uses Spring Boot development, Tomcat server and MySQL database. Design and develop a more useful health assistant app. Mainly presents the design and implementation of user module, community module, record module,recommendation module and other functional modules.
Keyword:Android,Spring Boot,health,diet
目 录
第1章 绪论 1
1.1 设计目的及意义(含国内外的研究现状分析) 1
1.2 国内外相关软件的发展现状 2
1.2.1 国内相关app现状 2
1.2.2 国内相关app现状 2
1.3 研究(设计)的基本内容、目标、拟采用的技术方案及措施 3
1.3.1 基本内容 3
1.3.2 目标 3
1.3.3 拟采用的技术方案及措施 3
第2章 系统分析 4
2.1 需求分析 4
2.1.1 功能性需求 4
2.1.2 非功能性需求 4
2.2 可行性分析 5
2.2.1 技术可行性 5
2.2.2 经济可行性 5
2.2.3 组织可行性 5
2.3 业务流程分析 6
2.4 数据流程分析 11
2.4.1 顶层数据流程分析 11
2.4.2 用户信息模块数据流程 12
2.4.3 用户记录模块数据流程 13
2.4.4 文章模块 14
2.5 数据字典 15
2.5.1 外部实体 15
2.5.2 数据元素 15
2.5.3 数据流 16
2.5.4 数据存储 17
2.5.5 处理过程 18
第3章 系统设计 22
3.1 系统模块设计 22
3.1.1 用户模块 22
3.1.2 管理员模块 23
3.2 系统代码设计 24
3.2.1 用户编码 24
3.2.2 文章编码 24
3.2.3 记录编码 25
3.2.4 食物编码 25
3.2.5 运动编码 25
3.3 物理配置方案 26
3.4 数据储存设计 26
3.4.1 数据库概念设计 26
3.4.2 数据库逻辑设计 28
3.4.3 数据库物理设计 29
3.5 输入输出设计 29
3.5.1 输入界面设计 29
3.5.2 输出界面设计 30
第4章 系统实施 32
4.1 系统调试 32
4.1.1 分调 32
4.1.2 联调 33
4.2 初步程序展示 33
4.2.1 登录界面 33
4.2.2 信息填写界面 34
4.2.3 主界面 35
4.3 系统测试 36
4.3.1 系统测试计划 36
4.3.2 系统测试用例制定 37
4.3.3 系统测试计划执行 38
4.3.4 缺陷管理 40
第5章 总结 41
绪论
设计目的及意义(含国内外的研究现状分析)
自古以来,追求美丽是人类文明的一种表现。不同时期、不同地域、不同国家的审美标准不尽相同。“以瘦为美”的评判标准逐渐成为中国社会约定俗成的审美标准,在年轻人群体中尤为明显。[[1]]现在人们对健康饮食方面的研究也十分深入,可以通过对摄入食物热量的控制,通过对摄入的热量和人每天消耗的热量的数值的多少,以及每天摄入食物的营养结构,来达到完善自己身体健康状况的目的。现在,大多数人都处于亚健康的状态,产生这种亚健康状态的原因有很多。不注意日常饮食、缺乏必要的运动等等,但很多人还是对健康缺乏必要的认知,不懂得如何控制体重,保持自己的身材。因此很多和健康相关的事物开始出现,越来越多的健身房、健康节目等等。现在进入互联网时代,各类旨在满足用户健康需求的应用如雨后春笋般纷纷出现。本课题的设计目的在于:设计一个管理和记录人们日常的饮食与运动来达到不同人对于自己健康目标的安卓应用,同时普及营养运动知识,让人们的饮食和运动更加的科学,更好更快的完成他们的健康目标。[[2]]
该系统软件应能够满足一下的要求:
- 对各种常见的食物的营养成分、能量建立一个较为全面的数据库,帮助人们对日常饮食所摄入的能量进进行参考。
- 对各种常见的日常运动所消耗的能量建立一个较为全面的数据库,帮助人们对日常运动所消耗的能量进行参考。
- 根据人们对于所设定的不同目标进行相应不同饮食和运动的推荐。
- 推送一些相关的文章帮助人们更好的了解饮食与运动的健康知识。
- 保护用户隐私,不泄露用户的姓名、出生日期、身份证等个人信息。[[3]]
随着现在计算机技术的不断地发展、推进和革新,计算机信息化系统已经逐渐地深入到各行各业的发展中去,并在起到了举足轻重的作用。信息化系统不仅能为个人健康管理提供便利,还能影响人们生活习惯,不断改善个人身体素质。[[4]]同时,由于计算机技术的不断改进,互联网技术的创新,人们都迫切地需求一个功能完善、丰富的专业化的手机智能健康助手。现在有关健康饮食相关应用的研究还比较少,所以通过这一次的毕业设计,我们可以设计一款能够让大多数人使用的APP,能够将运动和饮食结合,让更多的人能够更科学地进行健康地饮食,完成自己对于身体的目标。[[5]]而不是盲目的相信一些虚假的广告,这不仅没有办法成功达到自己的计划,而且还严重地损害了自己的健康。我们希望通过手机的简单操作,就能让大家对自己的饮食、运动有更高效率的计划。这对提高中国人的健康素质也有重大的意义。
国内外相关软件的发展现状
国内外有很多相关软件已经在各个应用商城上架,大多数为免费的软件,侧重点各有不同,有点偏向于饮食,有的偏向于运动,功能也各式各样。在国内的APP有注重健身运动、注重饮食问题的不同分类的APP,在各自的领域都有自己的专长,在国外也有相应的APP,不过由于饮食、运动等习惯的不同在相关的推荐上会不同。[[6]]
国内相关app现状
表1.1 国内相关应用
名称 | 侧重点 | 内容以及功能 |
Keep | 运动 | 提供了海量的专业课程、以及个性化的健身指导服务,还有个人运动数据的记录,以及社区中心。 |
薄荷健康 | 饮食 | 智能健康减肥工具,包含个人中心以及相应的社区。 |
国内相关app现状
表1.2 国外相关应用
名称 | 侧重点 | 内容以及功能 |
Fooducate | 饮食 | 该应用可以扫描相应食物的条形码确认食物是否有利于健康,分析食物的营养成分。 |
Healthline | 饮食 | 这个应用可以根据你的性别,年龄,身高和体重。计算你的体重指数,使用图表帮助了解自己最近饮食选择对体重影响。监视和跟踪相关的进度。 |
研究(设计)的基本内容、目标、拟采用的技术方案及措施
基本内容
开发一个可以记录饮食和运动的系统,该系统可以对人们的日常饮食运动进行管理,根据每个人的身高和体重可以得出每日人体基础代谢的需要的基本热量,根据不同的运动大致得到体力活动所需要的热量,再算上消化食物所需要的热量得出该日的能量的需求,根据不同的食物搭配可以得到该日的摄入能量及营养成分情况。同时设有文章推送的功能,根据不同的用户群推送不同的文章。[[7]]
目标
这次课题的目标是能够通过app让用户根据自己的目标,管理日常的饮食摄入,运动强度、种类和时间,同时系统为用户推荐相关的文章,通过这些帮助用户达到所期望的身材塑造或保持的目标。
拟采用的技术方案及措施
该app采用Android、Spring Boot作为开发平台,借助Android Studio,IDEA开发工具,结合Java开发语言、MySQL数据库、SQLite以及OkHttp相关技术等,设计开发出比较科学合理的健康助手APP。[[8]]对于开发者来说,JAVA是一门可靠稳定的编程语言。[[9]]利用Android Studio进行前端开发,作为健康管理系统的开发工具,对应用进行开发和维护。Android在这些年不断的推陈出新,已经成为一个较为完善的系统。[[10]]利用IDEA进行后端服务器开发对相关的食物、运动和个人数据的保存在服务器的数据库中,软件的安装及更新也在服务器上操作。利用Spring Boot对后台服务器的快速搭建。同时结合Java开发语言,充分利用Java语言简单和高效的特点,开发出一个稳定运行的后端服务器。
技术点:数据库MySQL,JAVA,Spring Boot,XML
开发工具:Android Studio,IDEA
系统分析
需求分析
系统分析中需求分析是其中重要的部分,需求分析用来调查系统的各项需求,通过需求分析形成系统的雏形。需求分析有功能性需求,非功能性需求。
功能性需求
应用软件用户
- 用户可以进行注册,登录,修改密码,忘记密码等基本账号操作。
- 用户可以输入身高,体重,性别等基本信息。
- 用户可以记录自己的饮食和运动。
- 用户可以查看本周的记录和以前的记录。
- 用户可以在社区发送文章,设置文章观看权限。
应用后台管理员
- 社区定时向用户推送符合用户需求的文章。
- 维护社区的运行,对不合要求的文章或评论进行删除或警告。
非功能性需求
数据安全需求:
- 数据库需要保存文章信息,用户信息,饮食信息,运动消息等。
- 在数据库方面需要合理的设计,数据库数据不能太过繁杂,应尽量满足第三范式,保证数据库的性能,不出现数据不一致,脏数据,重复读取等错误。
- 数据库中饮食数据,运动数据的存储应当合理,用户能较快的查询相应的信息。
- 尽量减少不必要的权限,保证用户能够安全的使用手机。[[11]]
- 用户保密措施要足够完善,涉及用户隐私数据,尽量不进行采集,涉及相应权限问题时,系统应该告知用户,同时不泄露用户密码等基本信息。管理员不能拥有修改用户密码等信息的权限,但必要时,可以修改不符合要求的用户名称。系统对密码存储应该进行必要加密,防止密码泄露。[[12]]
性能及操作要求:
- 用户界面应当简单易上手,广告不应太多,可以在社区文章中投放少许广告,不应投放不相关的文章。
- 等待时间应在5秒范围内,处理时间不宜太长。
可行性分析
在正式进行系统分析前,应进行系统的可行性分析,从不同的方面来评价本系统是否值得进行开发。本系统将会以技术可行性,经济可行性和组织可行性三个方面来讨论。
技术可行性
本系统将采用结构化开发的方法,结构化开发方法,对系统进行模块化和结构化的设计,并且每一个阶段都会形成一定的设计成果。进行相应的评估后,再对下一阶段进行开发。
本系统前端采用的是Android作为平台,Android的操作系统是由Linux为基础形成的,运行效率高,适合在手机上使用。[[13]]本系统开发借助Android Studio开发工具,结合Java开发语言、SQLite以及OkHttp相关技术等。
经过评估,本系统的技术方案具有可行性。
经济可行性
信息系统成本主要是系统的开发成本和运行成本。本系统使用Android Studio等工具进行开发。无需花费任何费用。运行的成本有人员和设备的维护费用等等。
本系统主要靠广告获得收益。根据用户的目标投放一些和健康相关的广告,来获得收益。[[14]]