五子棋概要设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1引言
2.1.1 编写目的
本阶段已在系统的需求分析的基础上,五子棋在线游戏系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。
在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对五子棋在线游戏系统所做的模块结构设计的基础上,对系统进行详细设计。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。
2.1.2背景
1.该软件系统的名称:五子棋在线游戏系统;
2.项目开发者:李恒昌(组长)、张昕、周肖肖、刘入滔、车娜;
3.项目任务提出者:课程设计安排的需要;
4.用户:所有玩家;
5采用单击玩游戏。
2.1.3定义
禁守:对局中禁止使用的战术或被判负的行棋手段。
长连:相同颜色相连的六子或六子以上(不过这种情况是不会出现的)。
服务器:创建游戏或加入游戏时需要连接主机IP
2.1.4参考资料
《软件工程及其应用》周苏、王文等天津科学技术出版社 1992/1 《软件工程》张海藩清华大学出版社 1990/11
2.2总体设计
2.2.1需求规定
五子棋在线游戏系统,要求有至少3个大的功能模块:通讯模块,交互界面,智能模块(计算机可以作为一方加入使得实际玩家人数不多的时候增加人气)其主要功能包括以下几点:
棋盘采用 19×19围棋棋盘
本系统追求操作简单、高效、智能
一方创建游戏,另外一方可以加入游戏
修改玩家姓名
能完成模式选择功能双人对战
具有通讯功能
选择界面颜色
能判断胜负
第三者可以进入游戏界面观战
2.2.2运行环境
硬件配置(推荐):
CPU:P4—1GHZ或更高
内存:128M或更多
显示器分辨率:800x600或更高
运行本软件的系统平台:
Windows xp
Windows 2000
Windows 2000
Windows7
Windows 2003
开发工具:
Java
2.2.3基本设计概念和处理流程
1.界面以及落子处理
1. 利用参数创建一个Socket的实例来完成和服务器之间的信息交换
2.使用19×19围棋棋盘的状态,以1表示放黑子的位置,以-1表示放白子的位置;
3.以鼠标的状态提示当前持子的一方;
4.加载棋子资源(黑、白棋子),当鼠标在棋盘上点击的时候产生事件,处理鼠标的位置产生对应的棋盘坐标位置;
5.判断落子出是否可以落子:不可以则不做任何处理,不改变鼠标的状态;可以落子,则打印对应的棋子图像,记录棋盘位置,并将位置传递给判定函数;
6.交换持子方,重复落子过程,直到判定函数产生胜出结果
7. 一方获胜时的对棋局的处理: 清除所有的棋子, 将保存所有黑棋和白棋的位置坐标的数组清空,为西一盘棋做准备, 如果黑棋获胜,计算双方获胜盘数,将双方的战绩比在状态文本框显示出来,白棋获胜,同上
2.五子棋判胜
本功能模块主要对游戏的胜负进行判定.
1.由玩家输入棋子所在位置,由系统判定胜负,若胜,则游戏结束;否则,游戏继续.
2.五子棋的判胜条件即为5个相同的棋子连在一条线上.
如图,黑子在下一步吉黑子获胜:
3.若棋盘下满,仍未有五子连线,则判和
2.2.5功能需求与程序的关系
2.2.6人工处理过程
2.2.7尚未解决的问题
2.3接口设计
2.3.1用户接口
2.3.2内部接口
2.3.3外部接口
2.4运行设计
2.4.1运行模块组合
2.4.2运行控制
2.4.3运行时间
2.5系统数据结构设计
2.5.1逻辑结构设计要点
2.5.2物理结构设计要点
2.5.3数据结构与程序的关系2.6系统出错处理设计
2.6.1出错信息
2.6.2补救措施
2.6.3系统维护设计