软工作业No.4

 

 

 

 

2048小游戏—设计开发

软件需求规格说明书

 

 

甜美女孩

2018年10月

 

———————————————————————————

文档修改记录

日期

版本

说明

作者

2018-10-18

V1.0

第一次编写

曾祎祺

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

目录

1.引言... 4

1.1编写目的... 4

1.2项目背景... 4

1.3参考资料... 4

2.任务概述... 4

2.1目标... 4

2.2运行环境... 5

2.2.1服务端... 5

2.2.2客户端... 5

2.3条件与限制... 5

3.产品用户分析.. 5

3.1 产品的用户... 5

3.2 对用户设的优先级... 6

4.功能需求... 6

4.1功能划分... 6

4.2功能描述... 7

4.2.1初始选项:... 7

4.2.2基础模式游戏.. 7

4.2.3自定义模式游戏... 7

4.2.4纸牌模式游戏.. 7

5.性能需求... 8

5.1数据精确度... 8

5.2时间特性... 8

5.3适应性... 8

5.4安全性需求... 8

5.5 可靠性和可用性需求.. 8

6.运行需求... 9

6.1用户界面... 9

6.1.1初始界面:... 9

6.1.2新游戏界面:.. 9

6.1.3排行榜界面:.. 9

6.1.4游戏界面:... 9

6.2硬件接口... 10

6.3软件接口... 10

 

 

1.引言

1.1编写目的

在经过了我们组内思考,讨论以及投票后,提出了这份软件需求规格说明书。

此需求规格说明书对《多模式2048》软件做了全面细致的用户需求分析,明确所要开发的软件应具有的功能、性能与界面,使软件开发人员能清楚地了解用户的需求,并在此基础上完成后续设计与开发工作。

本说明书是整个软件开发的依据,它对以后阶段的工作起指导作用。本文也是项目完成后系统验收的依据。

1.2项目背景

现代生活节奏日益加快,人们碎片时间变多,很多时候在一些间隙时间并不能说很好的读完一本书或者玩一个剧情性比较强或者说要花费更多时间去完成的游戏。一些操作简单,完成一盘耗费时间更短的小游戏越来越受人们的青睐。

而关键的一点,是本项目含有三种模式,其中新颖的纸牌模式和有趣创新的自定义模式会吸引更多的用户。

1.3参考资料

2.任务概述

2.1目标

做出一个界面简洁有趣,有基础、纸牌、自定义三种模式可选择的2048小游戏,能存储已配置好的自定义样式,能看到各模式的分数排行榜。

 

2.2运行环境

2.2.1服务端

操作系统:Windows 10

2.2.2客户端

 Windows各版

 

2.3条件与限制

本游戏需要一定的存储权限以及存储空间。

3.产品用户分析

3.1 产品的用户

产品的潜在用户或操作员的列表。针对每种类型的用户,提供以下信息:

1.    用户分类:

学生,办公室工作人员,住家工作者(包括退休或赋闲人员)

2.    用户工作的任务:

玩游戏

3.    主要相关的经验:

4.    技术经验:

基本的计算机操作技能,基本的数字计算能力,逻辑思考能力,图形辨认能力

5.    其他用户特征:智力正常,接受过小学三到四年级程度的教育即可玩本游戏,会识汉字。

3.2 对用户设的优先级

1.    关键用户:学生;

2.    次要用户:工作/社会人员,退休/赋闲人员;

3.    不重要的用户:不常用和没有相关技能的人们。

4.功能需求

4.1功能划分

1、初始选项

2、基础模式游戏

3、自定义模式游戏

4、纸牌模式游戏

4.2功能描述

4.2.1初始选项:

4.2.1.1.游戏进度选择:

有新游戏、继续游戏、退出游戏三个选项,选择新游戏则开始新一轮游戏,继续游戏则继续上一次退出游戏时未结束的游戏,退出游戏则关闭程序。

4.2.1.2.玩法介绍:

用户可点击玩法介绍选项,观看三种模式的玩法介绍。

4.2.1.3. 模式选择:

用户点击新游戏或继续游戏选项后,会出现基础模式、纸牌模式和自定义模式三个游戏模式可供选择。

4.2.1.4. 排行榜:

用户可以点击排行榜选看基础模式和纸牌模式的分数排行榜。

4.2.2基础模式游戏

4.2.2.1游戏开始时随机出现两个模块,数值为2或4。

4.2.2.2玩家可通过键盘方向键来控制游戏,也可以通过按住左键的鼠标移动方向来控制游戏。

4.2.2.3每次作出移动控制时所有模块一起移动。

