基于bs的实验室排课系统毕业论文(编辑修改稿)内容摘要:

用性,功能的全面性,系统的安全性和可靠性。 只要 8 知道基本的业务流程即可对各项管理进行操作,这样使得操作变得更加轻松,因而在操作上是完全可行的。 按上述三方面进行可行性分析 [1]、研究后,我们认为该系统的开发是可行的。 系统需求分析 实验室排课一直是实验教学管理人员一项重要且复杂的基本工作,它涉 及面广,限制条件多,其实质就是为学校所设置的实验课安排一组适当的教学时间和空间,从而使整个实验教学能够有计划,有秩序的进行下去。 在实际中,排课具有很多的约束条件,其中包括实验室,班级,教师,课程,时间等多种因素 [19],结构和过程也相当复杂。 如果完全依靠人工手动来完成,则需要耗费大量的人力和时间。 因此我们希望用计算机代替人工来完成实验课表的编排,从而大大提高排课工作的科学性和准确性,同时也提高工作效率,减轻实验室管理人员的负担。 该基于 B/S 的实验排课子系统主要提供一个实验课程的编排 和查询平台,涉及到管理员,教师和学生三个部分的功能。 管理员部分的功能 ( 1)管理员登录功能,根据权限进入管理员相应的页面的功能。 ( 2) 基本数据的输入 在排课之前,需要输入大量的基本数据信息,其中包括班级信息,教师信息,实验室信息,课程信息,并且提供对这些信息的增,删,修改功能。 基本数据的保存可以用数据库形式进行保存,有利于系统的集成。 ( 3) 课表编排 课表的编排分为自动编排和手工调节两部分。 课表的编排不是任意的,它是一个时间,教师,班级,实验室,课程五者的组合规划问题,为达到最好的实验教 学效果应遵循一定的要求。 这些要求有以下几条: 1)同一班级在同一时间不能安排两门实验课; 2)同一教师在同一时间不能进行两门实验课的教学; 3)同一实验室在同一时间不能安排两门实验课; 4)同一时间安排的实验课程总数不能大于实验室总数; 5)同一教师或同一班级最好选择几个相对固定的实验室; 最后,管理人员可对计算机初排结果通过人工交互进行适当的调整。 9 ( 4)课表信息管理 排课结束以后,可对排课结果进行多种条件的查询,并可以输出不同形式的课表,包括班级课表,教师课表,实验室课表,并且可以对这些课表进行打印。 教师部分功能 ( 1)教师登录功能,根据其权限进入教师相应的页面的功能。 ( 2)教师对自己课表的查询功能,教师可查询本学期自己所教实验课程的课表。 ( 3)教师对自己课表的打印功能,教师可打印本学期自己所教实验课程的课表。 ( 4)实验室课表的查询和打印功能。 学生部分功能 ( 1)学生登录功能,根据其权限进入学生相应的页面的功能。 ( 2)学生对自己所在班级课表的查询功能。 ( 3)学生对自己所在班级课表的打印功能。 ( 4)实验室课表的查询和打印功能。 ( 1)一致性 :系统的数据要保证一致性、准确性 ,当数据库中某一记录改变 ,与之相关联的数据也随之变化。 ( 2)适用性:能够广泛的用于不同院系的实验排课。 系统采用模块化设计,用户可以根据自己的实际情况自行组合,使系统在不同的硬件环境下都能得以应用。 ( 3)实用性:为实验排课提供方便,有效地进行实验课表的查看和打印,尽量最大限度降低管理员日常管理工作量,提高实验教学质量和效率,优化资源,实现效益最大化。 ( 4)操作简单:本系统应该适用于不同的使用者,包括管理员,教师和学生,同时系统不应太复杂和烦琐,因此要求系统的操作尽可能简单 易行。 ( 5) 安装使用简便:服务器端的安装简洁明了,客户机无需再装任何软件,通过浏览器就可以直接访问,只要接入 Inter,无论您身在何处,只要您可以访问Inter 都可以使用本系统。 系统功能模块划分 基于 B/S 结构的排课子系统是实验教学管理系统的一部分,根据该系统的要求,基于 B/S 结构的实验排课系统是集教师信息,班级信息,课程信息,实验室信息,课程信息和课表信息于一体的管理信息系统 [16]。 该系统的系统流程图如下: 10 图 排课系统的系统流程 图 通过对该系统的分析,基于 B/S 结构的实验排课系统主要包括基本信息录入,课表编排,课表管理等几个功能模块。 对排课业务进行分析后,确定排课系统实现以下功能: ( 1)基本信息管理模块负责对排课所需要的信息进行管理和维护。 实验排课涉及面广,数据较多,如班级信息,课程信息,实验室信息,教师信息。 该模块主要实现对这些信息的增,删和修改功能。 ( 2)课表编排模块是本系统的核心,也是该系统的重点和难点,主要实现课表的自动编排和手工调节功能。 在录入排课所需要的一些基本信息后,排课算法将进行自动排课,如果排出来的课表存在 冲突,可通过手工调节对课表进行人为的调整,使课表尽量达到人的主观能动性,以确定最后的课表没冲突的地方。 ( 3)课表管理模块主要提供对课表的查询和打印功能。 课表编排完成后,可对课表进行多种条件的查询,比如可查询班级课表,教师课表和实验室课表,系统还提供对这三类课表的打印功能。 该实验排课子系统的功能模块图如下所示: 班级信息录入 实验课程信息录入 教师信息录入 实验室信息录入 班级信息 实验课程信息 实验室信息 教师信息 排课处理 课程表库 课表查询 课表打印 生成课表 11 图 实验排课系统功能模块图 基本信息管理 课表编排 课表管理 班级信息管理 课程信息管理 实验室信息管理 教师信息管理 自动排课 手工调节 班级课表查看和打印 教师课表查看和打印 实验室课表查看和打印 实验室排课系统 12 第 4 章 .系统设计 实验排课子系统是一个关于实验课程编排的管理信息系统,主要针对学校实验教学设计,它能 够帮助实验排课人员处理大量复杂的排课信息,有效的生成实验课表,节省了排课人员大量的时间和精力。 本章主要介绍该系统各个模块的设计以及数据库设计。 我们按照实验排课的业务流程,通过对系统内数据流的控制,使各模块按照其内在的联系组成一个有机的整体,模块统又具有录入,修改,删除,查询,打印等功能,各模块界限分明,任务明确,能实现动态管理,而且界面友好,操作简单,并且有很好的纠错能力。 系统设计原则与目标 系统设计原则与目标如下 [5]: ① 安全性:防止未经授权的人员误用乱用该系统。 ② 经济实用:和已有设施紧密配,合充分利用所有设备,避免重复投资。 ③ 满足对容量和容错的需求。 ④ 兼容性和扩展性:为满足未来软硬件的灵活部署和容量要求,应考虑系统规模扩展的需求和升级能力。 ⑤ 易于管理和维护:系统易于管理和操作;同时,系统维护应尽量集中、简单,尽量避免复杂系统和多系统组合的维护开销,减轻维护人员的负担。 ⑥ 强大的可开发性:系统应配备 健壮的开发接口和丰富的开发工具,充分支持现有的开发手段和开发成果,开发平台应该易用并足够强大以满足变化的需求。 系统软件体系结构 实验排课子系统采用 B/S结构 ,统一管理数据库和 Web 服务器。 在这种结构下,用户界面完全通过 WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓 3tier 结构 ,第一层是客户端 (用户界面 ),提供用户与系统的友好访问;第二层是应用服务器, 负责 业务逻辑的实现;第三层是数据服务器,负责数据信息的存储、访问及其优化。 由于业务逻辑被提取到应用服务器,大大 降低了客户端负担,因此也成为瘦客户结构, 其系统软件体系结构示意图如图 所示: 13 图 软件结构体系图 系统主要功能模块设计 基本信息管理模块提供对排课基本信息的录入,修改,删除等功能,这些基本信息包括班级信息,课程信息,实验室信息,教师信息,该模块的流程图如下: 图 基本信息管理数据流图 第一步:输入要进行排课的班级信息,实现班级信息的初始化。 第二步:输入要编 排的实验课程信息。 在这些课程信息当中,存在着多个班级上管理员 登录 输入排课班级 班级信息 输入实验课程 输入排课教师 输入实验室 实验课程信息 教师信息 实验室信息 完成 14 同一门的实验课程,也有各个班级上不同的实验课程。 第三步:输入教师信息。 教师可以教授 N 个班的 N 门课程。 第四步:输入实验室信息,完成实验室信息的初始化。 至此,排课基本信息的输入已经完成。 课表编排模块是本系统的核心部分,就排课问题而言,其本质是教室,教师,班级,课程和时间 5 个要素在各自具备一定限制条件的情况下,寻求一种教师,班级和课程在时间和空间上合理分布的复杂的资源分配问题。 该模块分为自动排课和手工调节两部分。 它根据输入的 基本排课信息(包括班级信息,课程信息,教师信息,实验室信息),按照排课算法来实现对课表的自动编排,对于初排出来的实验课表,如有冲突,或排课人员根据自己的经验认为某门实验课程排在某个特定时间效果可能更好,都可以进行手工调节,以形成最后的无冲突又符合人的主观能动性的实验课表。 排课算法的设计是本系统的一个重点和难点,其中排课数据的初始化是通过上面基本信息管理模块中班级信息,课程信息,教师信息和实验室信息四张表格来完成,然后根据排课的一些规则和约束(排课的规则和约束在需求分析当中已阐述)进行自动排课。 对于排课算法 ,由于其复杂度和实际情况的多变,学术界曾出现过遗传算法,模拟退火算法,基于动态规划的算法,曾一度是学术界研究的一个热点,至今仍没有一个通用的能解决所有排课问题的算法。 本系统的排课算法根据我校的实际情况而设计,在一定程度上解决了我校的实验课程编排。 本系统的排课算法流程图如下: 15 开始查找实验课程记录intDay = 1 , intDay 表示星期记录是否为空是班级 , 教师 , 实验室在星期 intDay内是否没有排课把星期 intDay 作为该课的上课时间 S = 1 , S 表示上课节次S = S + 1判断 S 是否小于 6intDay = intDay + 1判断 intDay 是否小于 6读取下条记录结束是否否否否是是 图 实验排课算法流程图 16 在完成了课表的编排之后,特意设计此模块来对课表进行统一的管理。 该模块主要功能是实现教师课表,班 级课表和实验室课表的查询和打印。 该模块设计思路为:在页面中设计三个相应的下拉框,从这三个下拉框中选定相应的项目后,便可以进入相应的课表页面,从而可查看和打印相应的课表。 在经过课表的自动排课和手工调节之后,已形成最终既无冲突又符合人为意愿的实验课表。 要实现班级课表的查询,只需调用最终实验课表中字段为班级名称的记录即可,同样要查询教师课表和实验室课表,只需调用最终课表中字段分别为教师编号和实验室名称的记录即可。 在对各课表查看了之后,还可对课表进行打印。 数据库设计 数据库技术是当今信息时代赖以发展的重要基 础技术之一,也是发展较快的计算机技术的重要分支。 较好地理解数据库设计原理对于设计出性能高效的数据库系统是很重要的。 数据库技术是计算机软件领域的一个重要分支,已形成相当规模的理论体系和实用技术。 它的出现使得计算机应用渗透到工农业生产、商业、行政、科学研究、工程技术和国防军事的各个部门,渗透到社会的每一角落,并正改变着人们的工作方式与生活方式。 管理信息系统、办公自动化系统、决策支持系统、智能系统等都是使用了数据库技术的计算机应用系统。 数据库已经成为信息高速公路的核心部分。 B/S 结构实验排课子系统 ,是一个数据 库应用系统,许多信息都是保存在数据库中。 在数据库应用系统的开发过程中,数据库的结构设计是一个很重要的问题。 我们这里所说的数据库结构设计是指各个表结构的设计,包括信息保存在哪些表格中,各个表的结构如何,以及各个表之间的关系。 数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。 概念结构独立于数据库逻辑结构,也独立于支持数据库的 DBMS,它是现 实世界与机器世界的中介,它一方面能够充分反映现实世界,包括实体与实体间的关系,同时 17 又易于向关系、网状、层次等各种数据模型转换。 它是现实世界的一个真实模型,易于理解,便于和不熟悉计算机的用户交换意见,使用户易于参与;当现实世界需求改变时,概念结构又可以很容易地作相应调整。 因此概念结构设计是整个数据库设计的关键所在。 概念结构设计通常有四类方法 [7]: 1. 自顶向下。 即首先定义全局概念。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。