实验室排课系统研究毕业论文
2021-07-12 22:17:43
摘 要
排课问题在很早的时候就被证明是NP完全问题,无法在多项式时间内完成,很多复杂的算法也加入了对于排课问题的研究。在当今网络非常发达的时代,自动排课系统取代手动排课的趋势不可避免,但是由于排课问题的复杂性,至今没有一个通用的算法。
论文主要是依据软件工程的思想,设计的实验室排课系统能完成自动根据数据库中的数据安排实验课,在学生选课之后可以通过实验室排课系统查看课程信息的功能,系统功能限于本校的信息工程专业的实验室。
本文的特色是通过使用软件工程的思想和面向对象的方法,采用工程的原理和方法设计软件,模拟人类习惯的思维方法开发软件。本文设计的实验室排课系统基本功能都能实现,但在C 语言以及界面显示和数据库运用上还有些不足之处,可在日后对其进行完善。
关键词:排课问题;模块化设计;关系数据库;数据库管理系统
Abstract
Course scheduling problems at a very early age has been shown to be NP complete problems, cannot be done in polynomial time, many complex algorithms also joined the research on timetabling problem. In the age of network is very well developed, the trend of auto-arranging curriculum system to replace manual arranging is inevitable, but because of the complexity of the issue, there is no general algorithm.
Thesis is based on the idea of software engineering, design lab course scheduling system can automatically arrange experiment according to the database, after the students ' course selection through laboratory course scheduling feature to view course information, system functions restricted to University of information engineering lab.
This feature by using the idea of software engineering and object-oriented method, using the principles and methods of engineering design software to simulate the human habit of thinking developed software. This laboratory course scheduling system basic functions can be achieved, but in the C language, and interface display some shortcomings on the application and database, but to improve it in the future.
Key Words:timetabling problem; modular design; relational data base; database management system
目 录
第1章 绪论 1
1.1 研究背景及意义 1
1.2 国内外研究现状 1
1.3 研究内容 2
第2章 需求分析 4
2.1 综合要求 4
2.2 性能需求 4
2.3 约束条件 5
2.4 系统逻辑模型 5
第3章 总体设计 8
3.1 实验室管理系统设计原则 8
3.2 系统功能设计 9
3.3 系统流程设计 11
3.4 数据库设计 13
第4章 详细设计与功能实现 16
4.1 管理员子系统详细设计 16
4.2 学生子系统详细设计 19
4.3 功能实现 21
第5章 总结 25
参考文献 26
致 谢 27
绪论
研究背景及意义
21世纪是网络信息飞速发展普及的时候,信息网络已经不可避免的对科技经济以及人们的工作、生活产生了广泛而深刻的影响,在我们生活的方方面面都有网络渗透的影子,因此在以前实验室排课都是人工作业的情况已经不能适应现在高速发展的网络工程和计算机科学,由于以前的人工排课方法有诸多缺点,未来将不可避免的被实验室排课系统代替,本文的研究基础由此而来。
高校实验室对于学校的实践教学体系有着重要意义[1],对于现代大学生来说,重要的不只是课堂上的理论研究,将理论联系实际,解决在生活工作中出现的各种实践问题更加重要,而好的实验安排可以说是大多数大学生联系实际,操作理论知识的重要平台。
实验室教学最重要的资源就是实验室资源,教师和学生到实验室完成课程,课程过程为在上课之前先通知上课教师和学生。传统的方式是由很多人员手工进行管理,工作量大,工作效率很低。如果能通过实验室排课系统更有效的自动化管理安排实验,就能提高实验室排课的工作效率。
高校实验室不可避免的面临着很多问题,每学期开学之前要根据学院教学计划,考虑教师情况和教室情况等因素合理的安排实验室,以供教师和学生使用,使得教学工作可以正常、有序的按照教学计划进行。由于各种各样的原因,例如资金不足、设备昂贵等等原因,实验室资源非常有限,不能随意浪费[2]。影响教室调度的问题是一个多组合的问题,考虑时间、空间和课程多方面的因素,教师和不同学科的课程不应该有冲突,它需要在可行的系统中引入相关元素[3]。
国内外研究现状
国外研究现状
对于排课问题的研究,国外针对排课问题展开的较早,在1963年,Gotlieb提出了课表编排的数学模型[4]。1976 年S Even第一次证明了课表问题是NP完全的[5]。在上世纪80年代模拟退火算法得到了应用[6],在此算法的基础上,排课问题取得了一些成果。进入90年代,国外对排课问题的研究有了更多进展。A.Tripathy运用了拉格朗日松弛法和分支定界技术求解[4]。
同时,在上个世纪中的时候,实验室管理系统开始产生[7],随着实际生活工作中遇到的问题不断增加,第一代实验室管理系统已经不能满足人们的需求。到了上世纪八十年代,基于C/S架构的实验室管理系统开始发展,极大提高了实用能力,而到了下一代实验室管理系统,建立在互联网的基础上,基于B/S架构,与数据库系统相结合,用户可以通过浏览器完成所有操作。