摘 要:介绍了符合学院教务管理特点的排课系统的设计与实现。系统使用Eclipse为开发环境,采用Java语言和MySQL数据库为基础进行开发。系统实现了课程管理、排课管理、教师课表、导入导出和打印等功能,具有设计合理、操作方便、界面美观的特点。结合系统的实际情况,提出了系统的改进方向。
关键词:Java;MySQL;排课系统
1 概述
学校排课在教务管理系统中是一项非常重要和复杂的管理工作。手工排课具有数据量大、费时费力和容易出错的特点。采用自动化系统进行排课,可以克服手工排课的缺点,有效提高排课效率。排课系统采用MySQL数据库存储课程信息,该数据库具有体积小、容量大的特点,适合本系统的开发[ 1 ]。系统使用Java 语言进行界面设计和功能实现。Java语言具有跨平台、多线程等特点,适合管理类系统的设计与实现。
系统首先实现了课程管理功能,该功能可以实现课程信息的录入,包括课程名称、任课教师、课时、学分等信息。在课程管理功能中,可以实现课程信息的浏览、修改、删除等功能。然后,系统实现了排课管理功能,该功能可以按照班级进行排课,可以实现单双周排课、合班排课。最后,设计了教师课表功能,该功能可以查看教师整周的课程安排。系统界面设计采用Java Swing进行设计。Swing作为Java的用户界面开发工具包,包含了非常丰富的组件,使用这些组件可以快速地编写出用户界面。应用Java的事件处理机制,可以方便实现系统与用户的交互。
2 系统设计
系统采用C/S模式进行设计。排课系统是学院教务管理系统的一部分。学院教务管理系统已经投入使用,在该系统的基础上进行扩展并设计实现了排课系统。排课系统与教务管理系统中的教师信息管理具有联系,因此,在排课系统设计时,模块实现应符合现有系统的特点,数据库表的设计应于已有数据保持一致。
3 数据库设计
使用MySQL进行数据库设计,根据各个功能的需求分析,进行数据库的设计。课程信息表主要负责存储班级学期开设课程的信息,根据这些信息进行排课时,可以减少排课时手工录入课程信息的操作。课程信息表的字段包括学期、班级名称、课程名称、周课时、任课教师。排课信息表存储的是排课信息,在排课过程中实时存储排课信息,可以有效地验证排课的冲突。排课信息表的字段包括学期、班级名称、节次、时间、类型、课程名称、任课教师、地点。
4 课程管理功能
课程管理功能分为课程开设和课程汇总。课程开设主界面如图1所示。首先选择开设学期,然后点击左侧的“添加”按钮可以实现班级的添加。选择左侧列表的班级,点击“取消”按钮,可以实现取消班级的操作。当需要为班级添加课程时,在左侧列表选择相应班级,在右侧点击“新增”按钮,可以输入该班级在本学期开设的课程名称、课时、任课教师等信息,系统会自动统计课时总量。点击“修改”按钮,可以对某门课程进行修改,点击“删除”按钮,可以删除某门课程。
5 排课管理功能
排课管理主界面如图2所示。选择学期和班级,自动生成排课表格,在此表格中,可以进行排课。当排课冲突时,系统进行提示。在排课时,分为“排课”和“单双周”排课两种方式。点击“排课”按钮,可选择所排课程,这些可选课程是的课程管理功能中所录入的课程信息。输入上课地点信息以及是否合班上课,点击“保持”按钮,可以实现保存此排课信息的功能。对于实验实训课程和理论课程,课表通过不同字体颜色进行区分,这样便于用户识别不同类型的课程。该模块还设计了导出和打印功能。导出课表为Excel文件可以方便用户对课表进行进一步的编辑。教师课表功能可以显示某教师每周任课情况,对于任课较多的教师,通过查看每周任课情况,可以合理安排教师上课时间。
6 结语
排课系统作为教务管理的一部分,投入使用后达到了预期的效果。该系统可以有效帮助教务管理人员实现排课任务。在实际运行中,存在两个方面需要改进,一方面是系统界面需要进一步美化;另一方面是在排课时对课时的安排上需要进一步优化。
参考文献:
[1] 李舒,陈丽君.高校学生成绩管理系统的设计与实现[J].辽寧大学学报:自然科学版,2006,3(3):283-285.
[2] 徐亮.高校智能排课系统的研究[J].电子设计工程,2013,21(7):24-27.
[3] 张小红.高校排课系统的设计与实现[J].电子科技,2012,25(7):45-47.
[4] 苏贞,陈海关.高校智能排课系统中蚁群算法的应用探讨[J].兰州教育学院学报,2013,29(7):120-121.
作者简介:张微微(1980-),女,硕士,讲师,研究方向:计算机软件技术。