Alpha阶段发布声明-BUAAMapForum
一、发布方式
目前,BUAAMapForum使用Apache2在服务器上进行部署,并且运行在buaamapforum.cn
域名上。
由于时间限制,我们只准备了文本推广,并没有准备其他的推广方式。不过在未来,我们的推广方式会不断的扩大。
二、Alpha版本新功能和特性
注册
用户可以使用邮箱作为唯一标识进行注册。点击【发送验证码】按钮后,会发送验证码到指定邮箱,用户填写验证码以及全部相关信息后方可注册。
登陆
用户可以使用邮箱和密码进行登录。在登录时,会进行人机身份验证。
地图界面
本界面的使用者包括游客、普通用户和管理员用户。我们将按照用户类别对功能进行介绍。
-
游客
游客是指未登录的用户。
在地图主界面,游客可以看到相关地点的钉子,并且点击钉子查看钉子的详情。目前,每一个钉子开放了信息卡片和图片卡片,在下一阶段会支持“服务”卡片和“论坛卡片”。
钉子有不同的种类,包括餐饮、园地、教学等,可以在右上角选择要查看的钉子种类。
-
普通用户
普通用户指的是注册后登录的用户。普通用户可以使用游客能够使用的所有功能,并且可以插入属于自己的钉子——【私人钉子】,维护自己钉子的信息。例如,下面和20公寓有关的钉子即为私人钉子。私人钉子只有自己可见。
用户可以通过右键地图界面创建钉子,填写相关信息即可成功创建。填写信息的界面如下:
用户可以修改私人钉子的信息,也可以在私人钉子中上传或删除图片。右击图片可以选择删除图片。私人钉子只有用户自己可见,其他用户不可见。普通用户只能查看自己的私人钉子和【公共钉子】,不能查看其他用户的私人钉子。另外,普通用户只能修改自己的私人钉子的信息。
尝试删除公共钉子的图片,会删除失败。
除此之外,用户还可以在右上角导航栏进入Info查看自己的个人信息,还可以使用修改个人信息、修改密码、重新上传头像等功能。
【编辑按钮】可以修改个人信息
【设置按钮】提供了修改密码、登出、“联系我们”三个功能
【头像】点击即可重新上传
-
管理员
管理员是指有管理员权限的用户,目前直接在后端进行添加和标识。管理员用户可以使用游客的所有功能。管理员创建的功能为公共钉子,这类钉子全部的用户可见。另外,管理员可以修改公共钉子的信息,但不能修改私人用户的钉子信息。
如下,图书馆是一个公共钉子,管理员可以修改该钉子的信息,并且可以上传和删除图片。
在Beta阶段,会赋予管理员更复杂的功能。
三、系统已知的问题和限制
- 界面的美观程度有待提升。Info界面的排版和丰富程度有待提升,网站的颜色搭配也有待提升,导航栏样式有待改进
- 前端界面仍旧无法适应移动端
- 钉子的“Service”卡片仍旧无法使用
- 插入的钉子数量仍旧不够多,信息还可以继续补充,比如加入一些跳转链接等。钉子的样式也有待改进,包括钉子本身和钉子的文本框
- 目前使用的搜索算法比较朴素,可以使用更加强大的搜索
- 登出、修改密码等按钮的位置有待改进
- 管理员功能需要一个流程化的设计方案。目前管理员的功能过于零散,需要在下一阶段进行更加充分的设计,并且单独开启一个界面
- 后端的CICD尚未实现全流程自动化
- 高德地图的API过于老旧,地图有些地方显示不齐。但这个问可能比较难处理,如要改动影响会非常大。
- 部分品牌的邮箱有概率丢失验证邮件
- 安全性测试还不全面(只考虑XXS和SQL注入)。原本想进行更全面的测试,但是遇到了技术上的问题无法在Alpha阶段完成
四、运行环境要求
1.服务端
SpringBoot + MyBatis + MySQL + Spring Security
具体环境版本:
- jdk17
- Maven3.9.1
- SpringBoot3.0.5
2.客户端
-
浏览器版本支持。
浏览器内核 支持版本 Blink 100及以上 WebKit 11及以上 Gecko 80及以上 Trident 不支持 浏览器 内核 Chrome Blink Microsoft Edge Blink IE Trident 360、QQ 等国内浏览器 Trident[兼容模式] / Blink[极速模式] Firefox Gecko Safari WebKit -
注册邮箱支持
注册的时候推荐使用商业邮箱,包括QQ邮箱、Outlook邮箱等,教育网邮箱有概率丢失验证邮件,验证码的有效时间为5分钟。
五、Alpha阶段验收
此部分根据功能规格说明书进行验收,并给出任务的完成程度。
Alpha阶段完成的任务:
-
用户登录和认证系统
任务内容 任务类别 完成情况 支持用户使用用户名和密码进行登录 基本任务 完成 能够验证用户输入的凭据是否正确,并在验证失败时显示错误消息 基本任务 完成 管理员权限登录 基本任务 完成 邮箱注册 额外任务 完成 滑块人机身份验证 额外任务 完成 -
地图显示系统
任务内容 任务类别 完成情况 显示原始地图图像、以及进行缩放和拖动。 基本任务 完成 地图上标出所有地点 基本任务 部分完成,地点比较多,需要持续更新 能够根据用户选择的地点,展开包含更多详细信息的信息框 基本任务 完成,可以持续更新内容 区分私人钉子和公共钉子 额外任务 完成,但区别度还有待提高;同时可以考虑限制私人钉子的数量 实现基本的搜索框 Beta阶段任务 完成,不过可以进行美化,并采用更大强大的搜索算法 分类别显示 额外任务 完成 -
数据库存储系统
任务内容 任务类别 完成情况 设计数据模型,构建数据库表 基本任务 完成 设计并编写数据库接口,接口返回可读性强的信息 基本任务 完成 支持高并发(压力测试) 基本任务 完成 -
管理员系统:此子系统实现以管理员权限登录的附加功能。
任务内容 任务类别 完成情况 能够修改、添加新地点 基本任务 完成 能够修改地点的详细信息 基本任务 完成 -
个人信息界面
任务内容 任务类别 完成情况 提供显示、修改个人信息的功能 Beta阶段任务 完成,但是美观程度有待提升