关于雷电游戏的软件工程设计报告.docx
- 文档编号:30513549
- 上传时间:2023-08-16
- 格式:DOCX
- 页数:30
- 大小:156.24KB
关于雷电游戏的软件工程设计报告.docx
《关于雷电游戏的软件工程设计报告.docx》由会员分享,可在线阅读,更多相关《关于雷电游戏的软件工程设计报告.docx(30页珍藏版)》请在冰豆网上搜索。
关于雷电游戏的软件工程设计报告
《软件工程设计》文档报告
题目:
雷电游戏
班级:
信息管理与信息系统
学号:
姓名:
白金龙
内容摘要
在现今电子信息高速发展的时代,电子游戏已经深入人们的日常生活,成为老少皆宜的娱乐方式。
但是游戏设计结合了日新月异的技术,在一个产品中整合了复杂的设计、艺术、声音和软件,所以并不是人人皆知。
直到今天,在中国从事游戏设计的人仍然很少,但是游戏行业的发展之快,远超如家电、汽车等传统行业,也正因为如此,游戏人才的教育、培养远落后于产业的发展。
雷电是个老少皆宜的小游戏,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作。
论文描述了游戏的历史,开发此游戏的环境,游戏开发的意义。
遵循软件工程的知识,从软件问题定义开始,接着进行可行性研究、需求分析、总体设计、详细设计,最后对软件进行了测试。
此次设计在Microsoft Windows 7系统下,以JAVA为开发语言,在JDK6.0开发平台上进行游戏设计与实践。
关键词:
雷电,JDK6.0
ﻬ
一、绪论ﻩ1
1.1设计背景..................................................2
1.2设计目的..................................................2
1.3设计要求..................................................3
1.4设计目标..................................................3
二、ﻩ综述4
2.1国内外研究现状ﻩ4
2.2研究可行性4
2.3支持的技术5
三、方案设计与论证ﻩ8
3.1功能分析图...............................................9
3.2 功能需求定义............................................10
3.3功能性需求ﻩ11
3.4用例分析ﻩ12
3.5系统E-R图ﻩ13
3.6关键技术及难点ﻩ14
四、设计与实现ﻩ15
4.1输入输出要求.............................................16
4.2系统流程图...............................................17
4.3数据流图................................................17
4.4界面概览................................................18
五、结果与评价ﻩ19
5.1 测试....................................................20
5.2心得体会................................................20
5.3参考文献.................................................21
一、绪论
在现今电子信息高速发展的时代,电子游戏已经深入人们的日常生活,成为老少皆宜的娱乐方式。
但是游戏设计结合了日新月异的技术,在一个产品中整合了复杂的设计、艺术、声音和软件,所以并不是人人皆知。
直到今天,在中国从事游戏设计的人仍然很少,但是游戏行业的发展之快,远超如家电、汽车等传统行业,也正因为如此,游戏人才的教育、培养远落后于产业的发展。
雷电是个老少皆宜的小游戏,它实现由一款战机飞行战斗,计算机根据环境变化以及众多的敌人,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作。
论文描述了游戏的历史,开发此游戏的环境,游戏开发的意义。
遵循软件工程的知识,从软件问题定义开始,接着进行可行性研究、需求分析、总体设计、详细设计,最后对软件进行了测试。
此次设计在MicrosoftWindows7系统下,以JAVA为开发语言,在JDK6.0开发平台上进行游戏设计与实践。
1.1设计背景
背景
游戏是人们活动中一项非常重要的内容,有人认为如果哪一天人类对所有的游戏都失去兴趣,恐怕世界的末日就要到了。
电脑对游戏的贡献有目共睹,现在摸索电脑的人很少没玩过电脑游戏的,喜欢游戏的人也很少不玩电脑的。
雷电是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。
雷电最早还是出现在PC机上,而我国的用户都是通过红白机了解、喜欢上它的。
随着计算机的发展而发展,雷电不断推陈出新,深爱广大玩家喜爱。
这个游戏有的简单,有的复杂,但其根本原理是一样的都是对运动的方块进行组合,来训练玩家的反应能力。
因此开发此游戏软件可满足人们的一些娱乐的需求。
此雷电游戏可以为用户提供一个可在普通个人电脑上运行的,界面美观的,易于控制的雷电游戏。
1.2设计目的
通过本游戏的设计,综合自己在校期间所学的理论知识,设计开发俄罗斯广场游戏,使自己熟应用系统的开发过程,培养独立思考能力,检验学习效果和动手能力,初步掌握软件工程的系统理论,进一步巩固和加强自身对J2SE基础知识的理解,提高自己的编程水平,从而达到理论与实践相结合的目的。
1.3设计要求
本游戏开发的总体任务是实现游戏的可操作性,以及界面的美观性。
整个开发过程遵循软件工程规范,采用JAVA GUI编程实现界面以及事件的控制。
用户根据键盘的四个方向键控制翻转、向左、向右、和向下操作,通过菜单栏中的相应菜单选项实现游戏的开始、结束、变换方向、积分以及等级的功能。
1.4设计目标
通过本游戏的开发,主要实现游戏的可操作性及美观性,同时使自己对JAVA语言的了解更进一层,为将来的实际工作打 下坚实的基础。
二.综述
2.1国内外研究现状
针对国内外对游戏软件的巨大需求和基本要求,一个好的游戏软件,必须要功能齐全,操作简便,向用户展示美观的操作界面。
在完善功能的同时又必须兼顾系统的灵活性,安全性,健壮性。
一个游戏,不管是哪个年龄段的玩家都能轻松上手,操作简单易懂,容易普及。
本游戏系统主要实现对游戏的操作以及评分系统。
2.2研究可行性
信息社会的不断发展,生活节奏的不断加快使人们的生活压力日趋增大,为了满足众多奋战在PC屏幕前的工作人员适当的放松的愿望,我们决定开发一款在工作之余可以方便大众的简单的娱乐游戏,甚至可以通过WIFI等无线网络进行联机评分。
传统的PC软件开发模式具有很大的弊端,如厂商固化硬件、程序不易增加、删除、更新、修改等。
而JAVA技术在网络应用方面却有着非常明显的优势:
1.应用程序可按需下载,而不是购买由硬件商提供的套件,可升级空间大。
2. Java技术提供了一个类库,它使的应用开发商可以创建更为直觉、丰富的用户界面(GUI);
3.Java技术使网络带宽的应用更为有效,因为应用程序可以下载到器件上,并在本地运行,仅仅是在连接到服务器时才会占用网络带宽。
2.3支持的技术
JDK6.0支持以下技术,并已与下列应用服务器测试。
支持的技术:
JavaEE6,JavaEE5andJ2EE1.4
Java MESDK3.0
JavaCard3 SDK
Struts1.3.8
Spring3.0,2.5
Hibernate3.2.5
JavaAPIforRESTful WebServices(JAX-RS) 1.1
JavaWirelessToolkit2.5.2for CLDC
IssueTracking
Bugzilla3.4或早期版本
Jira 3.4 或早期版本
C/C++/Fortran
PHP5.3,5.2, 5.1
Groovy1.6.4
Grails1.1
Apache Ant 1.8.1
Apache Maven2.2.1或后期版本
VCS
CVS:
1.11.x, 1.12.x
Subversion:
1.5.x,1.6.x
Mercurial:
1.5
ClearCase V7.0
Git1.7.х
三.方案设计与论证
3.1功能分析图
3.2功能需求定义
用户
分类
功能
玩家
登陆界面
继续未完的游戏
创建新游戏
声音
游戏排名
帮助
退出游戏
游戏过程中
暂停游戏
继续游戏
放大招
玩家吃生命宝物
玩家吃放大招宝物
玩家吃子弹强度宝物
吃子弹变换宝物
吃无敌状态宝物
游戏帮助
声音设置
玩家保存游戏
玩家返回游戏
直接退出游戏
3.3功能性需求
登陆界面:
3.3.1 继续未完的游戏
用例名称:
继续未完的游戏
用例编号
01
优先级
必须实现
触发器
菜单选项
前提
用户在游戏中有存档
基本路径
1.用户打开游戏 ;
2.进入游戏读取画面;
3.选择“继续游戏”选项。
可选路径
N/A
后置条件
系统读取用户存档
异常路径
其他
用户没有存档,提示无存档
参考
TAB1.1-1
TAB1.1-2
3.3.2 创建新游戏
用例名称:
创建新游戏
用例编号
02
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
1.用户打开游戏;
2.进入游戏读取画面
3.选择“新游戏”选项。
可选路径
N/A
后置条件
开始新的游戏
异常路径
其他
参考
TAB1.1-1
TAB1.1-3
3.3.3 声音
用例名称:
声音
用例编号
03
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
1.选择“菜单”,然后系统显示运行时菜单
2.选择“声音设置(开/关)”选项
3.选择“开”,游戏声音打开,选择“关”,游戏声音关闭。
可选路径
N/A
后置条件
系统返回登陆界面
异常路径
其他
参考
TAB1.1-1
TAB1.1-4
3.3.4 游戏排名
用例名称:
游戏排名
用例编号
04
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
1.选择“菜单”,然后系统显示运行时菜单;
2.选择“游戏排名”选项;
3.进入游戏排名,列出前三名的游戏分数及用户资料。
可选路径
N/A
后置条件
系统返回登陆界面
异常路径
其他
参考
TAB1.1-1
TAB1.1-5
3.3.5 帮助
用例名称:
帮助
用例编号
05
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
1.用户选择“帮助”;
2.进入帮助界面。
可选路径
N/A
后置条件
系统返回登陆界面
异常路径
其他
参考
TAB1.1-1
TAB1.1-6
3.3.6 退出游戏
用例名称:
退出游戏
用例编号
06
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
1.用户选择“退出游戏”,弹出提示对话框;
2.用户选择“确定”退出游戏;
3.完成存档;
4.游戏结束,退出游戏完成。
可选路径
N/A
后置条件
系统退出
异常路径
其他
参考
TAB1.1-1
TAB1.1-7
游戏过程中:
3.3.7 暂停游戏
用例名称:
暂停游戏
用例编号
07
优先级
必须实现
触发器
暂停按钮
前提
游戏正在进行中
基本路径
1.当在游戏中时,按“暂停”按钮后暂停游戏
2.屏幕上显示游戏暂停,并显示“继续游戏”按钮
可选路径
N/A
后置条件
系统暂停游戏
异常路径
其他
参考
TAB1.1-1
TAB1.1-8
3.3.8 继续游戏
用例名称:
继续游戏
用例编号
08
优先级
必须实现
触发器
继续游戏按钮触发
前提
游戏已经暂停
基本路径
1.当玩家在游戏中请求暂停后,屏幕上显示有“继续游戏”按钮
2.选择“继续游戏”按钮,游戏结束暂停状态,恢复游戏
可选路径
N/A
后置条件
系统继续游戏
异常路径
其他
参考
TAB1.1-1
TAB1.1-9
3.3.9 放大招
用例名称:
放大招
用例编号
09
优先级
必须实现
触发器
按下PCFIRE键
前提
大招可用数>0
基本路径
1.玩家按下FIRE号键后,在当前屏幕中的Plane,子弹,炮塔都死亡
可用数-1,初始化有两个大招;
2.玩家吃到放大招礼物后,可用数+1
3.屏幕又下角显示可用数;
可选路径
N/A
后置条件
系统继续游戏
异常路径
其他
参考
TAB1.1-1
TAB1.1-10
3.3.10 玩家吃生命宝物
用例名称:
玩家吃生命宝物
用例编号
10
优先级
必须实现
触发器
玩家控制飞机与宝物接触
前提
玩家处于正常的游戏运行中
基本路径
玩家处于正常的游戏运行中,飞机与宝物发生接触
可选路径
N/A
后置条件
玩家的剩余生命数量加一,显示的剩余生命数值也加一
异常路径
其他
参考
TAB1.1-1
TAB1.1-11
3.3.11玩家吃子弹强度宝物
用例名称:
玩家吃子弹强度宝物
用例编号
11
优先级
必须实现
触发器
玩家控制飞机与宝物接触
前提
玩家处于正常的游戏运行中
基本路径
玩家处于正常的游戏运行中,飞机与宝物发生接触
可选路径
N/A
后置条件
玩家控制的飞机所发射的子弹若已经为加强的子弹,则保持当前子弹状态不变,若为一般强度的状态,则将子弹的状态变成加强的,同时玩家所控制的飞机发出的子弹束加粗
异常路径
其他
参考
TAB1.1-1
TAB1.1-12
3.3.12 吃放大招宝物
用例名称:
吃放大招宝物
用例编号
12
优先级
必须实现
触发器
用户飞机与放大招宝物碰撞
前提
用户已经开始游戏
基本路径
1.用户飞机与放大招宝物碰撞
2.游戏界面右下角出现相应宝物图标,如果以前已经出现了图标,则数量增加一个。
可选路径
N/A
后置条件
用户出发按键,放大招,背景上出现的敌方小飞机以及炮塔全被消失。
如果敌方boss在背景上,敌方boss也会有一定受伤。
异常路径
其他
参考
TAB1.1-1
TAB1.1-13
3.3.13 吃子弹变换宝物
用例名称:
吃子弹变换宝物
用例编号
13
优先级
必须实现
触发器
用户飞机与子弹变换宝物碰撞
前提
用户已经开始游戏
基本路径
1.用户飞机与子弹变换宝物碰撞
2.用户飞机的子弹立即变换为宝物相应的子弹类型。
可选路径
N/A
后置条件
用户飞机的子弹发射的子弹类型为宝物相应的子弹类型
异常路径
其他
参考
TAB1.1-1
TAB1.1-14
3.3.14 吃无敌状态宝物
用例名称:
吃无敌状态宝物
用例编号
14
优先级
必须实现
触发器
用户飞机与无敌状态宝物碰撞
前提
用户已经开始游戏
基本路径
1.用户飞机与无敌状态宝物碰撞
2.用户飞机立即变为无敌状态,并持续一定时间,即用户不会被地方子弹所伤害,也不会被敌方的飞机所撞坏。
可选路径
N/A
后置条件
无底状态只能持续一定时间,在此状态下,即用户不会被地方子弹所伤害,也不会被敌方的飞机所撞坏。
异常路径
其他
参考
TAB1.1-1
TAB1.1-15
3.3.15 游戏帮助
用例名称:
游戏帮助
用例编号
15
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
1. 用户点击“选项”按钮。
2.弹出选项菜单,并且选择“帮助”按钮。
3. 进入帮助界面。
可选路径
N/A
后置条件
系统返回登陆界面
异常路径
其他
参考
TAB1.1-1
TAB1.1-16
3.3.16声音设置
用例名称:
声音设置
用例编号
16
优先级
必须实现
触发器
菜单选项
前提
用户打开游戏
基本路径
4. 用户点击“选项”按钮。
5. 弹出选项菜单,并且选择“声音设置(开/关)”按钮。
6.选择“开”,游戏声音打开,选择“关”,游戏声音关闭。
可选路径
N/A
后置条件
系统返回登陆界面
异常路径
其他
参考
TAB1.1-1
TAB1.1-17
3.3.17玩家保存游戏
用例名称:
玩家保存游戏
用例编号
17
优先级
必须实现
触发器
菜单选项
前提
玩家已经进入游戏,点击“选项”按钮。
基本路径
1.用户点击“选项”按钮。
2.弹出选项菜单,并且选择“返回主菜单”按钮。
3.弹出退出菜单,选择“保存”选项,进行游戏场景保存。
可选路径
N/A
后置条件
系统进入游戏登录界面。
异常路径
其他
参考
TAB1.1-1
TAB1.1-18
3.3.18玩家返回游戏
用例名称:
玩家返回游戏
用例编号
18
优先级
必须实现
触发器
菜单选项
前提
玩家已经进入游戏,点击“选项”按钮。
基本路径
1.用户点击“选项”按钮。
2.弹出选项菜单,并且选择“返回主菜单”按钮。
3.弹出退出菜单,选择“返回游戏”选项,重新进入游戏。
可选路径
N/A
后置条件
游戏继续进行。
异常路径
其他
参考
TAB1.1-1
TAB1.1-19
3.3.19 直接退出游戏
用例名称:
直接退出游戏
用例编号
19
优先级
必须实现
触发器
菜单选项
前提
玩家已经进入游戏,点击“选项”按钮。
基本路径
1.用户点击“选项”按钮。
2.弹出选项菜单,并且选择“返回主菜单”按钮。
3.弹出退出菜单,选择“直接退出”选项,退出游戏。
可选路径
N/A
后置条件
系统进入游戏登录界面。
异常路径
其他
参考
TAB1.1-1
TAB1.1-20
3.4用例分析
雷电游戏管理有用户和管理员2类用户。
管理员可以对游戏的图片,声音,帮助,评分的基本信息进行增、删、改、查的操作用户则可以创建游戏,删除游戏,增加积分等。
3.5E-R图
3.6关键技术及难点
管理员可以上传配置要求,图片等,用户可以下载补丁。
相反用户结束游戏后要上传给管理员,管理员可以下载用户的积分来更新。
因此游戏的控制系统的难点和重点就是如何控制文件的上传和下载。
上传下载需要用到SmartUpload这个组件。
SmartUpload是一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。
该组件有以下几个特点:
1、使用简单。
在JSP文件中仅仅书写三五行JAVA代码就可以搞定文件的上传或下载,方便。
2、能全程控制上传。
利用SmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。
3、能对上传的文件在大小、类型等方面做出限制。
如此可以滤掉不符合要求的文件。
4、下载灵活。
仅写两行代码,就能把Web服务器变成文件服务器。
不管文件在Web服务器的目录下或在其它任何目录下,都可以利用JSPSmartUpload进行下载。
5、能将文件上传到数据库中,也能将数据库中的数据下载下来。
另外,JSP对上传文件的支持不像PHP中支持的那么好,直接做成了函数,也不像ASP中要通过组件才能实现。
JSP中可以通过JavaBean来实现。
但是我们没有必要自己去写一个上载的Bean,在网上已经有了很多成型的技术,Smartupload就是其中的一个。
但是Smartupload是将文件先读到服务器的内存中,所以上传太大的文件(超过100M)有可能会出问题。
4.1输入输出要求
输入:
玩家可以通过PC键盘控制游戏:
“上”“下”“左”“右”快捷键、中间“确定”键以及左右软键。
“上”“下”“左”“右”快捷键控制己方飞机的上下左右移动。
左软键选择释放清屏大招,右软键退出。
中间“确定”键表示选择。
输出:
进入游戏后屏幕上显示玩家所得的分数,玩家所用的时间,玩家剩余血量、大招数和生命值。
当玩家所控制的飞机被击败后,输出一个消息“Game Over!
”表示游戏结束。
若玩家分数打破当前系统前三名记录,则弹出消息框提示玩家输入用户名,以保存新的前三名记录。
Finish
改变相关属性
吃到“礼物”
血数是否为零
命数是否为零
被子弹或者敌机击中
击毁敌方飞机
减少相应血数
增加分数
Start
选择飞机类型,初始化飞机信息
飞机出现于屏幕下方中央,直到结束不断发射子弹
命数减1
4.2数据流程图
4.3数据流图
4.4 界面概览
游戏开始界面:
玩家视角:
ﻩ
技能演示:
ﻩ
结束界面:
五.结果与评价
5.1测试
5.1.1测试的目的
软件测试的目的决定了如何去组织测试。
如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。
如果测试目的是为了给最终用户提供具有一定可信度的质量评价,那么测试就应该直接针对在实际应用中会经常用到的商业假设。
而本系统的测试则着重测试管理员,用户对本系统的满意度、易用性、稳定性进行。
5.1.2黑盒测试
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。
很明显,如果外部特性本身有问题或规格说明的规定有误,用墨盒测试方法是发现不了的。
5.1.3测试环境与测试条件
操作系统:
WindowsXP
浏览器:
IE6.0以上
页面开发工具:
Dreamweaver
Java开发工具:
eclipse, myeclipse
5.1.4实例测试
5.2心得体会
经过一个星期的不断努力,课程设计内容基本上完成了。
首先,在这里要感
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关于 雷电 游戏 软件工程 设计 报告