软件设计说明书_打飞机游戏大厅系统_第1页
软件设计说明书_打飞机游戏大厅系统_第2页
软件设计说明书_打飞机游戏大厅系统_第3页
软件设计说明书_打飞机游戏大厅系统_第4页
软件设计说明书_打飞机游戏大厅系统_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.打飞机游戏大厅系统软件设计说明书.目录1.介绍 .11.1目的 .11.2范围 .11.3内容概览 .12.体系结构表示方法 .13.系统要达到的目标和限制 .14.用例视图.24.1系统用例图 .24.2登录游戏大厅 .24.3更新用户列表 .34.4选择座位 .44.5摆放棋子 .54.6发动进攻 .64.7反馈结果 .74.8重新开始 .84.9退出游戏 .95.逻辑视图.105.1总览 .105.2主要 package的介绍 .116.过程视图.126.1登录游戏大厅 .126.2准备游戏 .126.3游戏对战 .136.4结束游戏 .137.部署视图.138.规模和性能 .149.

2、质量 .14.软件设计说明书1. 介绍1.1目的这篇文档提供了打飞机游戏大厅系统架构的总览,从不同的视角描述了该系统。同时介绍了打飞机游戏大厅系统的想法,包含架构分析的关键决策,目的在于帮助开发人员理解打飞机游戏大厅系统的基本结构。1.2范围介绍了打飞机游戏大厅系统的登录游戏大厅、游戏准备、游戏对战、结束游戏、更新用户列表。1.3内容概览登录系统用户若要登录游戏大厅,需要输入用户名和正确的服务器端 ip,如果输入错误,则停留在登录页,相反登录到游戏大厅,并更新用户列表;游戏准备用户需要进入一个其他用户未使用的座位,加载游戏界面,并且摆放好棋子的位置后点击准备按钮;游戏对战由最先进入游戏界面的一

3、方发起攻击,另一方返回攻击结果,交换进攻权,依次循环;结束游戏当有一方的三架飞机均被击中头部,结束游戏;更新用户列表当有用户进入或退出游戏大厅时更新游戏大厅用户列表,用户从游戏界面退出时,更新用户信息和大厅信息。2. 体系结构表示方法这篇文档使用一系列视图反映系统架构的某个方面;用例视图:概括了架构上最为重要的用例和它们的非功能性需求;逻辑视图:展示了描述系统关键方面的重要用例实现场景(使用交互图 );部署视图:展示构建在处理节点上的物理部署以及节点之间的网络配置(使用部署图 );过程视图:描述了数据流(使用类图描述数据模型,活动图表示数据流)。3. 系统要达到的目标和限制? 目标.客户可以正

4、确登录,在登录页面输入信息时能够在输入错误的同时看到错误提示;正确登录后可以加载游戏大厅,通知其他人更新用户列表,点击其中一各位被占用的位置后可以进入到游戏界面,双方都摆放好棋子后可以点击准备按钮,开始一次游戏对战。? 限制客户输入的不是服务器ip,客户不能登录到游戏大厅;一个用户无法开始游戏,必须都进入相同桌后点击准备按钮,方可开战。4. 用例视图打飞机游戏大厅系统描述的主要用例有:登录游戏大厅,选择座位,摆放棋子,发起进攻,反馈结果,重新开始,退出游戏,更新用户列表。4.1系统用例图系统用例图见图4.1:游戏系统更新用户列表登录游戏大厅准备游戏 选择座位摆放棋子 发起攻击用户进行游戏反馈结

5、果重新开始结束游戏退出游戏图 4.1 系统用例图4.2登录游戏大厅4.2.1用例简述用户输入用户名和ip 地址登录游戏大厅。系统会通知其他用户更新用户列表。4.2.2基本事件流1用户:在登录界面输入用户名和服务器ip,登录。2 系统:判断 ip 是否符合规则。3 系统:加载登录大厅,更新用户列表。.4 用例结束。4.2.3活动图登录游戏大厅的活动图见图4.2usersystem加载登录界面输入用户名和 ip 地址 否输入ip 不合法 是加载游戏大厅发送更新用户列表图 4.2 登录游戏大厅的活动图4.3更新用户列表4.3.1用例简述由用户登录或退出游戏大厅和坐下时,更新用户列表和信息。4.3.2