4.2.2.4每一次进行移动后皆随机出现一个模块,数值为2或4。

4.2.2.5判断玩家作出的控制方向是否可以移动,若不能移动则等待下一次控制,没有模块可移动不出现新的随机模块。

4.2.2.6两个相同数值的模块碰撞到一起转变为一个新的模块,数值为前两个模块数值的和。

4.2.2.7每碰撞形成一个新的模块,分数增加,增加数值为新模块的数值。

4.2.2.8判断有没有相邻的同数值数值模块,后判断有没有空的位置出现新的随机模块,若都没有,游戏结束,记录分数。

4.2.2.9若游戏中途退出,可自动保存待下次继续游戏。

4.2.3自定义模式游戏

4.2.3.1同4.2.2。

4.2.3.2 玩家可自主上传图片,一个数值对应一张图片,要标明限定格式以及大小。

4.2.3.3 自定义完后可以保存当前样式。

4.2.3.4 可删除已保存的样式。

4.2.3.5 不作排行榜,只记录最高分。

4.2.4纸牌模式游戏

4.2.4.1 在底部显示两张纸牌,纸牌数值均为2^n(n∈6),两张纸牌叠合起来,前一张为可拖动纸牌,后一张为不可拖动纸牌。

4.2.4.2 通过鼠标左键点取以及拖拽纸牌来进行游戏,表面的纸牌可以拖动,后面的纸牌不能拖动。

4.2.4.3 移动纸牌接到每一列的最末位,若纸牌数值跟前面纸牌数值相同,则合并为一张新的纸牌,数值为其二之和。

4.2.4.4 每移动一张纸牌,后一张纸牌变成位置变化在前,后一张为新生成纸牌。

4.2.4.5 每合成一张新纸牌,分数增加,增加数值为新纸牌的数值。

4.2.4.6 每列纸牌归列后不可再次移动。

4.2.4.7 纸牌数值达到2048后即消失,空出位置。

4.2.4.8 判断纸牌位置是否超出底线,若不能与前面纸牌合并,则游戏结束,记录分数。

4.2.4.9 若游戏中途退出,可自动保存待下次继续游戏。

5.性能需求

5.1数据精确度

游戏操作要严格按照玩法说明,否则不予回应。

5.2时间特性

一般操作的响应时间应在120毫秒内。

5.3适应性

   不需连接网络,对前面提到的运行环境要求不应存在困难。

5.4安全性需求

   此程序会进行即时的数据更新,减少因为各种意外而导致程序中断致使游戏进度丢失的可能。

5.5 可靠性和可用性需求

   (1)操作简单合理,只需用到鼠标以及键盘方向键,不需要额外更多的计算机技能。

   (2)支持没有计算机使用经验/经验少以及经验丰富的用户方便地玩游戏。

   (3)操作完成时有同一规范的提示信息。例如:用户选择删除自定义样例时,系统可提示警示框“您确认删除此样例吗?操作不可恢复。”,用户点击确认后,系统才执行删除操作。

   (4)用户可自定义游戏图片,可玩性高。

   (5)有详尽的玩法介绍

  

6.运行需求

6.1用户界面

6.1.1初始界面

6.1.1.1 自定义模式、基础模式、纸牌模式、三个选择按钮
6.1.1.2 玩法介绍 选项
6.1.1.3 输入昵称的输入框
6.1.1.4 背景图片
6.1.1.5 游戏图标
6.1.1.6 鼠标移到任何可选选项(按钮)的地方变为手指符号

6.1.2新游戏界面

6.1.2.1 自定义模式

6.1.2.1.1 新游戏、继续游戏、返回上一级,三个选择按钮
6.1.2.1.2 自定义模式以前保存的样式选择

6.1.2.2 经典模式

6.1.2.2.1 新游戏、继续游戏、返回上一级,三个选择按钮
6.1.2.2.2 排行榜选项

6.1.2.3 纸牌模式
6.1.2.2.1 新游戏、继续游戏、返回上一级,三个选择按钮
6.1.2.2.2 排行榜选项

6.1.3排行榜界面

6.1.3.1 纸牌模式和基础模式的分数排行表

6.1.4游戏界面

6.1.4.1 背景图
6.1.4.2 基础模式的每格样式
6.1.4.3 纸牌模式的纸牌样式
6.1.4.4 自定义模式的每格自定义图片上传
6.1.4.5 分数以及目前最高分显示
6.1.4.6 新游戏选项
6.1.4.7 基础模式的间隔安排,移动动画,格数安排
6.1.4.8 纸牌模式的纸牌间隔、摆放,出牌动画,消除动画,牌数安排

