软件设计描述
一、盲人导航系统数据库设计
数据库需求分析:首先深入调研盲人用户的实际需求,与盲人用户、康复专家、导航技术人员沟通交流,明确数据库需存储地理信息数据,包括道路、建筑物、公交站点、盲道等位置及属性;用户个人信息,如紧急联系人、语音播报偏好等;导航历史记录,方便用户回溯行程。同时,考虑系统对数据的实时更新需求,确保导航信息的准确性和及时性。
概念结构设计:运用实体 - 关系(E - R)模型构建数据库概念结构。确定实体包括用户、地理信息、导航记录等。用户实体包含用户 ID、姓名、联系方式等属性;地理信息实体涵盖位置坐标、名称、类型等;导航记录实体关联用户 ID 和地理信息 ID,记录导航起始、结束时间等。各实体间建立对应关系,如一个用户可产生多条导航记录,形成一对多关系。
逻辑结构设计:将 E - R 模型转换为关系数据库模式。设计用户表、地理信息表、导航记录表等。用户表(用户 ID,姓名,联系方式,语音偏好),地理信息表(地理 ID,坐标,名称,类型),导航记录表(记录 ID,用户 ID,地理起始 ID,地理结束 ID,时间)。明确各表主键、外键,建立表间关联,确保数据完整性和一致性。
物理结构设计:选择合适的数据库管理系统,如 MySQL。根据数据特点和使用频率,对经常查询的字段建立索引,提高查询效率;采用分区技术管理大量地理信息数据。考虑数据安全性,设置用户权限,定期备份数据,保障系统稳定运行。
二、盲人导航系统用户界面设计
(一)用户界面需求分析
用户特性分析:盲人用户主要通过听觉和触觉获取信息,视力存在障碍,对复杂界面操作困难。因此,界面设计需简化操作流程,提供清晰语音反馈和明确触觉提示,避免视觉元素干扰。
界面的功能任务分析:核心功能为导航路径规划与引导、紧急求助、系统设置。要求用户能快速启动导航,输入目的地;一键触发紧急求助,联系预设联系人;方便调整语音播报音量、语速等设置。
确定用户界面类型:采用语音交互为主、触摸反馈为辅的界面类型。利用语音合成技术实现导航指引、系统提示等功能;通过触摸屏幕产生震动反馈,辅助用户确认操作,结合语音识别工具接收用户指令。
(二)用户界面设计原则应用
界面的合适性:界面设计贴合盲人使用场景和需求,语音内容简洁明了,符合日常语言习惯;触摸区域布局合理,方便用户单手操作,操作反馈直观易懂。
简便易操作性:减少操作层级,重要功能设置在首页或通过快捷手势触发,如长按某区域启动紧急求助。操作流程简化,避免复杂步骤和确认环节,降低用户学习成本。
便于交互控制:提供清晰的语音提示告知操作结果和系统状态,用户可随时通过语音指令暂停、继续导航;支持用户自定义语音指令,增加交互灵活性。
媒体组合恰当:合理搭配语音、震动等反馈方式,导航时语音播报方向和距离,接近路口时增强震动提示;紧急求助时,语音报警与持续震动结合,确保用户及时感知。
一、用户信息表(user_info)

二、地理信息表

三、导航记录表(nav_record)

四、紧急联系人表(emergency_contact)

五、语音设置表(voice_settings)