6、基本事件流1 客户端系统:发送更新用户列表请求。2 服务器端系统:发送用户列表3 用例结束。4.3.3活动图更新用户列表的活动图见图4.3.usersystem是否更 否 发送更新用户列表新游戏更新游戏大厅界面 是 更新游戏界面图 4.3 更新用户列表的活动图4.4选择座位4.4.1用例简述用户选择空座位进入,同时进入游戏界面,更新用户列表。4.4.2基本事件流1 用户:点击座位想要入座。2 系统:判断此座位是否已有用户。3 用户:用户成功入座。4 系统:加载游戏界面,更新游戏用户列表及用户信息。5 系统:用例结束。4.4.3活动图选择座位的活动图见图4.4.usersystem载入游戏大厅点

7、击位置座位上 否 已有用户 是 加载游戏界面发送更新用户列表图 4.4 选择座位的活动图4.5摆放棋子4.5.1用例简述进入游戏即可移动三个飞机棋子,在双方都进入游戏后,点击“准备”按钮后棋子摆放结束。4.5.2基本事件流1 用户:选择棋子的位置,移动棋子。2 系统:检测移动是否合法。3 系统:检测是否有两名用户都已入座。4 用户:点击准备按钮。5 系统:将棋子画入棋盘,使其不可更改。6 系统:判断谁先进入游戏界面,加载相应组件。7 用例结束。4.5.3活动图摆放棋子的活动图见图4.5.usersystem载入游戏界面移动棋子棋子移 否 动不合法 是 恢复原始位置改变棋子的位置点击准备按钮移除

8、准备按钮先进入 否 游戏界加载反馈组件面 是 加载进攻组件图 4.5 摆放棋子的活动图4.6发动进攻4.6.1用例简述双方都准备后,由显示攻击按钮的一方,通过点击棋盘,自动获取坐标显示在坐标文本框内,点击进攻按钮,发起进攻,同时会在对方棋盘上显示进攻点标记。4.6.2基本事件流1 用户:点击棋盘以获得目标攻击点。2 系统:在坐标文本框中显示出用户点击的目标点坐标。3 用户:点击进攻按钮。4 系统:将攻击点信息发给对方。5 系统:加载反馈组件。6 系统:对反棋盘上显示进攻点标记。7 用例结束。4.6.3活动图发动进攻的活动图见图4.6.usersystem加载游戏界面点击棋盘显示坐标,设置攻击按

9、钮可用点击攻击按钮发送攻击信息移除攻击组件,添加反馈组件图 4.6 发动进攻的活动图4.7反馈结果4.7.1用例简述接到攻击信息后,可以点击反馈按钮组,同时会将反馈结果显示在对方棋盘,做上相应标记。4.7.2基本事件流1 系统:设置反馈组件可用。2 用户:根据攻击情况,点击反馈按钮。3 系统:判断是否是“死”是否被点第三次。3 系统:移除反馈按钮组和攻击点标记。4 系统:添加进攻组件或结束游戏组件。5 系统:对反棋盘上添加与反馈结果相对应的标记。6 用例结束。4.7.3活动图反馈结果的活动图见图4.7.usersystem添加攻击标识设置反馈按钮组可用点击反馈按钮移除反馈按钮组件“死”未 否

10、被点击三添加结束组件次 是 添加攻击组件发送反馈结果图 4.7 反馈结果的活动图4.8重新开始4.8.1用例简述用户击落所有飞机时会显示这个按钮,点击后棋盘恢复初始状态。4.8.2基本事件流1 系统:移除反馈按钮组,加载重新开始按钮。2 用户:用户点击重新开始。3 系统:恢复棋盘及棋子至初始状态。4 结束用例4.8.3活动图重新开始的活动图见图4.8.usersystem移除反馈组件,添加结束组件点击重新开始恢复初始化棋盘图 4.8 重新开始系统的活动图4.9退出游戏4.9.1用例简述用户击落所有飞机时会显示这个按钮,点击后退出游戏界面来到游戏大厅。4.9.2基本事件流1 系统:移除反馈按钮组