6.2硬件接口

6.3软件接口


以上,需求规格说明书。

 

 

团队项目码云地址:https://gitee.com/sweet_girl/Custom-2048

预期用户量:1000.

系统真实性,可用性:

   (1)操作简单合理,只需用到鼠标以及键盘方向键,不需要额外更多的计算机技能。

   (2)支持没有计算机使用经验/经验少以及经验丰富的用户方便地玩游戏。

   (3)操作完成时有同一规范的提示信息。例如:用户选择删除自定义样例时,系统可提示警示框“您确认删除此样例吗?操作不可恢复。”,用户点击确认后,系统才执行删除操作。

   (4)用户可自定义游戏图片,可玩性高。

   (5)有详尽的玩法介绍

系统价值所在:

现代生活节奏日益加快,人们碎片时间变多,很多时候在一些间隙时间并不能说很好的读完一本书或者玩一个剧情性比较强或者说要花费更多时间去完成的游戏。一些操作简单,完成一盘耗费时间更短的小游戏越来越受人们的青睐。

而关键的一点,是本项目含有三种模式,其中新颖的纸牌模式和有趣创新的自定义模式会吸引更多的用户。

团队项目issues

 团队项目issues截图

 

团队项目的时间安排表

原有安排表

6

1.团队组队、团队博客

 

2.团队介绍、成员展示、角色分配、选题确定

 

3.制定团队计划安排,团队贡献分的规定

7

1.需求规格说明书

 

2.原型设计,队员估计任务难度并学习必要的技术

 

3.编码规范完成、平台环境搭建完成、初步架构搭建

8

1.原型改进(给目标用户展现原型,并进一步理解需求)

 

2.架构设计,WBS, 团队成员估计各自任务所需时间

 

3.测试计划

9

1. 团队项目Alpha任务分配计划

 

2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交

10

1.用户反馈+测试计划改进

 

2. 团队Alpha阶段个人总结

 

3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理

11

1. 团队项目Alpha博客:事后分析

 

2. 每个团队有一人必须离开,自己寻找下一个接纳自己的团队。团队发博客宣布离队和接纳的成员。

12

1. 团队项目Beta任务分配计划,介绍新成员

 

2. 连续7天的Beta敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交

13

1. 团队项目Beta博客:发布说明、测试报告、展示博客

 

2. 团队Beta阶段个人总结

14

1. 团队项目Beta博客:事后分析, 宣布每人的贡献分

15

1.团队整个阶段总结,分析用户数据,整理文档,保证以后的团队能接手。

校正后的安排表

7

1.需求规格说明书

 

2.原型设计,估计任务难度并学习必要的技术

8-9周

1.原型改进(给目标用户展现原型,并进一步理解需求)

 

2.架构设计

 

3.团队项目任务分配,团队成员估计各自任务所需时间

 

4.编码规范完成、平台环境搭建完成、初步架构搭建

 

5.测试计划

 

6.连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交

10

1.用户反馈+测试计划改进

 

2. 团队Alpha阶段个人总结

 

3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理

11

1. 团队项目Alpha博客:事后分析

 

2. 每个团队有一人必须离开,自己寻找下一个接纳自己的团队。团队发博客宣布离队和接纳的成员。

12

1. 团队项目Beta任务分配计划,介绍新成员

 

2. 连续7天的Beta敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交

13

1. 团队项目Beta博客:发布说明、测试报告、展示博客

 

2. 团队Beta阶段个人总结

14

1. 团队项目Beta博客:事后分析, 宣布每人的贡献分

15

1.团队整个阶段总结,分析用户数据,整理文档,保证以后的团队能接手。

团队分工

何颖琪:将团队的任务计划添加到码云的团队项目Issues
邓画月:监工,找一个java代码规范。
梁子君:时间安排表的制定
于可欣:时间安排表的制定
梁沛诗:编写博客
曾祎祺:需求规格说明书的编写,创建团队仓库,编写博客

完成情况均良好

感想

何颖琪:这周我了解了界面的设计要求,并填写了lssues,收获不算大,要继续努力。
邓画月:海星
梁子君:在重新学习java的过程中,充实自己。身处团队的一份子,感觉到了项目经理的重要性。
于可欣:本周看了需求规格说明书后写了时间表,通过时间的安排发现我们的剩余的时间并不充裕,而且要学习相关的知识也要与他人交流沟通才能成功完成项目,希望能顺  利完成自己的任务。
梁沛诗:是时候该动手了
曾祎祺:啊。。。

posted on 2018-10-19 00:27  夶老爷  阅读(163)  评论(0编辑  收藏  举报

导航