指尖

养成无时无刻记录的习惯
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

自动排课系统

Posted on 2014-03-26 14:27  指尖  阅读(556)  评论(1)    收藏  举报

排课是高校教学管理中一项重要而且复杂的基本工作,其实质就是为学校所设置的课程安排一组适当的教学时间与空间,从而使整个教学能够有计划、有秩序地进行。在高校中排课具有很多的约束条件,其中包括教室、班级、学生、课程、上课时间等多种因素,结构和过程也相当复杂。如果完全依靠人工手动完成,则需要耗费大量的人力和时间。因此我们希望设计一套完整的算法,用计算机替代人工来完成排课的工作,从而大大提高排课工作的科学性和准确性,同时提高工作效率,减轻工作人员负担。

目录

第1章 引言.... 3

1.1背景和意义.... 3

1.2论文的主要工作.... 4

第2 章 开发环境与理论基础.... 5

2.1 开发工具及运行环境.... 5

2.2 编程环境及数据库选择.... 5

2.2.1编程环境... 5

2.2.2 数据库... 5

2.2.3 数据库接口的实现... 5

2.3 数据库接口的实现.... 6

2.3.1 VisualC++6.0 数据库开发介绍... 6

2.3.2 ODBC数据源的创建... 6

2.4 排课算法的理论——图论.... 9

第3章 需求分析与总体设计.... 11

3.1 需求分析.... 11

3.1.1 需求的提取... 11

3.1.2 需求定义与规约... 12

3.2 系统总体设计.... 13

3.2.1 系统结构图... 13

3.2.2 数据功能模块设计... 13

3.2.3 系统的主要功能设计... 14

3.2.4 数据库设计... 15

第4章 详细设计与实现.... 18

4.1 数据库操作的准备.... 18

4.1.1 数据库对象的处理... 18

4.1.2 记录集的处理... 18

4.1.3 数据库内容的显示... 19

4.2 用户界面设计.... 20

4.2.1 建立程序主界面——菜单... 20

4.2.4 教师信息管理模块的设计... 21

4.2.5 课程信息管理模块的设计... 21

4.2.6 教室及授课管理模块设计... 22

4.2.7排课管理功能模块的设计... 24

4.3 排课系统核心算法设计.... 24

4.3.1 排课系统算法设计的理论模型... 24

4.3.2 排课算法的数据结构... 25

4.3.3 排课核心算法流程... 27

4.4 排课核心算法的实现.... 29

4.4.1 排课核心算法的实现思路.... 29

4.4.2 排课算法的实现... 29

4.5 算法的改进.... 36

4.5.1基于随机算法的冲突解决方案... 36

第五章 核心算法测试和分析.... 38

5.1 程序集成测试.... 38

5.1.1 排课程序主界面... 38

5.1.2排课资源管理... 38

第6 章 结 束 语.... 41

致谢.... 42

参考文献.... 43

摘要.... 44