您现在的位置是:首页 >技术交流 >团队作业3—需求改进&系统设计网站首页技术交流
团队作业3—需求改进&系统设计
简介团队作业3—需求改进&系统设计
文章目录
作业基本信息
这个作业属于哪个课程 | 广工2023软件工程课程 |
---|---|
这个作业要求在哪里 | 团队作业3—需求改进&系统设计 |
这个作业的目标 | 1.原型改进(给目标用户展现原型,并进一步理解需求) 2.架构设计,WBS, 团队成员估计各自任务所需时间 3.测试计划 |
其他参考文献 | 无 |
1、需求&原型改进
1.1对选题及需求进行修改
问题一:没有设置一个登入页面
修改一:增添一个登入页面,用户将具有个人游戏账户,记录游戏成就及最高得分
问题二:当游戏内的方块填满整个区域且无法继续消除时,游戏无法结束
修改二:当游戏内的方块填满整个区域且无法继续消除时,设置’游戏失败,请再接再厉‘弹窗,并结束本局游戏
1.2与目标用户沟通理解需求
1.3修改完善上周提交的需求规格说明书
上周的《需求规格说明书》初稿有哪些不足?特别是:功能考虑不全或需求文档描述缺少的地方。
将具体改进内容发布在随笔上。
1.3.1需求规格说明书更新
- 面向用户分析不足,对受众用户不够了解。 在团队作业2–《需求规格说明书》中1.1处增添其他身份的用户。俄罗斯方块是简单益智小游戏,拥有解乏和打发时间的作用,且游戏时间灵活,可随时暂停,则受众应当、包括工作的上班人群。
- 基本功能较少。在1.2处可添加消除方块后的加分功能,并在游戏结束时记录并更新历史最高得分。俄罗斯方块游戏可无限玩下去,只要个人能力强即可,所以在无限次数玩这款游戏时,玩家肯定需要获得成就感,应设计得分及记录分数的功能,玩家会为了创造更高的记录而更多次的开始新的一局游戏,在玩家长时间的‘努力’后,会在结束游戏前欣赏自己的‘成就’,并期盼下一次的挑战。
建议:用一个场景,像讲故事 (User Story)那样,描述用户怎么使用几个相联系的功能,解决了用户的问题。
1.4参考《构建之法》5节功能的定位和优先级,给出功能分析的四个象限
对于功能分析的四个象限,杀手功能,外围功能,必要需求,辅助需求。
1.5根据修改后的需求,调整任务分解WBS及相应的项目进度计划
第6周 | 团队组队、团队博客 |
---|---|
团队介绍、成员展示、角色分配、选题确定 | |
制定团队计划安排,团队贡献分的规定 | |
第7周 | 需求规格说明书 |
原型设计,队员估计任务难度并学习必要技术 | |
编码规范完成、平台环境搭建完成、初步架构搭建 | |
第8周 | 原型改进(给目标用户展现原型,并进一步理解需求) |
架构设计,WBS, 团队成员估计各自任务所需时间 | |
第9、10周 | 团队项目Alpha任务分配计划 |
连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | |
第11周 | 用户反馈+测试计划改进 |
团队Alpha阶段个人总结 | |
团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | |
第12周 | 团队项目Alpha博客:事后分析 |
2、系统设计
2.1系统的架构设计
- 从架构的层次上,对本身的设计进行最简短的概述:
分层 | 简短描述 |
---|---|
前端页面 | 直接与用户打交道,与用户进行交互 |
后端系统 | 衔接搜索系统处理用户的请求,为用户提供其想要的数据 |
搜索系统 | 搜集、整合数据,并根据网站后端的搜索请求,提供搜索结果 |
2.1.1前端页面设计
1.基本功能划分:
功能概述 | 功能描述 |
---|---|
主页面整合搜索页面 | 主页面需要包含必须的导航栏和登陆功能,用户能够在这一阶段跳转至登陆或注册 |
用户管理页面 | 用户管理页面需要包含用户个人得分等基本信息,同时包含针对用户的个性化推荐 用户管理页面需要包含用户对个人资料的修改,同时方便用户查看自身权限 |
问答页面 | 问答页面需要包含对用户当前要做的事进行确认或否定,如暂停后是否继续游戏等 |
2.功能层次交互和跳转:
按钮 | 功能 |
---|---|
HOME | 回到主页面,可见到开始游戏、个人信息查看等功能 |
LOGIN | 进入登入页面,可登入个人账户拥有个人数据,无账号则自动创建一个新的账户 |
PAUSE | 弹出暂停弹窗,暂时停止游戏直至玩家做出CONTINUE或RESTART选择 |
CONTINUE | 由暂停页面重新回到上次未结束的游戏 |
RESTART | 退出当前游戏,进入全新的一局游戏中 |
2.1.2后端系统设计
主站模块:
1.方块旋转。通过方向键调整方块的方向。
2.下落加速。加速方块下落速度。
3.消除。拼出完整的一条后消失。
4.暂停休息。游戏可以随时暂停,恢复后继续游玩。
用户模块:
1.用户登入注销。
2.用户信息管理。
3.用户权限机制。
4.用户得分记录。
2.1.3搜索系统设计
未包含相应功能
2.2团队项目的数据库设计
- 属性表
属性名 | 数据类型 | 是否为空 | 含义 |
---|---|---|---|
score_id | int | not null | 得分 |
recorded-score | int | not null | 最高得分记录 |
game-length | int | not null | 游戏时长 |
- 用户表
属性名 | 数据类型 | 是否为空 | 含义 |
---|---|---|---|
user_id | varchar(5) | not null | 用户id编号 |
user_name | varchar(20) | not null | 用户账号 |
password | varchar(20) | not null | 密码 |
phone | varchar(11) | 电话号码 | |
state | bool | not null | 登入状态 |
last_login_t | datetime | not null | 上次登陆时间 |
last_login_loc | varchar(20) | not null | 上次登陆地点 |
signup_t | date | not null | 注册时间 |
- 结果表
属性名 | 数据类型 | 是否为空 | 含义 |
---|---|---|---|
res_id | int | not null | 结果 |
gametime | int | not null | 结束时间 |
end | bool | not null | 是否结束 |
3、Alpha任务分配计划
- 进行服务器相关部署
- 进行开发相关技术学习
- 进行基本可用版本的开发
3.1基础功能开发
功能· | 优先级 | 开发阶段 |
---|---|---|
用户登入注册 | ⭐⭐⭐⭐⭐ | Alpha |
同色方块消除 | ⭐⭐⭐⭐ | Alpha |
消除方块得分 | ⭐⭐⭐⭐ | Alpha |
随机颜色形状方块生成 | ⭐⭐ | Alpha |
游戏结束并显示结束弹窗 | ⭐⭐ | Alpha |
3.2Sprint Backlog
分组 | 负责人 | 任务 | 子任务 | 预计时长(h) |
---|---|---|---|---|
前端 | 集体 | 前端代码规范讨论与制定 | 前端API规范讨论与制定 前端代码风格规范讨论与制定 前端注释说明规范讨论与制定 | 3 |
ts | 技术栈学习 | 技术栈学习 本地环境搭建 提交样例demo | 8 | |
引导页,注册,登录界面设计与功能实现 | 引导页UI设计 引导页功能实现 登录页面UI设计 登录功能实现 手机号码登录功能实现 手机号码注册功能实现 | 8 | ||
zqr | 技术栈学习 | 技术栈学习 本地环境搭建 提交样例demo | 4 | |
首页界面设计与功能实现 | 首页页面设计 首页功能入口实现 游戏界面设计 | 4 | ||
个人信息界面设计与功能实现 | 账号切换交互页面 展示个人信息页面 | 2 | ||
后端 | lyj | 数据库设计 | 数据库模型设计 数据库表与属性设计 | 4 |
ER图设计 | ER图单模型设计 ER图模型汇总设计 | 7 | ||
zmq | 技术栈学习 | 技术栈学习 本地环境搭建 提交样例demo | 5 | |
测试服务器部署CI/CD | CI/CD部署 提交demo运行完成截图 | 7 | ||
实现方块相关模型 | 同色方块消除模型 方块移动模型 方块形状颜色生成 | 8 | ||
lwj | 技术栈学习 | 技术栈学习 本地环境搭建 提交样例demo | 8 | |
后端服务器部署 | 服务器搭建 提交demo运行完成截图 | 7 | ||
实现个人信息相关模型 | 个人信息相关模型 登录验证相关模型6 | |||
wdx | 技术栈学习 | 技术栈学习 本地环境搭建 提交样例demo | 4 | |
my | 数据爬虫 | 数据爬虫环境配置 数据爬取并清洗 数据库数据导入 | 6 | |
实现分数相关模型 | 方块消除后得分模型 记录最高分模型 | 5 |
3.3迭代冲刺计划
4、测试计划
4.1测试目的
编号 | 目的 |
---|---|
1 | 软件测试是为了发现错误而执行程序的过程。 |
2 | 测试是为了证明程序有错,而不是证明程序无错。 |
3 | 一个好的测试用例在于它发现至今未发现的错误。 |
4 | 一个成功的测试是发现了至今未发现的错误的测试。 |
4.2测试项目及负责人
负责人 | 编号 | 软件测试类型 | 内容 |
---|---|---|---|
ts | 1 | 单元测试 | 开发者编写的一小段代码,检验被测代码的一个很小的、很明确的功能是否正确。 |
2 | 集成测试 | 开发者编写的多个段代码单元,组合到一起形成集成测试,检查多个单元组合功能是否正确。 | |
zmq | 3 | 冒烟测试 | 针对产品的基本功能进行测试。 |
4 | 功能测试 | 又称正确性测试,它检查软件的功能是否符合规格说明。 | |
lwj | 5 | 可靠性测试 | 对服务器施加一定压力,测试服务器是否可以长期稳定运行。 |
6 | 压力测试 | 对服务器施加一定压力后进行功能测试,测试服务器在一定压力下是够可以正常计算。 | |
lyj | 7 | 负载测试 | 对服务器施加压力,测试服务器可以容纳多少人访问,多少人访问后出现BUG。 |
wdx | 8 | 易用性测试 | 主要从使用的合理性和方便性等角度对软件系统进行检查。用户来测.主观。 |
my | 9 | 兼容测试 | 测试Web页面是否支持所有浏览器,访问后页面所有功能无异常。 |
10 | 回归测试 | 开发修改后的BUG在测试一遍。 | |
zqr | 11 | 安全测试 | 服务器数据安全性,用户数据安全性,用户操作安全性,用户财产安全性、公司财产安全性。 |
12 | 数据完整性测试 | 对数据及数据库能否正常运行访问的测试。 |
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。