上一篇:团队项目(二)

需求&原型改进

改进内容

原先《需求规格说明书》文档描述缺少,现进行补充,完整文档详见下方附录链接

修订历史

日期 说明
2018-10-17 初版形成
2018-10-26 新增类图和验收标准

原型改动

微信图片_20181027003951.png
微信图片_20181027003959.png

类图

第一次做类图,可能有不完善的地方,欢迎指教
微信图片_20181026201734.png

验证验收标准

验收标准
  • 编码规范
  • 软件需求说明书
  • 项目总结报告
软件验收标准
  1. 将程序打包成Jar包
  2. 可执行文件(.exe)
界面验收标准
序号 界面名称 界面描述
1 主界面 标题栏显示“Duet Game”,菜单栏含“菜单”和“帮助”, Scene上半部设置有LOGO,下半部为按钮“开始游戏”和“历史排名”,状态栏显示“Welcome to Duet Game!”
2 游戏界面 标题栏、菜单栏和状态栏如主界面,游戏场景中包含轴对称的两个可旋转的小球和不断生成的障碍,场景左上角有积分显示
3 游戏结束界面 标题栏、菜单栏和状态栏如主界面,游戏场景停滞,显示当前积分和历史最佳积分,包含按钮“再来一次”、“结束游戏”
4 帮助界面 标题栏、菜单栏和状态栏如主界面,介绍游戏的基本玩法
5 积分界面 标题栏、菜单栏和状态栏如主界面,展示历史积分,按高到低排序
功能验收标准
序号 功能名称 操作界面 功能描述 备注
1 开始游戏 主界面 开始游戏
2 历史排名 主界面 展示历史积分
3 返回主菜单 任一界面 返回主界面
4 继续 游戏界面 让暂停的游戏继续
5 暂停 游戏界面 让进行的游戏暂停
6 玩法介绍 任一界面 展示帮助界面
7 关于我们 任一界面 展示开发团队
8 障碍生成 游戏界面 定时随机生成障碍
9 小球旋转 游戏界面 控制小球绕轴旋转 “←”逆时针,“→”顺时针
10 碰撞检测 游戏界面 能正常检测到小球与障碍是否发生碰撞 发生碰撞则游戏失败
11 积分累加 游戏界面 穿过障碍时能正常计分 每穿过一个障碍加5分
12 积分存档 积分界面 能保存历史积分并降序排列展示

功能分析

  • 杀手功能:市面上的大部分游戏用户体验不友好,而我们有友善的难度梯次,适合各层次玩家体验游戏。
  • 外围功能:具有良好的界面设计,可跨平台。
  • 必要需求:碰撞检测和得分检测的准确性。
  • 辅助需求:必要的玩法介绍和指引。

WBS(Work Breakdown Structure)

微信图片_20181026233045.png


系统设计

由于我们开发的只是一个小游戏,并没有特别的系统设计,以下是一些功能层次和设计层次上的描述

功能层次交互和跳转

在菜单栏的设计中,涉及的按钮与层次可罗列于下表中

按钮 功能
菜单 点击后展开子菜单,包含返回主界面、继续、暂停和退出
帮助 点击后展开子菜单,包含玩法介绍和关于我们
返回主界面 点击后主体部分从其他界面返回主界面
继续 点击后游戏从暂停状态恢复
暂停 点击后游戏进入暂停状态
退出游戏 点击后退出游戏关闭程序
玩法介绍 点击后在主体部分展示游戏的玩法介绍
关于我们 点击后在主体部分展示开发团队介绍

目前已完成以上按钮显示,功能还有待跟进

在主界面的设计中,涉及的按钮与层次可罗列于下表中

按钮 功能
开始游戏 在主界面中点击即开始游戏
历史排行 在主界面中点击即展示积分排行
再来一次 在游戏结束界面中点击即开始新一轮游戏
退出游戏 在游戏结束界面中点击即退出游戏关闭程序

设计层次描述

  • 主体界面最上层是标题栏,包含窗口标题和最小化、关闭按钮
  • 主体界面上层,标题栏下是菜单栏,包含菜单和帮助,用户可以在此应用一些辅助功能如暂停、继续、返回主界面和退出等,帮助中包含玩法介绍和开发团队介绍
  • 主体界面中间是游戏主体部分,主界面中包含按钮开始游戏和历史排行,用户可以在这里开始游戏和查看积分排行
  • 主体界面最下层是状态栏,显示游戏状态,默认情况下为“Welcome to Duet Game!”

Alpha任务分配计划

优先实现功能项

功能分解

  • 场景跳转
    • 从游戏的主界面点击开始游戏后切换成游戏界面
    • 游戏失败后从游戏界面切换成游戏失败界面
  • 碰撞检测
    • 实现一个boolean方法判断两个对象(球和障碍)是否发生碰撞
    • 参考链接:常见的2D碰撞检测
  • 得分记录
    • 实现一个boolean方法,当两个小球皆穿过障碍时返回True
    • 满足条件时,界面显示积分实时更新加5分
    • 游戏结束时,,将积分存档到本地
    • 打开历史排行面板时,能读取显示历史积分

甘特图

待定


测试计划

  • 目标:设计优秀的测试用例,以最小的代价在最短的时间内,尽可能多地发现软件中的错误
  • 作用:根据《软件需求规格说明书》和相关资料,使用Junit在eclipse下,按照相关业务定义对编码结果进行验证
  • 测试工具:Junit
  • 测试环境:Eclipse
  • 测试成员:萧英杰、陈嘉曼
  • 测试内容:
    • 单元测试:针对各个模块的测试,测试的粒度最小
    • 集成测试:是把经过单元测试的模块放在一起形成一个子系统的测试,重点是测试模块之间的接口
    • 系统测试:是把经过测试的子系统装配成一个完整的系统的测试,主要是发现软件设计中的错误或需求说明中的错误

附录

软件需求规格说明书