【课程设计推荐】基于JSP的自动排课管理系统设计与实现

🍅关注【墨岚创客】,回复【毕设】,赠送免费毕设资源,具体联系方式见文末🍅

引言

计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等。 在中小学中用计算机管理排课的意义现在我国的中小学校中排课的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。

第一章 系统概述

1.1 排课管理系统概述

排课管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以排课管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件排课,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对排课信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高排课管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

1.2 排课管理系统的目的和意义

终上所述,开发这样一套排课管理软件成为很有必要的事情。我们所开发的这排课管理软件归纳起来,好处大约有以下几点:

1. 可以存储历届的排课,安全、高效;

2. 只需一到二名排课录入员即可操作系统,节省大量人力;

3. 可以按照录入人员的输入来自动生成课程表,并尽量减少冲突等情况发生。

排课系统的设计分析根据实际情况,我们使用原型法(Rapid Prototyping)即以少量代价快速地构造一个可执行的软件系统模型。使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。此时模块也发展成为最终产品了。

第二章 系统分析

2.1 编程环境选择

编程环境的选择微软公司的Jsp是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。Jsp提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统VB是一个相对较好的选择。 关系型数据库的实现Sqlserver2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Sqlserver 的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Sqlserver 允许创建自定义报表用于打印或输出数据库中的信息。Sqlserver也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。Sqlserver 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,Sqlserver 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。

二者的结合(DBA)微软的JET数据库引擎提供了与数据库打交道的途

径,我们是通过它以及Jsp 来访问数据库并对其进行各种操作。Jsp、Sqlserver以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。当今的微软对数据库中的ADO比较注视,并在.net上使用了ADO.net技术,鉴于ADO在很多程序里的广泛应用,使用ADO来连接数据库将是最为适用的,并且在定义了ADO的连接模块后,对于将来的升级也会很方便,只要修改一下连接源,就可以轻松的更换后台。

在使用Jsp语言进行编程时还有有如下的优点:

Jsp应用程序不同于其他语言开发的单一性程序。使用Jsp编程时,必须首先确定应用程序如何与用户交互,如鼠标单击,用户必须编写代码控制这些事件的响应方法。

2.2 设计大纲

经过慎重考虑,并尽量使排课的速度加快,因此对各位教师和各班级都建立一个占用表,首先计算当前要排课程的老师的已排课程占用情况,将其与排课班级的占用表进行对比,获取有用空间,即得到的空间都会适合,这样使用随机推举的方式来自动生成一个新位置,达到排课效果,并且不会造成冲突等情况的发生。

排课作为系统的主要重点,在编写中就要尽量避免各种各样的冲突和错误发生,因此也需要经过投入长时间的测试与使用才能使程序的功能达到最好,速度最快。

在课程表输出方面,将采用目前最常用的报表形式来进行输出,并且同时使用VB中操作EXECL的方法将课程表输出到EXECL自制的课程表模板文件中,并且同时可以实现打印,这样用户如果在认为报表输出的格式并不能让您满意的话,就可以根据自己的需要来修改EXECL的模板,达到课程表的完美输出。

第三章 设计内容

3.1 实现功能

1 掌握学校所有的课程和教师的信息。包括每门课程的时间、班级以及任课老师的姓名等。

2 针对不同的人员授予不同的权限。提供灵活的浏览、查询功能。可以查看某个系、某个班级所有课程的信息。

3 可以对一个或多个班级进入课程管理与排课表管理,可以不限次的生成该班级课程表。

4 可以对课程进行变动管理。既可以手工排课,又可以实现自动排序功能。 

5 帮助系统维护可以实现:操作日志、重新登录、打印设置(包括统计各种报表及打印等)、退出等操作。

6 提供一种或多种课程表输出功能,并使用活动的模板输出功能,输出样式可以由用户自定义。

7 实现功能全面化,由于每个学校或班级的每天课程数目或时间都不太一样,实现智能计算总课程数目和管理对应的时间段,并且根据每门课程的独立分布式来进行排列(例如:大学语文自动排列的分布方式可以是周一至周六,那么系统就会自动将其平均分布在周一至周六这些天里)

8用户管理:设置两个级别用户:管理员和普通用户,管理员有权限操作系统中的所有数据,普通用户只能以执行查询,输出之类的功能,无法对系统进行实质性的操作,用户使用本系统之前必须先通过身份认证(用户级别、用户名和密码,密码输入有次数限制,连续三次输入错误密码则锁定该用户)

3.2 功能与模块的设计

3.2.1 设计思想

本系统采用各班级独立划分管理,所有教师均可为任何班级服务,各班级根据每天课程数目来进行自动排序,同时各教师允许教学多门课程,因此为了每名教师配置了时间占用表,只要与班级对应的时间空间表未被占用,都可以参与排课,并根据用户定义的要求排出课程。

数据管理类:由于班级,时间,教师,课程等信息都需要一个活动的管理过程,因为在节省资源的情况下,将各数据所需要的代码合并在一起进行编写和使用。

3.2.2 各模块设计与分析

此处中各模块的设计与分析在以下各模块数据流图与程序中同步讲解。

3.2.3 系统ER图

系统E-R图说明:

本系统是一个排课管理系统,主要是根据班级为单位,利用班级与课程来进行排课。

班级与课程是一对多的关系,班级不能重复,但是课程可以随意出现任何班级。

班级与班级课程信息之间也是一对多的关系,一个班级,可以有很多不同的课程。

班级与临时生成课表是一对多的关系,一个班级,只能有一个课程表,而排列的方式都同样由班级获得。

其余的数据库建立都是在让系统方便使用的基础上建立的,还有一个无需用户手动添加数据的,做为内部参数来使用的表,这里就不用标出的了。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值