高考祈福小程序需求文档
版本号 | 作者 | 发布日期 | 版本说明 |
---|---|---|---|
v1.0 |
何辉 <runphp@qq.com> |
2025-05-26 |
定义了高考祈福小程序的整体需求,包含核心功能和非功能需求。 |
一、项目概述
本项目旨在开发一款高考祈福小程序,为考生、家长及亲朋好友提供一个线上祈福平台。用户可以在小程序上进行电子祈福灯、许愿墙发布、名校分数线查询等操作,还能生成祈福海报进行社交传播,同时查看最暖心祝福排行榜,为高考考生送上美好祝愿,营造积极向上的高考氛围。
二、系统架构
2.1 系统组成
-
小程序客户端:用户使用小程序进行电子祈福灯点燃、许愿墙内容发布、名校分数线查询、祈福海报生成、查看排行榜等操作,可输入和查看考生的姓名、学校名和目标大学信息。
-
服务端软件:处理业务逻辑,管理祝福信息、用户信息、考生信息、许愿墙内容、名校分数线数据等,计算并存储排名信息,生成祈福海报,与小程序客户端进行通信。
-
数据库:存储用户信息、祝福信息、分享记录、考生姓名、学校名、目标大学、排名信息、许愿墙内容、名校分数线数据等。
2.2 网络架构
[小程序客户端] ↔ [服务端软件] ↔ [数据库]
三、功能需求
3.1 小程序客户端
3.1.1 用户认证
-
支持微信授权登录,获取用户基本信息,如昵称、头像等。
3.1.2 电子祈福灯
-
提供虚拟电子祈福灯界面,界面上显示未点燃的蜡烛。
-
用户点击蜡烛可进行点燃操作,每日限制点燃 3 次。
-
显示用户当日剩余可点燃次数。
-
点燃后的蜡烛以发光状态显示,可在界面上持续展示。
3.1.3 许愿墙
-
提供许愿内容输入框,用户可输入许愿内容,字数限制在 300 字以内。
-
支持上传一张许愿图片(可选),图片格式支持 JPEG、PNG,大小不超过 2MB。
-
用户点击“发布”按钮后,小程序将许愿内容和图片发送给服务端。
-
发布的许愿内容需经过服务端敏感词审核,审核通过后在许愿墙展示,未通过则提示用户修改内容。
-
许愿墙页面展示所有审核通过的许愿内容,按时间倒序排列,支持分页加载,每次加载 10 条。
3.1.4 名校锦囊
-
提供 TOP20 高校列表,列表按高校排名展示。
-
用户点击某高校名称,可查看该高校历年高考分数线信息,包括不同省份、不同年份的录取分数线。
-
支持按省份、年份筛选分数线信息。
3.1.5 祈福海报生成
-
在祝福信息详情页提供“生成海报”按钮。
-
用户点击按钮后,小程序调用服务端接口生成祈福海报,海报自动嵌入考生姓名、祝福语、用户昵称和头像。
-
生成海报后,用户可保存到本地相册或直接分享到微信好友、朋友圈。
3.1.6 个人中心
-
显示用户的基本信息,如昵称、头像。
-
展示用户发布的祝福列表和许愿墙内容,支持删除自己发布的信息。
-
显示用户的点赞记录和评论记录。
-
显示用户当日电子祈福灯剩余点燃次数。
3.1.7 排行榜
-
显示“最暖心祝福”排行榜,按祝福信息的点赞数降序排列。
-
排行榜展示前 50 条祝福信息,每条信息显示用户昵称、头像、祝福语、点赞数和排名。
-
支持刷新排行榜数据。
3.2 服务端软件
3.2.1 用户管理
-
存储用户基本信息,如微信 OpenID、昵称、头像等。
-
管理用户的登录状态。
-
记录用户每日电子祈福灯点燃次数,每日 0 点重置次数。
3.2.2 祝福管理
-
存储、查询、更新和删除祝福信息及关联的考生信息(姓名、学校名、目标大学)。
-
处理祝福信息的点赞、评论操作。
-
统计每条祝福的点赞数和评论数。
3.2.3 分享管理
-
记录用户的分享信息,包括分享时间、分享对象(微信好友或朋友圈)、被分享的祝福信息 ID。
3.2.4 排名管理
-
定期(如每小时)计算并更新“最暖心祝福”排行榜,按点赞数降序排列。
-
提供接口供小程序客户端获取排行榜信息。
3.2.5 许愿墙管理
-
接收用户发布的许愿内容和图片,进行敏感词审核。
-
存储审核通过的许愿内容和图片,提供接口供小程序客户端获取许愿墙信息。
3.2.6 名校锦囊管理
-
维护 TOP20 高校历年高考分数线数据。
-
提供接口供小程序客户端查询高校分数线信息,支持按省份、年份筛选。
3.2.7 海报生成管理
-
接收小程序端生成海报的请求,根据祝福信息生成包含考生姓名、祝福语、用户昵称和头像的祈福海报。
-
返回生成海报的图片链接给小程序客户端。
四、非功能需求
4.1 性能
-
响应时间:小程序页面加载和服务端请求响应在网络良好时不超 3 秒。对于排行榜、名校锦囊查询和海报生成操作,响应时间在网络良好时不超 5 秒。
-
并发处理:服务端单台机器支持 200 并发用户,保障系统稳定。
4.2 安全
-
数据传输:使用 HTTPS 加密小程序与服务端间的数据。
-
信息存储:加密存储用户的敏感信息和考生信息,遵守隐私法规。
-
访问控制:对服务端接口进行权限验证,防止非法访问。
-
防护措施:具备防 SQL 注入、XSS 攻击能力,加强敏感词审核机制。
4.3 可用性
-
运行时长:系统 7×24 小时可用,年停机不超 8 小时。
-
故障恢复:30 分钟内恢复故障,定期备份重要数据,包括排名信息、许愿墙内容、名校分数线数据等。
4.4 可维护性
-
代码规范:遵循统一代码规范,保证可读性。
-
日志记录:各模块记录操作和错误日志,便于排查问题,特别是敏感词审核、排名计算、海报生成相关日志。
-
版本管理:用 Git 进行代码管理,支持更新和回滚。
4.5 兼容性
-
兼容主流 iOS、Android 系统及微信客户端。
五、数据流说明
5.1 电子祈福灯流程
-
用户操作:用户在小程序端点击虚拟蜡烛进行点燃操作。
-
请求发送:小程序向服务端发送点燃请求,携带用户信息。
-
次数验证:服务端验证用户当日点燃次数是否超过 3 次,若未超过则更新点燃次数并返回成功结果,否则返回失败提示。
-
界面更新:小程序根据服务端返回结果更新蜡烛状态和剩余点燃次数显示。
5.2 许愿墙发布流程
-
用户输入:用户在小程序端输入许愿内容,上传许愿图片(可选)。
-
信息提交:用户点击“发布”按钮,小程序将许愿内容和图片发送给服务端。
-
敏感词审核:服务端对许愿内容进行敏感词审核。
-
数据存储:审核通过后,服务端将许愿内容和图片存储到数据库;未通过则返回提示信息给小程序。
-
结果反馈:小程序根据服务端返回结果提示用户发布成功或需修改内容。
5.3 名校锦囊查询流程
-
用户选择:用户在小程序端选择高校名称、省份和年份。
-
请求发送:小程序向服务端发送查询请求,携带高校名称、省份和年份信息。
-
数据查询:服务端从数据库中查询对应高校、省份和年份的分数线信息。
-
数据返回:服务端将查询结果返回给小程序。
-
页面展示:小程序展示查询到的分数线信息。
5.4 祈福海报生成流程
-
用户操作:用户在祝福信息详情页点击“生成海报”按钮。
-
请求发送:小程序向服务端发送生成海报请求,携带祝福信息 ID。
-
海报生成:服务端根据祝福信息生成包含考生姓名、祝福语、用户昵称和头像的祈福海报。
-
结果返回:服务端返回生成海报的图片链接给小程序。
-
页面处理:小程序显示生成的海报,用户可选择保存或分享。
5.5 排行榜加载流程
-
请求发送:用户打开排行榜页面,小程序向服务端发送获取排行榜信息的请求。
-
数据查询:服务端从数据库或缓存中获取“最暖心祝福”排行榜信息。
-
数据返回:服务端将排行榜信息返回给小程序。
-
页面展示:小程序展示排行榜信息。
六、项目进度计划
6.1 需求分析阶段
2025-05-26 至 2025-06-02:完成需求调研和文档编写。
6.2 设计阶段
[具体时间区间 2]:完成系统架构设计、数据库设计,考虑考生姓名、学校名、目标大学信息存储,以及电子祈福灯次数记录、许愿墙内容、名校分数线数据、排名信息存储。
6.3 开发阶段
[具体时间区间 3]:完成小程序客户端、服务端软件的开发,实现考生信息相关功能、电子祈福灯、许愿墙、名校锦囊、祈福海报生成和排行榜功能。
6.4 测试阶段
[具体时间区间 4]:进行单元测试、集成测试和系统测试,重点测试考生信息功能、电子祈福灯次数限制、许愿墙敏感词审核、名校锦囊查询、祈福海报生成和排行榜功能。
6.5 部署上线阶段
[具体时间区间 5]:完成系统部署和上线运行。
七、验收标准
7.1 功能验收
-
所有功能模块按照需求文档实现,无明显功能缺陷,电子祈福灯每日限制次数准确,许愿墙敏感词审核有效,名校锦囊查询结果正确,祈福海报生成内容准确,排行榜数据更新及时。
7.2 性能验收
-
各项性能指标满足非功能需求中的性能要求,排行榜、名校锦囊查询和海报生成操作响应时间符合要求。
7.3 安全验收
-
系统的安全措施符合非功能需求中的安全性要求,考生信息、用户信息和许愿墙内容安全存储和传输,敏感词审核机制有效。
八、交付物
-
小程序客户端源码
-
服务端软件源码
-
数据库设计文档,包含考生信息表结构、电子祈福灯记录表结构、许愿墙内容表结构、名校分数线表结构和排名信息表结构
-
系统部署文档
-
用户手册,说明电子祈福灯、许愿墙、名校锦囊、祈福海报生成和排行榜功能使用方法
-
开发文档
九、术语表
术语 | 定义 |
---|---|
OpenID |
一种在不同网站或应用中实现用户单点登录的身份识别技术。在本系统里,微信 OpenID 是微信为每个用户分配的唯一标识,用于区分不同用户,保障用户信息的准确存储和管理。 |
微信授权登录 |
用户在小程序中使用微信账号登录时,将自己的微信账号信息授权给小程序,小程序通过微信开放平台获取用户的基本信息,如昵称、头像等,从而完成登录过程。 |
HTTPS |
超文本传输安全协议,是 HTTP 协议的安全版本。通过 SSL/TLS 加密传输数据,保证数据在传输过程中的安全性和完整性,防止数据被窃取或篡改。 |
SQL 注入 |
一种常见的网络攻击手段,攻击者通过在输入字段中插入恶意的 SQL 代码,欺骗数据库执行恶意操作,从而获取、修改或删除数据库中的数据。 |
XSS 攻击 |
跨站脚本攻击,攻击者通过在网页中注入恶意脚本代码,当用户访问该网页时,脚本代码会在用户浏览器中执行,从而窃取用户的敏感信息或进行其他恶意操作。 |