大学自动排课算法设计与实现(概要设计)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在查询模块中教师,学生可以通过该软件查到自己需要的课表,管理员则可以查询所 有的课表。
7.接口设计
1、 用户接口 A. 建议使用 1024*768 分辨率。
2、 软件接口 数据管理系统 A. 名称:Access 数据库。 B. 助记符:DB(Database)。 C. 版本号:Microsoft Office Access 2003(11.8166.8221) sp3。 D. 来源:互联网。
1.3 读者对象
管理员、教师、学生。
1.4 参考文献
Java2 实用教程(第三版) 作者:耿祥义、张跃平 出版社:清华大学出版社 出版日期:2006 年 8 月
数据库系统概论(第四版) 作者:王珊、萨师煊 出版社:高等教育出版社 出版日期:2008 年 12 月
1
数据结构 作者:严蔚敏、吴伟民 出版社:清华大学出版社 出版日期:2008 年 11 月
大学自动排课算法设计与实现
软件概要设计说明书
学院 专业 题目 小组成员
电子与计算机科学技术学院 软件工程
大学自动排课算法设计与实现 林琳、罗文凤、顾晓、史东海
I
版本
章节名称
修订记录
修订内容
修订日期 修订人
批准人
II
目录
1. 文档介绍.......................................................................................................................................1 1.1 文档目的.................................................................................................................................1 1.2 文档范围.................................................................................................................................1 1.3 读者对象.................................................................................................................................1 1.4 参考文献.................................................................................................................................1 1.5 术语与缩写解释.....................................................................................................................2
不考虑合班上课的问题,并且默认班容量和教室容量匹配; 运行环境的限制: 必须装有 Java 运行平台的操作系统。 与其他应用间的接口:排好内容可以直接保存。 并行操作:需求调研与需求规格说明书的撰写同时进行。
2
所需的高级语言:Java 安全:除操作员外其他人不能随便使用并篡改排课顺序。
4. 设计策略
根据这个流程大概本系统可分为原始信息的采集和录入,排课约束条件信息的采 集和处理,排课数据的处理各种课程安排表的查询.................................................... 3 6. 子系统 N 的结构与功能...............................................................................................................4 7.接口设计....................................................................................................................................... 5 1、 用户接口.................................................................................................................5 2、 软件接口.................................................................................................................5 8. 开发环境的配置...........................................................................................................................6 9. 运行环境的配置...........................................................................................................................6 10. 测试环境的配置.........................................................................................................................6 11. 其他............................................................................................................................................. 6 数据库................................................................................................................................. 6 操作..................................................................................................................................... 6
III
1. 文档介绍
1.1 文档目的
经过需求分析阶段的工作,系统必须“做什么”已经清楚了,此份文档的基本目的就 是解决“概括的说,系统应该如何实现”,划分出组成系统的子系统,确定系统由哪些模块 组成,以及模块之间的关系。站在全局的高度上从比较抽象的层次上分析对比多种可能的 系统实现方案和软件结构,从中选出最佳的方案和最合理的软件结构,从而开发出较高质 量的软件系统
2. 系统概述.......................................................................................................................................2 3. 设计约束.......................................................................................................................................2 4. 设计策略.......................................................................................................................................3 5. 系统总体结构...............................................................................................................................3
5. 系统总体结构
本系统大概的流程为:
登陆
录入信息
生成课程
自动排课
输出课表 图 1 系统流程图
根据这个流程大概本系统可分为原始信息的采集和录入,排课约束条件信息的采集和处 理,排课数据的处理各种课程安排表的查询
原始信息的采集和录入,将采集到的数据录入到系统中。要排课必须录入教室的信息、 每个班级学生的数量和上课的时间等信息。然后将这些信息存入到数据库中。
本系统的功能结构图:
大学自动排课系统
登录模块
录入模块
排课模块
查询模块


录录录 录



入入入 入



课教教 班



程室师 级



信信信 信

息息息 息
图 2 系统功能结构图
6Biblioteka Baidu 子系统 N 的结构与功能












系统可以分为登录模块,录入模块,排课模块,查询模块 在登录模块中,用户输入账号和密码便可登录系统。密码输入错误 ,则重新登录。本
1.2 文档范围
此次开发的软件系统为:大学自动排课算法设计与实现。高校排课是个既繁重又复杂 的工作,有大量的数据需要处理。开发本软件主要是为了帮助学校负责排课的相关人士解 决“教师”、“教室”、“时间”等资源搜索的问题。通过计算机运算速度快的特点,在大数 据量的情况下寻找资源的最优或近似最优的组合,以减少人的工作量。但特殊情况还需人 为进行调节,不属于本系统所能处理的范围。
高校排课中有大量的数据需要处理。比如“教室容量”、“上课班级人数”、“教师”、“时 间”、“距离”等因素需要考虑。去平衡上列各因素,找到一个最优的组合。从此要浪费大 量的人力物力,为避免这一局面的发生,我们想开发一款简单的软件来解决这一问题。
本软件将教师信息,教室信息,班级信息,课程信息存入数据库,通过排课算法对采 集的数据以及排课的约束条件进行处理,生成课表,供管理员,教师和学生进行查询。
排课约束条件信息的采集和处理,在排课的过程中不可能每个条件都能满足,会有一 些特殊情况。对此要进行约束条件信息的采集和处理,例如教室有特殊用途不能提供使用 时应提前输入系统。教师因为某些原因在某时间段不能排课或不能排在某个教室上课应提
3
前输入系统。班级因为距离或课程安排而不能在某时段排在某个教室应提前输入系统。
1.5 术语与缩写解释

2. 系统概述
该系统为大学自动排课算法的设计与实现,使用该软件操作人员只需录入上课的时间、 教室的情况、教师情况等信息软件就可以给出一个最优组合供排课人员参考。教师和学生 能通过该软件查询自己的课表,而管理员可以查询所有的课表。
3. 设计约束
本系统应当遵循的标准或规范 本次课程设计中, 1) 排课系统是针对学院的,即只考虑一个学院内专业课如何排; 2) 排课中以班级为单位排,不考虑选修课; 3) 教室分为多媒体教室和非多媒体教室; 4) 假定只有周一到周五有课,一天只上四大节课,每大节两个学时;
系统只有管理员具有修改的权限,教师和学生只有阅读的权限。
登录界面
输入账号密码 否
是否正确
是 进入系统 图 3 子系统 N 的流程图
4
在录入模块中,管理员点击录入信息菜单项,录入信息菜单项显示录入课程信息、录 入教室信息、录入教师信息和录入班级信息四个子菜单,然后录入的信息存入数据库。
在排课模块中,主要是利用排课算法将收集的信息以及约束条件进行处理,进行排课 为每个教师、班级和教室生成了一张课表。
相关文档
最新文档