11、,添加退出游戏按钮。2 用户:点击退出游戏按钮。3 系统:关闭游戏界面。4 用例结束。4.9.3活动图退出游戏的活动图见图4.9.分区 3分区 4移除反馈组件,添加结束组件点击退出游戏退出游戏界面图 4.9 退出游戏的活动图5. 逻辑视图逻辑视图部分主要叙述了设计阶段的工作。5.1总览图 5.1 的领域模型是打飞机游戏大厅系统的设计实体及其之间的关系;table-leftseat : chairhallcontextchairgemeframe1*-tablearry : table-user : user-attack : object1*-feedback : object*-coorte

12、xt : object1-chessboard : chessboard1-playagain : object-nextplay : objectuserlogin-ready : object-submit : object1gamehall1 +addfeedbackcompenents()-id : string+removefeedbackcompennets()-reset : object-table : table-name : string+addattackcompenents()-gamehall : gamehall-gameframe : gemeframe1-cli

13、entsocket : object+removeattackcompenents()11-user : user*1+login()+addgameovercompenents()+removegameovercompenents()111111clientthreadusercontext-user : userchessboard-user : user-response : response-chesspriece : chesspiececlientaction1+run()+excute()-feedbackimage : feedbackimage1-attackresultim

14、age : attackresultimage1-rule : rules11*111*responserules-clientaction : stringfeedbackimage*-paragram : object-kind : int+isoveral()updateuserlistaction+outofbount()-image : objectchesspiece1gamoveraction-head : stringattackresultimageattackresultaction-shade : string-point : object-image : objectc

15、hangeispreparedwellactionfeedbackactionclintinaction+excute()客户端.dealwithgameoveractionnotifypreparedwellactionserverstartattackaction-serversocket : objectstartfeedbackactionusercomeinaction1receiveinaction*+excute()serverthreadserveraction+run()11+excute()1*requset-clientaction : string-serveracti

16、on : string-paragram : object服务器端图 5.1 领域模型5.2主要 package的介绍打飞机游戏大厅系统package图见图 5.2serverclientactioncommongameaction图 5.2 打飞机游戏大厅系统package图? clientclient 包,他们属于游戏大厅的类。? commoncommon 包,他们属于客户端和服务器端均要使用的公共类。? serverserver包包含 action ,他们属于服务器端的类。? gamegame包包含 actin ,他们属于游戏界面中使用的类.6. 过程视图过程视图部分叙述几个主要子系统的

17、处理流程。6.1登录游戏大厅6.1.1用户登录游戏大厅的顺序图见图6.1userlogingamehallservercomfirm(user);login(user);sendrequest(request)sendresponse(response)图 6.1 用户登录游戏大厅的顺序图6.2准备游戏6.2.1准备游戏的顺序图见图6.4gamehallgameframeserversendrequest(request)sendresponse(response)startgameframe(user)notifyready()addattackcompennets()setisprepar

18、edwell()图 6.4 准备游戏的顺序图.6.3游戏对战6.3.1游戏对战的顺序图见图6.7grameframe1servergameframe2sendrequest(request)addfeedbackcompenent()sendresponse(response)addattackpoint()sendrequest(request)addattackcompenents()sendresponse(response)addfeedbackcompenents()addattackresult()图 6.7 游戏对战的顺序图6.4结束游戏6.4.1结束游戏的顺序图见图6.10gameframe1servergameframe2gamehallremovefeedbackcompenents()addgameovercompenents()sendrequest(request)sendresponse(response)removefeedbackcompenents()playagain()addgameovercompenents()nextplay()图 6.10 结束游戏的顺序图7. 部署视图部署视图描述了如何将具体软件制品分配到计算节点(具有处理服务的某种事物) 上,表示了软件元素在物理架

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论