1、附件一:厦门大学软件学院毕业设计(论文)开题报告学生姓名 班级 学号校内指导教师姓名 职称 所在单位厦门大学软件学院毕业设计(论文)题 目儿童围棋入门学习软件的设计与实现设计模块 毕业设计(论文)的目标:整体软件目标:围棋在中国已有 2000 多年的历史了。琴、棋、书、画是中国古老而悠久的文化,历来受到世人的尊崇。我国提倡大家学习围棋,特别是希望少年儿童学习围棋,通过围棋来培养他们的竞争意识,从而达到提高全民族文化素养的目的。但是现在市面上关于儿童围棋这方面的软件还不多,所以很有必要设计这样的一套软件来专门给儿童来学习围棋知识。软件的主要功能是让儿童学习到一些围棋的入门知识、初级理论、定式、手
2、筋、官子等部分,并有相关的测验。根据儿童特色,应将界面做的友好,突出学习性、趣味性和娱乐性。希望通过这个软件的学习,能使更多的孩子爱好围棋,并通过对围棋的学习,使小朋友们变得更加聪明。儿童围棋入门软件主要有以下几个特色:1. 互动性强。与传统的教学类书籍相比,软件的互动性更强,儿童在实际动手操作的过程中,学习到围棋的知识。2. 娱乐性强。学习的过程中,程序会伴有轻松活泼的提示语,让儿童在学习的过程中不会感到枯燥。3. 可扩展性强。软件允许设置给儿童学习的围棋定式,丰富学习的内容。围棋软件设计模块目标:软件预计实现以下功能:1. 能够教授使用者关于围棋的基本规则和术语。2. 能够传授关于围棋的基
3、本战术。3. 能够以固定的棋局来测试使用者的学习程度。实现方法:基本环境:开发工具:Visual C+开发语言:C+开发平台:Windows界面采用 Visual C+的可视化编程工具,来简化程序的开发,采用MFC 的单文档应用程序,由 MFC 生成基本的文档界面.在生成的视图CPP 文件的 OnDraw 函数里分别画出棋盘边框,底色,星位点,格子,坐标,棋子。在鼠标左键点击键盘时,OnLButtonDown 函数实现棋盘上棋子的显示.基本的棋盘界面如下:棋盘的下方设置悔棋按钮,用来取消当前下的棋子,回到上一次的棋盘状态。棋盘的下方设置一个显示时间的文本域,来提醒用户从棋局开始到现在的时间。程
4、序的菜单栏分为:基本知识,布局测验,棋形测验,设置这几个菜单。目标:1. 教授使用者关于围棋的基本规则和术语:1) 首先是从教授儿童从认识棋盘开始,介绍关于纵横十九道、星、天元,以及小目、三三、高目和目外的概念。围棋盘是由 19*19 的纵横垂直的平行线交叉而成的,这些线在棋盘上形成了 361个交叉点。为了便于识别棋盘上棋子的位置,盘上有九个小圆点,就叫做星。棋盘分为角,边和中腹三部分,有 4 个角,4 条边,中央部分就是中腹。盘面有四个角星,4 个边星,中腹正中央的星有个特殊的名字“ 天元”。围棋最外一条线叫做边线,也叫一线,向里依次叫二线,三线,四线等。一般以四线为边和中腹的分界线。小目:
5、是三线和四线的交点。注意:有两个小目。三三:两条三线的交点。三三在两条边的重复处,它部倾向于任何一边。注意:只有一个三三。高目:(白色)是四线和五线的交点。高目相对位置较高,但它明显倾向自己位置较低的一边。有两个高目。目外:是三线和五线的交点。目外相对一边位置较高,但它明显倾向自己位置较低的一边。有两个目外。2) 然后是如何落子,提子和打劫的规则:落子的规则:下棋时,由持黑棋的一方先下子,以后双方轮流下子,每次只能下一个子,棋子落在棋盘的点上,棋子下定以后,不得向其他点移动。这就是落子的规则。提子的规则:当一方的一个子或者作为整体的几个子的气点被另一方的棋子全部占邻,这些子就处于了无气状态,无
6、气的棋子不能在棋盘上存在,必须全部提出(拿出)棋盘。这就是提子的规则。打劫的规则:为了防止双方在同一个位置反复提子,规定,打劫时,当一方首先提子后,另一方不能立即回提,必须间隔一个回合,彼此各走一手后才能回提。这就是打劫的规则。2. 教授使用者关于围棋的基本战术:通过以固有的残局的方式,教授使用者关于“断” , “打” , “提”等三种基本进攻手段和“长” , “接”两种基本防御手段的技巧。使对方的棋子暂时或永远不能形成整体的手段叫断。下了一手棋以后,如果下一手就要提掉对方的棋子,那么这手棋就叫打。提就是基本规则中的提子。长是在己方棋子直线紧邻处的点上下子。接就是为了防止己方被提子而增加气的长
7、。在“基本知识”选项中,用户可以选择某个棋局进行对弈,一个棋局会具体介绍一个方面的基本知识。3. 使用存储的固有的棋局,与使用者对弈。 “布局测验”里的子菜单项都是有关围棋布局方面的测验的棋局,用来测验用户对围棋布局方面的水平;“棋形测验”里的子菜单项是有关围棋各种著名棋形的测验的棋局;而“设置”菜单用来添加,删除和修改系统里的棋局,添加,删除和修改这三个子菜单里又分别有基本知识,布局测验,棋形测验三个子菜单项。添加棋局时,系统会显示基本的棋盘界面,用户在添加完棋子后,点击保存按钮,即可添加棋局。棋局是以文件的形式保存在系统里。基本环境:开发工具:Visual C+开发语言:C+开发平台:Wi
8、ndows时间进度安排:2008 年 11 月 17 日-2009 年 12 月 28 日:查阅相关书籍资料,所有概念的细节敲定,并完成相应文档资料。2008 年 12 月 30 日-2009 年 1 月 6 日:征求导师意见后进一步改进,整理提交毕业设计开题报告。2009 年 1 月 6 日-2009 年 2 月 10 日:对必要技术及工具进一步了解学习。2009 年 2 月 11 日-2009 年 4 月 30 日:完成基本代码修改与编写,整个模块基本完成。2009 年 5 月 1 日-2009 年 5 月 20 日:测试阶段。2009 年 5 月 21 日-2009 年 5 月 31 日
9、:复查。2009 年 6 月 1 日-2009 年 6 月 5 日:项目文档终稿完成,提交毕业论文,准备毕业答辩。指导教师审核意见:校内指导教师签名: 年 月 日附件二:厦门大学软件学院毕业设计(论文)中期检查报告学生姓名 班级 三班 学号校内指导教师姓名苏淑文 职称 助教 所在单位 厦门大学软件学院毕业设计(论文)题 目儿童围棋入门学习软件的设计与实现-设计模块 毕业设计(论文)的目标:整体软件目标:围棋在中国已有 2000 多年的历史了。琴、棋、书、画是中国古老而悠久的文化,历来受到世人的尊崇。我国提倡大家学习围棋,特别是希望少年儿童学习围棋,通过围棋来培养他们的竞争意识,从而达到提高全民
10、族文化素养的目的。但是现在市面上关于儿童围棋这方面的软件还不多,所以很有必要设计这样的一套软件来专门给儿童来学习围棋知识。软件的主要功能是让儿童学习到一些围棋的入门知识、初级理论、定式、手筋、官子等部分,并有相关的测验。根据儿童特色,应将界面做的友好,突出学习性、趣味性和娱乐性。希望通过这个软件的学习,能使更多的孩子爱好围棋,并通过对围棋的学习,使小朋友们变得更加聪明。儿童围棋入门软件主要有以下几个特色:4. 互动性强。与传统的教学类书籍相比,软件的互动性更强,儿童在实际动手操作的过程中,学习到围棋的知识。5. 娱乐性强。学习的过程中,程序会伴有轻松活泼的提示语,让儿童在学习的过程中不会感到枯
11、燥。6. 可扩展性强。软件允许设置给儿童学习的围棋定式,丰富学习的内容。围棋软件设计模块目标:软件预计实现以下功能:4. 能够教授使用者关于围棋的基本规则和术语。5. 能够传授关于围棋的基本战术。6. 能够以固定的棋局来测试使用者的学习程度。已经完成毕业设计(论文)任务的情况: 儿童围棋入门软件所需的开发环境已架构成功 已下载开发围棋软件同类产品的参考代码 对参考源码的研究取得了一定的成果,搞清楚了它的基本结构和一些重要技术特征,明白了具体的设计思路存在的问题和困难(包括需要学院协助解决的问题和困难):指导教师审核意见:校内指导教师签名: 2009 年 月 日学院检查组意见:学院检查组组长(签
12、章): 2009 年 月 日附件三:毕业论文任务书题 目:儿童围棋入门学习软件的设计与实现目标要求:介绍儿童围棋入门学习软件的研究背景,研究现状,以及其发展趋势,然后对系统给出自己的设计方案,最后对研究课题和系统项目进行总结,并对下一步工作做出展望。文章中将用相当的篇幅介绍儿童围棋入门学习软件的设计,力求阐明其中的每个步骤。支持条件:查阅了 20 篇国内外相关的参考文献提供了理论支持;自己经过两个月的钻研,开发出的儿童围棋入门学习软件成功的满足了儿童围棋入门学习软件产品的主要需求,提供了有力的实践支持。校内指导教师(签名) 职称 学生(签名) 附件四: 分阶段进度安排阶段起讫时间 计划完成内容
13、1 2008 年 11 月 17 日-2008 年12 月 28 日查阅相关书籍资料,所有概念的细节敲定,并完成相应文档资料。2 2008 年 12 月 30 日-2009 年1 月 6 日征求导师意见后进一步改进,整理提交毕业设计开题报告。3 2009 年 1 月 6 日-2009 年 2月 10 日对必要技术及工具进一步了解学习。4 2009 年 2 月 11 日-2009 年 4月 30 日完成基本代码修改与编写,整个模块基本完成。5 2009 年 5 月 1 日-2009 年 5月 20 日测试阶段。6 2009 年 5 月 21 日-2009 年 5月 30 日复查。7 2009 年
14、 6 月 1 日-2009 年 6月 5 日项目文档终稿完成,提交毕业论文,准备毕业答辩。注:一般可分为资料文献搜索、拟定方案(提纲) 、试验或初稿、定稿等阶段附件五: 教师分阶段指导记录第一阶段:掌握学生技术背景与状况,介绍课题的需求与总体要求、开发平台。根据学生与课题特点,完成课题分组,确定组员的主要任务。安排学生收集、阅读相关材料,完善需求分析并在此阶段完成技术架构搭建。第二阶段:了解上阶段学生的完成状况,讨论并确定课题的功能框架,确定每个成员需完成的具体任务。讨论并修订学生的开题报告。安排学生开始进一步的系统详细设计。第三阶段:了解学生的设计与开发状态,讨论并修订中期报告。安排进一步系统联调工作。第四阶段:了解系统的整合情况,讨论并总结遇到的问题,督促开发保质按时完成。第五阶段:了解学生系统最后的完成状态,指导学生完成毕业论文的撰写,以及答辩准备工作安排。附件六:本科毕业论文评分表论文评语拟评成绩 校内指导教师(签名) 职称 2009 年 月 日论文评阅 评阅成绩 评阅教师(签名) 职称 2009 年 月 日答辩记录演示成绩 答辩成绩 答辩小组组长(签名) 职务(称) 2009 年 月 日总评成绩 学院负责人(签盖) 2009 年 月 日