毕业论文-高校排课系统的研究与设计.doc
文本预览下载声明
本科毕业论文
(科研训练、毕业设计)
题 目:高校排课系统的研究与设计
姓 名:
学 院:软件学院
专 业:软件工程
年 级:
学 号:
指导教师(校内): 职称:
指导教师(校外): 职称:
年 月 日
高校排课系统的研究与设计
摘要 针对厦门大学以往采用的排课系统,排课结果不尽人意,需要人工反复修改等的不足,总结经验,认真分析了排课算法的数学模型,结合我校教育资源特点,开发这套独立可靠的排课管理系统,以实现开课计划、教师信息和教学资源信息电子化,排课管理流程化。
本论文阐述了该排课系统的需求分析及意义,详细描述了系统的整体结构和实现方法,根据厦门大学教学排课需要,设计了基于优先级的自动排课算法。文中详细介绍了排课算法的设计与实现、数据库的设计与实现、数据录入、信息查询的设计与实现。在时间选择的灵活性、优先级的计算、等价类的划分、算法复杂性的降低等进行了自我特色的改进,并在编程上得到实现。
关键词 自动排课 排课算法 优先级 等价类别
目录
第一章 绪论 1
第一节 问题的提出 1
第二节 计算机自动排课的发展历程 1
第三节 本课题的意义 2
第二章 系统开发环境 3
第一节 系统平台Windows2000 3
第二节 数据库Access 4
第三节 应用开发工具 JBuilder 9.0 4
第三章 课题内容及系统分析 4
第一节 需求分析 4
第二节 系统总体结构设计 5
第三节 数据库设计 5
第四节 算法设计 6
第四章查询模块的设计与实现 6
第一节 与本系统相关之JBuilder数据控件说明 6
第二节 查询模块的功能及实现方法 8
第三节 教师课程安排的查询 10
结论 13
鸣谢 13
英文摘要 14
参考文献 15
第一节 问题的提出第二节 计算机自动排课的发展历程
课表在教学中的地位和作用
本系统根据厦门大学排课的实践要求,分析了排课问题的数学模型,设计了一种基于优先级的自动排课算法,该算法通过划分等价类、计算优先级等方法大大降低了课程调度的算法复杂性,从而可以以较快的速度获得较为满意的排课结果。同时,在设计算法的过程中我们也非常注意其普遍适用性,使其不仅仅局限于厦门大学的具体情况,此外,该算法对于解决其他多约束、大规模时间问题也将会具有一定的参考价值。该系统的主要功能是在用户输入排课所需要的数据之后,以不同的方式进行排课,然后就可以把排好的课表以多种形式进行打印输出。
系统开发环境
第一节 系统平台Windows2000
Windows2000具有稳定、图形用户界面(GUI)、多任务的优点、支持多种函数调用、消息驱动体系结构等显著的优点,同时便于日后系统升级到网络环境,因此作为本次的开发平台。
第二节 数据库Access
Microsoft Access是当今最流行的关系数据库管理系统之一,基本的核心是Microsoft Jet数据库引擎,能满足小型企业客户/服务器解决方案的要求来组建客户/服务器的数据库应用系统,是一种功能较完备的系统,几乎涵盖了数据库领域的所有技术和内容。此外Access使用图形界面管理数据库对象,便于操作与维护。
第三节 应用开发工具 JBuilder 9.0
(1) Java语言简介
Java语言是完全面向对象的程序设计语言。它可以适用于编写独立程序,主要有以下几个方面优点:简单、面向对象、分布式、解析执行、健壮、安全、可移植性、高性能、多线性及动态性。
(2) JBuilder开发环境
JBuilder是一款非常优秀的Java可视化开发环境,它是由Borland公司推出的一种基于组件技术的可视化Java开发工具,并适用于各个层次上的Java程序开发,其中包括开发JavaBeans组件、编写XML文档、开发数据库应用程序以及实现网络链接和多媒体技术等等。
第三章 课题内容及系统分析
第一节 需求分析
自动排课系统目的在于较好的处理教师、学生和班级三者间的关系,他们间的相互约束总体分为以下两类
(1)绝对性约束,例如下列情况:
同一个教师在同一时间只能上一门课
同一教室在同一时间只能允许一个班级上课
最大班级人数一定要小于最大教室容量
计划课程的数量一定要小于等于教室数量乘以二十
多媒体课程数小于等于多媒体体教室数乘以二十
多媒体课程一定要有多媒体设备
满足教室强制性占用不能安排课程的时间
满足老师不能上课的时间
(2)相对性约束,例如下列情况:
必修课应尽量安排在上午
不要求多媒体的必修课在教室无法满足的情况下可以占用多媒体教室
选修课应尽量安排的下午和晚上
不要求多媒体的选
显示全部