1、 软件工程软件工程 课程设计报告课程设计报告 题目题目: 井字棋游戏井字棋游戏 二二 一四一四 年年 十二十二 月一月一 日日 课程设计题目说明书课程设计题目说明书 课程设计题目: 井字棋游戏 设计要求: “井字棋”游戏(又叫“三子棋” ) ,或是一字棋,是一款十分经典的益智小游 戏,想必很多玩家都有玩过。 “井字棋”的棋盘很简单,是一个 33 的格子,很 像中国文字中的“井”字,所以得名“井字棋” 。 “井字棋”游戏的规则与“五子 棋”十分类似, “五子棋”的规则是一方首先五子连成一线就胜利; “井字棋”是 一方首先三子连成一线就胜利。 要求:屏幕输出棋盘和棋子(可用特殊符号代替) , 实现
2、:用户与电脑下棋 难点:判断输赢的算法及简单的人工智能实现 工作量: (根据项目实际情况选择,在所作的工作后打) 具体工作量分为几个部分: 1可行性研究分析和可行性研究报告的撰写工作。 2软件需求的调查和软件需求说明书的撰写; 3软件的概要设计和概要设计说明书的撰写; 4软件的详细设计和详细设计说明书的撰写; 5软件的实现工作,包括代码的实现和实现过程中的具体要求工作; 6测试的准备工作和测试计划报告的撰写; 7整个软件试运行、软件测试、测试报告的撰写和用户手册的撰写工作; 8项目文档和代码的规范化整合; 10整个项目的总结和课程设计总结报告的撰写。 工作计划安排: 11 月 26 日: 确定
3、研究课题,进行可行性研究。 11 月 26 日: 做好内容安排。 11 月 26 日11 月 28 日: 完成概要设计、完成详细设计。 11 月 27 日11 月 28 日: 完成代码的编写。 11 月 28 日: 进行测试和维护。 11 月 28 日: 对整个设计进行补充和检查。 第一章第一章 可行性研究可行性研究 1.1 引言引言 1.1.1 可行性研究目的 在课程设计项目中,井字棋游戏设计作为初学者的我们来说,是个比较适合 和有研究意义的题目。 “井字棋”游戏(又叫“三子棋” ) ,或是一字棋,是一 款十分经典的益智小游戏,想必很多玩家都有玩过。 “井字棋”的棋盘很简单, 是一个 33
4、的格子,很像中国文字中的“井”字,所以得名“井字棋” 。 “井字 棋”游戏的规则与“五子棋”十分类似, “五子棋”的规则是一方首先五子连成 一线就胜利; “井字棋”是一方首先三子连成一线就胜利。虽然这只是个很简单 的小游戏,但作为初学者的我们认识项目设计的技巧与结构及其概念的理解,封 装性、继承派生、多肽的理解及实现,是比较好的课题。对我们以后的大型程序 的设计奠定了基础。所以作为我们这次的课程设计项目来说,我们认为是个很好 的、有可研究性的设计项目。 1.1.2 背景(背景(说明井字棋设计背景,开发目的说明井字棋设计背景,开发目的等)等) 对于 21 世纪的人们来说,游戏日益成为我们生活中必
5、不可少的休闲娱乐工 具。为了满足人们的需要,现在越来越多的人们把游戏作为一种商品对待,就比 如中国,像盛大、网易、滕讯等大型的游戏开发公司更把游戏的研究看作是一棵 摇钱树,所以游戏程序设计人员在未来是不可多得的人才。对于学软件工程的我 们来说,一个优秀的程序员也许是我们学习的优秀目标,所以在出始阶段我们就 注重项目设计的理念, 而且喜欢游戏的我们更希望自己在将来能够做出一个自己 很满意且适合市场的游戏来, 所以我们这次以这个为题目就是想熟悉游戏编程的 最基础的设计思想和实现手段的了解,为我们以后打下基础。虽然井字棋是个很 简单的小游戏,基本上人们都不玩了,但是作为一种我们的设计项目,我们都觉
6、得是个很好的且适合的项目。 1.2 可行性研究的前提可行性研究的前提 1.2.1 要求(说明井字棋的预期要求) 功能:屏幕输出棋盘和棋子(可用特殊符号代替) ; 实现:用户与电脑下棋(可选)功能和修改。 难点:判断输赢的算法及简单的人工智能实现。 1.2.2 目标 首先:能做出棋盘的基本样式。 最后:能实现玩家与电脑的对弈,最好能做到电脑的智能化。 1.2.3 评价尺度 第一:实现电脑的智能化; 第二:做到界面美观易懂; 第三:达到娱乐的最低水平。 第二章第二章 需求分析需求分析 2.1 任务概述任务概述 该软件的设计主要是实现简单的三字棋, 能做到玩家与玩家之间的对弈或者 玩家与电脑之间的对弈,可考虑怎样实现电脑的智能化。其次,从程序的设计过 程中理解实现程序的方法和理念,学会怎么样做到面向对象设计, 理解面向对象 的概念及结构的封装性和实用性,能为以后的设计奠定一些良好的基础。 2.2 对性能的规