Honey Elder老年人身心健康综合服务平台
1. 需求分析
1.1开发背景
根据第五次人口普查数据显示,我国 60 岁以上的老年人占总人口的 10.45%,达到了联合国对老龄化社会的界定标准,标志着我国正式成为老龄化国家。我国拥有世界上最大的老年人群体,同时也是世界上老龄化最严重的国家之一,老龄化将对经济和社会的可持续发展产生巨大的影响。截止 2019 年末,我国 60 岁以上人口为 25388 万人,占总人口 18.1%,其中,65 岁及以上人口为 17603 万人,占总人口 12.6%,老龄化程度进一步加深。预计到 2050 年,我国 65 岁及以上老年人口比例将会达到 26%,其中 80 岁及以上的老年占比将达到 8%,老龄化程度将会达到前所未有的程度。
对老年人身心健康问题的担忧,促使我们开始了对老年人身心健康综合服务平台的设计。本平台以提供老年社交服务为主,进行慢性疾病防治为辅,关爱老年人的身心健康,为老年人提供社会支持,缓解老年人的心理孤独感,立足于中医药知识,面向老年群体慢性疾病进行预防为主,防治结合的中医疗养,从而助力国家人口老龄化事业的发展。以新时代,新观念,新模式,新载体为老年群体提供一个温馨阳光,积极向上,参与度高,快速便捷的线上服务平台。平台通过独特的算法模型,将此模型应用于用户的慢病数据上,通过数据的分析得出影响用户身体健康最主要的因素,并预测健康未来的发展方向,再通过智能化的推送,使用户主动意识到防治慢病的重要性并做出相应的预防措施。在专业优势下和学校本身中医药环境的引导下,结合当下慢病防控的严峻形势和需求,来进行创新型平台的研究与开发。
1.2市场分析
1.2.1目标用户
缺失认同感、患有慢性疾病、对中医养生方面感兴趣的中老年群体
1.2.2竞品分析
目前市场主流养老服务平台,多聚焦于医疗服务及居家服务,而忽视了健康老人的精神文化养老。
例如“爱家养老”是一款预约居家养老服务、孝敬和关爱老人的手机APP,以“帮父母养老、助子女行孝”为目标,为忙碌或“偷懒”的子女们,为渐渐年迈的父母们,提供居家养老生活、健康、安全、关爱等服务。其主要由助餐、助洁、助医三大板块组成,辅以远程照护和老年教育等功能。
再如亲情圈APP是一款智慧居家养老应用。主打实现以老年人生活服务、购物、订餐、医护服务为主的商城服务,实现自助购物下单、家政服务预约下单、医护服务预约下单和亲情圈代下单。手机APP与物联网健康体检设备连接进行健康检测,数据解读,健康数据实时展示、消息推送等医护服务。与智能家居设备对接,实现老人状态监控、实时定位、居家安全监护等功能。如下所示为功能对比表
由此可见,市面现行养老软件对于健康老人的精神文化养老较少涉及。
表1 功能对比表
1.3作品简介
1.3.1主要功能
(1) 登录注册系统
(2) 多元化课程数据提供
(3) 提供老年社交服务
(4) 在线购买相关产品
(5) 智能打卡任务、打卡信息推送
(6) 中医养生药膳推荐
(7) 个人信息设置
1.3.2优势及创新点
(1)本项目突破从单一的社会学或信息学领域进行研究的思维定式,融合管理学、卫生学与信息学等多学科的相关理论,不仅关注老年人的身体健康,预防老年人慢性疾病的发生,更提出关爱老年人心理健康的医养提议,还将构建老年慢性病管理系统与决策支持平台,在研究范式具有一定的创新性。
(2)借鉴发达国家的经验做法,剖析老年人对养老服务的差异性需求,研究如何构建一个既符合现实国情,又能满足老年人养老需求的健康新型管理模式,为新社会形态下所面临的严峻老年人医养问题,提供了新的理论视角和分析框架。
(3)项目采用机器学习方法,使用协同过滤、神经网络等算法,基于用户个人信息以及日常软件使用倾向对老年群体进行个性化推荐,并针对老年高血压、糖尿病、高血脂等慢性疾病进行分析,为患者提供自我保健方法,在研究方法上具有创新性。
(4)学校在中医方面深厚的知识与经验的积累,为平台提供强大的理论基础。
2. 概要设计
2.1数据流图
图1 数据流图
2.2总体设计
项目系统架构分为:可视界面层,业务机制层,数据支撑层
可视界面层:采用android端 UI交互,分为四个主要板块:银发学院,老年社区,银发商城,心情天地,共同构成了andriod端的主要UI,为老年人提供了抒发心情,分享爱好,学习交友的综合性服务平台。实现面向用户的多种功能,为用户提供银发学院、老年社区、银发商场、心情天地四个功能板块,监听和响应用户的请求,将用户需求和所需数据传递到业务机制层,同时接收从业务机制层向上表现的数据及内容,经一定渲染后展示给用户。
业务机制层:主要以监控机制和推送机制为主。监控机制,是整个平台能够不断得以进步,不断改善自身的利器。同时,它的存在也保障着整个平台的环境能够稳定运行,让管理者能够更容易发现用户中,那些正待帮助的老年人,并提供恰到好处的帮助。推送机制,是整个平台的用户间学习新东西,交到新朋友的源泉,它的存在,让用户能看到自己想看的,让用户对平台产生青睐感,使用户的平台黏性更高,平台发展能够更加长远。是老年人身心健康app的核心层面,作为处于应用层和数据层之间的模块,不仅需对上层传输下来的数据及操作进行符合用户期望的相应操作,并将动作结果重新返回展示给用户层,也需接收从数据层向上传递的老人活动数据、银发商场数据、学院课程数据等有关数据,并将其存储进相应数据库,为之后个性化推荐等功能提供所需数据基础。该层包括用户功能业务与后台应用业务,前者包括老年人个性化分析、课程学院、聊天小圈、银发商品等模块,详尽的实现了用户的所有功能需求;后者负责处理后台应用程序,将用户个性化信息进行相应的数据分析,得出用户适合的业务推荐并向下层记录,同时向上层反馈,经一定渲染后展示给用户。
数据支撑层:是业务机制层的支柱,它收集用户在平台上活动的各类数据以及用户反馈的数据,运用协同过滤算法得出的结果最终反馈在业务机制层中。为业务层提供稳定可靠的数据访问接口,同时负责app中数据的增加、删除、修改、查询和持久性存储等功能。
使用应用层、业务层、数据层的系统架构,层次清晰,结构分明,有利于系统的开发,方便成员分工协作,若某一层次出现错误,只需对出问题的层面进行修改,不影响其他层次正常运行工作,为后台维护提供了极大的便捷,保证了系统的健壮性。
图2 系统架构图
2.3模块设计
综合应用协同过滤推荐、神经网络等算法,构建面向老年人心理健康与慢性病中医疗养的智能决策系统,整合银发学院、老年社区、银发商城、心情天地等功能,以年轻化的生活方式为驱动,以“互联网+”应用模式为载体,为老年群体创建一个健康的、有活力的、参与度高的移动互联网服务平台。系统功能详见图 3。
图3 功能模块图
当用户首次登入平台时,系统会以问卷形式进行简要人像刻画,涉及慢性疾病、喜好偏向、心理问题等多个方面,为平台进行内容推荐明确初始方向。
2.3.1银发学院–老年网络课程学习,预防和治疗老年人慢性疾病
前期提供高质量的网络课程(兴趣爱好培养、老年心理等课程),通过购买版权后投放平台,或由教育机构向平台投入课程。此板块包含中医课堂、中医养生等,其具有预防和治疗中老年人慢性疾病的功能和使命,以中医药防治为基本出发点,提供中医讲师课堂、穴位按摩、食疗、保健操法等基本手段,主要针对慢性新功能不全、糖尿病并发症、肾病综合症、中风后遗症、慢性呼吸道疾病等中老年人常见慢性疾病。
老年网络课程:实时展示老年课程情况,通过表单形式显示课程数据,内容可由用户自创分享,也可由平台提供老年课程学习,结合折线图和饼状图显示近期与长期的用户课程学习信息等,令用户对自身的喜好兴趣情况有直观的了解。
预防老年慢性疾病:根据用户的疾病信息以及身体健康管控功能反馈的数据,利用时间序列分析算法对用户未来可能产生的慢性疾病进行预测,得到用户未来的健康发展趋势,为“中医养生日常打卡”、“治疗老年慢性疾病”等功能的实现提供了依据和方向。
治疗老年慢性疾病:结合用户当前疾病状况与影响因素占比,系统为用户提供中药配伍方案,用户通过完成该方案(食用、服用、用药参照等),改善健康状况。
4.中医养生操法推荐:基于用户喜好,向用户推荐中医养生操法,如太极拳、五禽戏等,助力用户身体健康。
2.3.2老年社区—银发小圈、日常打卡
为老年人提供一个互相交流的社交平台,其可以帮助问题解决、网络交友、日常分享等功能的实现,为老年群体提供社会支持,使该群体在网络社会中有存在感,缓解其内心孤独感。同时提供以中医养生为主的日常打卡机制。
银发小圈:致力于为中老年人提供一个便捷的交友平台。有利于初入平台的新用户快速掌握平台使用方法,加速用户融入。该部分主要有发帖、评论、点赞等功能。进入首页后用户可以滑动浏览,找到自己感兴趣的帖子,点击了解详情。每条帖子下都有评论和点赞按钮,点击以后触发事件,跳转到相应页面,用户可以点击评论发表自己的观点。用户如果想要分享自己的养生知识或者有疑问想和其他用户讨论,可以直接点击发表帖子按钮,跳转到发帖页面,从而发表自己的看法,发表后的帖子保存在数据库中,出现在论坛首页,用户可以在自己的帖子下看到其他用户的评论,并与其他用户进行交流。依托于移动客户端,在本平台的用户可以随时随地分享自己的日常动态,让更多人了解自己,或者去了解更多的人,缓解中老年人的心理孤独感。
日常打卡:结合用户当前健康状况,系统提供日常打卡方案。用户可对方案进行打卡,改善健康状况。
2.3.3银发商城–分析预测老人偏好,便利老人生活
主要实现商品购买的功能,除常用好物售卖,还有个性化智能推荐产品,我们采用了基于用户的协同过滤推荐算法,将用户的搜索内容、用户相似度作为自变量,找到最符合用户需求的物品推荐给用户。
2.3.4心情天地–排解心理问题,幸福老年生活
具有缓解与帮助老年人解决心理问题的社会责任与使命,为老龄人群排忧解难,结合当下热点,以面对点的形式为老龄人群排忧解难,为老年生活提供一丝甜蜜。
老年人心理咨询:通过心理咨询的方式释放或排解用户内心的痛苦和压抑的情感,减轻用户的内在压力和生活负担,缓解其紧张焦虑的情绪。同时该功能可及时发现用户的心理变化趋势,预防其可能出现的心理问题。
热门问题:向用户展示当下热门问题,用户可以在下方互相交流,抒发自己的意见,缓解心理问题。
3. 详细设计
3.1界面设计
软件整体采用简约直观的设计风格,界面以蓝白色为主色调,能够减缓电子屏幕带给眼睛的疲劳感。在界面布局上,对页面的文字、图形和图片等进行了合理的排布与设计,使之能够有效满足用户需求,并方便用户操作。除此之外,在单个模块设计时,也考虑到信息的层级关系明确,这样才能使信息传递效率最大化。
在开发过程中,项目组向市面上界面美观布局优秀的应用学习,并结合自身软件设计理念,进行独立的开发,软件中大部分组件都是自制单项调试。除此以外,考虑到美观程度,在开发过程也使用了jumpingbeans、banner、MPAndroidChart这些开源组件,用于例如轮播图的定时跳转,饼状图的动态展示效果等。
3.1.1登录界面
图4 登录界面 图5 注册界面
3.1.2用户界面
图6 问卷界面-1 图7 问卷界面-2
图8 问卷界面-3 图9 问卷界面-4
图9 问卷界面-5 图10 问卷界面-6
图11 银发学院 图12 银发学院-中医食疗
图13 银发学院-热门排行 图12 银发学院-老年爱好
图14 老年社区-日程计划 图15 老年社区-银发小圈
图16 心情天地-因您推荐 图17 心情天地-热门问题
图18 银发商城 图19 我的
3.2数据库设计
本系统的数据库主要依靠MYSQL以及嵌入式ROOM数据库来实现,Mysql数据库主要用于存储通过服务器下行至软件的数据流,或存储软件通过服务器上行至Mysql数据库的相关数据流。Room数据库主要用来嵌入进软件中,用来存储用户本地的一些数据,例如搜索记录等不需要上传至服务器的简单数据。整体数据库的设计遵循软件工程规范,符合系统架构需求。数据库设计合理,规范度高。
3.2.1实体-关系图
图20 实体-关系图
3.2.2数据实体定义
表 2 Doctors表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 大师编号 | 主键 | 否 |
| name | varchar(12) | 大师姓名 | 是 | |
| who | varchar(20) | 大师身份 | 是 | |
| time | varchar(18) | 大师出诊时间 | 是 | |
| Introduce | varchar(20) | 大师简介 | 是 | |
| pic | varchar(20) | 大师图片 | 是 | |
| appliance | varchar(20) | 主治方向 | 是 |
表 3 User 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 用户编号 | 主键 | 否 |
| name | varchar(12) | 用户姓名 | 是 | |
| user | char | 用户名 | 是 | |
| sex | varchar(2) | 用户性别 | 是 | |
| phone | char | 用户手机号码 | 不可重复 | 是 |
| password | varchar(18) | 用户密码 | 是 | |
| ill | int | 用户疾病 | 是 | |
| birthday | date | 出生日期 | 是 | |
| avatar | varchar(18) | 头像 | 是 |
表 4 video 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 视频编号 | 主键 | 否 |
| video | varchar(50) | 视频内容 | 是 | |
| type | varchar(50) | 视频类型 | 是 | |
| Author | varchar(200) | 视频作者 | 是 | |
| Name | varchar(40) | 视频名称 | 是 | |
| Introduce | varchar(100) | 视频简介 | 是 | |
| Pic | varchar(50) | 视频封面 | 是 | |
| Commentor1 | varchar(100) | 视频评论1 | 是 | |
| Commentor2 | varchar(50) | 视频评论2 | 是 | |
| Commentor3 | varchar(50) | 视频评论3 | 是 | |
| Type2 | varchar(50) | 视频属性 | 是 | |
| Id2 | varchar(50) | 属性编号 | 是 |
表 5 diet 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 药膳编号 | 主键 | 否 |
| name | varchar(50) | 药膳名称 | 否 | |
| composition | varchar(50) | 药膳配伍 | 否 | |
| way | varchar(200) | 制作方法 | 否 | |
| application | varchar(20) | 适宜情况 | 否 | |
| season | varchar(40) | 适宜季节 | 否 | |
| proper | varchar(40) | 建议 | 否 | |
| envy | varchar(40) | 禁忌 | 否 | |
| introduce | varchar(40) | 介绍 | 否 | |
| pic | varchar(40) | 图片 |
表 6 diets 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 药膳编号 | 主键 | 否 |
| name | varchar(40) | 药膳名称 | 否 | |
| composition | varchar(40) | 创建时间 | 否 | |
| way | longtext | 制作方法 | 否 | |
| nature | varchar(40) | 属性 | 是 | |
| attribution | varchar(40) | 病灶 | 是 | |
| type | varchar(40) | 方剂类型 | 是 | |
| application | longtext | 作用 | 是 | |
| malady | longtext | 辩证 | 是 | |
| constitution | varchar(40) | 体质 | 是 | |
| nowith | longtext | 禁忌同食 | 是 |
表 7 xqtd 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 问题编号 | 主键 | 否 |
| Title | varchar(40) | 问题名称 | 是 | |
| Name | varchar(20) | 发布人姓名 | 是 | |
| Avatar | varchar(50) | 附带图片 | 是 | |
| Introduce | longtext | 问题介绍 | 是 | |
| More | longtext | 详细介绍 | 是 | |
| cover | longtext | 问题图片 | 是 |
表 8 Course 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 商品编号 | 主键 | 否 |
| Title | varchar(20) | 商品名称 | 是 | |
| Price | double | 商品价格 | 是 | |
| Short | varchar(300) | 商品简介 | 是 | |
| Long | longtext | 详细介绍 | 是 | |
| Cover | varchar(300) | 封面图片 | 是 | |
| Introduce | longtext | 商品介绍 | 是 | |
| Pic1 | varchar(300) | 商品图片1 | 是 | |
| Pic2 | varchar(300) | 商品图片2 | 是 | |
| Type | varchar(300) | 商品类型 | 是 | |
| sum | int | 总价 | 是 |
表 9 images 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 图像编号 | 主键 | 否 |
| Image_data | varchar(100) | 图像内容 | 否 |
表 10 plan 表
| 字段名称 | 数据类型 | 备注 | 约束项 | 可为空值 |
|---|---|---|---|---|
| id | int | 计划编号 | 主键 | 否 |
| Type | varchar(100) | 计划类型 | 否 | |
| Thing | varchar(100) | 计划内容 | 否 |
3.2.3数据库关系图
图21 数据库关系图
3.3关键技术
项目技术路线以老年人本身为核心,聚焦于老年人在平台的活动轨迹。首先,收集老人在平台上填写的相关信息(年龄,身体状况,爱好等)以及在平台上的活动轨迹,接着对相关活动数据进行数据预处理操作(数据清洗,数据变换等操作),对已经预处理好的数据存储到老年人数据库中,从中选取一部分内容按类别以分类栏目的形式展示在平台上,供用户选择;再利用BP神经网络算法进行平台用户偏好的预测,依据得出的结果对平台内容进行优化和方向的调整;此外,在分类处理的同时,对身体长期患有慢性病的老人,结合中医养生和中医疗养专家的意见,根据具体的慢性病症推荐中医疗养方法;对当前心理处于亚健康或不健康状态的老人进行标签,依据老人的心情推荐能够自我疏导的方法,另外,在老人通过输入关键字查找想要内容时,平台对搜索的关键字进行预处理后,向数据库申请查找要求内容,查找成功后,向老人反馈内容;最后,平台利用协同过滤算法,向老人智能推荐中医养生课程,日常生活视频等等。技术路线详见图22
图22 技术路线图
4. 测试报告
4.1安装、卸载测试
软件安装时需要同意联网以及存储请求,如不给予网络权限,在进入软件时,会提示网络连接失败;如不给予存储请求,部分功能例如改变头像,会无法顺利进行。
软件卸载时,其会连同缓存数据一起清除。
4.2功能测试
网络连接功能测试,出现断网情况时,会提示网络连接失败,软件功能失效。当服务器关闭时,也会提示网络连接失败,软件功能失效。
注册登录功能测试,信息通过服务器上传至mysql数据库成功,并成功跳转至对应主界面。
视频播放功能测试,视频流通过服务器下行至安卓端,安卓端进行解码后,通过视频适配器配置成功,并可以进行暂停以及前后退进度功能。
养生食疗功能测试,在网络连接顺畅的情况下,食疗主界面展示对应季节的食疗餐方推荐,当点击对应的食疗餐方后,进入对应的食疗餐方的细节内容,并显示成功。
心情天地功能测试,在网络连接顺畅的情况下,心情天地首页展示可能会困扰的问题,当点击对应词条后,成功进入对应词条的详细内容展示界面。
今日计划功能测试,在网络连接顺畅的情况下,当新增计划时,可以选择新增计划的类型以及计划内容,点击完成后,由本地通过服务器上传至mysql数据库,查看mysql数据库,发现上传成功,同时界面内容更新成功。
银发商城功能测试,在网络连接顺畅的情况下,商城主界面展示所推荐的商品,当点击对应商品后,即进入对应商品详情界面,显示商品价格,介绍,图片等。选择加入购物车后,购物车即出现对应商品内容,再次点击加入购物车,购物车对应商品数量增加。
购物车结算功能测试,在网络连接顺畅的情况下,可以在购物车对商品进行增加或减少功能,点击结算,会展示最新购物车商品总价,点击确认后,成功结算并清空购物车。
4.3性能测试
服务器适合日访问量1万左右,通用场景为web应用、数据库等。
4.4 Android特性测试
软件的使用符合当下时代主流的手势操作习惯,同时也能够兼容导航栏的操作方式,方便长时间使用并已经习惯于导航栏操作的用户。
4.5不同网络状态下进行的测试
在测试的过程中,我们通过查看主页推荐视频的呈现速度,来进行相关研究,发现当服务器为单核时,视频呈现较慢。当我们将服务器升级为多核时,视频呈现速度较快,符合用户的等待时间下限。
| 网络状态 | 视频的呈现速度 |
|---|---|
| Wifi(校园网) | 获取较慢 |
| 移动网络 | 4G获取速度一般,5G速度获取较快 |
| Wifi(其他的局域网) | 获取速度取决于网速与带宽 |
4.6中断性测试
测试过程中,当用户在查看养生食疗餐方时,突然退出软件,再次回到软件时,软件依然显示的是食疗餐方内容。当用户关闭软件,再次进入时,需要进行登陆操作。
测试过程中,当用户网络发生小幅度波动,可能会导致软件闪退或用户状态异常。
4.7兼容性测试
开发的过程中选用的安卓版本最低为 Android 8.0,经过在电脑上虚拟机的测试,8.0 以上才能正常安装并运行顺畅,且向上兼容,包括最新的 Android 12.0 安装没有问题。
| Android 版本 | 测试结果 |
|---|---|
| 8.0 以下 | 当图片清晰度较高时,软件闪退 |
| 8.0 及以上 | 安装正常,运行正常 |
| 最新的 12.0 | 安装正常,运行正常 |
4.8 App在清空数据后或强制退出后还能正常运行否
App 在清空数据后能正常运行,但是需要缓存的数据需要重新缓存才可以正常使用,例如主页视频的展示,头像等。