192
社区成员




这个作业属于哪个课程 | 广工2023软件工程课程 |
---|---|
这个作业要求在哪里 | 团队作业3——需求改进&系统设计 |
这个作业的目标 | 1、需求&原型改进 2、系统设计 3、Alpha任务分配计划 4、测试计划 |
参考文献 | 架构设计 Scrum/Sprint 测试的计划和执行 如何编写测试计划 |
问题1:如何宣传?
修改1:在各平台向博主推荐与合作,靠内容创作者快速提供知名度,扩散使用,吸引更多普通用户。
问题2:优势在哪里,如何与其他软件竞争?
修改2:对其他软件如“两步路”等做调查,取长补短;另外靠“好用的路线规划”、“方便的社交”、“精美的画面”吸引并留住用户。
调查手段:
使用小程序之前:
我在出行计划时需要通过各种互联网平台搜索、查阅攻略、美食、景点等信息,再将这些信息整理成一个行程表或笔记本,随后在旅途中不断地确认地点和路线。这个过程极其繁琐,并且容易出现遗漏或疏忽,导致旅途的不顺利。
使用小程序之后:
我可以在地图上直接标记和保存感兴趣的地点,并记录评分、评论以及相关图片和链接。通过小程序的路线规划功能,我可以快速创建自己的旅行路线,并利用导航功能更加方便地找到目的地。此外,我还可以在社区内与其他用户分享自己的地图和攻略,获取有用的旅游建议和帮助。
也就是说,在使用我们的小程序后,用户无需进行艰难的搜索和组织,而可以快速轻松地创建自己的旅行计划并分享和获取其他用户的攻略,更好地享受旅途带来的乐趣。
使用场景:旅游规划路线,探店体验分享,游玩、美食地点推荐
用户痛点:能否自动给我生成路线,不用自己动手规划
粗略思路:使用某些算法,结合各类权重,进行自动路线规划
上周的《需求规格说明书》初稿不足:
改进发布在需求文档与博客中:https://j08splv7vhl.feishu.cn/docx/RQwedr7eMof53uxClQkc7yZJn7f%EF%BC%8Chttps://bbs.csdn.net/topics/614531605
小明本周末在微信朋友圈中看到了一篇他感兴趣的旅游攻略。攻略介绍了这个城市的美食、景点和购物,还包含很多有用的小贴士和建议。小明决定去这个城市旅行,但他发现在攻略里标注的地点太多了,他不知道应该如何计划自己的行程路线。
于是,小明从应用商店下载了我们设计的小程序。他打开小程序后发现可以在地图上标记、保存、评分、备注地点,并且创建自己的路线规划。他立即开始利用程序,在地图上选择了几个有趣的景点,并且附带评论、图片、评分以及种草链接。
随后,小明使用程序的“创建路线”功能,根据这些景点创建了自己的路线规划。他通过小程序中的导航功能,快速找到了自己记录的景点,最终完成了整个旅行过程。除此之外,小明还在社区中发现了其他用户分享的关于这个城市的地图和攻略,对他的旅行计划也提供了很多宝贵建议。
借助我们设计的小程序,小明能够更轻松地计划自己的旅行路线,保存自己感兴趣的地点,并分享和获取其他用户提供的攻略。这款小程序为他的出行增添了更多的趣味性和便利性,也让他更好地享受了这次旅行的每一个瞬间。
外围功能 | 杀手功能 | |
---|---|---|
必要需求 | 地图标点,规划路线 | 路线的自动规划与社区的攻略分享 |
辅助需求 | 好友协作,地点的多维度信息标注 | 精美的界面与地图,社交价值,AIGC |
第7周 | 1.原型改进(给目标用户展现原型,并进一步理解需求) |
---|---|
2.架构设计,WBS, 团队成员估计各自任务所需时间 | |
3.测试计划 | |
4.开会、团队项目Alpha任务分配计划 | |
第8、9周 | 1. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 |
第10周 | 1.用户反馈+测试计划改进 |
2. 团队Alpha阶段个人总结 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | |
第11周 | 1. 团队项目Alpha博客:事后分析 |
分层 | 简短描述 |
---|---|
前端页面 | 提供视觉效果,与用户进行交互 |
后端系统(含第三方) | 负责处理用户的请求,为用户提供其想要的数据 |
AIGC | 增强互动,辅助搜索与推荐 |
用户表 t_user
字段名 | 描述 | 可NULL | 长度 | 类型 |
---|---|---|---|---|
user_id | 自增主键,从100001开始 同时作为用户唯一标识 | × | bigint | |
openid | 微信小程序openid | √ | 40 | varchar |
nickname | 昵称 | × | 12 | varchar |
sex | 性别(未知/男/女) | × | 2 | varchar |
head_img静态存储 | ||||
phone | 手机号码 | × | 15 | varchar |
邮箱 | √ | 40 | varchar | |
profile | 个人简介 | √ | 255 | varchar |
create_time | 创建时间 | × | datetime |
头像等图片资源按规律放在对象存储服务器中,直接获取
地图表 t_map
字段名 | 描述 | 可NULL | 长度 | 类型 |
---|---|---|---|---|
map_id | 自增主键,同时作为地图唯一标识 | × | bigint | |
user_id | 所归属的用户 | × | bigint | |
name | 地图名 | × | 15 | varchar |
poi_count | 包含的地点数 | × | int | |
coop_id | 在协作表中的id(-1表示没有开放协作) | × | bigint | |
public | 是否公开到社区(1-true/0-false) | × | tinyint | |
create_time | 创建时间 | × | datetime | |
edit_time | 上一次编辑时间 | × | datetime |
封面默认用第一张图片,无就……
地图协作表t_map_cooperation
字段名 | 描述 | 可NULL | 长度 | 类型 |
---|---|---|---|---|
map_coop_id | 自增主键 | × | bigint | |
map_id | 对应的地图 | × | bigint | |
owner | 创建者(user_id) | × | bigint | |
reader | 协作者(可读不可写)最多10个 存储user_id数组,以英文逗号,分割 | √ | 110 | varchar |
collaborator | 协作者(可读可写)最多10个 存储user_id数组,以英文逗号,分割 | √ | 110 | varchar |
操作记录? |
地点表t_poi(point of interest)
腾讯地图使用的坐标系统是GCJ-02
返回时同腾讯地图
字段名 | 描述 | 可NULL | 长度 | 类型 |
---|---|---|---|---|
poi_id | 自增主键 | × | bigint | |
map_id | 所属地图 | × | bigint | |
longitude | 经度 | × | double | |
latitude | 纬度 | × | double | |
address | 地址(暂不细分为省市区单位) | × | 255 | varchar |
real_name | 真地点名 | × | 50 | varchar |
name | 备注名 | √ | 10 | varchar |
intro | 简介 | √ | 255 | varchar |
photo静态存储 | ||||
url | 来源链接,可贴多条 用引号包围,以英文逗号,分割 | √ | 2550 | varchar |
score_dimension | 评分维度数组 以英文逗号,分割 | √ | 255 | varchar |
score | 评分数组,必须和维度一一对应 -1为空,以英文逗号,分割 | √ | 255 | varchar |
tag | 标签 | √ | 10 | varchar |
icon | 地点标记用的图片编号 按编号去静态资源获取 | √ | 255 | varchar |
路线表t_route
字段名 | 描述 | 可NULL | 长度 | 类型 |
---|---|---|---|---|
route_id | 自增主键 | × | 20 | int |
map_id | 所属地图 | × | 12 | int |
name | 路线名 | × | 10 | varchar |
poi_count | 包含地点数 | × | int | |
distance | 总路程长度(单位公里?) | × | float | |
time | 总花费时间(单位分钟?) | × | float |
路线地点关联表t_route_poi
创建地图时默认有一条“全部”路线,用来存不在其他路线的地点,地点放入某路线时直接修改路线id即可
(是否需要在存储中体现地点顺序?还是取出来后在程序里排序吧)
(路程时间需要计算资源,所以持久化)
(这个表不一定合理)
字段名 | 描述 | 可NULL | 长度 | 类型 |
---|---|---|---|---|
route_poi_id | 自增主键 | × | bigint | |
map_id | 所属地图 | × | bigint | |
route_id | 所属路线 | × | bigint | |
poi_id | 地点 | × | bigint | |
transport_mode | 到下一地点的交通方式 | √ | tinyint | |
distance | 到下一地点的路程 | √ | float | |
time | 到下一地点的时间 | √ | float |
当对地点操作时,要修改好几个表的数据,再考虑到事务相关,实在不算满意的设计
TODO
日志表
会员表
②查看地图
地图显示
创建/删除地图
地点信息
添加/删除地点
添加/删除路线
③共享
地图关键词搜索
地图列表展示
地图详情
个人信息展示
收藏夹
设置
测试方法:
测试用例:
测试方法:
测试用例:
测试方法:
测试用例:
测试方法:
测试对象: