观前必读:
项目为信管必修课程【系统分析设计】的课程项目,此部分为交换项目后其他小组的项目【需求分析书】。关于我们组之前项目的请参考:
【系统分析设计】基于AR的智能健身系统(2)系统分析说明书(需求规格说明书)-CSDN博客
本项目【无人商店智能推荐模块】对应的【需求说明书】请参见:
【系统分析设计】无人商店智能推荐模块(1)系统分析说明书(需求规格说明书)-CSDN博客
1.概述
1.1编写目的
详细定义《无人商店推荐系统模块》软件的总体功能;给出系统的结构设计和过程设计,作为程序编写的依据。
1.2参考资料
a. 项目来源:《系统分析与设计》课程,本项目旨在提出一个概念性构想,并提供一个可能的推荐拓展模块。通过对现有的无人商店业务流程进行改进,为客户提供更优质的服务、最大可能的便利,为无人商店逆转当下困境,扩大、留住更多的用户(群)。
b. 本文档中引用到的规范和资料:
[1]张倩倩.无人商店场景下的视觉捕捉与追踪技术研究与实现[D].哈尔滨工业大学,2021.DOI:10.27061/d.cnki.ghgdu.2021.003312.
[2]邹靖.可供性视角下无人零售商店的体验设计研究[D].江南大学,2020.DOI:10.27169/d.cnki.gwqgu.2020.000923.
[3]丁妤婷,李姿莹.网络营销中看O2O商店与无人店、VR商店[J].商场现代化,2019,(10):15-16.DOI:10.14013/j.cnki.scxdh.2019.10.007.
[4]余红心.无人零售商店的“新风口”[J].决策,2017,(09):77-79.
[5] 华经产业研究院发布的《2023-2029年中国无人零售行业市场发展监测及投资战略咨询报告》
[6] 于金月,孙玲慧.新零售时代无人零售商店的经营与发展分析[J].现代商业,2020,(14):23-24.DOI:10.14097/j.cnki.5392/2020.14.010.
[7] 罗妍,李姿莹.无人店的商业模式分析——以缤果盒子为例[J].现代商业,2019,(28):3-4.DOI:10.14097/j.cnki.5392/2019.28.001.
[8] 邹靖,鲍懿喜.可供性视角下无人零售商店的用户体验要素探析[J].装饰,2019,(10):112-115.DOI:10.16272/j.cnki.cn11-1392/j.2019.10.027.
1.3术语和缩写词
显式推荐是指用户主动选择使用推荐系统生成的商品清单进行购物。在这种情况下,用户明确表示希望根据系统的建议来选择商品。推荐系统会根据用户的历史购物行为、喜好、需求等因素,为用户生成一份个性化的商品清单。用户可以浏览这个清单,并从中挑选自己喜欢的商品进行购买。这种推荐方式直接、明确,适用于那些对自己的需求有明确了解的用户。
- 隐式推荐
隐式推荐是指用户在不主动选择使用推荐系统的情况下,系统默认调用推荐算法为用户提供个性化的购物建议。这种方式不需要用户明确表示要使用推荐功能,而是通过分析用户的行为和场景,自动为其提供相关的商品推荐。结合AR(增强现实)技术和智能价签,系统可以在用户浏览商品时,实时地为其推荐、高亮显示可能感兴趣的商品。这种推荐方式更加隐蔽、自然,适用于那些对推荐系统持保留态度或不喜欢主动选择推荐功能的用户。
- API(应用程序接口)
API是一组预定义的函数、协议和工具,用于实现不同软件之间的交互和数据共享。在本文中,API指的是提供的类似ChatGPT4的虚拟客服接口。通过这个接口,用户可以实现与虚拟客服的互动,获取商品信息、购物建议等服务。这种接口可以帮助用户更方便地获取所需信息,提高购物体验。
- 机器视觉
机器视觉是通过计算机和摄像头等传感器来模仿人类视觉系统的技术。在无人商店的场景中,机器视觉可以用于实现商品识别、货架监控、顾客行为分析等功能。例如,通过分析摄像头捕捉到的画面,系统可以识别出用户正在查看哪些商品,从而为其提供更精准的推荐。此外,机器视觉还可以用于监控货架上的商品库存,确保及时补货。总之,机器视觉技术在无人商店中扮演着至关重要的角色,有助于提高运营效率和用户购物体验。
- AR导购
AR导购结合了外部信息与推荐系统,通过增强现实技术为用户提供一种交互式的购物体验,同时引导用户按照推荐路线探索商品。AR导购利用增强现实(AR)技术将虚拟信息叠加在真实世界的场景之上,以此创造出一个可以与用户互动并指引其走向特定商品的沉浸式环境。这种技术不单是提供方向性的指引,它还能基于推荐系统的分析结果,向消费者展示可能感兴趣的商品,进而增加购买的可能性。
- 交互式体验:使用AR导购技术,顾客可以在商场内通过手机或其他设备看到互动式的路线和商品信息,这不仅增加了购物的趣味性,也提高了效率。
- 个性化推荐:结合推荐系统生成的数据,AR导购能为每位用户提供定制化的购物路径。这些路径根据用户的购物历史、喜好等个人资料精心设计,以期最大化用户的购物满意度。
- 数据收集与分析:通过跟踪用户与AR导购互动的过程,零售商可以收集有价值的数据,比如用户对哪些商品感兴趣,他们在商店内的行走路径等。这些数据有助于优化库存管理和产品放置策略。
- 技术融合:AR导购是AI应用的一部分,它需要多个技术栈的集成和协作。有效的平台机制和技术架构对于提高不同模块间的协同效率至关重要。这包括前端、客户端、算法及渲染工程之间的合作,以确保用户体验流畅。
2需求概述
无人零售作为传统线下零售的互联网化新趋势,通过线上线下资源的整合,有效降低了人工和库存成本,同时提升了购物的便利性和效率。随着经济的快速发展及多元化尝试,无人零售得到了社会的广泛认可,并预计在未来几年将迎来发展的红利期。
目前,无人零售主要包括自动售货机、开放货架和无人便利店等形态,其中无人超市作为行业发展的必然趋势尚处于起步阶段,但已显示出其重要性和对效率提升的潜在贡献。无人超市利用机器视觉、深度学习算法等高科技手段来实现消费者的身份识别、商品的选择和自动支付,从而提供了一个无需排队等待、更加便捷的购物体验。尽管Amazon Go等先行者因技术和成本问题遇到了挑战,国内企业如阿里巴巴、深兰科技等仍在积极尝试,并取得了一定的成果。这些企业通过生物特征自主感知学习系统、卷积神经网络技术等方法,不仅提高了顾客追踪的准确性,还通过丰富的消费数据为商家提供了更深入的市场洞察,帮助商家更好地满足消费者需求,增强与消费者的联系。
然而,无人超市也面临着局限性,比如目标受众年轻化导致忽视了中老年消费群体,这需要行业内的企业针对广泛的消费者群体提出专门的服务渠道和服务策略。总之,无人零售尤其是无人超市仍需要在技术完善、用户习惯适应以及市场推广方面持续努力,以实现长期的发展潜能。针对以上问题,本项目提出无人商店推荐系统模块。
- 功能需求
根据需求设计,本项目的功能需求可以总结为三部分:客服消费流程,显示推荐和隐式推荐。
3总体结构设计
3.1对外接口设计
无人商店智能涉推荐模块涉及的对外接口主要包含社会热点数据存储器、周边活动安排数据存储和天气数据存储器。通过智能分析和处理上述的社会热点数据、周边活动安排和天气数据,无人商店可以根据顾客的需求和喜好来动态调整货架上商品的展示和存储,提高商品的管理效率和顾客的购物体验。
社会热点数据存储器:通过存储从各种来源收集的社会热点数据,包括社交媒体上的热门话题、新闻报道、热门事件等,分析这些数据了解当前社会上的热门话题和趋势,从而相应地调整货架上商品的展示。
周边活动安排数据存储:通过收集和整理附近活动的模块,例如音乐会、展览或其他社交活动,无人超市可以根据周边的活动安排来调整商品的展示和存储。例如,如果附近有一场音乐会,无人超市可以将与音乐相关的商品(如音乐CD、乐器等)放置在更容易被顾客看到的位置。
天气数据存储器:通过收集实时的天气数据,包括温度、湿度、降水量等,无人超市可以根据天气情况来调整货架上商品的展示。例如,在热天时,将冷藏饮料转动至前面和更显眼的位置;而在预报下雨时,将雨伞移到容易取到的地方。
3.2内部结构设计
3.2.1分层架构说明
分层架构在设计中可以简化系统设计,通过将系统划分为不同的层,每一层可以专注于处理特定的功能或业务逻辑,减少系统的复杂性,使得设计和开发更加模块化和有序;实现高内聚低耦合的特点,每个层内部高度内聚,即层内的组件紧密相关并共同完成特定的任务,同时层与层之间通过定义良好的接口或API进行交互。因此,本系统采用用户接口层、业务逻辑层和数据访问层三层结构。
具体内容如下:
3.2.2类图
该系统的领域类图主要包含客户消费记录、数据部门、商品信息、客服、用户、推荐系统、智能价签、AR导购、智能货架和管理层。
1.客户消费记录:记录了客户的购买历史,包括购买的商品ID、时间、金额以及客户ID。客户消费记录与数据部门有密切的关系,因为消费记录被用做数据分析和生成用户喜好模型的基础。
2.数据部门:负责收集和分析所有数据,包括消费记录、库存变动、用户反馈等。这个类是数据处理的中心节点,数据部门不仅存储数据,还负责将分析结果传递给其他系统,如推荐系统和智能价签。
3.商品信息:包含商品的详细信息,如ID、名称、价格和类别。这个类为智能价签和AR导购提供必要的商品数据,并且与数据部门交互以更新商品信息和接收销售趋势分析。
2.客服:代表客户服务部门,处理咨询和投诉,并收集客户的反馈。客服与数据部门合作,将客户互动数据用于服务改进和产品推荐系统的优化。
5.用户:描述用户的个人信息,如姓名、联系方式、购物偏好和历史购买行为。用户的信息会被用来个性化推荐系统,并与数据部门互动以更新用户的喜好模型。
6.推荐系统:根据用户的购物历史和喜好模型来推荐商品。这个类与数据部门紧密集成,使用用户数据、商品信息、管理层决策信息和外部数据来生成推荐列表,并将推荐结果通过AI导购、智能价签和智能货架的形式展现给用户。
7.智能价签:显示最新的商品价格和促销信息。智能价签需要实时从商品信息获取当前的价格数据,并可能根据数据部门的分析结果调整显示的价格。
8.AR导购:利用增强现实技术提供互动式购物体验。这需要访问商品信息来显示正确的商品数据,并根据数据部门的分析来个性化导购内容。
9.智能货架:自动管理库存,确保货架上总是有适量的商品。智能货架通过推荐系统智能翻转货架,并根据销售趋势自动调整商品的摆放。
10.在面临促销信息,以及特殊决策如商品有质量问题需要紧急下架的时候,管理层及时将信息传递给数据部门,并调整商品信息。
在这个领域类图中,数据部门充当中心枢纽的角色,不仅负责数据的收集和分析,还提供必要的信息给其他系统,如推荐系统和智能价签。商品信息是向顾客展示的关键数据来源,同时也是AR导购和智能货架操作的基础。客服则是顾客反馈进入系统的主要渠道,有助于提高服务质量和调整推荐算法。此外,用户类存储的个人信息对于个性化服务至关重要,直接影响到推荐系统的效果。
3.2.3组件图
1.管理层
- 类:
决策制定类:根据数据部门的分析结果制定管理决策。
监控控制类:监控整个系统的运行状态。
- 依赖关系:
依赖于数据部门来获取必要的信息以支持决策过程。
向数据部门发送指令以调整数据分析的重点。
2.数据部门
- 类:
数据收集类:负责从各种来源收集数据,包括社会热点、周边活动、天气等。
数据分析类:分析收集到的数据并生成报告供管理层使用。
数据存储类:负责存储收集到的数据。
- 依赖关系:
依赖于商品信息库、客户消费记录来获取相关数据。
提供给管理层、推荐系统所需的分析数据。
3.商品信息库
- 类:
商品基本信息类:存储商品的基础信息。
库存管理类:管理库存量,响应库存变化。
- 依赖关系:
提供商品信息给推荐系统用于生成推荐。
从数据部门接收销售和库存更新。
4.智能价签
- 类:
价签信息类:存储价签显示内容的信息。
价签控制类:控制价签的显示和更新。
- 依赖关系:
从推荐系统接收价格和促销信息。
显示商品价格和优惠信息给顾客。
5.推荐系统
- 类:
推荐算法类:根据客户喜好和实时数据计算推荐。
用户偏好分析类:分析用户的购物历史和喜好。
- 依赖关系:
依赖于数据部门提供的客户消费信息和商品信息库的商品信息。
将生成的推荐传递给智能货架和智能价签。
6.AR导购
- 类:
路径规划类:为顾客提供最佳的购物路径。
交互控制类:处理顾客通过AR导购的互动。
- 依赖关系:
依赖于推荐系统提供的信息来辅助顾客购物。
需要与用户设备上的AR应用程序进行交互。
7.用户
- 类:
用户资料类:存储用户个人信息和购物偏好。
用户行为跟踪类:记录用户在商店内的行为。
- 依赖关系:
用户的行为数据被数据部门收集分析。
用户接收推荐系统和AR导购提供的服务。
8.客服
- 类:
客户服务代表类:处理顾客咨询和问题。
问题处理记录类:记录问题处理的过程和结果。
- 依赖关系:
依赖于用户反馈来提供服务和解决问题。
需要与数据部门交互,以访问顾客的消费历史和行为数据。
9.智能货架
- 类:
货架旋转控制类:控制货架的旋转以展示特定商品。
商品展示管理类:确保推荐商品正确展示。
- 依赖关系:
从推荐系统接收推荐的展示商品信息。
物理上展示商品给顾客。
10.客户消费记录
- 类:
消费记录管理类:管理和存储客户的购买记录。
消费数据分析类:分析消费记录以识别趋势和模式。
- 依赖关系:
提供给数据部门以支持市场分析和推荐算法的优化。
被客服用来提供个性化服务和处理退货等问题。
这些组件共同工作,形成一个整合的系统,能够根据实时数据和管理决策自动调整商品的展示和存储,以提高客户购物效率和满意度。
3.3出错处理设计
在无人商店智能推荐模块中,以下是针对一些常见错误的处理方案:
1.数据源错误:当社会热点数据、周边活动安排数据或天气数据出现异常时,应立即触发报警通知相关人员进行检查和修复。同时,可以启用备份数据源以保证系统的正常运行。
2.数据分析错误:当数据部门在处理分析数据时出现错误,应记录详细的错误信息并进行重试。如连续出现错误达到一定次数,应通知相关人员进行排查。
3.商品信息异常:若商品信息库出现数据不一致或其他异常情况,需要及时通知管理人员进行检查和修正。同时,可以暂时隐藏出现问题的商品,避免给顾客带来困扰。
4.用户信息异常:如果发现用户信息出现异常,例如购物偏好不符合实际情况等,应及时通知客服人员与用户沟通核实,并对异常数据进行修正。
5.推荐系统异常:推荐系统在生成推荐结果时出现错误,应记录错误日志并重新计算。若多次尝试后仍无法恢复正常,应切换至备用推荐算法或通知开发人员进行排查。
6.价签显示异常:智能价签在显示价格或促销信息时出现错误,需立即进行重启或更换设备。同时,要定期对设备进行维护检查,确保其正常运行。
7.AR导购异常:AR导购在运行过程中出现故障,应提供简单的故障排除方法给顾客,并及时联系技术支持人员进行修复。
8.客户消费记录异常:对于客户消费记录出现的错误或异常数据,需要进行详细核查并进行修正。同时,加强数据校验机制以避免类似问题的发生。
9.智能货架异常:智能货架出现故障时,需立即停止使用并通知维修人员进行检修。在故障排除前,暂时使用手动方式进行商品的展示和管理。
10.客服异常:客服系统在处理顾客咨询或问题时出现异常,应尽快恢复服务并记录问题详情。对于影响服务质量的情况,需向顾客致歉并提供相应的补偿措施。
3.4其它
在无人商店智能推荐模块的设计中,除了上述的结构设计和出错处理外,本项目综合考虑安全保密、维护和用户体验等方面的设计。
安全保密设计:
1.数据加密与传输安全:对于所有敏感数据,包括用户个人信息、消费记录和商品信息等,使用强加密算法进行加密存储和传输,以防止数据泄露。
2.访问控制:系统通过使用身份验证和授权框架来实现严格的访问控制机制,确保只有授权人员能够访问特定数据和功能。
3.审计与监控:实施详细的日志记录和监控系统活动,以便在出现安全事件时能够追踪和分析问题的原因。
4.定期安全评估:定期进行安全风险评估和渗透测试,以发现潜在的安全漏洞并及时修复。
维护设计:
1.模块化与可扩展性:系统采用模块化设计,使得各个组件之间的耦合度降低,便于单独维护和升级。
2.自动化更新机制:设计自动化的系统更新机制,确保软件和数据能够及时更新至最新版本,减少人工干预的需要。
3.容错与备份:实现容错机制和定期备份,确保在硬件故障或数据丢失时能够快速恢复系统运行。
4.性能监控:实时监控系统性能指标,如响应时间、资源利用率等,以便及时发现性能瓶颈并进行优化。
用户体验设计:
1.界面友好性:设计直观易用的用户界面,确保顾客能够轻松地与智能推荐模块互动。
2.个性化服务:提供个性化的服务选项,如根据用户喜好定制推荐列表,增强用户体验。
3.多语言支持:考虑到不同国家和文化背景的用户需求,实现多语言支持。
4类的详细设计
4.1用户类
4.1.1描述
代表使用“智能推荐+导购”系统的客户,存储他们的注册信息、购物历史和个性化偏好设置,以便系统能够提供个性化的推荐和优化购物体验。
4.1.2属性
属性名 | 属性说明 |
客户ID(customerId) | 唯一标识每位用户的字符串或数字 |
用户名(username) | 用户的登录名,用于在系统中识别用户 |
密码(password) | 用户账户的安全凭证,用于验证用户身份。 |
用户性别(gender) | 表示用户性别的属性,通常包括如男、女或其他等选项,用于个性化推荐和数据分析。 |
用户消费能力(spendingPower) | 描述用户在购物时的消费水平或预算范围,这可能基于用户的购买历史或自我报告数据来确定,用于向用户推荐适合其消费能力的商品。 |
用户标签(userTags) | 一组标签,用来标记用户的特征、偏好或行为模式,例如“忠诚顾客”、“大额消费者”或“节日购物者”,这些标签有助于细分市场并定制特定的营销策略。 |
联系信息(contactInformation) | 存储用户的联系方式,包括电话号码、电子邮箱地址等,以便于系统与用户进行通信,发送订单确认、营销信息或重要通知。 |
4.1.3方法
功能描述 | 允许新用户创建一个账户并加入系统。 |
输入 | 用户的信息,可能包括用户名、密码、电子邮件地址、联系方式等。 |
输出 | 注册成功或失败的状态信息,可能还包括错误消息或确认邮件。 |
实现算法 | 验证输入信息的有效性和唯一性。 如果信息有效,创建用户账户并存储在数据库中。 发送欢迎信息或确认邮件给用户。 返回注册状态。 |
- 登录(Login)
功能描述 | 让用户访问他们的账户并使用系统提供的服务。 |
输入 | 用户名和密码。 |
输出 | 登录成功或失败的状态信息,成功时可能包括用户的会话令牌。 |
实现算法 |
|
- 选择商品(SelectProduct)
功能描述 | 用户选择感兴趣的商品进行购买或其他操作。 |
输入 | 商品标识符或列表。 |
输出 | 选定商品的详细信息,以及后续步骤的指示(例如支付流程)。 |
实现算法 |
|
- 请求客服(RequestCustomerService)
功能描述 | 用户遇到问题时请求与客服人员联系。 |
输入 | 用户ID、用户的请求描述和联系方式。 |
输出 | 请求已受理的确认信息,可能包括等待时间估计和联系方式(如在线聊天、电话回拨等)。 |
实现算法 |
|
- 退货(ReturnGoods)
功能描述 | 用户在购买商品后,如果需要退货,可以通过调用该方法来实现退货操作。 |
输入 | 用户ID、退货的商品信息,包括商品ID、数量等。 |
输出 | 退货成功或失败的状态信息,可能还包括退款金额、剩余积分等信息。 |
实现算法 |
|
让用户提供他们的需求,如寻找特定商品或请求推荐。 | |
输入 | 用户的需求描述,可能包括商品名称、类别、价格范围等。 |
输出 | 确认收到需求的信息。 |
实现算法 |
|
4.2用户消费记录类
4.2.1描述
客户消费记录类是无人商店智能推荐系统中的核心组件之一,负责详细记录每位顾客的购物行为和消费数据,以此来生成用户的产品偏好。
4.2.2属性
属性说明 | |
客户ID(customerId) | 唯一标识每位用户的字符串或数字 |
消费日期(consumptionDate) | 此属性记录了顾客进行每一次消费的具体时间。 |
消费金额(consumptionAmount) | 表示顾客在每次交易中支付的金额;浮点型。 |
购买商品的信息(purchasedProductInfo) | 详细记录了顾客所购买的商品信息,可能包括商品名称、规格、型号等。 |
购买频率(purchaseFrequency) | 表示顾客在每月内购买商品的次数;数值型 |
退货记录(returnRecord) | 记录顾客的退货历史,包括退货的次数、原因、时间等。 |
时间戳 | 记录顾客进入商店的具体时间 |
4.2.3方法
1.生成产品偏好
功能描述 | 根据用的消费记录等信息,通过相应算法生成用户的偏好信息,从而为用户提供个性化的产品推荐服务。 |
输入 | 用户的消费记录数据,包括购买的商品、数量、时间等信息。 |
输出 | 用户的偏好信息,可能包括用户常购买的商品类别、品牌偏好、价格偏好等。 |
实现算法 |
|
2.添加新的用户消费记录
方法名 | 方法说明 |
添加新的用户消费记录 | 通过输入用户的消费时间和金额等信息来将新的客户消费记录添加到数据库中进行存储。 |
4.3推荐系统类
4.3.1描述
推荐系统类主要负责根据顾客的行为和偏好提供个性化的商品推荐、最优路径规划,并据此来进行智能价签、智能货架动态调整,进而给用户提供最便捷的购物体验。
4.3.2属性
属性名 | 属性说明 |
用户标识符(UserID) | 一个唯一标识用户的ID,用于追踪和识别不同的用户 |
用户行为数据(UserBehaviorData) | 记录用户在商店内的行为,如浏览、购买历史等。 |
实时数据源 | 商店购物数据,包括库存、价格等,供推荐系统使用 |
推荐算法(RecommendationList) | 根据用户行为和偏好,为用户推荐商品的特定算法 |
用户喜好模型 | 构建和维护用户的喜好模型,用于提高推荐准确性。 |
4.3.3方法
- 生成推荐方案
根据推荐算法和用户喜好模型生成具体的购物推荐。 | |
输入 | 用户ID、当前时间、特价商品信息等。 |
输出 | 个性化的购物推荐列表。 |
实现算法 | 结合用户喜好和实时数据,通过推荐算法产生推荐。 |
- 生成路径规划
功能描述 | 为用户规划在商店内的购物路径以提高购物效率。 |
输入 | 用户位置、推荐商品位置、商店布局等。 |
输出 | 优化的购物路径图或指示。 |
实现算法 | 用推荐算法、图搜索算法如Dijkstra或A*找到最优路径。 |
- 生成智能价签显示信息
功能描述 | 动态生成智能货架上的价签信息。 |
输入 | 商品ID、促销信息、实时价格等。 |
输出 | 电子价签的显示内容。 |
实现算法 | 根据实时数据源更新价签显示信息。 |
- 生成智能货架调整信息
功能描述 | 分析销售数据和库存情况,智能调整货架商品摆放。 |
输入 | 销售数据、库存水平、商店布局等。 |
输出 | 货架调整建议或自动调整指令。 |
实现算法 | 应用数据分析和机器学习预测需求,制定调整策略。 |
- 收集实时数据
功能描述 | 持续收集商店的实时数据以供推荐系统使用。 |
输入 | 无(自动从数据源采集)。 |
输出 | 更新的数据存储或数据流。 |
实现算法 | 定期轮询API或数据库,捕获数据变化。 |
4.4AR导购类
4.4.1描述
AR导购类是一种利用增强现实(AR)技术为用户提供商品信息和导航服务的系统。它通过结合虚拟图像和现实世界,为用户提供了一种全新的购物体验。
4.4.2属性
属性名 | 属性说明 |
导航接口(navigationInterface) | 提供与外部导航系统或硬件设备的连接,用于接收位置数据和发送导航指令。 |
AR展示引擎(ARdisplayEngine) | 负责渲染AR图像和交互元素的软件组件。 |
4.4.3方法
- 实景导览
功能描述 | 利用增强现实技术为用户提供商店内部导航,展示商品的实际位置和信息。 |
输入 | 用户所在位置、用户感兴趣的商品或区域。 |
输出 | 通过设备屏幕展示的商店实景导航视图。 |
实现算法 | 使用AR标记和传感器数据融合,生成与物理空间对应的虚拟图像层。 |
- AR路径规划
功能描述 | 创建从用户位置到感兴趣商品的最优路径,并在AR环境中显示。 |
输入 | 用户当前位置、目标商品位置、商店布局信息。 |
输出 | 优化后的购物路径。 |
实现算法 |
- 实时互动
允许用户通过AR界面与导购进行互动/语音互动,如查看商品详细信息、模拟产品使用等。 | |
输入 | 用户选择的商品、用户交互指令。 |
输出 | 商品详细信息展示、互动反馈。 |
实现算法 | 根据用户手势或点击事件触发相应的信息展示和互动反馈。 |
- 系统维护与优化
功能描述 | 定期更新维护AR导购系统,修复问题,提升性能和用户体验。 |
输入 | 系统性能日志、用户反馈、更新包等 |
输出 | 更新后的系统版本、性能改进措施等 |
实现算法 | 定期执行系统诊断和性能测试,根据测试结果进行系统升级和资源分配调整。 |
- 模型生成与管理
创建和管理商品的3D模型,确保AR导购中模型质量和一致性 | |
输入 | 商品数据库、3D扫描数据等。 |
输出 | 优化后的3D模型、模型管理方案等。 |
实现算法 | 使用3D建模软件和工具,如Blender或Maya,以及3D打印技术来创建和管理物理商品的精确数字副本。 |
4.5智能价签类
4.5.1描述
智能价签类在无人商店智能导购推荐系统中提供商品信息的实时动态展示,它可以实现价签信息的显示和推荐商品的高亮,同时确保商品价格的自动更新,从而为顾客提供一个互动式和动态的购物体验。
4.5.2属性
属性说明 | |
商品ID | 唯一标识一个商品的编号。 |
商品名称 | 该商品的具体名称信息 |
商品价格 | 商品的当前售价。 |
优惠信息 | 关于该商品的任何优惠、折扣或促销活动的信息。 |
4.5.3方法
- 显示价签信息
功能描述 | 利用增强现实技术为用户提供商店内部导航,展示商品的实际位置和信息。 |
输入 | 无(数据从系统数据库中获取)。 |
输出 | 显示屏上商品价签的视觉展示。 |
实现算法 | 通过前端展示层调用后端API获取商品数据,然后使用图形用户界面(GUI)组件渲染价签信息。 |
- 高光推荐商品
功能描述 | 对于推荐商品,改变其在电子价签上的显示方式,如使用高亮或特殊颜色框出商品名或价签,以吸引顾客注意。 |
输入 | 推荐商品列表。 |
输出 | 带有高光或其他标记的推荐商品价签展示。 |
实现算法 | 根据推荐算法给出的推荐商品列表,修改对应价签的样式属性,例如增加边框或改变背景色。 |
- 自动更新商品价格
当商品价格发生变化时,系统自动更新电子价签上的价格信息,确保顾客看到的价格始终是最新的。 | |
输入 | 商品ID、新的商品价格信息。 |
输出 | 更新后的商品价签显示。 |
实现算法 | 监听后台提供的价格更新事件或定期轮询最新价格数据,并刷新前端展示。 |
4.6智能货架类
4.6.1描述
属性名 | 属性说明 |
商品信息 | 这可能包括商品ID、名称、价格、库存数量等。这些信息可以通过电子标签来展示 |
顾客行为数据 | 根据顾客的购物习惯和行为数据,如购物频率、停留时间等信息,生成个性化的商品推荐和优化货架的动态调整策略。 |
环境传感数据 | 根据实时天气数据,包括温度、湿度、降水量等,并结合历史销售数据相应调整货架上商品的展示。 |
故障和误操作报警装置 | 确保能及时发现并处理潜在的问题,保证系统的稳定运行。 |
4.6.3方法
1.动态调整展示(dynamicAdjustDisplay)
根据实时天气数据和社会事件信息,动态调整货架上商品的展示。 | |
输入 | 实时天气数据(温度、湿度、降水量等)、社会事件信息、周边活动安排、历史销售数据。 |
输出 | 优化后的商品展示布局。 |
实现算法 | 收集并整合输入数据,根据预设的规则(如在热天时将冷藏饮料转动至前面),生成优化后的商品展示布局,并将指令发送给货架控制系统进行实际调整。 |
2.智能推荐(smartRecommendation)
基于顾客购物习惯和商店内部流量分布,生成个性化的商品推荐和货架排布。 | |
输入 | 顾客购物习惯数据、商店内部流量分布数据、商品信息。 |
输出 | 个性化的货架排布方案。 |
实现算法 | 分析输入数据,识别热门商品和顾客喜好,根据预设的推荐算法(如协同过滤、关联规则挖掘等),生成个性化的商品推荐和货架排布方案。 |
3.实时监控(realTimeMonitoring)
功能描述 | 实时监控货架上商品的存取状态和环境变化。 |
输入 | 货架传感器数据(如物品存取感应器、环境传感器等)。 |
输出 | 商品存取状态和环境变化的监控结果。 |
实现算法 | 通过货架上的传感器实时采集数据,对数据进行分析处理,提取商品存取状态和环境变化信息,并将结果反馈给系统进行进一步处理。 |
4.7商品类
4.2.1描述
表示商店内可供购买的商品,包含商品的基本信息如ID、名称、价格和库存数量,以及与其他商品的关系数据,用于推荐算法和库存管理。
4.2.2属性
属性名 | 属性说明 |
商品ID(productId) | 唯一标识一件商品的字符串或数字 |
商品名称(name) | 商品的名称,用于在系统中显示和搜索。 |
商品价格(price) | 商品的售价,可能包括货币符号和小数点。 |
库存数量(stockQuantity) | 表示当前可供购买的商品数量。 |
商品类别(category) | 商品所属的分类,用于组织和筛选商品。 |
5用例实现的详细设计
5.1.用户用例
5.1.1进入商店用例
1.功能描述
用户进入商店时,通过监测系统进行身份识别。若为新用户,则需要进行用户注册并登录,若为老用户,则成功进入商店。
2.参与类
数据系统类和无人商店类
3.交互设计(顺序图)
5.1.2获取推荐方案用例(显示推荐)
1.功能描述
用户可以通过移动应用或智能设备来进行个性化推荐。若启用显示推荐,用户可输入需求,系统利用历史数据和环境信息生成推荐方案;
2.参与类
数据系统类、推荐系统类
3.交互设计
5.1.3获取推荐方案用例(隐式推荐)
1. 功能说明
当为隐式推荐时,系统利用外部信息和推荐模型进行智能推荐。AR导购和智能货架互动增强购物体验。
2.参与类
数据系统类、推荐系统类、AR导购类、智能货架类
3.交互设计
5.1.4 购买商品用例
1.功能说明
用户根据推荐系统推荐的商品方案进行选购商品、并完成支付。如果对商品选购存在疑问,可以请求虚拟客服甚至线下客服来解决问题。
2. 参与类
商品类、客服类、数据系统类。
3.交互设计
5.2推荐系统用例
5.2.1生成推荐方案及路径规划
1.功能说明
该功能旨在根据用户的历史行为、偏好和需求,以及其他外部信息,生成个性化的推荐方案,数据部门将分析用户的行为数据、兴趣标签等信息,更新推荐系统,并利用推荐算法为用户生成推荐内容。
2.参与类
用户类、数据系统类、推荐系统、AR导购
3.交互设计
5.2.2生成智能价签调整信息及智能货架调整信息
1.功能说明
该功能旨在根据用户的历史行为、偏好和需求,以及其他外部信息,生成个性化的推荐方案,数据部门将分析用户的行为数据、兴趣标签等信息,更新推荐系统,并利用推荐算法生成智能价签调整信息及智能货架调整信息。
2.参与类
用户类、数据系统类、推荐系统类、智能货架类、智能价签类。
3.交互设计
1.功能说明
该功能旨在根据管理层的决策变动、用户的历史行为、偏好和需求,商品信息,以及其他外部信息,整合信息源,更新推荐系统,为用户提供更好的体验。
2.参与类
管理层类、客户消费记录类、外部信息类、商品信息类、数据系统类、推荐系统类。
3.交互设计
5.4 AR导购用例
5.4.1 AR路径导览
1.功能说明
用户启用AR导购后,系统通过手机摄像头扫描环境并叠加虚拟商品标签和导航信息。用户可看到商店内商品的精确位置和行进路线,获得直观的导航体验,直接引导至所需商品处,提升购物效率和体验。
2.参与类
用户类、数据系统类
3.交互设计
5.4.2 实时互动
1.功能说明
允许用户通过AR界面与导购进行互动/语音互动,如查看商品详细信息、模拟产品使用等。同时AR导购定期更新维护AR导购系统,修复问题,提升性能和用户体验。
2.参与类
用户类、数据系统类、商品类
3.交互设计
6数据库设计
6.1 E-R图
6.2逻辑结构设计——范式分析
第一范式(1NF):要求所有字段值都是原子的,即每个字段都不可再分。如果一个字段可以分解为多个更小的字段,则该字段就不是原子的。
第二范式(2NF):在满足第一范式的基础上,要求表中的所有非主键列都完全依赖于主键,而不是部分依赖。换句话说,表中不能有只依赖于部分主键的非主属性(适用于包含复合主键的表)。
第三范式(3NF):数据库规范化的一个标准,它要求一个表的所有字段都只能依赖于主键,不能存在非主键字段之间的依赖关系。这样可以减少数据冗余,提高数据的完整性和一致性。
(一)满足第一范式
根据该系统数据库的ER图和表结构设计,每个表中每个字段都是原子的,没有字段可以进一步分解,因此每个表都满足第一范式。
(二)满足第二范式
1.客户表:
主键:客户ID
所有非主属性(客户姓名、客户性别、联系方式、客户标签、客户消费能力)都完全依赖于主键。
结论:满足第二范式。
2.客户消费记录表:
主键:客户ID、消费日期
所有非主属性(消费金额、购买次数、购买的商品ID)都完全依赖于这复合主键。
结论:满足第二范式。
3.线下客服表:
主键:客户ID
所有非主属性(姓名、工作时间、联系方式、技能水平)都完全依赖于主键。
结论:满足第二范式。
4.商品表:
主键:商品ID
所有非主属性(商品名称、商品价格、商品类别、库存数量)都完全依赖于主键。
结论:满足第二范式。
5.智能价签表:
主键:商品ID
非主属性:优惠信息;所有非主属性都完全依赖于主键。
结论:满足第二范式。
6.推荐方案:
主键:客户ID、商品ID
非主属性:推荐概率
所有非主属性都完全依赖于这个复合主键。
结论:满足第二范式。
7.推荐系统:
主键:客户ID、商品ID
没有非主属性。
结论:满足第二范式。
8.外部信息表
主键:时间戳
非主属性:湿度、温度、降雨率、附近活动、社会热点等
所有非主属性都完全依赖于时间戳
结论:满足第二范式。
(三)满足第三范式
1.客户表:
主键:客户ID
非主属性:客户姓名、客户性别、联系方式、客户标签、客户消费能力
不存在非主属性之间的依赖关系。
所有非主属性都直接依赖于主键。
结论:满足第三范式。
2.客户消费记录表:
主键:客户ID、消费日期
非主属性:消费金额、购买次数、购买的商品ID
不存在非主属性之间的依赖关系。
所有非主属性都直接依赖于主键。
结论:满足第三范式。
3.线下客服表:
主键:客户ID
非主属性:姓名、工作时间、联系方式、技能水平
不存在非主属性之间的依赖关系。
所有非主属性都直接依赖于主键。
结论:满足第三范式。
4.商品表:
主键:商品ID
非主属性:商品名称、商品价格、商品类别、库存数量
不存在非主属性之间的依赖关系。所有非主属性都直接依赖于主键。
结论:满足第三范式。
5.智能价签:
主键:商品ID
非主属性:优惠信息
不存在非主属性之间的依赖关系;所有非主属性都直接依赖于主键。
结论:满足第三范式。
6.推荐方案:
主键:客户ID、商品ID
非主属性:推荐概率
不存在非主属性之间的依赖关系;所有非主属性都直接依赖于主键。
结论:满足第三范式。
7.推荐系统:
主键:客户ID、商品ID
没有非主属性。
结论:满足第三范式。
8.外部信息:
非主属性:湿度、温度、降雨率、附近活动、社会热点等
不存在非主属性之间的依赖关系。
结论:满足第三范式。
6.3表结构
客户表 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
客户ID | char(11) | primary key | not null | |
客户姓名 | char(10) | null | ||
客户性别 | char(10) | Null | check(客户性别 in('男','女','未知',’其他’) | |
联系方式 | char(100) | Null | ||
客户标签 | char(100) | Null | ||
客户消费能力 | char(100) | null |
客户消费记录表 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
客户ID | char(11) | primary key | not null | |
消费日期 | char(10) | not null | ||
时间戳 | date | foreign key | not null | |
消费金额 | Float(10) | Null | ||
购买次数 | int(10) | Null | ||
购买的商品ID | char(11) | Null |
线下客服表 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
客户ID | char(11) | primary key | not null | |
姓名 | char(100) | Null | ||
工作时间 | char(100) | Null | ||
联系方式 | char(100) | Null | ||
技能水平 | char(100) | Null | check(技能水平in('熟练','一般','较不熟练',) |
商品表 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
商品ID | char(11) | primary key | not null | |
商品名称 | char(100) | Null | ||
商品价格 | Float(100) | Null | ||
商品类别 | char(100) | Null | ||
库存数量 | Float(100) | Null |
智能价签 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
商品ID | char(11) | primary key | not null | |
优惠信息 | char(100) | Null |
推荐方案 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
客户ID | char(11) | primary key | not null | |
商品ID | char(100) | Null | ||
推荐概率 | Char(100) | Null |
推荐系统 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
客户ID | char(11) | primary key | not null | |
商品ID | char(100) | primary key | not null |
外部信息 | ||||
字段名 | 类型 | 是否为主键 | 允许空 | 其他(含约束、默认值) |
时间戳 | date | primary key | not null | |
湿度 | char(100) | Null | ||
温度 | char(100) | Null | ||
降雨率 | char(100) | Null | ||
附近活动 | char(255) | Null | ||
社会热点 | char(255) | Null |
7 程序设计界面图
7.1登录界面
7.2首页界面
7.3用户浏览
7.4个人中心
7.5个人设置