俄罗斯方块系统设计说明书版本号:V1.0班级:项目组长:小组成员:任课教师:职称:日期:俄罗斯方块系统设计说明书TetrisV1.0更改控制页编目号:序号版本号更改时间文件更改申请表(DCR)编号填写人黑龙江科技大学--俄罗斯方块系统设计说明书TetrisV1.0目录第一章前言...................................................................................................................................11.1编写目的....................................................................................................................11.2项目概述....................................................................................................................11.3组织结构与人员职责................................................................................................11.4理解面向对象分析与设计........................................................................................2第二章面向对象分析...................................................................................................................32.1需求描述....................................................................................................................32.2建立功能模型............................................................................................................32.3建立动态模型............................................................................................................52.4建立对象模型............................................................................................................72.5界面设计....................................................................................................................8第三章面向对象设计.................................................................................................................103.1系统架构设计..........................................................................................................103.2模型层设计..............................................................................................................113.2.1方块类(Brick).............................................................................................123.2.2墙类(Wall)..................................................................................................133.2.3提示信息类(Prompt)..................................................................................133.2.4业务类及其关系设计.....................................................................................143.3视图层设计..............................................................................................................153.4控制层设计..............................................................................................................16第四章面向对象实现.................................................................................................................184.1模型层实现(cn.usth.tetris.model)......................................................................184.2视图层实现(cn.usth.tetris.view).........................................................................184.3控制层实现(cn.usth.tetris.model)......................................................................18俄罗斯方块系统设计说明书TetrisV1.01第一章前言1.1编写目的详细说明用户需求,并将其作为系统分析、设计和测试的依据。预期读者:分析人员、设计人员、测试人员。1.2项目概述该项目使用面向对象软件工程方法设计并实现一个俄罗斯方块游戏。项目进程包括面向对象软件工程的三个阶段,即:面向对象分析、面向对象设计和面向对象实现。系统框架易于扩展,可以在此基础上增添各种功能、扩展游戏用户数,并方便集成其它项目中。该项目用于面向对象软件工程案例教学,达到以下教学目的:(1)如何使用面向对象软件工程方法进行软件开发;(2)如何使用面向对象的思想降低问题的复杂性;(3)如何使用MVC框架的思想进行程序开发;(4)如何使用java语言具体地实现一个俄罗斯方块游戏。1.3组织结构与人员职责组长:班级学号姓名分工黑龙江科技大学--俄罗斯方块系统设计说明书TetrisV1.021.4理解面向对象分析与设计面向对象分析与设计方法要求在设计中要映射现实世界中指定问题域中的对象和实体,例如:顾客、汽车和销售人员等。这就需要设计要尽可能地接近现实世界,即以最自然的方式表述实体。所以面向对象技术的优点即为能够构建与现实世界相对应的问题模型,并保持他们的结构、关系和行为模式。大师说:没有不变的需求,世上的软件都改动过3次以上,唯一一个只改动过两次的软件的拥有者已经死了,死在去修改需求的路上。需求是不稳定的,那么需求之中是不是没有稳定的东西呢?有的,就是对象。世界都是由对象组成的,而对象都是持久的,例如动物、植物已经有相当长的时间。虽然对象也在变化,动物,植物也在不断的进化。但对象在一个相当长的时期内都存在,动植物的存在时间肯定比任何一家企业长久。面向对象的开发方法的精髓就是从企业的不稳定需求中分析出企业的稳定对象,以企业对象为基础来组织需求、构架系统。这样得出的系统就会比传统的系统要稳定得多,因为企业的模式一旦变化,只需要将稳定的企业对象重新组织就行了。这种开发的方法就被称为OOAD(ObjectOrientAnalysis&Design面向对象的分析和设计),而分析出的企业对象就被称为公共商务对象(CommonBusinessObject)。本段摘自:黑龙江科技大学--俄罗斯方块系统设计说明书TetrisV1.03第二章面向对象分析2.1需求描述(1)随机产生经典俄罗斯方块图形,每种方块颜色不同;(2)可以设置游戏难度级别,级别越高方块下落速度越快;(3)可以暂停游戏或继续游戏;(4)方向键实现下落方块的左移、右移、加带下落、变形等基本操作;(5)方块下落后,下方如果有满行,则将满行消除(6)对游戏成绩进行记分并显示。2.2建立功能模型1.系统用例图使用UML进行系统分析,就是使用面向对象方法来分析系统,以此建立面向对象的系统模型。此处主要采用UML的例图、活动图对俄罗斯方块游戏的需求进行分析,并建立功能模型。识别参与者:构造系统的用例模型首先要确定参与者,参与者是与系统、子系统或类发生交互的外部用户、进程或其他系统理想化概念。通过上面的用户分析,可以确定该系统的参与者为游戏玩家。识别用例:用例是规定系统或部分系统的行为,它描述系统所执行的动作序列集,并为执行者产生一个可供观察的结果。根据需求描述,可以得到以下用例图,系统顶级用例如图2.1所示。黑龙江科技大学--俄罗斯方块系统设计说明书TetrisV1.04开始游戏用例如图2.2所示。图2.1系统顶级用例显示下一方块设置初始级别开始游戏提示信息includeplayer退出游戏图2.2开始游戏用例开始游戏显示方块include旋转extends左移extends右移extends下移extends加速下移extends暂停游戏extends继续游戏extendsplayer游戏结束extends计算游戏级别消行extends计算得分includeinclude黑龙江科技大学--俄罗斯方块系统设计说明书TetrisV1.052.典型用例描述(1)开始游戏表2-1开始游戏用例描述用例名称开始游戏功能简述用户通过方向键控制方块的旋转、左移、右移、加速下移前置条件启动游戏程序主要成功场景1.用户开始一个新游戏2.用户将方块旋转到一个适当的方向3.用户左移方块4.用户右移方块6.用户加速下移方块7.方块落到最下方扩展路径1a.用户暂停游戏1b.用户继续游戏7a.系统将满行消除7b.游戏结束后置条件无备注(2)提示信息表2-2提示信息用例描述用例名称提示信息功能简述根据用户操作实时显示相关游戏信息前置条件启动游戏程序主要成功场景1.用户设置游戏初始级别2.用户开始一个游戏3.显示用户下一个将要出现的方块4.显示用户消除的总行数和总得分扩展路径2a.游戏结束2a.1显示游戏结束对话框后置条件无备注2.3